| 1 | 
            <?xml version="1.0" encoding="UTF-8"?>
          | 
      
| 2 | 
            <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
          | 
      
| 3 | <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'> | 
| 4 | <head> | 
| 5 | <meta name='title' content='LimitedObjectiveExperimentPortHueneme.x3d'/> | 
| 6 | <meta name='description' content='Scenario created prior to C3F sponsored AT/FP exercise in Port Hueneme. Provides a spatial represenetation of the scenario to examine potential interactions and weaknesses.'/> | 
| 7 | <meta name='creator' content='James Harney'/> | 
| 8 | <meta name='created' content='29 January 2002'/> | 
| 9 | <meta name='modified' content='2 January 2025'/> | 
| 10 | <meta name='reference' content='US NIMA Chart 18725'/> | 
| 11 | <meta name='reference' content='http://www.mapquest.com'/> | 
| 12 | <meta name='identifier' content='https://savage.nps.edu/Savage/Scenarios/LimitedObjectiveExperimentPortHueneme/LimitedObjectiveExperimentPortHueneme.x3d'/> | 
| 13 | <meta name='generator' content='X3D-Edit 4.0, https://savage.nps.edu/X3D-Edit'/> | 
| 14 | <meta name='license' content='../../license.html'/> | 
| 15 | </head> | 
| 16 | <Scene> | 
| 17 | <WorldInfo title='LimitedObjectiveExperimentPortHueneme.x3d'/> | 
| 18 | <ExternProtoDeclare name='ViewPositionOrientation' appinfo='ViewPositionOrientation provides provides console output of local position and orientation as user navigates' url=' "../../Tools/Authoring/ViewPositionOrientationPrototype.x3d#ViewPositionOrientation" "https://savage.nps.edu/Savage/Tools/Authoring/ViewPositionOrientationPrototype.x3d#ViewPositionOrientation" "../../Tools/Authoring/ViewPositionOrientationPrototype.wrl#ViewPositionOrientation" "https://savage.nps.edu/Savage/Tools/Authoring/ViewPositionOrientationPrototype.wrl#ViewPositionOrientation" '> | 
| 19 | 
                               
                                             <field name='enabled' type='SFBool' accessType='inputOutput'
 appinfo='Whether or not ViewPositionOrientation sends output to console.'/>  | 
                        
| 20 | 
                               
                                             <field name='traceEnabled' type='SFBool' accessType='initializeOnly'
 appinfo='Output internal trace messages for debugging this node - developer use only can be ignored.'/>  | 
                        
| 21 | 
                               
                                             <field name='set_traceEnabled' type='SFBool' accessType='inputOnly'
 appinfo='Ability to turn output tracing on/off at runtime.'/>  | 
                        
| 22 | 
                               
                                             <field name='position_changed' type='SFVec3f' accessType='outputOnly'
 appinfo='Output local position.'/>  | 
                        
| 23 | 
                               
                                             <field name='orientation_changed' type='SFRotation' accessType='outputOnly'
 appinfo='Output local orientation.'/>  | 
                        
| 24 | 
                               
                                             <field name='outputViewpointString' type='MFString' accessType='outputOnly'
 appinfo='MFString value of new Viewpoint'/>  | 
                        
