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=' LosAngelesClassSubmarineFlight1.x3d '/> |
6 | <meta name='description' content='Primary model to bring together all the individual parts of a First Flight 688 class submarine.'/> |
7 | <meta name='creator' content='LT Ken Curtin'/> |
8 | <meta name='created' content='7 August 2003'/> |
9 | <meta name='modified' content='28 November 2019'/> |
10 | <meta name='reference' content=' https://www.fas.org/man/dod-101/sys/ship/ssn-688.htm '/> |
11 | <meta name='reference' content=' http://www.combatindex.com/store/3d/ssn688_model.html '/> |
12 | <meta name='subject' content='688, Los Angeles, Submarine'/> |
13 | <meta name='identifier' content=' https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/LosAngelesClassSubmarineFlight1.x3d '/> |
14 | <meta name='generator' content='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/> |
15 | <meta name='license' content='../../license.html'/> |
16 | </head> |
17 | <Scene> |
18 | <WorldInfo title='LosAngelesClassSubmarineFlight1.x3d'/> |
19 | <Background groundColor='0 0 .8'/> |
20 |
<!-- ROUTE information for MoveSubAround node:
[from MovePath.value_changed to set_translation
]
[from MoveRotate.value_changed to set_rotation
]
-->
<Transform DEF='MoveSubAround'> |
21 | <Group DEF='LosAngelesClassSubmarine'> |
22 | <Transform DEF='BringInHull'> |
23 | <Inline url=' "Hull.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Hull.x3d" "Hull.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Hull.wrl" '/> |
24 | </Transform> |
25 | <Transform DEF='BringInSail' translation='24.84 4.9 0'> |
26 | <Inline url=' "Sail.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Sail.x3d" "Sail.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Sail.wrl" '/> |
27 | </Transform> |
28 | <Transform DEF='BringInSternPlanes' rotation='1 0 0 -1.57' translation='-50.92 0 6'> |
29 |
<!-- ROUTE information for SternPlanes node:
[from RotateSternPlanes.value_changed to set_rotation
]
-->
<Transform DEF='SternPlanes' center='3 0 0'> |
30 |
<!-- ROUTE information for MoveSternPlanes node:
[from touchTime to SternPlaneTimer.set_startTime
]
-->
<TouchSensor DEF='MoveSternPlanes' description='Activates the Stern Planes'/> |
31 |
<!-- ROUTE information for SternPlaneTimer node:
[from MoveSternPlanes.touchTime to set_startTime
]
[from fraction_changed to RotateSternPlanes.set_fraction
]
-->
<TimeSensor DEF='SternPlaneTimer'/> |
32 | < ROUTE fromNode='MoveSternPlanes' fromField='touchTime' toNode='SternPlaneTimer' toField='set_startTime'/> |
33 |
<!-- ROUTE information for RotateSternPlanes node:
[from SternPlaneTimer.fraction_changed to set_fraction
]
[from value_changed to SternPlanes.set_rotation
]
-->
<OrientationInterpolator DEF='RotateSternPlanes' key='0 .25 .50 .75 1.0' keyValue='0 1 0 0.0 0 1 0 0.52 0 1 0 0.00 0 1 0 -0.52 0 1 0 0.00'/> |
34 | < ROUTE fromNode='SternPlaneTimer' fromField='fraction_changed' toNode='RotateSternPlanes' toField='set_fraction'/> |
35 | < ROUTE fromNode='RotateSternPlanes' fromField='value_changed' toNode='SternPlanes' toField='set_rotation'/> |
36 | <Inline url=' "Planes.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Planes.x3d" '/> |
37 | </Transform> |
38 | </Transform> |
39 | <Transform DEF='BringInRudder' translation='-50.92 -4.72 0'> |
40 |
<!-- ROUTE information for Rudder node:
[from RudderRotation.value_changed to set_rotation
]
-->
<Transform DEF='Rudder' center='3 0 0'> |
41 |
<!-- ROUTE information for MoveRudder node:
[from touchTime to RudderTimer.set_startTime
]
-->
<TouchSensor DEF='MoveRudder' description='Activates the Rudder'/> |
42 |
<!-- ROUTE information for RudderTimer node:
[from MoveRudder.touchTime to set_startTime
]
[from fraction_changed to RudderRotation.set_fraction
]
-->
<TimeSensor DEF='RudderTimer'/> |
43 | < ROUTE fromNode='MoveRudder' fromField='touchTime' toNode='RudderTimer' toField='set_startTime'/> |
44 |
<!-- ROUTE information for RudderRotation node:
[from RudderTimer.fraction_changed to set_fraction
]
[from value_changed to Rudder.set_rotation
]
-->
<OrientationInterpolator DEF='RudderRotation' key='0 .25 .50 .75 1.0' keyValue='0 1 0 0.0 0 1 0 0.52 0 1 0 0.00 0 1 0 -0.52 0 1 0 0.00'/> |
45 | < ROUTE fromNode='RudderTimer' fromField='fraction_changed' toNode='RudderRotation' toField='set_fraction'/> |
46 | < ROUTE fromNode='RudderRotation' fromField='value_changed' toNode='Rudder' toField='set_rotation'/> |
47 | <Inline url=' "Rudder.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/SsnLosAngelesUnitedStates/Rudder.x3d" '/> |
48 | </Transform> |
49 | </Transform> |
50 | <Transform DEF='BringInScrew' rotation='0 1 0 -1.57' scale='1.1 1.1 1.1' translation='-53.2 0 0'> |
51 | <Inline url=' "../../Submarines/Various/Type209GlafkosDieselSubmarinePropeller.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/Various/Type209GlafkosDieselSubmarinePropeller.x3d" "../../Submarines/Various/Type209GlafkosDieselSubmarinePropeller.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/Various/Type209GlafkosDieselSubmarinePropeller.wrl" '/> |
52 | </Transform> |
53 | </Group> |
54 | </Transform> |
55 | <Transform DEF='AllAhead1_3' translation='0 40 0'> |
56 | <Shape DEF='StartSubMoving'> |
57 | <Text string=' "All Ahead 1/3" '> |
58 | <FontStyle size='10'/> |
59 | </Text> |
60 | <Appearance> |
61 | <Material diffuseColor='1 1 0'/> |
62 | </Appearance> |
63 | </Shape> |
64 |
<!-- ROUTE information for StartSub node:
[from touchTime to MoveClock.set_startTime
]
-->
<TouchSensor DEF='StartSub' description='Activates the Submarine Movement'/> |
65 |
<!-- ROUTE information for MoveClock node:
[from StartSub.touchTime to set_startTime
]
[from fraction_changed to MovePath.set_fraction
]
[from fraction_changed to MoveRotate.set_fraction
]
-->
<TimeSensor DEF='MoveClock' cycleInterval='40'/> |
66 |
<!-- ROUTE information for MovePath node:
[from MoveClock.fraction_changed to set_fraction
]
[from value_changed to MoveSubAround.set_translation
]
-->
<PositionInterpolator DEF='MovePath' key='0 .125 .250 .375 .5 .625 .750 .875 1' keyValue='0 0 0 100 0 -100 200 0 -200 100 0 -300 0 0 -400 -100 0 -300 -200 0 -200 -100 0 100 0 0 0'/> |
67 |
<!-- ROUTE information for MoveRotate node:
[from MoveClock.fraction_changed to set_fraction
]
[from value_changed to MoveSubAround.set_rotation
]
-->
<OrientationInterpolator DEF='MoveRotate' key='0 .125 .250 .375 .5 .625 .750 .875 1' keyValue='0 0 0 0 0 1 0 .785 0 1 0 1.571 0 1 0 2.357 0 1 0 3.14 0 1 0 3.928 0 1 0 4.712 0 1 0 5.498 0 0 0 6.28'/> |
68 | < ROUTE fromNode='StartSub' fromField='touchTime' toNode='MoveClock' toField='set_startTime'/> |
69 | < ROUTE fromNode='MoveClock' fromField='fraction_changed' toNode='MovePath' toField='set_fraction'/> |
70 | < ROUTE fromNode='MoveClock' fromField='fraction_changed' toNode='MoveRotate' toField='set_fraction'/> |
71 | < ROUTE fromNode='MovePath' fromField='value_changed' toNode='MoveSubAround' toField='set_translation'/> |
72 | < ROUTE fromNode='MoveRotate' fromField='value_changed' toNode='MoveSubAround' toField='set_rotation'/> |
73 | </Transform> |
74 | <Viewpoint description='FarAway' orientation='-0.344 0.933 0.109 0.2504' position='80 13.9 300.3'/> |
75 | <Viewpoint description='StbdView' orientation='-0.344 0.933 0.109 0.2504' position='30 13.9 83.3'/> |
76 | <Viewpoint description='SailFront' orientation='-0.195 0.949 0.249 1.1171' position='50.6 18.3 13.3'/> |
77 | <Viewpoint description='TopDown' orientation='-0.887 0.46 0.045 1.6075' position='45.7 83.9 -5.4'/> |
78 | <Viewpoint description='Bottom' orientation='-0.35 0.737 -0.578 2.4783' position='78.3 -34.8 -15.6'/> |
79 | <Viewpoint description='RearView' orientation='-0.36 -0.894 0.266 1.6014' position='-84.7 12.9 -1.6'/> |
80 | <Viewpoint description='PortView' orientation='0.15 0.963 0.223 2.8124' position='44.4 39.2 -78.3'/> |
81 | </Scene> |
82 | </X3D> |
Event Graph ROUTE Table entries with 11 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.
MoveRudder
TouchSensor touchTime SFTime |
RudderTimer
TimeSensor set_startTime SFTime |
then
|
RudderTimer
TimeSensor fraction_changed SFFloat |
RudderRotation
OrientationInterpolator set_fraction SFFloat |
then
|
RudderRotation
OrientationInterpolator value_changed SFRotation |
Rudder
Transform set_rotation SFRotation |
MoveSternPlanes
TouchSensor touchTime SFTime |
SternPlaneTimer
TimeSensor set_startTime SFTime |
then
|
SternPlaneTimer
TimeSensor fraction_changed SFFloat |
RotateSternPlanes
OrientationInterpolator set_fraction SFFloat |
then
|
RotateSternPlanes
OrientationInterpolator value_changed SFRotation |
SternPlanes
Transform set_rotation SFRotation |
StartSub
TouchSensor touchTime SFTime |
MoveClock
TimeSensor set_startTime SFTime |
then
|
MoveClock
TimeSensor fraction_changed SFFloat |
MovePath
PositionInterpolator set_fraction SFFloat |
then
|
MovePath
PositionInterpolator value_changed SFVec3f |
MoveSubAround
Transform set_translation SFVec3f |
|||
then
|
MoveClock
TimeSensor fraction_changed SFFloat |
MoveRotate
OrientationInterpolator set_fraction SFFloat |
then
|
MoveRotate
OrientationInterpolator value_changed SFRotation |
MoveSubAround
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.
-->