<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Interactive'  version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' https://www.web3d.org/specifications/x3d-3.0.xsd ' >
<head>
<meta name='titlecontent=' offset.x3d '/>
<meta name='MovingImagecontent='offset-movie.mpg'/>
<meta name='referencecontent=' http://www.nist.gov/vrml.html '/>
<meta name='referencecontent=' http://www.itl.nist.gov/div897/ctg/vrml/vrml.html '/>
<meta name='creatorcontent=' http://www.itl.nist.gov/div897/ctg/vrml/members.html '/>
<meta name='disclaimercontent=' This file was provided by the National Institute of Standards and Technology, and is part of the X3D Conformance Test Suite, available at http://www.nist.gov/vrml.html The information contained within this file is provided for use in establishing conformance to the ISO VRML97 Specification. Conformance to this test does not imply recommendation or endorsement by the National Institute of Standards and Technology (NIST). This software can be redistributed and/or modified freely provided that any derivative works bear some notice that they are derived from it, and any modified versions bear some notice that they have been modified. '/>
<meta name='referencecontent=' Interactive Conformance Testing for VRML, Mary Brady and Lynn Rosenthal, NIST, created 8 September 2010 and updated 25 August 2016, https://www.nist.gov/itl/ssd/information-systems-group/interactive-conformance-testing-vrml '/>
<meta name='infocontent='Correct definition and compliance of this conformance scene is maintained by the X3D Working Group, https://www.web3d.org/working-groups/x3d'/>
<meta name='translatorcontent='Michael Kass NIST, Don Brutzman NPS'/>
<meta name='translatedcontent='21 January 2001'/>
<meta name='modifiedcontent='28 August 2023'/>
<meta name='descriptioncontent='Test the function of CylinderSensors offset field, when autoOffset is false. The offset field (from left to right) is set at -3.14, -1.57, 0, 1.57 and 3.14 radians. The result is that the geometry will initially rotate by these amounts respectively, when the pointing device indicates each geometry. The results (when each geometry is selected) should be, from left to right when viewed from the front: Box 1s GREEN face should face the viewer. Box 2 should face the viewer at a 45 degree angle, with a RED left face and a YELLOW right face at 45 degrees to the viewer. Box 3 RED face should face forward Box 4 should face the viewer at a 45 degree angle, with a BLUE left face and a RED right face at 45 degrees to the viewer. Box 5s GREEN face should face forward'/>
<meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/ConformanceNist/Sensors/CylinderSensor/offset.x3d '/>
<meta name='generatorcontent=' Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html '/>
<meta name='generatorcontent='X3D-Edit 4.0, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../../license.html'/>
</head>
<!-- -->
<Scene>
<WorldInfo title='offset.x3d'/>
<NavigationInfo type='"WALK" "FLY" "ANY"'/>
<Group>
<Viewpoint description='Front Viewposition='0 2 20'/>
<Viewpoint description='Top Vieworientation='1 0 0 -1.57position='0 20 0'/>
<Viewpoint description='Rear Vieworientation='0 1 0 3.14position='0 0 -20'/>
<Viewpoint description='Bottom Vieworientation='1 0 0 1.57position='0 -20 0'/>
<Viewpoint description='Right Vieworientation='0 1 0 1.57position='20 0 0'/>
<Viewpoint description='Left Vieworientation='0 1 0 -1.57position='-20 0 0'/>
</Group>
<Group>
<Transform>
<Shape DEF='AXIS'>
<Appearance>
<Material emissiveColor='1 1 1'/>
</Appearance>
<IndexedLineSet colorPerVertex='falsecolorIndex='0coordIndex='0 1'>
<Color color='1 1 1'/>
<Coordinate point='0 2 0 0 -2 0'/>
</IndexedLineSet>
</Shape>
<!-- ROUTE information for MYCYLINDER1 node:  [from CYLINDER1SENSOR.rotation_changed to rotation ] -->
<Transform DEF='MYCYLINDER1translation='-6 0 0'>
<!-- ROUTE information for CYLINDER1SENSOR node:  [from rotation_changed to MYCYLINDER1.rotation ] -->
<CylinderSensor DEF='CYLINDER1SENSORautoOffset='falsedescription='click and drag to rotateoffset='-3.14'/>