| 25 | </ExternProtoDeclare> | 
| 26 | <ExternProtoDeclare name='CameraCompass12' appinfo='Circular set of compass bearings that follow the active viewpoint set at 360/12 = 30 degree intervals. North = +X axis East = +Z axis up = +Y axis.' url=' "../../../Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.x3d#CameraCompass12" "https://savage.nps.edu/Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.x3d#CameraCompass12" "../../../Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.wrl#CameraCompass12" "https://savage.nps.edu/Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.wrl#CameraCompass12" '> | 
| 27 | <field name='enabled' type='SFBool' accessType='inputOutput'/> | 
| 28 | <field name='positionOffsetFromCamera' type='SFVec3f' accessType='inputOutput'/> | 
| 29 | <field name='markerColor' type='SFColor' accessType='inputOutput'/> | 
| 30 | <field name='labelColor' type='SFColor' accessType='inputOutput'/> | 
| 31 | </ExternProtoDeclare> | 
| 32 | <ExternProtoDeclare name='RHIB' appinfo='Rigid Hull Inflatable Boat' url=' "../../Scenarios/UssColeTerroristAttack/RHIBPrototype.x3d#RHIB" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RHIBPrototype.x3d#RHIB" "../../Scenarios/UssColeTerroristAttack/RHIBPrototype.wrl#RHIB" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RHIBPrototype.wrl#RHIB" '> | 
| 33 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> | 
| 34 | </ExternProtoDeclare> | 
| 35 | <ExternProtoDeclare name='SenseDecideActEngagePrototype' appinfo='Sense-Decide-Act Engagement Range' url=' "EngagementRangePrototype.x3d#SenseDecideActEngagePrototype" "https://savage.nps.edu/Savage/Scenarios/LimitedObjectiveExperimentPortHueneme/EngagementRangePrototype.x3d#SenseDecideActEngagePrototype" "EngagementRangePrototype.wrl#SenseDecideActEngagePrototype" "https://savage.nps.edu/Savage/Scenarios/LimitedObjectiveExperimentPortHueneme/EngagementRangePrototype.wrl#SenseDecideActEngagePrototype" '> | 
| 36 | <field name='engagementPosition' type='SFVec3f' accessType='inputOutput'/> | 
| 37 | <field name='engagementTextPosition' type='SFVec3f' accessType='inputOutput'/> | 
| 38 | </ExternProtoDeclare> | 
| 39 | <ExternProtoDeclare name='ArleighBurke' appinfo='Arleigh Burke class destroyer' url=' "../../ShipsMilitary/DDGArleighBurkeUnitedStates//ArleighBurkePrototype.x3d#ArleighBurke" "https://savage.nps.edu/Savage/ShipsMilitary/DDGArleighBurkeUnitedStates//ArleighBurkePrototype.x3d#ArleighBurke" "../../ShipsMilitary/DDGArleighBurkeUnitedStates/ArleighBurkePrototype.wrl#ArleighBurke" "https://savage.nps.edu/Savage/ShipsMilitary/DDGArleighBurkeUnitedStates/ArleighBurkePrototype.wrl#ArleighBurke" '> | 
| 40 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> | 
| 41 | </ExternProtoDeclare> | 
| 42 | <ExternProtoDeclare name='TerroristBoat' url=' "../UssColeTerroristAttack/TerroristBoatBoxManOnboardPrototype.x3d#TerroristBoat" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/TerroristBoatBoxManOnboardPrototype.x3d#TerroristBoat" "../UssColeTerroristAttack/TerroristBoatBoxManOnboardPrototype.wrl#TerroristBoat" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/TerroristBoatBoxManOnboardPrototype.wrl#TerroristBoat" '> | 
| 43 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> | 
| 44 | </ExternProtoDeclare> | 
| 45 | <ExternProtoDeclare name='NetLauncher' url=' "../../Weapons/Guns/NonLethalNetLauncherPrototype.x3d#NetLauncher" "https://savage.nps.edu/Savage/Weapons/Guns/NonLethalNetLauncherPrototype.x3d#NetLauncher" "../../Weapons/Guns/NonLethalNetLauncherPrototype.wrl#NetLauncher" "https://savage.nps.edu/Savage/Weapons/Guns/NonLethalNetLauncherPrototype.wrl#NetLauncher" '> | 
| 46 | <field name='startLaunchToStbd' type='SFTime' accessType='inputOnly'/> | 
| 47 | <field name='startLaunchToPort' type='SFTime' accessType='inputOnly'/> | 
| 48 | <field name='netTranslation' type='SFVec3f' accessType='outputOnly'/> | 
| 49 | <field name='netScale' type='SFVec3f' accessType='outputOnly'/> | 
| 50 | <field name='netOrientation' type='SFRotation' accessType='outputOnly'/> | 
| 51 | <field name='nettingScale' type='SFVec3f' accessType='outputOnly'/> | 
| 52 | </ExternProtoDeclare> | 
| 53 | <NavigationInfo avatarSize='2 1.6 .75' speed='10' type='"EXAMINE" "FLY" "ANY"' visibilityLimit='30000'/> | 
| 54 | <Background groundAngle='1.309' groundColor='0.2 0.2 0.8 1.0 1.0 1.0' skyAngle='1.309 1.571' skyColor='0.0 0.2 0.7 0.0 0.5 1.0 1.0 1.0 1.0'/> | 
| 55 | <Viewpoint description='Port Hueneme Satellite View' position='0 3 5.2'/> | 
| 56 | <Viewpoint description='Main Scene Entry Point' orientation='-.983 -.117 .141 .3313' position='6143.9 910 8685.6'/> | 
| 57 | <ProtoInstance name='ViewPositionOrientation' DEF='ConsoleOutputViewPositionOrientation'> | 
| 58 | <fieldValue name='enabled' value='true'/> | 
| 59 | </ProtoInstance> | 
| 60 | <!-- ****Geography, Pier, and other objects go here*** --> | 
| 61 | <Transform translation='0 3 0'> | 
| 62 | <Inline url=' "../../Locations/PortHuenemeCalifornia/PortHuenemeHarbor.x3d" "https://savage.nps.edu/Savage/Locations/PortHuenemeCalifornia/PortHuenemeHarbor.x3d" "../../Locations/PortHuenemeCalifornia/PortHuenemeHarbor.wrl" "https://savage.nps.edu/Savage/Locations/PortHuenemeCalifornia/PortHuenemeHarbor.wrl" '/> | 
| 63 | </Transform> | 
| 64 | <Transform translation='0 3 2'> | 
| 65 | <Anchor description='Click Text To Begin Simulation' url=' "Start.bat" "https://savage.nps.edu/Savage/Scenarios/LimitedObjectiveExperimentPortHueneme/Start.bat" '> | 
| 66 | <Shape> | 
| 67 | <Text string='"CLICK HERE" "TO BEGIN"'> | 
| 68 | <FontStyle justify='"MIDDLE" "MIDDLE"' size='.5' style='BOLD'/> | 
| 69 | </Text> | 
| 70 | <Appearance> | 
| 71 | <Material diffuseColor='0 0 1'/> | 
| 72 | </Appearance> | 
| 73 | </Shape> | 
| 74 | </Anchor> | 
| 75 | </Transform> | 
| 76 | <Transform rotation='0 1 0 1.57' translation='5551 0 6602'> | 
| 77 | <Inline url=' "../../Locations/PortHuenemeCalifornia/PortHuenemePiers.x3d" "https://savage.nps.edu/Savage/Locations/PortHuenemeCalifornia/PortHuenemePiers.x3d" "../../Locations/PortHuenemeCalifornia/PortHuenemePiers.wrl" "https://savage.nps.edu/Savage/Locations/PortHuenemeCalifornia/PortHuenemePiers.wrl" '/> | 
| 78 | </Transform> | 
| 79 | <!-- ****Scene Compass **** --> | 
| 80 | <Transform DEF='Compass' rotation='0 1 0 1.57'> | 
| 81 | <ProtoInstance name='CameraCompass12'> | 
| 82 | <fieldValue name='enabled' value='true'/> | 
| 83 | <fieldValue name='positionOffsetFromCamera' value='0 5 0'/> | 
| 84 | <fieldValue name='markerColor' value='0.3 0.3 0.8'/> | 
| 85 | <fieldValue name='labelColor' value='1 1 1'/> | 
| 86 | </ProtoInstance> | 
| 87 | </Transform> | 
| 88 | <!-- ****DDG here*** --> | 
| 89 | <Transform rotation='0 1 0 6.245' translation='5991.755 0 5894.995'> | 
| 90 | <Transform DEF='ColeTransform' rotation='0 1 0 1.57' translation='0 9 0'> | 
| 91 | <Transform DEF='ShockTransform'> | 
| 92 | <ProtoInstance name='ArleighBurke' DEF='DDG-51'/> | 
| 93 | <Transform rotation='0 1 0 3.0' translation='0 -4.55 0'> | 
| 94 | 
                                                 
                                                  
 
                              <!-- Inline
                                                NancyStandShootRifleM24 is a DEF node that has 1 USE node: USE_1 --> <Inline DEF='NancyStandShootRifleM24' url=' "../../../HumanoidAnimation/Legacy/NancyStandShootRifleM24.x3d" "https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Legacy/NancyStandShootRifleM24.x3d" "../../../HumanoidAnimation/Legacy/NancyStandShootRifleM24.wrl" "https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Legacy/NancyStandShootRifleM24.wrl" '/>  | 
                                          
