<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN"   "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Fullversion='3.0xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation=' http://www.web3d.org/specifications/x3d-3.0.xsd '>
<head>
<component level='3name='Geometry2D'/>
<meta name='titlecontent='Geometry2dComponentExamples.x3d'/>
<meta name='descriptioncontent='Examples showing use of X3D Geometry2D component nodes (Arc2D ArcClose2D Circle2D Disk2D Polyline2D Polypoint2D Rectangle2D TriangleSet2D), implemented as prototypes for backwards compatibility with VRML 97. Also provides Unfilled ProtoInstance versions of some nodes since FillProperties not possible in VRML 97. 2D nodes are considered particularly helpful for building user interfaces such as Heads-Up Displays (HUDs).'/>
<meta name='authorscontent='Christos Kalogrias, Don Brutzman, Ken Curtin, Duane Davis'/>
<meta name='createdcontent='16 November 2003'/>
<meta name='modifiedcontent='19 December 2005'/>
<meta name='referencecontent='Geometry2dComponentPrototypes.x3d'/>
<meta name='referencecontent=' http://www.web3d.org/spec_editors/abstract/Part01/components/geometry2D.html '/>
<meta name='subjectcontent='Geometry2D component nodes (Arc2D ArcClose2D Circle2D Disk2D Polyline2D Polypoint2D Rectangle2D TriangleSet2D)'/>
<meta name='identifiercontent=' http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentExamples.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent='../license.html'/>
</head>
<!--

Index for ExternProtoDeclare definitions: Arc2D, ArcClose2D, Circle2D, Disk2D, Polyline2D, Polypoint2D, Rectangle2D, TriangleSet2D, ArcClose2DUnfilled, Rectangle2DUnfilled
Index for DEF nodes: ArcClose2DUnfilledTransform, BackDrop, RectangleUnfilled, TestFillProperties, TestLineProperties, TestLinePropertiesMetaData
Index for Viewpoint image: Viewpoint_1
-->
<Scene>
<!-- ==================== -->
<!-- Do not copy these ExternProtoDeclare statements! They are copied automatically when you use X3D-Edit. These definitions thus provide backwards compatibility for X3dToVrml97.xslt stylesheet mappings. -->
<!-- ==================== -->
<ExternProtoDeclare name='Arc2D'
  url=' "Geometry2dComponentPrototypes.wrl#Arc2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Arc2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Arc2D" "Geometry2dComponentPrototypes.x3d#Arc2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Arc2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Arc2D" '>
<field name='startAngletype='SFFloataccessType='initializeOnly'/>
<field name='endAngletype='SFFloataccessType='initializeOnly'/>
<field name='radiustype='SFFloataccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='ArcClose2D'
  url=' "Geometry2dComponentPrototypes.wrl#ArcClose2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#ArcClose2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#ArcClose2D" "Geometry2dComponentPrototypes.x3d#ArcClose2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#ArcClose2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#ArcClose2D" '>
<field name='startAngletype='SFFloataccessType='initializeOnly'/>
<field name='endAngletype='SFFloataccessType='initializeOnly'/>
<field name='radiustype='SFFloataccessType='initializeOnly'/>
<field name='closureTypetype='SFStringaccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Circle2D'
  url=' "Geometry2dComponentPrototypes.wrl#Circle2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Circle2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Circle2D" "Geometry2dComponentPrototypes.x3d#Circle2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Circle2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Circle2D" '>
<field name='radiustype='SFFloataccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Disk2D'
  url=' "Geometry2dComponentPrototypes.wrl#Disk2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Disk2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Disk2D" "Geometry2dComponentPrototypes.x3d#Disk2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Disk2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Disk2D" '>
<field name='innerRadiustype='SFFloataccessType='initializeOnly'/>
<field name='outerRadiustype='SFFloataccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Polyline2D'
  url=' "Geometry2dComponentPrototypes.wrl#Polyline2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Polyline2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Polyline2D" "Geometry2dComponentPrototypes.x3d#Polyline2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Polyline2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Polyline2D" '>
