<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
<X3D profile='Immersive' version='3.3' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.3.xsd'>
  <head>
    <meta content='ExtrusionPentagonCrossSectionItssTexture.x3d' name='title'/>
    <meta content='Comparison of Extrusion, ExtrusionCrossSectionPrototype, ExtrusionCrossSectionITSSPrototype for Texture Mapping.' name='description'/>
    <meta content='Don Brutzman and Sungmin Kwon' name='creator'/>
    <meta content='Naval Postgraduate School' name='contributor'/>
    <meta content='23 October 2017' name='created'/>
    <meta content='20 January 2024' name='modified'/>
    <meta content='https://en.wikipedia.org/wiki/Extrusion' name='reference'/>
    <meta content='Extrusion, ExtrusionCrossSectionPrototype, ExtrusionCrossSectionITSSPrototype with Textrue Image' name='subject'/>
    <meta content='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionPentagonCrossSectionItssTexture.x3d' name='identifier'/>
    <meta content='X3D-Edit 4.0, https://www.web3d.org/x3d/tools/X3D-Edit' name='generator'/>
    <meta content='../license.html' name='license'/>
  </head>
  <Scene>
    <WorldInfo title='ExtrusionPentagonCrossSectionItssTexture.x3d'/>
    <NavigationInfo DEF='ExamineMode'/>
    <NavigationInfo DEF='FlyPanNavigation' type='"FLY" "ANY"'/>
    <Background skyColor='1 1 1'/>
    <Viewpoint description='Oblique view from above' orientation='-1 0.015 -0.006 0.78' position='0.25 14 14'/>
    <Viewpoint description='Extrusion Pentagon' orientation='-1 0 0 0.2' position='0 4 16'/>
    <Viewpoint description='Overhead view' orientation='1 0 0 -1.57' position='0 27 0'/>
    <Background groundColor='0.9 0.9 0.9' skyColor='0.9 0.9 0.9'/>
    <!-- Title -->
    <Transform rotation='1 0 0 -1.3' translation='0 2 -9'>
      <Shape>
        <Text DEF='Title' string='"Comparison of Extrusion Based Structure with Texture Map"'>
          <FontStyle justify='"MIDDLE" "MIDDLE"'/>
        </Text>
        <Appearance>
          <Material diffuseColor='0 0 0'/>
        </Appearance>
      </Shape>
    </Transform>
    <!-- Extrusion Node -->
    <Transform translation='-4 0 -4'>
      <Shape>
        <Extrusion beginCap='false' crossSection='-3.5 -1 -2.1 2.9 2.2 2.9 3.6 -1 0 -3.5 -3.5 -1' endCap='false' scale='1 1 1 1 0.2 0.2' spine='0 0 0 0 1 0 0 1.6 0'/>
        <Appearance>
          <Material diffuseColor='0.2 0.6 0.5'/>
          <ImageTexture url='"../earth-topo.png" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/earth-topo.png"'/>
        </Appearance>
      </Shape>
      <Transform rotation='1 0 0 -1.3' translation='0 0 2.9'>
        <Shape>
          <Text string='"Extrusion Node"'>
            <FontStyle DEF='CenterFontStyle' justify='"MIDDLE" "BEGIN"' size='0.6' style='BOLD'/>
          </Text>
          <Appearance>
            <Material diffuseColor='0 0 0'/>
          </Appearance>
        </Shape>
      </Transform>
    </Transform>
    <!-- ExtrusionCrossSection Prototype Node -->
    <ExternProtoDeclare appinfo='Shape prototype for Extrusion node that also draws spine line plus oriented scaled cross sections at each spine point' documentation='https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionPrototype.x3d' name='ExtrusionCrossSection' url='"ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "ExtrusionCrossSectionPrototype.wrl#ExtrusionCrossSection" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionPrototype.wrl#ExtrusionCrossSection"'>
      <field accessType='initializeOnly' appinfo='Extrusion name' name='name' type='SFString'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='crossSection' type='MFVec2f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='spine' type='MFVec3f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='scale' type='MFVec2f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='orientation' type='MFRotation'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='beginCap' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='endCap' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='ccw' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='convex' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='creaseAngle' type='SFFloat'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='solid' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Image to apply to Extrusion' name='extrusionImageTexture' type='SFNode'/>
      <field accessType='initializeOnly' appinfo='TextureTransform coordinates of image applied to Extrusion' name='extrusionTextureTransform' type='SFNode'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_crossSection' type='MFVec2f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_spine' type='MFVec3f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_scale' type='MFVec2f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_orientation' type='MFRotation'/>
      <field accessType='initializeOnly' appinfo='Whether to provide initialization trace statements showing node construction' name='traceEnabled' type='SFBool'/>
      <field accessType='inputOutput' appinfo='emissiveColor of spine' name='spineColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='diffuseColor of crossSection' name='crossSectionColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='transparency of crossSection' name='crossSectionTransparency' type='SFFloat'/>
      <field accessType='inputOutput' appinfo='diffuseColor of extrusion hull' name='extrusionColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='transparency of extrusion hull' name='extrusionTransparency' type='SFFloat'/>
    </ExternProtoDeclare>
    <Transform translation='4 0 -4'>
      <ProtoInstance DEF='PentagonExtrusion' name='ExtrusionCrossSection'>
        <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='creaseAngle' value='3'/>
        <fieldValue name='ccw' value='true'/>
        <fieldValue name='extrusionImageTexture'>
          <ImageTexture url='"../earth-topo.png" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/earth-topo.png"'/>
        </fieldValue>
        <fieldValue name='spineColor' value='0.7 0.7 0'/>
        <fieldValue name='crossSectionColor' value='0.6 0.6 0.2'/>
        <fieldValue name='extrusionColor' value='0.2 0.6 0.5'/>
        <fieldValue name='extrusionTransparency' value='0.0'/>
        <fieldValue name='traceEnabled' value='false'/>
      </ProtoInstance>
      <Transform rotation='1 0 0 -1.3' translation='0 0 3'>
        <Shape>
          <Text string='"ExtrusionCrossSection" "Prototype"'>
            <FontStyle USE='CenterFontStyle'/>
          </Text>
          <Appearance>
            <Material diffuseColor='0 0 0'/>
          </Appearance>
        </Shape>
      </Transform>
    </Transform>
    <!-- ExtrusionCrossSectionITSS Prototype Node -->
    <ExternProtoDeclare name='ExtrusionCrossSectionITSS' url='"ExtrusionCrossSectionITSSPrototype.x3d#ExtrusionCrossSectionITSS" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionITSSPrototype.x3d#ExtrusionCrossSectionITSS" "ExtrusionCrossSectionITSSPrototype.wrl#ExtrusionCrossSectionITSS" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter06GeometryPointsLinesPolygons/ExtrusionCrossSectionITSSPrototype.wrl#ExtrusionCrossSectionITSS"'>
      <field accessType='initializeOnly' appinfo='Extrusion name' name='name' type='SFString'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='crossSection' type='MFVec2f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='spine' type='MFVec3f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='scale' type='MFVec2f'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='orientation' type='MFRotation'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='beginCap' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='endCap' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='ccw' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='convex' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='creaseAngle' type='SFFloat'/>
      <field accessType='initializeOnly' appinfo='Extrusion field' name='solid' type='SFBool'/>
      <field accessType='initializeOnly' appinfo='Image to apply to Extrusion' name='extrusionImageTexture' type='SFNode'/>
      <field accessType='initializeOnly' appinfo='TextureTransform coordinates of image applied to Extrusion' name='extrusionTextureTransform' type='SFNode'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_crossSection' type='MFVec2f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_spine' type='MFVec3f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_scale' type='MFVec2f'/>
      <field accessType='inputOnly' appinfo='Extrusion field' name='set_orientation' type='MFRotation'/>
      <field accessType='initializeOnly' appinfo='Whether to provide initialization trace statements showing node construction' name='traceEnabled' type='SFBool'/>
      <field accessType='inputOutput' appinfo='emissiveColor of spine' name='spineColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='diffuseColor of crossSection' name='crossSectionColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='transparency of crossSection' name='crossSectionTransparency' type='SFFloat'/>
      <field accessType='inputOutput' appinfo='diffuseColor of extrusion hull' name='extrusionColor' type='SFColor'/>
      <field accessType='inputOutput' appinfo='transparency of extrusion hull' name='extrusionTransparency' type='SFFloat'/>
    </ExternProtoDeclare>
    <Transform translation='0 0 3.5'>
      <ProtoInstance DEF='PentagonExtrusionITSS' name='ExtrusionCrossSectionITSS'>
        <fieldValue name='name' value='PentagonExtrusionITSS'/>
        <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='extrusionImageTexture'>
          <ImageTexture url='"../earth-topo.png" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/earth-topo.png"'/>
        </fieldValue>
        <fieldValue name='spineColor' value='0.7 0.7 0'/>
        <fieldValue name='crossSectionColor' value='0.6 0.6 0.2'/>
        <fieldValue name='extrusionColor' value='0.2 0.6 0.5'/>
        <fieldValue name='extrusionTransparency' value='0.0'/>
        <fieldValue name='traceEnabled' value='false'/>
      </ProtoInstance>
      <Transform rotation='1 0 0 -1.5' translation='0 0 3.2'>
        <Shape>
          <Text string='"ExtrusionCrossSectionITSS Prototype"'>
            <FontStyle USE='CenterFontStyle'/>
          </Text>
          <Appearance>
            <Material diffuseColor='0 0 0'/>
          </Appearance>
        </Shape>
      </Transform>
    </Transform>
  </Scene>
</X3D>