| 95 | <Transform translation='0 1.5 0'> | 
| 96 | 
                                                       
                                                        
 
                                   <!-- ProtoInstance
                                                      myRanges is a DEF node that has 1 USE node: USE_1 --> 
<ProtoInstance name='SenseDecideActEngagePrototype' DEF='myRanges'>  | 
| 97 | <fieldValue name='engagementPosition' value='400 400 400'/> | 
| 98 | <fieldValue name='engagementTextPosition' value='0 400 0'/> | 
| 99 | </ProtoInstance> | 
| 100 | </Transform> | 
| 101 | </Transform> | 
| 102 | </Transform> | 
| 103 | </Transform> | 
| 104 | </Transform> | 
| 105 | <!-- ****RHIB Here**** --> | 
| 106 | <Transform rotation='1 0 0 .78' translation='5872.4 1.2 5908.3'> | 
| 107 | 
                               
                                
 
               <!-- ROUTE information for FinalNetTransform node: 
[from myLauncher.netTranslation to set_translation
                              ]
[from myLauncher.netScale to set_scale
                              ]
[from myLauncher.netOrientation to set_rotation
                              ]
 --> 
<Transform DEF='FinalNetTransform' scale='.01 .01 .01'>  | 
| 108 | <Shape> | 
| 109 | <Appearance> | 
| 110 | <Material diffuseColor='1 0 0' shininess='1'/> | 
| 111 | </Appearance> | 
| 112 | <Cylinder height='1.4' radius='.12'/> | 
| 113 | </Shape> | 
| 114 | 
                                     
                                      
 
                    <!-- ROUTE information for FinalNettingTransform node: 
