| 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='Immersive' 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='SimpleOilRig1994.x3d'/> | 
| 6 | <meta name='description' content='Simple oil-rig model first created in 1994 using OpenInventor. Translation performed as part of AUV tutorial at UUST 2003. Thank you Christopher Williams for naming the OffshoreStructures top-level SAVAGE category!'/> | 
| 7 | <meta name='hint' content='bottom corner at origin'/> | 
| 8 | <meta name='creator' content='Don Brutzman'/> | 
| 9 | <meta name='translator' content='Xeena VRML importer, X3D-Edit 3.1, https://www.web3d.org/x3d/content/README.X3D-Edit.html'/> | 
| 10 | <meta name='created' content='1 January 1994'/> | 
| 11 | <meta name='translated' content='24 August 2003'/> | 
| 12 | <meta name='modified' content='20 October 2019'/> | 
| 13 | <meta name='reference' content='http://faculty.nps.edu/brutzman/dissertation'/> | 
| 14 | <meta name='subject' content='Simple oil rig model'/> | 
| 15 | <meta name='identifier' content='https://savage.nps.edu/Savage/OffshoreStructures/OilRigs/SimpleOilRig1994.x3d'/> | 
| 16 | <meta name='generator' content='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/> | 
| 17 | <meta name='generator' content='Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html'/> | 
| 18 | <meta name='license' content='../../license.html'/> | 
| 19 | </head> | 
| 20 | <Scene> | 
| 21 | <WorldInfo title='SimpleOilRig1994.x3d'/> | 
| 22 | <Background groundColor='0.1 0.3 0.1' skyColor='0.4 0.4 0.7'/> | 
| 23 | <Viewpoint description='View from surface, 100m back' position='0 0 100'/> | 
| 24 | <Transform scale='10 10 10'> | 
| 25 | <Inline DEF='CoordinateAxes' url=' "../../X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.x3d" "../../X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.wrl" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.wrl" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.wrl" '/> | 
| 26 | </Transform> | 
| 27 | 
                         
                          
 
          <!-- ROUTE information for SpinningViewpointTransform node: 
[from SpinInterpolator.value_changed to set_rotation
                        ]
 --> 
<Transform DEF='SpinningViewpointTransform' translation='0 38 0'>  | 
| 28 | <Viewpoint description='Overlooking top deck' position='17.0 32.0 60'/> | 
| 29 | 
                               
                                
 
               <!-- ROUTE information for Clock node: 
[from fraction_changed to SpinInterpolator.set_fraction
                              ]
 --> 
<TimeSensor DEF='Clock' cycleInterval='20' loop='true'/>  | 
                        
| 30 | 
                               
                                
 
               <!-- ROUTE information for SpinInterpolator node: 
[from Clock.fraction_changed to set_fraction
                              ]
[from value_changed to SpinningViewpointTransform.set_rotation
                              ]
 --> 
<OrientationInterpolator DEF='SpinInterpolator' key='0 0.5 1' keyValue='0 1 0 0.0 0 1 0 3.1415926535897932384626433832795 0 1 0 6.283185307179586476925286766559'/>  | 
                        