<Shape USE=' AXIS'/>
<Shape DEF='MYCYLINDER'>
<Appearance>
<Material/>
</Appearance>
<IndexedFaceSet colorPerVertex='falsecoordIndex='0 1 3 2 -1 4 5 7 6 -1 6 7 1 0 -1 2 3 5 4 -1 6 0 2 4 -1 1 7 5 3 -1'>
<Color color='1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 1 1 1'/>
<Coordinate point='-1 1 1 -1 -1 1 1 1 1 1 -1 1 1 1 -1 1 -1 -1 -1 1 -1 -1 -1 -1'/>
</IndexedFaceSet>
</Shape>
</Transform>
<!-- ROUTE information for MYCYLINDER2 node:  [from CYLINDER2SENSOR.rotation_changed to rotation ] -->
<Transform DEF='MYCYLINDER2translation='-3 0 0'>
<!-- ROUTE information for CYLINDER2SENSOR node:  [from rotation_changed to MYCYLINDER2.rotation ] -->
<CylinderSensor DEF='CYLINDER2SENSORautoOffset='falsedescription='click and drag to rotateoffset='-0.758'/>

<Shape USE=' AXIS'/>
<Shape USE=' MYCYLINDER'/>
</Transform>
<!-- ROUTE information for MYCYLINDER3 node:  [from CYLINDER3SENSOR.rotation_changed to rotation ] -->
<Transform DEF='MYCYLINDER3'>
<!-- ROUTE information for CYLINDER3SENSOR node:  [from rotation_changed to MYCYLINDER3.rotation ] -->
<CylinderSensor DEF='CYLINDER3SENSORautoOffset='falsedescription='click and drag to rotate'/>

<Shape USE=' AXIS'/>
<Shape USE=' MYCYLINDER'/>
</Transform>
<!-- ROUTE information for MYCYLINDER4 node:  [from CYLINDER4SENSOR.rotation_changed to rotation ] -->
<Transform DEF='MYCYLINDER4translation='3 0 0'>
<!-- ROUTE information for CYLINDER4SENSOR node:  [from rotation_changed to MYCYLINDER4.rotation ] -->
<CylinderSensor DEF='CYLINDER4SENSORautoOffset='falsedescription='click and drag to rotateoffset='0.758'/>

<Shape USE=' AXIS'/>
<Shape USE=' MYCYLINDER'/>
</Transform>
<!-- ROUTE information for MYCYLINDER5 node:  [from CYLINDER5SENSOR.rotation_changed to rotation ] -->
<Transform DEF='MYCYLINDER5translation='6 0 0'>
<!-- ROUTE information for CYLINDER5SENSOR node:  [from rotation_changed to MYCYLINDER5.rotation ] -->
<CylinderSensor DEF='CYLINDER5SENSORautoOffset='falsedescription='click and drag to rotateoffset='3.14'/>

<Shape USE=' AXIS'/>
<Shape USE=' MYCYLINDER'/>
</Transform>
</Transform>
</Group>
< ROUTE  fromNode=' CYLINDER1SENSOR' fromField='rotation_changed' toNode=' MYCYLINDER1' toField='rotation'/>
< ROUTE  fromNode=' CYLINDER2SENSOR' fromField='rotation_changed' toNode=' MYCYLINDER2' toField='rotation'/>
< ROUTE  fromNode=' CYLINDER3SENSOR' fromField='rotation_changed' toNode=' MYCYLINDER3' toField='rotation'/>
< ROUTE  fromNode=' CYLINDER4SENSOR' fromField='rotation_changed' toNode=' MYCYLINDER4' toField='rotation'/>
< ROUTE  fromNode=' CYLINDER5SENSOR' fromField='rotation_changed' toNode=' MYCYLINDER5' toField='rotation'/>
</Scene>
</X3D>
<!--

to top <!-- Event Graph ROUTE Table shows event connections -->
 
<!-- Index for DEF nodes: AXIS, CYLINDER1SENSOR, CYLINDER2SENSOR, CYLINDER3SENSOR, CYLINDER4SENSOR, CYLINDER5SENSOR, MYCYLINDER, MYCYLINDER1, MYCYLINDER2, MYCYLINDER3, MYCYLINDER4, MYCYLINDER5

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6
-->

Event Graph ROUTE Table entries with 5 ROUTE connections total, showing X3D event-model relationships for this scene.

Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.

CYLINDER1SENSOR
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
MYCYLINDER1
Transform
rotation
SFRotation


CYLINDER2SENSOR
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
MYCYLINDER2
Transform
rotation
SFRotation


CYLINDER3SENSOR
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
MYCYLINDER3
Transform
rotation
SFRotation


CYLINDER4SENSOR
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
MYCYLINDER4
Transform
rotation
SFRotation


CYLINDER5SENSOR
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
MYCYLINDER5
Transform
rotation
SFRotation


-->

<!-- Online at
https://www.web3d.org/x3d/content/examples/ConformanceNist/Sensors/CylinderSensor/offsetIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/ConformanceNist/Sensors/CylinderSensor/offset.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)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->