[from myLauncher.nettingScale to set_scale
                                    ]
 --> 
<Transform DEF='FinalNettingTransform' rotation='0 1 0 1.57' scale='.01 .01 .01' translation='0 0 1'>  | 
| 115 | <Shape DEF='FinalNETTING'> | 
| 116 | <Appearance> | 
| 117 | <Material/> | 
| 118 | 
                                                       
                                                                                         <ImageTexture
                                                      
  url='  "grill.png 
                                                      "  "../../Weapons/Guns/grill.png 
                                                      " "../../../Weapons/Guns/grill.png 
                                                      " "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/Chapter18-TextureMapping/grill.png 
                                                      " '/>
 | 
                                                
| 119 | <TextureTransform center='0.5 0.5' scale='32 8'/> | 
| 120 | </Appearance> | 
| 121 | <IndexedFaceSet DEF='FinalScreen' solid='false' coordIndex='0 1 2 3' texCoordIndex='0 1 2 3'> | 
| 122 | <Coordinate point='-1 -.4 0.1 1 -.4 0.1 1 .4 .1 -1 .4 .1'/> | 
| 123 | <TextureCoordinate point='0 0 1 0 1 1 0 1'/> | 
| 124 | </IndexedFaceSet> | 
| 125 | </Shape> | 
| 126 | </Transform> | 
| 127 | </Transform> | 
| 128 | <Viewpoint description='Net Viewpoint'/> | 
| 129 | </Transform> | 
| 130 | <Transform DEF='RhibTranslation' translation='5866.4 .9 5908.3'> | 
| 131 | <ProtoInstance name='RHIB' DEF='ColeRhib1'/> | 
| 132 | <Transform translation='1 -.5 0'> | 
| 133 | <Inline USE='NancyStandShootRifleM24'/> | 
| 134 | <Transform translation='0 1.5 0'> | 
| 135 | <ProtoInstance USE='myRanges'/> | 
| 136 | </Transform> | 
| 137 | </Transform> | 
| 138 | <Transform translation='6 .3 0'> | 
| 139 | 
                                     
                                      
 
                    <!-- ROUTE information for myLauncher node: 
[from netTouch.touchTime to startLaunchToStbd
                                    ]
[from netTranslation to FinalNetTransform.set_translation
                                    ]
[from netScale to FinalNetTransform.set_scale
                                    ]
[from nettingScale to FinalNettingTransform.set_scale
                                    ]