| 31 | < ROUTE fromNode='Clock' fromField='fraction_changed' toNode='SpinInterpolator' toField='set_fraction'/> | 
| 32 | < ROUTE fromNode='SpinInterpolator' fromField='value_changed' toNode='SpinningViewpointTransform' toField='set_rotation'/> | 
| 33 | </Transform> | 
| 34 | <Transform DEF='OilRigRootTransform' translation='-20 38 20'> | 
| 35 | <Transform translation='0.0 -10.0 0.0'> | 
| 36 | <Shape> | 
| 37 | <Appearance> | 
| 38 | |
| 39 | </Appearance> | 
| 40 | |
| 41 | </Shape> | 
| 42 | </Transform> | 
| 43 | <Transform translation='0.0 -10.0 -35.0'> | 
| 44 | <Shape> | 
| 45 | <Appearance> | 
| 46 | <Material USE='blueMetal'/> | 
| 47 | </Appearance> | 
| 48 | <Cylinder USE='Leg'/> | 
| 49 | </Shape> | 
| 50 | </Transform> | 
| 51 | <Transform translation='35.0 -10.0 -35.0'> | 
| 52 | <Shape> | 
| 53 | <Appearance> | 
| 54 | <Material USE='blueMetal'/> | 
| 55 | </Appearance> | 
| 56 | <Cylinder USE='Leg'/> | 
| 57 | </Shape> | 
| 58 | </Transform> | 
| 59 | <Transform translation='35.0 -10.0 0.0'> | 
| 60 | <Shape> | 
| 61 | <Appearance> | 
| 62 | <Material USE='blueMetal'/> | 
| 63 | </Appearance> | 
| 64 | <Cylinder USE='Leg'/> | 
| 65 | </Shape> | 
| 66 | </Transform> | 
| 67 | <Transform rotation='0.0 0.0 1.0 1.2' translation='17.5 10.0 0.0'> | 
| 68 | <Shape> | 
| 69 | <Appearance> | 
| 70 | |
| 71 | </Appearance> | 
| 72 | |
| 73 | </Shape> | 
| 74 | </Transform> | 
| 75 | <Transform rotation='0.0 0.0 1.0 -1.2' translation='17.5 10.0 0.0'> | 
| 76 | <Shape> | 
| 77 | <Appearance> | 
| 78 | <Material USE='white'/> | 
| 79 | </Appearance> | 
| 80 | <Cylinder USE='CrossLeg'/> | 
| 81 | </Shape> | 
| 82 | </Transform> | 
| 83 | <Transform rotation='1.0 0.0 0.0 1.2' translation='0.0 10.0 -17.5'> | 
| 84 | <Shape> | 
| 85 | <Appearance> | 
| 86 | <Material USE='white'/> | 
| 87 | </Appearance> | 
| 88 | <Cylinder USE='CrossLeg'/> | 
| 89 | </Shape> | 
| 90 | </Transform> | 
| 91 | <Transform rotation='1.0 0.0 0.0 -1.2' translation='0.0 10.0 -17.5'> | 
| 92 | <Shape> | 
| 93 | <Appearance> | 
| 94 | <Material USE='white'/> | 
| 95 | </Appearance> | 
| 96 | <Cylinder USE='CrossLeg'/> | 
| 97 | </Shape> | 
| 98 | </Transform> | 
| 99 | <Transform rotation='1.0 0.0 0.0 1.2' translation='35.0 10.0 -17.5'> | 
| 100 | <Shape> | 
| 101 | <Appearance> | 
| 102 | <Material USE='white'/> | 
| 103 | </Appearance> | 
| 104 | <Cylinder USE='CrossLeg'/> | 
| 105 | </Shape> | 
| 106 | </Transform> | 
| 107 | <Transform rotation='1.0 0.0 0.0 -1.2' translation='35.0 10.0 -17.5'> | 
| 108 | <Shape> | 
| 109 | <Appearance> | 
| 110 | <Material USE='white'/> | 
| 111 | </Appearance> | 
| 112 | <Cylinder USE='CrossLeg'/> | 
| 113 | </Shape> | 
| 114 | </Transform> | 
| 115 | <Transform rotation='0.0 0.0 1.0 1.2' translation='17.5 10.0 -35.0'> | 
| 116 | <Shape> | 
| 117 | <Appearance> | 
| 118 | <Material USE='white'/> | 
| 119 | </Appearance> | 
| 120 | <Cylinder USE='CrossLeg'/> | 
| 121 | </Shape> | 
| 122 | </Transform> | 
| 123 | <Transform rotation='0.0 0.0 1.0 -1.2' translation='17.5 10.0 -35.0'> | 
| 124 | <Shape> | 
| 125 | <Appearance> | 
| 126 | <Material USE='white'/> | 
| 127 | </Appearance> | 
| 128 | <Cylinder USE='CrossLeg'/> | 
| 129 | </Shape> | 
| 130 | </Transform> | 
| 131 | <Transform translation='17.5 17.5 -17.5'> | 
| 132 | <Shape> | 
| 133 | <Appearance> | 
| 134 | <Material diffuseColor='1.0 0.2 0.2'/> | 
| 135 | </Appearance> | 
| 136 | <Box size='50.0 2.0 50.0'/> | 
| 137 | </Shape> | 
| 138 | </Transform> | 
| 139 | <Transform translation='27.5 22.5 -17.5'> | 
| 140 | <Shape> | 
| 141 | <Appearance> | 
| 142 | <Material diffuseColor='1.0 1.0 0.0'/> | 
| 143 | </Appearance> | 
| 144 | <Box size='15.0 8.0 10.0'/> | 
| 145 | </Shape> | 
| 146 | </Transform> | 
| 147 | <Transform translation='5.0 21.5 -17.5'> | 
| 148 | <Shape> | 
| 149 | <Appearance> | 
| 150 | <Material diffuseColor='0.4 1.0 0.4'/> | 
| 151 | </Appearance> | 
| 152 | <Box size='10.0 6.0 10.0'/> | 
| 153 | </Shape> | 
| 154 | </Transform> | 
| 155 | </Transform> | 
| 156 | </Scene> | 
| 157 | </X3D> | 
Event Graph ROUTE Table entries with 2 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.
| 
               Clock
                TimeSensor fraction_changed SFFloat  | 
            
               SpinInterpolator
                OrientationInterpolator set_fraction SFFloat  | 
            
               
                  
                     then
                  
               
                | 
            
               SpinInterpolator
                OrientationInterpolator value_changed SFRotation  | 
            
               SpinningViewpointTransform
                Transform set_rotation SFRotation  | 
            
            
         <!--
Color-coding 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.
-->