<field name='lineSegmentstype='MFVec2faccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Polypoint2D'
  url=' "Geometry2dComponentPrototypes.wrl#Polypoint2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Polypoint2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Polypoint2D" "Geometry2dComponentPrototypes.x3d#Polypoint2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Polypoint2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Polypoint2D" '>
<field name='pointtype='MFVec2faccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Rectangle2D'
  url=' "Geometry2dComponentPrototypes.wrl#Rectangle2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Rectangle2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Rectangle2D" "Geometry2dComponentPrototypes.x3d#Rectangle2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Rectangle2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Rectangle2D" '>
<field name='sizetype='SFVec2faccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='TriangleSet2D'
  url=' "Geometry2dComponentPrototypes.wrl#TriangleSet2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#TriangleSet2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#TriangleSet2D" "Geometry2dComponentPrototypes.x3d#TriangleSet2D" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#TriangleSet2D" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#TriangleSet2D" '>
<field name='verticestype='MFVec2faccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<!-- ==================== -->
<!-- Additional Unfilled versions since FillProperties node not possible in native VRML 97 -->
<!-- ==================== -->
<ExternProtoDeclare name='ArcClose2DUnfilled'
  url=' "Geometry2dComponentPrototypes.wrl#ArcClose2DUnfilled" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#ArcClose2DUnfilled" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#ArcClose2DUnfilled" "Geometry2dComponentPrototypes.x3d#ArcClose2DUnfilled" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#ArcClose2DUnfilled" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#ArcClose2DUnfilled" '>
<field name='startAngletype='SFFloataccessType='initializeOnly'/>
<field name='endAngletype='SFFloataccessType='initializeOnly'/>
<field name='radiustype='SFFloataccessType='initializeOnly'/>
<field name='closureTypetype='SFStringaccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<ExternProtoDeclare name='Rectangle2DUnfilled'
  url=' "Geometry2dComponentPrototypes.wrl#Rectangle2DUnfilled" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.wrl#Rectangle2DUnfilled" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.wrl#Rectangle2DUnfilled" "Geometry2dComponentPrototypes.x3d#Rectangle2DUnfilled" "/www.web3d.org/x3d/content/examples/development/Geometry2dComponentPrototypes.x3d#Rectangle2DUnfilled" "http://www.web3d.org/x3d/content/examples/Basic/development/Geometry2dComponentPrototypes.x3d#Rectangle2DUnfilled" '>
<field name='sizetype='SFVec2faccessType='initializeOnly'/>
<field name='solidtype='SFBoolaccessType='initializeOnly'/>
<field name='metadatatype='SFNodeaccessType='inputOutput'
 appinfo='Metadata node only'/>