[from netOrientation to FinalNetTransform.set_rotation
                                    ]
 --> 
<ProtoInstance name='NetLauncher' DEF='myLauncher'/>  | 
                              
| 140 | 
                                     
                                      
 
                    <!-- ROUTE information for netTouch node: 
[from touchTime to myLauncher.startLaunchToStbd
                                    ]
 --> 
<TouchSensor DEF='netTouch' description='touch to launch net'/>  | 
                              
| 141 | < ROUTE fromNode='netTouch' fromField='touchTime' toNode='myLauncher' toField='startLaunchToStbd'/> | 
| 142 | </Transform> | 
| 143 | < ROUTE fromNode='myLauncher' fromField='netTranslation' toNode='FinalNetTransform' toField='set_translation'/> | 
| 144 | < ROUTE fromNode='myLauncher' fromField='netScale' toNode='FinalNetTransform' toField='set_scale'/> | 
| 145 | < ROUTE fromNode='myLauncher' fromField='nettingScale' toNode='FinalNettingTransform' toField='set_scale'/> | 
| 146 | < ROUTE fromNode='myLauncher' fromField='netOrientation' toNode='FinalNetTransform' toField='set_rotation'/> | 
| 147 | </Transform> | 
| 148 | <!-- ****Terrorist Boat with Boxman here **** --> | 
| 149 | <Transform translation='5889.9 .5 6220'> | 
| 150 | <Transform DEF='TerroristBoatTransform' rotation='0 1 0 1.57'> | 
| 151 | <ProtoInstance name='TerroristBoat' DEF='Boat'/> | 
| 152 | </Transform> | 
| 153 | </Transform> | 
| 154 | </Scene> | 
| 155 | </X3D> | 
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.
| 
               netTouch
                TouchSensor touchTime SFTime  | 
            
               myLauncher
                ProtoInstance startLaunchToStbd SFTime  | 
            
               
                  
                     then
                  
               
                | 
            
               myLauncher
                ProtoInstance netOrientation SFRotation  | 
            
               FinalNetTransform
                Transform set_rotation SFRotation  | 
            
||
| 
               
                  
                     then
                  
               
                | 
            
               myLauncher
                ProtoInstance netScale SFVec3f  | 
            
               FinalNetTransform
                Transform set_scale SFVec3f  | 
            
||||
| 
               
                  
                     then
                  
               
                | 
            
               myLauncher
                ProtoInstance nettingScale SFVec3f  | 
            
               FinalNettingTransform
                Transform set_scale SFVec3f  | 
            
||||
| 
               
                  
                     then
                  
               
                | 
            
               myLauncher
                ProtoInstance netTranslation SFVec3f  | 
            
               FinalNetTransform
                Transform set_translation SFVec3f  | 
            
            
||||
| line 81
                ProtoInstance CameraCompass12  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| 
               Boat
                ProtoInstance TerroristBoat  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| 
               ColeRhib1
                ProtoInstance RHIB  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| 
               ConsoleOutputViewPositionOrientation
                ProtoInstance ViewPositionOrientation  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| 
               DDG-51
                ProtoInstance ArleighBurke  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| 
               myLauncher
                ProtoInstance netTranslation SFVec3f  | 
            
               FinalNetTransform
                Transform set_translation SFVec3f  | 
            
            
|
| 
               myLauncher
                ProtoInstance netScale SFVec3f  | 
            
               FinalNetTransform
                Transform set_scale SFVec3f  | 
            
            
|
| 
               myLauncher
                ProtoInstance nettingScale SFVec3f  | 
            
               FinalNettingTransform
                Transform set_scale SFVec3f  | 
            
            
|
| 
               myLauncher
                ProtoInstance netOrientation SFRotation  | 
            
               FinalNetTransform
                Transform set_rotation SFRotation  | 
            
            
| 
               myRanges
                ProtoInstance SenseDecideActEngagePrototype  | 
            No ROUTE connection found for output events from this node. This ProtoInstance contains SFNode/MFNode fieldValue declarations with direct access to other nodes, and thus has potential to produce run-time animation.  | 
         
| line 65
                Anchor  | 
            
               description='Click Text To Begin Simulation'  User-interaction hint for this node.  | 
         
         <!--
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)
   
<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.
-->