<WorldInfo title='ExtrusionPentagon.x3d'/>
<NavigationInfo DEF='ExamineMode'/>
<NavigationInfo DEF='FlyPanNavigation' type='"FLY" "ANY"'/>
<Background skyColor='1 1 1'/>
<Viewpoint description='Extrusion Pentagon' orientation='-1 0 0 0.2' position='0 3.17 12.85'/>
<Viewpoint description='Oblique view from above' orientation='-1 0.015 -0.006 0.78' position='0.25 8.98 8.99'/>
<Viewpoint description='Overhead view' orientation='1 0 0 -1.57' position='0 13.15 0'/>
<Background groundColor='0.9 0.9 0.9' skyColor='0.9 0.9 0.9'/>
<Transform translation='-4 0 0'>
<Shape>
<!-- be sure to order cross-section points so that normal is upward -->
<Extrusion crossSection='-3.5 -1 -2.1 2.9 2.2 2.9 3.6 -1 0 -3.5 -3.5 -1' scale='1 1 1 1 0.2 0.2' spine='0 0 0 0 1 0 0 1.6 0'>
<!-- spine is open, crossSection is closed -->
</Extrusion>
<Appearance>
<Material diffuseColor='0.2 0.6 0.5'/>
</Appearance>
</Shape>
</Transform>
<!-- Utilize ExtrusionCrossSection ProtoInstance as a Shape node (with containerField="children") rather than an Extrusion node (with containerField="geometry"). -->
<!-- ExtrusionCrossSection is a Prototype, which are explained in Chapter 14. -->
<!-- TODO update original version of ExtrusionCrossSectionPrototype.js at X3D Examples Archive Basic course -->
<ExternProtoDeclare name='ExtrusionCrossSection' appinfo='Shape prototype for Extrusion node that also draws spine line plus oriented scaled cross sections at each spine point'
url='
"ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "https://X3dGraphics.com/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "ExtrusionCrossSectionPrototype.wrl#ExtrusionCrossSection" "https://X3dGraphics.com/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionPrototype.wrl#ExtrusionCrossSection" '>
<!-- run-time eventIn Extrusion-modification interfaces for VRML 97 compatibility -->
<field name='name' type='SFString' accessType='initializeOnly'
appinfo='Extrusion name'/>
<field name='crossSection' type='MFVec2f' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='spine' type='MFVec3f' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='scale' type='MFVec2f' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='orientation' type='MFRotation' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='beginCap' type='SFBool' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='endCap' type='SFBool' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='ccw' type='SFBool' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='convex' type='SFBool' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='creaseAngle' type='SFFloat' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='solid' type='SFBool' accessType='initializeOnly'
appinfo='Extrusion field'/>
<field name='extrusionImageTexture' type='SFNode' accessType='initializeOnly'
appinfo='Image to apply to Extrusion'/>
<field name='extrusionTextureTransform' type='SFNode' accessType='initializeOnly'
appinfo='TextureTransform coordinates of image applied to Extrusion'/>
<field name='set_crossSection' type='MFVec2f' accessType='inputOnly'
appinfo='Extrusion field'/>
<field name='set_spine' type='MFVec3f' accessType='inputOnly'
appinfo='Extrusion field'/>
<field name='set_scale' type='MFVec2f' accessType='inputOnly'
appinfo='Extrusion field'/>
<field name='set_orientation' type='MFRotation' accessType='inputOnly'
appinfo='Extrusion field'/>
<field name='traceEnabled' type='SFBool' accessType='initializeOnly'
appinfo='Whether to provide initialization trace statements showing node construction'/>
<field name='spineColor' type='SFColor' accessType='inputOutput'
appinfo='emissiveColor of spine'/>
<field name='crossSectionColor' type='SFColor' accessType='inputOutput'
appinfo='diffuseColor of crossSection'/>
<field name='crossSectionTransparency' type='SFFloat' accessType='inputOutput'
appinfo='transparency of crossSection'/>
<field name='extrusionColor' type='SFColor' accessType='inputOutput'
appinfo='diffuseColor of extrusion hull'/>
<field name='extrusionTransparency' type='SFFloat' accessType='inputOutput'
appinfo='transparency of extrusion hull'/>
</ExternProtoDeclare>
<Transform translation='4 0 0'>
<ProtoInstance name='ExtrusionCrossSection' DEF='PentagonExtrusion'>
<fieldValue name='name' value='PentagonExtrusion'/>
<fieldValue name='crossSection' value='-3.5 -1 -2.1 2.9 2.2 2.9 3.6 -1 0 -3.5 -3.5 -1'/>
<fieldValue name='spine' value='0 0 0 0 1 0 0 1.6 0'/>
<fieldValue name='scale' value='1 1 1 1 0.2 0.2'/>
<fieldValue name='ccw' value='true'/>
<fieldValue name='spineColor' value='0.7 0.7 0'/>
<fieldValue name='crossSectionColor' value='0.6 0.6 0.2'/>
<fieldValue name='extrusionColor' value='0.3 0.6 0.6'/>
<fieldValue name='extrusionTransparency' value='0.6'/>
<fieldValue name='traceEnabled' value='false'/>
</ProtoInstance>
</Transform>