</ExternProtoDeclare>
<!-- ==================== -->
<!-- ==================== -->
<Background groundColor='0.3 0.3 0.3skyColor='0.3 0.3 0.3'/>
<Viewpoint description='Geometry2D Component Examplesposition='0 0 12'/>
<!-- ==================== -->
<!-- Top row -->
<Transform translation='-5 2 0'>
<Shape>
<ArcClose2D closureType='PIEendAngle='3.0radius='1startAngle='0.7solid='truecontainerField='geometry'/>
<Appearance>
<Material diffuseColor='0 0 1'/>
</Appearance>
</Shape>
</Transform>
<Transform DEF='ArcClose2DUnfilledTransformtranslation='-2.5 2 0'>
<Shape>
<ProtoInstance name='ArcClose2DUnfilledcontainerField='geometry'>
<fieldValue name='closureTypevalue='PIE'/>
<fieldValue name='startAnglevalue='0.7'/>
<fieldValue name='endAnglevalue='3'/>
<fieldValue name='radiusvalue='1'/>
</ProtoInstance>
<Appearance>
<Material emissiveColor='0.2 0.2 1'/>
</Appearance>
</Shape>
</Transform>
<Transform translation='-0.5 2 0'>
<Shape>
<Arc2D endAngle='1.570796radius='1startAngle='0containerField='geometry'/>
<Appearance>
<Material emissiveColor='1 1 0'/>
</Appearance>
</Shape>
</Transform>
<Transform translation='2 2 0'>
<Shape>
<Circle2D radius='1containerField='geometry'/>
<Appearance>
<Material emissiveColor='1 0 0'/>
</Appearance>
</Shape>
</Transform>
<Transform translation='5 2 0'>
<Shape>
<Disk2D innerRadius='0.5outerRadius='1solid='truecontainerField='geometry'/>
<Appearance>
<Material diffuseColor='0.5 1 1'/>
</Appearance>
</Shape>
</Transform>
<!-- ==================== -->
<!-- Bottom row -->
<Transform translation='-5 -2 0'>
<Shape>
<Rectangle2D size='1 2solid='truecontainerField='geometry'/>
<Appearance>
<Material diffuseColor='1 0 0'/>
</Appearance>
</Shape>
</Transform>
<Transform DEF='RectangleUnfilledtranslation='-3 -2 0'>
<Shape>
<ProtoInstance name='Rectangle2DUnfilledcontainerField='geometry'>
<fieldValue name='sizevalue='1 2'/>
</ProtoInstance>
<Appearance>
<Material emissiveColor='1 0.2 0.2'/>
</Appearance>
</Shape>
</Transform>
<Transform translation='-0.5 -2 0'>
<Shape>
<Polyline2D lineSegments='-1 0 -0.5 1 0 0 0.5 1 1 0containerField='geometry'/>
<Appearance>
<Material diffuseColor='0 0 0emissiveColor='1 0.5 1'/>
</Appearance>
</Shape>
</Transform>
<Transform translation='2.5 -2 0'>
<Shape>
<Polypoint2D point='-1 0 -0.5 1 0 0 0.5 1 1 0containerField='geometry'/>
<Appearance>
<Material emissiveColor='1 1 1'/>
</Appearance>
</Shape>
<Transform translation='0 0.5 -0.5'>
<Shape>
<Rectangle2D DEF='BackDropsize='2.5 2solid='truecontainerField='geometry'/>
<Appearance>
<Material diffuseColor='0 0 0'/>
</Appearance>
</Shape>
<Transform translation='0 -0.15 0'>
<Shape>
<Text string='"PolyPoint2D" "5 points"solid='true'>
<FontStyle justify='"MIDDLE" "MIDDLE"size='0.25'/>
</Text>
<Appearance>
<Material/>
</Appearance>
</Shape>
</Transform>
</Transform>
</Transform>
<Transform translation='5 -2 0'>
<Shape>
<TriangleSet2D vertices='0 0 1 1 -1 1 0 0 1 0.5 1 -0.5 0 0 -1 -2 -2 -1solid='truecontainerField='geometry'/>
<Appearance>
<FillProperties DEF='TestFillPropertiesfilled='truehatchColor='1 1 1hatchStyle='1hatched='truecontainerField='fillProperties'/>
<LineProperties DEF='TestLinePropertieslinetype='1linewidthScaleFactor='1applied='truecontainerField='lineProperties'>
<MetadataString name='test LineProperties metadata childcontainerField='metadata'/>
</LineProperties>
<Material diffuseColor='0 1 0'/>
</Appearance>
</Shape>
</Transform>
</Scene>
</X3D>
<!--

Index for ExternProtoDeclare definitions: Arc2D, ArcClose2D, Circle2D, Disk2D, Polyline2D, Polypoint2D, Rectangle2D, TriangleSet2D, ArcClose2DUnfilled, Rectangle2DUnfilled
Index for DEF nodes: ArcClose2DUnfilledTransform, BackDrop, RectangleUnfilled, TestFillProperties, TestLineProperties, TestLinePropertiesMetaData
Index for Viewpoint image: Viewpoint_1
-->

<!-- Tag color codes: <Node DEF='idName' attribute='value'/> <Prototype name='ProtoName'> <field name='fieldName'/> </Prototype> -->