| 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 | <component level='1' name='DIS'/> |
| 6 | <meta name='title' content='UssColeTerroristAttackDIS.x3d'/> |
| 7 | <meta name='description' content='Networked model of the terrorist attack on the USS COLE. Run TerroristBoatControlPanel to drive the boat.'/> |
| 8 | <meta name='creator' content='James Harney'/> |
| 9 | <meta name='created' content='5 November 2001'/> |
| 10 | <meta name='modified' content='20 October 2019'/> |
| 11 | <meta name='reference' content='SimulationStartPanel.bat'/> |
| 12 | <meta name='reference' content='RhibBoatControlPanel.bat'/> |
| 13 | <meta name='reference' content='TerroristBoatControlPanel.bat'/> |
| 14 | <meta name='reference' content='SimulationStartPanel.java'/> |
| 15 | <meta name='reference' content='ModePanel.java'/> |
| 16 | <meta name='reference' content='AboutSimulator.java'/> |
| 17 | <meta name='reference' content='TerroristBoatControlPanel.java'/> |
| 18 | <meta name='reference' content='TerroristBoatActionInterpreter.java'/> |
| 19 | <meta name='reference' content='RHIBBoatControlPanel.java'/> |
| 20 | <meta name='reference' content='RHIBBoatActionInterpreter.java'/> |
| 21 | <meta name='reference' content='http://www.foia.navy.mil/usscole/index.html'/> |
| 22 | <meta name='reference' content='https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/UssColeTerroristAttack.ppt'/> |
| 23 | <meta name='reference' content='https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/UssColeTerroristAttack.ppt'/> |
| 24 | <meta name='reference' content='http://www.pilotonline.com'/> |
| 25 | <meta name='reference' content='http://www.prop1.org/nucnews/nucnews.htm'/> |
| 26 | <meta name='reference' content='http://www.jpost.com/Editions/2001/08/12/Features/Features.32382.html'/> |
| 27 | <meta name='reference' content='https://savage.nps.edu/Savage/Scenarios/CollisionUssGreenvilleEhimeMaru/CollisionCourses.x3d'/> |
| 28 | <meta name='reference' content='https://savage.nps.edu/Savage/Scenarios/CollisionUssGreenvilleEhimeMaru/CollisionCourses.wrl'/> |
| 29 | <meta name='reference' content='https://savage.nps.edu/Savage/Tools/Animation/WaypointInterpolatorPrototype.x3d'/> |
| 30 | <meta name='reference' content='https://www.fas.org/man/dod-101/navy/docs/swos/cmd/cp17/sld001.htm'/> |
| 31 | <meta name='reference' content='NIMA Chart No. 62098 Banda at Tdwahi, 4th Ed. 30 Sep 1995'/> |
| 32 | <meta name='reference' content='NIMA62098.jpg'/> |
| 33 | <meta name='reference' content='https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/NIMA62098.jpg'/> |
| 34 | <meta name='reference' content='https://www.fas.org/irp/doddir/dod/app-j_THREATCON.htm'/> |
| 35 | <meta name='reference' content='https://www.fas.org/irp/program/core/dted.htm'/> |
| 36 | <meta name='subject' content='USS COLE, Al-Qaida sponsored Terrorist Attacks'/> |
| 37 | <meta name='identifier' content='https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/UssColeTerroristAttackDIS.x3d'/> |
| 38 | <meta name='generator' content='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/> |
| 39 | <meta name='license' content='../../license.html'/> |
| 40 | </head> |
| 41 | <Scene> |
| 42 | <WorldInfo title='UssColeTerroristAttackDIS.x3d'/> |
| 43 | <ExternProtoDeclare name='TNTBasedExplosion' url=' "PhysicsBasedExplosionPrototype.wrl#TNTBasedExplosion" "PhysicsBasedExplosionPrototype.x3d#TNTBasedExplosion" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/PhysicsBasedExplosionPrototype.wrl#TNTBasedExplosion" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/PhysicsBasedExplosionPrototype.x3d#TNTBasedExplosion" '> |
| 44 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> |
| 45 | </ExternProtoDeclare> |
| 46 | <ExternProtoDeclare name='TerroristBoat' url=' "TerroristBoatPrototype.wrl#TerroristBoat" "TerroristBoatPrototype.x3d#TerroristBoat" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/TerroristBoatPrototype.wrl#TerroristBoat" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/TerroristBoatPrototype.x3d#TerroristBoat" '> |
| 47 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> |
| 48 | </ExternProtoDeclare> |
| 49 | <ExternProtoDeclare name='ArleighBurke' url=' "../../ShipsMilitary/DDGArleighBurkeUnitedStates/ArleighBurkePrototype.wrl#ArleighBurke" "https://savage.nps.edu/Savage/ShipsMilitary/Ships/DDGArleighBurkeUnitedStates/ArleighBurkePrototype.wrl#ArleighBurke" "../../ShipsMilitary/DDGArleighBurkeUnitedStates//ArleighBurkePrototype.x3d#ArleighBurke" "https://savage.nps.edu/Savage/ShipsMilitary/DDGArleighBurkeUnitedStates//ArleighBurkePrototype.x3d#ArleighBurke" '> |
| 50 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> |
| 51 | </ExternProtoDeclare> |
| 52 | <ExternProtoDeclare name='CameraCompass12' url=' "../../../Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.wrl#CameraCompass12" "https://savage.nps.edu/Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.wrl#CameraCompass12" "../../../Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.x3d#CameraCompass12" "https://savage.nps.edu/Savage/Tools/HeadsUpDisplays/CameraCompassPrototypes.x3d#CameraCompass12" '> |
| 53 | <field name='enabled' type='SFBool' accessType='inputOutput'/> |
| 54 | <field name='positionOffsetFromCamera' type='SFVec3f' accessType='inputOutput'/> |
| 55 | <field name='markerColor' type='SFColor' accessType='inputOutput'/> |
| 56 | <field name='labelColor' type='SFColor' accessType='inputOutput'/> |
| 57 | </ExternProtoDeclare> |
| 58 | <ExternProtoDeclare name='RHIB' url=' "RHIBPrototype.wrl#RHIB" "RHIBPrototype.x3d#RHIB" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RHIBPrototype.wrl#RHIB" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RHIBBoatPrototype.x3d#RHIB" '> |
| 59 | <field name='startExplosion' type='SFTime' accessType='inputOnly'/> |
| 60 | </ExternProtoDeclare> |
| 61 | <Group> |
| 62 | <NavigationInfo speed='100' type='"EXAMINE" "FLY" "ANY"' visibilityLimit='50000'/> |
| 63 | <Background groundAngle='1.309 1.570796' groundColor='0.1 0.1 0 0.4 0.25 0.2 0.6 0.6 0.6' skyAngle='1.309 1.571' skyColor='0 0.2 0.7 0 0.5 1 1 1 1'/> |
| 64 | <TimeSensor DEF='MasterClock' loop='true'/> |
| 65 | <TimeSensor DEF='TerroristClock' loop='true'/> |
| 66 | <!-- *****************************Main Scene Viewpoints****************** --> |
| 67 | <Transform> |
| 68 | <Viewpoint description='Aden Chart' position='0 .1 4'/> |
| 69 | <Viewpoint description='Aden Chart Close Up' position='0 .5 2'/> |
| 70 | <Viewpoint description='Harbor View' orientation='1 0 0 -.95' position='17000 20000 40000'/> |
| 71 | <Viewpoint description='Overhead RefuelingDolphin Seven' orientation='1 0 0 -1.57' position='27838.31 700 14166.67'/> |
| 72 | <Viewpoint description='Final View of Terrorist Attack' position='27793.31 10 14330'/> |
| 73 | <!-- ***************************Scene Compass********************** --> |
| 74 | </Transform> |
| 75 | <Transform DEF='Compass' rotation='0 1 0 1.57'> |
| 76 | <ProtoInstance name='CameraCompass12'> |
| 77 | <fieldValue name='enabled' value='true'/> |
| 78 | <fieldValue name='positionOffsetFromCamera' value='0 5 0'/> |
| 79 | <fieldValue name='markerColor' value='0.3 0.3 0.8'/> |
| 80 | <fieldValue name='labelColor' value='1 1 1'/> |
| 81 | </ProtoInstance> |
| 82 | </Transform> |
| 83 | <!-- *************Geography and Entry Point Code*** --> |
| 84 | <LOD center='27793.31 0 14159'> |
| 85 | <Transform> |
| 86 | <Inline url=' "AdenHarbor.wrl" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/AdenHarbor.wrl" "AdenHarbor.x3d" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/AdenHarbor.x3d" '/> |
| 87 | <Inline url=' "AdenHarborChart.wrl" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/AdenHarborChart.wrl" "AdenHarborChart.x3d" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/AdenHarborChart.x3d" '/> |
| 88 | </Transform> |
| 89 | </LOD> |
| 90 | <!-- *************Refueling Pier Code************* --> |
| 91 | <Transform DEF='RefuelingDolphin' translation='27793.31 -10 14159'> |
| 92 | <Inline url=' "RefuelingPierSeven.wrl" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RefuelingPierSeven.wrl" "RefuelingPierSeven.x3d" "https://savage.nps.edu/Savage/Scenarios/UssColeTerroristAttack/RefuelingPierSeven.x3d" '/> |
| 93 | </Transform> |
| 94 | <!-- *************COLE Code************* --> |
| 95 |
<!-- ROUTE information for Cole node:
[from isCollided to ColeTimeFilter.setStart
]
-->
<EspduTransform DEF='Cole' address='224.2.181.145' marking='DDG67' port='62040' rotation='0 1 0 1.73' siteID='67' translation='27838.31 0 14167' containerField='children'> |
| 96 | <!-- traceColor="0 0 1" traceOffset="0 3 0" traceFontSize="6" --> |
| 97 | <Transform DEF='ColeTransform' rotation='0 1 0 1.57'> |
| 98 | <Transform DEF='ShockTransform'> |
| 99 |
<!-- ROUTE information for DDG-51 node:
[from ColeTimeFilter.startEventTime to startExplosion
]
-->
<ProtoInstance name='ArleighBurke' DEF='DDG-51'/> |
| 100 | </Transform> |
| 101 | </Transform> |
| 102 | </EspduTransform> |
| 103 |
<!-- ROUTE information for ColeTimeFilter node:
[from Cole.isCollided to setStart
]
[from startEventTime to DDG-51.startExplosion
]
-->
<Script DEF='ColeTimeFilter'> |
| 104 | <field name='setStart' type='SFBool' accessType='inputOnly'/> |
| 105 | <field name='startEventTime' type='SFTime' accessType='outputOnly'/> |
<![CDATA[
ecmascript:
function setStart ( value, timeStamp) {
startEventTime = timeStamp;
}
]]>
|
|
| 107 | </Script> |
| 108 | < ROUTE fromNode='Cole' fromField='isCollided' toNode='ColeTimeFilter' toField='setStart'/> |
| 109 | < ROUTE fromNode='ColeTimeFilter' fromField='startEventTime' toNode='DDG-51' toField='startExplosion'/> |
| 110 | <!-- *************Terrorist Boat and Explosion Code*** --> |
| 111 |
<!-- ROUTE information for RedBoat node:
[from isCollided to TimeFilter.setStart
]
-->
<EspduTransform DEF='RedBoat' address='224.2.181.145' marking='Terror' port='62040' siteID='65' translation='27000 -9.5 14000' containerField='children'> |
| 112 | <!-- traceColor="1 0 0" traceOffset="0 3 0" traceSize="5 5 5" --> |
| 113 | <Transform DEF='TerroristBoatTransform' rotation='0 1 0 1.57'> |
| 114 |
<!-- ROUTE information for Boat node:
[from TimeFilter.startEventTime to startExplosion
]
-->
<ProtoInstance name='TerroristBoat' DEF='Boat'/> |
| 115 | <!-- ********************Explosion Code***************** --> |
| 116 | <Transform DEF='TNTtransform' translation='9 0 0'> |
| 117 |
<!-- ROUTE information for TerroristExplosion node:
[from TimeFilter.startEventTime to startExplosion
]
-->
<ProtoInstance name='TNTBasedExplosion' DEF='TerroristExplosion'/> |
| 118 | </Transform> |
| 119 | </Transform> |
| 120 | </EspduTransform> |
| 121 |
<!-- ROUTE information for TimeFilter node:
[from RedBoat.isCollided to setStart
]
[from startEventTime to TerroristExplosion.startExplosion
]
[from startEventTime to Boat.startExplosion
]
-->
<Script DEF='TimeFilter'> |
| 122 | <field name='setStart' type='SFBool' accessType='inputOnly'/> |
| 123 | <field name='startEventTime' type='SFTime' accessType='outputOnly'/> |
<![CDATA[
ecmascript:
function setStart ( value, timeStamp) {
startEventTime = timeStamp;
}
]]>
|
|
| 125 | </Script> |
| 126 | < ROUTE fromNode='RedBoat' fromField='isCollided' toNode='TimeFilter' toField='setStart'/> |
| 127 | < ROUTE fromNode='TimeFilter' fromField='startEventTime' toNode='TerroristExplosion' toField='startExplosion'/> |
| 128 | < ROUTE fromNode='TimeFilter' fromField='startEventTime' toNode='Boat' toField='startExplosion'/> |
| 129 | <!-- *******************Cole RHIB code************ --> |
| 130 | <EspduTransform DEF='ColeRHIB' address='224.2.181.145' marking='ColeRHIB' port='62040' siteID='66' translation='27790 -9 14400' containerField='children'> |
| 131 | <!-- traceColor="1 0 0" traceOffset="0 3 0" traceSize="5 5 5" --> |
| 132 | <Transform rotation='0 1 0 1.57'> |
| 133 | <ProtoInstance name='RHIB' DEF='ColeRhib1'/> |
| 134 | </Transform> |
| 135 | </EspduTransform> |
| 136 | <!-- *******Background entities*********** --> |
| 137 | <EspduTransform DEF='harborTanker' address='224.2.181.145' marking='Tanker' port='62040' readInterval='0' rotation='0 1 0 3.24' siteID='68' translation='28550 0 14700' containerField='children'> |
| 138 | <!-- traceColor="1 1 1" traceOffset="0 5 0" traceSize="6 6 6" --> |
| 139 | <Transform DEF='TankerTransform'> |
| 140 | <Inline DEF='TANKER' url=' "../../ShipsMilitary/Supertanker/SupertankerExampleDay.wrl" "https://savage.nps.edu/Savage/ShipsMilitary/Supertanker/SupertankerExampleDay.wrl" "../../ShipsMilitary/Supertanker/SupertankerExampleDay.x3d" "https://savage.nps.edu/Savage/ShipsMilitary/Supertanker/SupertankerExampleDay.x3d" '/> |
| 141 | </Transform> |
| 142 | </EspduTransform> |
| 143 | <EspduTransform DEF='MerchantA' address='224.2.181.145' marking='MerchantA' port='62040' readInterval='0' siteID='69' translation='27200 -6.5 15100' containerField='children'> |
| 144 | <!-- traceColor="1 1 1" traceOffset="0 4 0" traceSize="5 5 5" --> |
| 145 | <Transform DEF='MerchantATransform'> |
| 146 |
<!-- Inline
MERCHANT is a DEF node that has 1 USE node: USE_1 --> <Inline DEF='MERCHANT' url=' "../../ShipsMilitary/MerchantLivestockCarrier/MerchantLivestockCarrier.wrl" "https://savage.nps.edu/Savage/ShipsMilitary/MerchantLivestockCarrier/MerchantLivestockCarrier.wrl" "../../ShipsMilitary/MerchantLivestockCarrier/MerchantLivestockCarrier.x3d" "https://savage.nps.edu/Savage/ShipsMilitary/MerchantLivestockCarrier/MerchantLivestockCarrier.x3d" '/> |
| 147 | </Transform> |
| 148 | </EspduTransform> |
| 149 | <EspduTransform DEF='MerchantB' address='224.2.181.145' marking='MerchantB' port='62040' readInterval='0' rotation='0 1 0 -.1' siteID='70' translation='27850 -6.5 14900' containerField='children'> |
| 150 | <!-- traceColor="1 1 1" traceOffset="0 4 0" traceSize="5 5 5" --> |
| 151 | <Transform DEF='MerchantBTransform'> |
| 152 | <Inline USE='MERCHANT'/> |
| 153 | </Transform> |
| 154 | </EspduTransform> |
| 155 | </Group> |
| 156 | </Scene> |
| 157 | </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.
|
MasterClock
TimeSensor |
No ROUTE connection found for output events from this node. |
|
TerroristClock
TimeSensor |
No ROUTE connection found for output events from this node. |
| line 76
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. |
|
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. |
|
TerroristExplosion
ProtoInstance TNTBasedExplosion |
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. |
|
Cole
EspduTransform isCollided SFBool |
ColeTimeFilter
Script setStart SFBool |
then
|
ColeTimeFilter
Script startEventTime SFTime |
DDG-51
ProtoInstance startExplosion SFTime |
|
RedBoat
EspduTransform isCollided SFBool |
TimeFilter
Script setStart SFBool |
then
|
TimeFilter
Script startEventTime SFTime |
TerroristExplosion
ProtoInstance startExplosion SFTime |
||
|
then
|
TimeFilter
Script startEventTime SFTime |
Boat
ProtoInstance startExplosion SFTime |
||||
<!--
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.
-->