<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.2//EN" "https://www.web3d.org/specifications/x3d-3.2.dtd">
<X3D profile='Immersive'
version='3.2'
xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance'
xsd:noNamespaceSchemaLocation
='
https://www.web3d.org/specifications/x3d-3.2.xsd
'
>
<head>
</head>
<!--
-->
<Scene>
<!-- Utilize ExtrusionCrossSection ProtoInstance as a Shape node (with containerField="children") rather than an Extrusion node (with containerField="geometry"). -->
<WorldInfo title='ExtrusionCrossSectionExampleTorus.x3d'/>
<ExternProtoDeclare name='ExtrusionCrossSection' 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/Basic/course/ExtrusionCrossSectionPrototype.x3d
'
url='
"ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "https://www.web3d.org/x3d/content/examples/Basic/course/ExtrusionCrossSectionPrototype.x3d#ExtrusionCrossSection" "ExtrusionCrossSectionPrototype.wrl#ExtrusionCrossSection" "https://www.web3d.org/x3d/content/examples/Basic/course/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='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'
/>
<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'
/>
</ExternProtoDeclare>
<!-- ==================== -->
<!-- Example instance adapted from Figure15.12Torus.x3d -->
<!-- https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Chapter15-Extrusion/Figure15.12Torus.x3d
-->
<Viewpoint description='Torus crossSections, spine and hull' orientation='-0.351 0.926 0.14 0.81' position='10 5 10'/>
<ProtoInstance name='ExtrusionCrossSection'>
<fieldValue name='name' value='Torus'/>
<fieldValue name='crossSection' value='0 1 0.38 0.92 0.71 0.71 0.92 0.38 1 0 0.92 -0.38 0.71 -0.71 0.38 -0.92 0 -1 -0.38 -0.92 -0.71 -0.71 -0.92 -0.38 -1 0 -0.92 0.38 -0.71 0.71 -0.38 0.92 0 1'/>
<fieldValue name='spine' value='2.00 0.0 0.00 1.85 0.0 0.77 1.41 0.0 1.41 0.77 0.0 1.85 0.00 0.0 2.00 -0.77 0.0 1.85 -1.41 0.0 1.41 -1.85 0.0 0.77 -2.00 0.0 0.00 -1.85 0.0 -0.77 -1.41 0.0 -1.41 -0.77 0.0 -1.85 0.00 0.0 -2.00 0.77 0.0 -1.85 1.41 0.0 -1.41 1.85 0.0 -0.77 2.00 0.0 0.00'/>
<fieldValue name='beginCap' value='false'/>
<fieldValue name='endCap' value='false'/>
<fieldValue name='creaseAngle' value='1.57'/>
<fieldValue name='spineColor' value='1 1 1'/>
<fieldValue name='crossSectionColor' value='0.8 0.8 0'/>
<fieldValue name='crossSectionTransparency' value='0.1'/>
<fieldValue name='extrusionColor' value='1 0 1'/>
<fieldValue name='extrusionTransparency' value='0.8'/>
<fieldValue name='traceEnabled' value='false'/>
</ProtoInstance>
<Transform scale='4 4 4'>
</Transform>
</Scene>
</X3D>
<!--
-->
-->
<!--
Online at
https://www.web3d.org/x3d/content/examples/Basic/course/ExtrusionCrossSectionExampleTorusIndex.html
-->
<!--
Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/course/ExtrusionCrossSectionExampleTorus.x3d
-->
<!--
Color legend: X3D terminology
<X3dNode
DEF='idName' field='value'/>
matches XML terminology
<XmlElement
DEF='idName' attribute='value'/>
(Light-blue background: event-based behavior node or statement)
(Grey background inside box: inserted documentation)
(Magenta background: X3D Extensibility)
<ProtoInstance
name='ProtoName'>
<field
name='fieldName'/> </ProtoInstance>
-->
<!--
For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints.
-->