1 |
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
|
3 | <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'> |
4 | <head> |
5 | <meta name='title' content='offset.x3d'/> |
6 | <meta name='MovingImage' content='offset-movie.mpg'/> |
7 | <meta name='reference' content='http://www.nist.gov/vrml.html'/> |
8 | <meta name='reference' content='http://www.itl.nist.gov/div897/ctg/vrml/vrml.html'/> |
9 | <meta name='creator' content='http://www.itl.nist.gov/div897/ctg/vrml/members.html'/> |
10 | <meta name='disclaimer' content='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. '/> |
11 | <meta name='reference' content='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'/> |
12 | <meta name='info' content='Correct definition and compliance of this conformance scene is maintained by the X3D Working Group, https://www.web3d.org/working-groups/x3d'/> |
13 | <meta name='creator' content='Michael Kass NIST'/> |
14 | <meta name='translator' content='Don Brutzman'/> |
15 | <meta name='translated' content='21 January 2001'/> |
16 | <meta name='modified' content='28 August 2023'/> |
17 | <meta name='description' content='Test the function of SphereSensors offset field. The world includes 3 SphereSensors, each associated with its own Box geometry. Each box has a red X, green Y, and blue Z axis. The left Box geometry has an offset value of -90 degrees X rotation. The center Box has an offset of +90 degrees Y rotation. The right Box has an offset of -90 degrees Z rotation. When the left Box geometry is selected by the pointing device (by holding down the primary pointing device button while indicating the geometry), it should "snap" to its offset position, and the red line should extend from the right face of the box, along the X axis, the green line should extend from the rear face, along the Z axis, and the blue line should extend vertically from the top face, along to the Z axis. Indicating the central Box should result in: the red line should extend from the rear face of the Box, along the Z axis, the green line should extend from the top face of the box, along the Y axis, and the blue line should extend from the right face of the box, along the X axis. Indicating the the right Box should result in: the red line should extend from the bottom face, along the Y axis, the green line should extend from the right face, along the X axis, and the blue line should extend from the front face, along the Z axis. All geometry should "snap" to its original offset position each time it is selected.'/> |
18 | <meta name='identifier' content='https://www.web3d.org/x3d/content/examples/ConformanceNist/Sensors/SphereSensor/offset.x3d'/> |
19 | <meta name='generator' content='Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html'/> |
20 | <meta name='generator' content='X3D-Edit 4.0, https://savage.nps.edu/X3D-Edit'/> |
21 | <meta name='license' content='../../license.html'/> |
22 | </head> |
23 | <Scene> |
24 | <WorldInfo title='offset.x3d'/> |
25 | <NavigationInfo type='"WALK" "FLY" "ANY"'/> |
26 | <Viewpoint description='Front View'/> |
27 | <Viewpoint description='Rear View' orientation='0 1 0 3.14' position='0 0 -10'/> |
28 | <Viewpoint description='Top View' orientation='1 0 0 -1.57' position='0 10 0'/> |
29 | <Viewpoint description='Bottom View' orientation='1 0 0 1.57' position='0 -10 0'/> |
30 | <Viewpoint description='Right View' orientation='0 1 0 1.57' position='10 0 0'/> |
31 | <Viewpoint description='Left View' orientation='0 1 0 -1.57' position='-10 0 0'/> |
32 | <Group> |
33 | <Transform> |
34 | <Transform> |
35 |
<!-- ROUTE information for MIDDLE_SENSOR node:
[from rotation_changed to MIDDLE_BOX.rotation
]
-->
<SphereSensor DEF='MIDDLE_SENSOR' autoOffset='false' description='click and drag to rotate' offset='0 1 0 1.57'/> |
36 |
<!-- ROUTE information for MIDDLE_BOX node:
[from MIDDLE_SENSOR.rotation_changed to rotation
]
-->
<Transform DEF='MIDDLE_BOX'> |
37 | <Shape> |
38 | <Appearance> |
39 | <Material diffuseColor='1 1 0'/> |
40 | </Appearance> |
41 | <Box/> |
42 | </Shape> |
43 | |
44 | <IndexedLineSet colorPerVertex='false' colorIndex='0 1 2' coordIndex='0 1 -1 0 2 -1 0 3 -1'> |
45 | <Color color='1 0 0 0 1 0 0 0 1'/> |
46 | <Coordinate point='0 0 0 2 0 0 0 2 0 0 0 2'/> |
47 | </IndexedLineSet> |
48 | </Shape> |
49 | </Transform> |
50 | </Transform> |
51 | <Transform translation='-4.5 0 0'> |
52 |
<!-- ROUTE information for LEFT_SENSOR node:
[from rotation_changed to LEFT_BOX.rotation
]
-->
<SphereSensor DEF='LEFT_SENSOR' autoOffset='false' description='click and drag to rotate' offset='1 0 0 -1.57'/> |
53 |
<!-- ROUTE information for LEFT_BOX node:
[from LEFT_SENSOR.rotation_changed to rotation
]
-->
<Transform DEF='LEFT_BOX'> |
54 | <Shape> |
55 | <Appearance> |
56 | <Material diffuseColor='1 1 0'/> |
57 | </Appearance> |
58 | <Box/> |
59 | </Shape> |
60 | <Shape USE='AXIS'/> |
61 | </Transform> |
62 | </Transform> |
63 | <Transform translation='4.5 0 0'> |
64 |
<!-- ROUTE information for RIGHT_SENSOR node:
[from rotation_changed to RIGHT_BOX.rotation
]
-->
<SphereSensor DEF='RIGHT_SENSOR' autoOffset='false' description='click and drag to rotate' offset='0 0 1 -1.57'/> |
65 |
<!-- ROUTE information for RIGHT_BOX node:
[from RIGHT_SENSOR.rotation_changed to rotation
]
-->
<Transform DEF='RIGHT_BOX'> |
66 | <Shape> |
67 | <Appearance> |
68 | <Material diffuseColor='1 1 0'/> |
69 | </Appearance> |
70 | <Box/> |
71 | </Shape> |
72 | <Shape USE='AXIS'/> |
73 | </Transform> |
74 | </Transform> |
75 | </Transform> |
76 | </Group> |
77 | < ROUTE fromNode='LEFT_SENSOR' fromField='rotation_changed' toNode='LEFT_BOX' toField='rotation'/> |
78 | < ROUTE fromNode='MIDDLE_SENSOR' fromField='rotation_changed' toNode='MIDDLE_BOX' toField='rotation'/> |
79 | < ROUTE fromNode='RIGHT_SENSOR' fromField='rotation_changed' toNode='RIGHT_BOX' toField='rotation'/> |
80 | </Scene> |
81 | </X3D> |
Event Graph ROUTE Table entries with 3 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.
LEFT_SENSOR
SphereSensor rotation_changed SFRotation |
LEFT_BOX
Transform rotation SFRotation |
MIDDLE_SENSOR
SphereSensor rotation_changed SFRotation |
MIDDLE_BOX
Transform rotation SFRotation |
RIGHT_SENSOR
SphereSensor rotation_changed SFRotation |
RIGHT_BOX
Transform rotation SFRotation |
<!--
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)
-->
<!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->