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=' AriesPrototype.x3d '/> |
6 | <meta name='description' content='Model of the Acoustic Radio Interactive Exploratory Server (ARIES), an operational NPS-designed Unmanned Underwater Vehicle (AUV). Expose position, rotation, sonars, thrusters, fins, etc. as a reusable prototype.'/> |
7 | <meta name='creator' content='Don Brutzman NPS, aboard RV Gyre in Gulf of Mexico off Gulfport MS 1999; Jane Wu Rolands and Associates 2001, Duane Davis NPS 2003'/> |
8 | <meta name='created' content='30 July 2000'/> |
9 | <meta name='modified' content='20 October 2019'/> |
10 | <meta name='photo' content='AriesHoistCloseup.jpg'/> |
11 | <meta name='reference' content=' AriesFlyerMarch2001.pdf '/> |
12 | <meta name='reference' content=' organic_mcmONR2002.pdf '/> |
13 |
<meta name='reference' content='AriesSchematic.png'![]() |
14 | <meta name='reference' content=' AriesSchematic.ppt '/> |
15 | <meta name='identifier' content=' https://www.web3d.org/x3d/content/examples/Savage/Robots/UnmannedUnderwaterVehicles/AriesPrototype.x3d '/> |
16 | <meta name='generator' content='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/> |
17 | <meta name='license' content='../../license.html'/> |
18 | </head> |
19 | <Scene> |
20 | <!-- Produce wireframe or transparent beam cones. --> |
21 | <WorldInfo title='AriesPrototype.x3d'/> |
22 | <ExternProtoDeclare name='BeamCone' appinfo='Produce wireframe or transparent beam cones. Typical uses include propeller/thruster water flow or line-of-sight sonar/radar/light beams. Negative range values invert base and apex at same relative location. Default: beam with apex at (0 0 0) and base of radius 1 in x-z plane at (1 0 0).' url=' "../../CommunicationsAndSensors/Beam/BeamConePrototype.x3d#BeamCone" "https://www.web3d.org/x3d/content/examples/Savage/CommunicationsAndSensors/Beam/BeamConePrototype.x3d#BeamCone" "../../CommunicationsAndSensors/Beam/BeamConePrototype.wrl#BeamCone" "https://www.web3d.org/x3d/content/examples/Savage/CommunicationsAndSensors/Beam/BeamConePrototype.wrl#BeamCone" '> |
23 |
<field name='name' type='SFString' accessType='initializeOnly'
appinfo='BeamCone name aids tracing'/> |
24 |
<field name='contact' type='SFBool' accessType='inputOnly'
appinfo='(communications) is transmitted signal in contact with receiver or (sensor) is a target return detected?'/> |
25 |
<field name='range' type='SFFloat' accessType='inputOnly'
appinfo='distance in meters along x axis'/> |
26 |
<field name='defaultRange' type='SFFloat' accessType='initializeOnly'
appinfo='distance in meters used until eventIn range sent'/> |
27 |
<field name='wireframe' type='SFBool' accessType='initializeOnly'
appinfo='whether wireframe beam is drawn'/> |
28 |
<field name='solid' type='SFBool' accessType='initializeOnly'
appinfo='whether solid beam is drawn'/> |
29 |
<field name='beamHeightDegrees' type='SFFloat' accessType='initializeOnly'
appinfo='degrees across vertical y axis'/> |
30 |
<field name='beamWidthDegrees' type='SFFloat' accessType='initializeOnly'
appinfo='degrees across horizontal z axis'/> |
31 |
<field name='contactColor' type='SFColor' accessType='initializeOnly'
appinfo='rendering color when contact=true'/> |
32 |
<field name='noContactColor' type='SFColor' accessType='initializeOnly'
appinfo='rendering color when contact=false'/> |
33 |
<field name='transparency' type='SFFloat' accessType='inputOutput'
appinfo='1 = fully transparent wireframe only'/> |
34 |
<field name='traceEnabled' type='SFBool' accessType='initializeOnly'
appinfo='flag to turn on Script tracing'/> |
35 | </ExternProtoDeclare> |
36 | <ProtoDeclare name='Aries' appinfo='Acoustic Radio Interactive Exploratory Server (ARIES) is an operational NPS-designed Unmanned Underwater Vehicle (AUV)'> |
37 | <ProtoInterface> |
38 |
<field name='hullName' type='SFString' value='Aries' accessType='inputOutput'
appinfo='can be overridden at instantiation time only'/> |
39 |
<field name='hullColor' type='SFColor' value='.9 .9 .9' accessType='inputOutput'
appinfo='hull color for this UUV instance'/> |
40 |
<field name='planeColor' type='SFColor' value='.1 .1 .8' accessType='inputOutput'
appinfo='plane color for this UUV instance'/> |
41 | <field name='translation' type='SFVec3f' value='0 0 0' accessType='inputOutput'/> |
42 | <field name='rotation' type='SFRotation' value='0 0 1 0' accessType='inputOutput'/> |
43 | <field name='set_portRpm' type='SFFloat' accessType='inputOnly'/> |
44 | <field name='set_stbdRpm' type='SFFloat' accessType='inputOnly'/> |
45 | <field name='set_forwardRudders' type='SFFloat' accessType='inputOnly'/> |
46 | <field name='set_afterRudders' type='SFFloat' accessType='inputOnly'/> |
47 | <field name='set_forwardPlanes' type='SFFloat' accessType='inputOnly'/> |
48 | <field name='set_afterPlanes' type='SFFloat' accessType='inputOnly'/> |
49 | <field name='set_forwardVerticalThruster' type='SFFloat' accessType='inputOnly'/> |
50 | <field name='set_afterVerticalThruster' type='SFFloat' accessType='inputOnly'/> |
51 | <field name='set_forwardLateralThruster' type='SFFloat' accessType='inputOnly'/> |
52 | <field name='set_afterLateralThruster' type='SFFloat' accessType='inputOnly'/> |
53 |
<field name='set_ST725Range' type='SFFloat' accessType='inputOnly'
appinfo='meters along sonar axis'/> |
54 |
<field name='set_ST725Bearing' type='SFFloat' accessType='inputOnly'
appinfo='degrees about vertical axis'/> |
55 |
<field name='set_ST725Intensity' type='SFFloat' accessType='inputOnly'
appinfo='signal-to-noise ratio decibels'/> |
56 |
<field name='set_ST1000Range' type='SFFloat' accessType='inputOnly'
appinfo='meters along sonar axis'/> |
57 |
<field name='set_ST1000Bearing' type='SFFloat' accessType='inputOnly'
appinfo='degrees about vertical axis'/> |
58 |
<field name='set_ST1000Intensity' type='SFFloat' accessType='inputOnly'
appinfo='signal-to-noise ratio decibels'/> |
59 | </ProtoInterface> |
60 | <ProtoBody> |
61 | <Transform DEF='AriesTransform'> |
62 | <IS> |
63 | <connect nodeField='translation' protoField='translation'/> |
64 | <connect nodeField='rotation' protoField='rotation'/> |
65 | </IS> |
66 |
<!-- ROUTE information for ST725 node:
[from SONAR_STEERING_AND_DETECTS.ST725Rotation to rotation
]
-->
<Transform DEF='ST725' translation='.9 -0.12 -0.03'> |
67 |
<!-- ROUTE information for ST725BeamCone node:
[from SONAR_STEERING_AND_DETECTS.ST725Contact to contact
]
[from SONAR_STEERING_AND_DETECTS.ST725Range_changed to range
]
[from SONAR_STEERING_AND_DETECTS.ST725Intensity to transparency
]
-->
<ProtoInstance name='BeamCone' DEF='ST725BeamCone'> |
68 | <fieldValue name='name' value='ST725BeamCone'/> |
69 | <fieldValue name='defaultRange' value='1'/> |
70 | <fieldValue name='beamHeightDegrees' value='24'/> |
71 | <fieldValue name='beamWidthDegrees' value='1'/> |
72 | <fieldValue name='solid' value='true'/> |
73 | <fieldValue name='wireframe' value='false'/> |
74 | <fieldValue name='contactColor' value='1 0 0'/> |
75 | <fieldValue name='noContactColor' value='.3 .05 .05'/> |
76 | <fieldValue name='transparency' value='.2'/> |
77 | <fieldValue name='traceEnabled' value='false'/> |
78 | </ProtoInstance> |
79 | </Transform> |
80 |
<!-- ROUTE information for ST1000 node:
[from SONAR_STEERING_AND_DETECTS.ST1000Rotation to rotation
]
-->
<Transform DEF='ST1000' translation='.7 .12 .05'> |
81 |
<!-- ROUTE information for ST1000BeamCone node:
[from SONAR_STEERING_AND_DETECTS.ST1000Contact to contact
]
[from SONAR_STEERING_AND_DETECTS.ST1000Range_changed to range
]
[from SONAR_STEERING_AND_DETECTS.ST1000Intensity to transparency
]
-->
<ProtoInstance name='BeamCone' DEF='ST1000BeamCone'> |
82 | <fieldValue name='name' value='ST1000BeamCone'/> |
83 | <fieldValue name='defaultRange' value='1'/> |
84 | <fieldValue name='beamHeightDegrees' value='1'/> |
85 | <fieldValue name='beamWidthDegrees' value='1'/> |
86 | <fieldValue name='solid' value='true'/> |
87 | <fieldValue name='wireframe' value='false'/> |
88 | <fieldValue name='contactColor' value='1 .8 0'/> |
89 | <fieldValue name='noContactColor' value='.4 .3 .05'/> |
90 | <fieldValue name='transparency' value='.2'/> |
91 | <fieldValue name='traceEnabled' value='false'/> |
92 | </ProtoInstance> |
93 | </Transform> |
94 |
<!-- ROUTE information for SONAR_STEERING_AND_DETECTS node:
[from ST725Rotation to ST725.rotation
]
[from ST1000Rotation to ST1000.rotation
]
[from ST725Contact to ST725BeamCone.contact
]
[from ST1000Contact to ST1000BeamCone.contact
]
[from ST725Range_changed to ST725BeamCone.range
]
[from ST1000Range_changed to ST1000BeamCone.range
]
[from ST725Intensity to ST725BeamCone.transparency
]
[from ST1000Intensity to ST1000BeamCone.transparency
]
-->
<Script DEF='SONAR_STEERING_AND_DETECTS'> |
95 | <field name='set_ST725Range' type='SFFloat' accessType='inputOnly'/> |
96 | <field name='set_ST725Bearing' type='SFFloat' accessType='inputOnly'/> |
97 | <field name='set_ST725Intensity' type='SFFloat' accessType='inputOnly'/> |
98 | <field name='set_ST1000Range' type='SFFloat' accessType='inputOnly'/> |
99 | <field name='set_ST1000Bearing' type='SFFloat' accessType='inputOnly'/> |
100 | <field name='set_ST1000Intensity' type='SFFloat' accessType='inputOnly'/> |
101 | <field name='ST725Rotation' type='SFRotation' accessType='outputOnly'/> |
102 | <field name='ST1000Rotation' type='SFRotation' accessType='outputOnly'/> |
103 | <field name='ST725Contact' type='SFBool' accessType='outputOnly'/> |
104 | <field name='ST1000Contact' type='SFBool' accessType='outputOnly'/> |
105 | <field name='ST725Range_changed' type='SFFloat' accessType='outputOnly'/> |
106 | <field name='ST1000Range_changed' type='SFFloat' accessType='outputOnly'/> |
107 | <field name='ST725Intensity' type='SFFloat' accessType='outputOnly'/> |
108 | <field name='ST1000Intensity' type='SFFloat' accessType='outputOnly'/> |
109 | <IS> |
110 | <connect nodeField='set_ST725Range' protoField='set_ST725Range'/> |
111 | <connect nodeField='set_ST725Bearing' protoField='set_ST725Bearing'/> |
112 | <connect nodeField='set_ST725Intensity' protoField='set_ST725Intensity'/> |
113 | <connect nodeField='set_ST1000Range' protoField='set_ST1000Range'/> |
114 | <connect nodeField='set_ST1000Bearing' protoField='set_ST1000Bearing'/> |
115 | <connect nodeField='set_ST1000Intensity' protoField='set_ST1000Intensity'/> |
116 | </IS> |
<![CDATA[
ecmascript: function degreeToRadian( value ) { return value * Math.PI / 180; } function set_ST725Range (value, timeStamp) { if ((value > 0) && (value < 30.0)) { ST725Contact = true; ST725Range_changed = value; } else { ST725Contact = false; if ( value < 0 ) ST725Range_changed = 0.0; else ST725Range_changed = 30.0; } } function set_ST725Bearing (value, timeStamp) { ST725Rotation = new SFRotation(0, 1, 0, degreeToRadian(value)); } function set_ST725Intensity (value, timeStamp) { ST725Intensity = new SFFloat(value); } function set_ST1000Range (value, timeStamp) { if ((value > 0) && (value < 30.0)) { ST1000Contact = true; ST1000Range_changed = value; } else { ST1000Contact = false; if ( value < 0 ) ST1000Range_changed = 0.0; else ST1000Range_changed = 30.0; } } function set_ST1000Bearing (value, timeStamp) { ST1000Rotation = new SFRotation(0, 1, 0, degreeToRadian(value)); } function set_ST1000Intensity (value, timeStamp) { ST1000Intensity = new SFFloat(value); }
]]>
|
|
118 | </Script> |
119 | <Group> |
120 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST725Rotation' toNode='ST725' toField='rotation'/> |
121 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST1000Rotation' toNode='ST1000' toField='rotation'/> |
122 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST725Contact' toNode='ST725BeamCone' toField='contact'/> |
123 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST1000Contact' toNode='ST1000BeamCone' toField='contact'/> |
124 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST725Range_changed' toNode='ST725BeamCone' toField='range'/> |
125 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST1000Range_changed' toNode='ST1000BeamCone' toField='range'/> |
126 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST725Intensity' toNode='ST725BeamCone' toField='transparency'/> |
127 | < ROUTE fromNode='SONAR_STEERING_AND_DETECTS' fromField='ST1000Intensity' toNode='ST1000BeamCone' toField='transparency'/> |
128 | </Group> |
129 | <LOD range='400'> |
130 | <!-- ### hack job! need to update actual numbers instead of scaling --> |
131 | <Transform DEF='PRIMARY_AUV_GEOMETRY' scale='1 1.3 1'> |
132 | <!-- positive rotation about y-axis rotates rudders to port --> |
133 |
<!-- ROUTE information for FORWARD_RUDDERS node:
[from PLANE_SURFACES.forwardRuddersRotation to rotation
]
-->
<Transform DEF='FORWARD_RUDDERS' translation='.6223 0 0'> |
134 | <Transform translation='0 .13335 0'> |
135 | |
136 | <Appearance> |
137 | <Material DEF='PlaneMaterial'> |
138 | <IS> |
139 | <connect nodeField='diffuseColor' protoField='planeColor'/> |
140 | </IS> |
141 | </Material> |
142 | </Appearance> |
143 | <!-- creaseAngle for sharp edges --> |
144 | <IndexedFaceSet creaseAngle='3.14159' coordIndex='0 3 2 1 -1 4 5 6 7 -1 0 1 5 4 -1 1 2 6 5 -1 2 3 7 6 -1 0 3 7 4 -1'> |
145 | <!-- indices for point values range [0..7] --> |
146 | <Coordinate point='.0635 0 -0.0127 .0381 .1778 -0.0127 -0.0381 .1778 -0.0127 -0.0889 0 -0.0127 .0635 0 .0127 .0381 .1778 .0127 -0.0381 .1778 .0127 -0.0889 0 .0127'/> |
147 | </IndexedFaceSet> |
148 | </Shape> |
149 | </Transform> |
150 | <Transform rotation='1 0 0 3.14159267' translation='0 -0.13335 0'> |
151 | <Shape USE='PLANE_SHAPE'/> |
152 | </Transform> |
153 | </Transform> |
154 | <!-- positive rotation about y-axis rotates rudder to port --> |
155 |
<!-- ROUTE information for AFTER_RUDDERS node:
[from PLANE_SURFACES.afterRuddersRotation to rotation
]
-->
<Transform DEF='AFTER_RUDDERS' translation='-0.7747 0 0'> |
156 | <Transform translation='0 .13335 0'> |
157 | <Shape USE='PLANE_SHAPE'/> |
158 | </Transform> |
159 | <Transform rotation='1 0 0 3.14159267' translation='0 -0.13335 0'> |
160 | <Shape USE='PLANE_SHAPE'/> |
161 | </Transform> |
162 | </Transform> |
163 |
<!-- ROUTE information for FORWARD_PLANES node:
[from PLANE_SURFACES.forwardPlanesRotation to rotation
]
-->
<Transform DEF='FORWARD_PLANES' translation='.6223 0 0'> |
164 | <Transform rotation='1 0 0 1.57079' translation='0 0 .20955'> |
165 | <Shape USE='PLANE_SHAPE'/> |
166 | </Transform> |
167 | <Transform rotation='1 0 0 -1.57079' translation='0 0 -0.20955'> |
168 | <Shape USE='PLANE_SHAPE'/> |
169 | </Transform> |
170 | </Transform> |
171 |
<!-- ROUTE information for AFTER_PLANES node:
[from PLANE_SURFACES.afterPlanesRotation to rotation
]
-->
<Transform DEF='AFTER_PLANES' translation='-0.7747 0 0'> |
172 | <Transform rotation='1 0 0 1.57079' translation='0 0 .20955'> |
173 | <Shape USE='PLANE_SHAPE'/> |
174 | </Transform> |
175 | <Transform rotation='1 0 0 -1.57079' translation='0 0 -0.20955'> |
176 | <Shape USE='PLANE_SHAPE'/> |
177 | </Transform> |
178 | </Transform> |
179 |
<!-- ROUTE information for PLANE_SURFACES node:
[from forwardRuddersRotation to FORWARD_RUDDERS.rotation
]
[from afterRuddersRotation to AFTER_RUDDERS.rotation
]
[from forwardPlanesRotation to FORWARD_PLANES.rotation
]
[from afterPlanesRotation to AFTER_PLANES.rotation
]
-->
<Script DEF='PLANE_SURFACES'> |
180 | <field name='set_forwardRudders' type='SFFloat' accessType='inputOnly'/> |
181 | <field name='set_afterRudders' type='SFFloat' accessType='inputOnly'/> |
182 | <field name='set_forwardPlanes' type='SFFloat' accessType='inputOnly'/> |
183 | <field name='set_afterPlanes' type='SFFloat' accessType='inputOnly'/> |
184 | <field name='forwardRuddersRotation' type='SFRotation' accessType='outputOnly'/> |
185 | <field name='afterRuddersRotation' type='SFRotation' accessType='outputOnly'/> |
186 | <field name='forwardPlanesRotation' type='SFRotation' accessType='outputOnly'/> |
187 | <field name='afterPlanesRotation' type='SFRotation' accessType='outputOnly'/> |
188 | <IS> |
189 | <connect nodeField='set_forwardRudders' protoField='set_forwardRudders'/> |
190 | <connect nodeField='set_afterRudders' protoField='set_afterRudders'/> |
191 | <connect nodeField='set_forwardPlanes' protoField='set_forwardPlanes'/> |
192 | <connect nodeField='set_afterPlanes' protoField='set_afterPlanes'/> |
193 | </IS> |
<![CDATA[
ecmascript: function set_forwardRudders (value, timeStamp) { forwardRuddersRotation = new SFRotation(0, 1, 0, value); } function set_afterRudders (value, timeStamp) { afterRuddersRotation = new SFRotation(0, 1, 0, value); } function set_forwardPlanes (value, timeStamp) { forwardPlanesRotation = new SFRotation(0, 0, 1, value); } function set_afterPlanes (value, timeStamp) { afterPlanesRotation = new SFRotation(0, 0, 1, value); }
]]>
|
|
195 | </Script> |
196 | <Group> |
197 | < ROUTE fromNode='PLANE_SURFACES' fromField='forwardRuddersRotation' toNode='FORWARD_RUDDERS' toField='rotation'/> |
198 | < ROUTE fromNode='PLANE_SURFACES' fromField='afterRuddersRotation' toNode='AFTER_RUDDERS' toField='rotation'/> |
199 | < ROUTE fromNode='PLANE_SURFACES' fromField='forwardPlanesRotation' toNode='FORWARD_PLANES' toField='rotation'/> |
200 | < ROUTE fromNode='PLANE_SURFACES' fromField='afterPlanesRotation' toNode='AFTER_PLANES' toField='rotation'/> |
201 | </Group> |
202 | <Transform DEF='FORWARD_VERTICAL_THRUSTER' translation='.3302 0 0'> |
203 |
<!-- Shape
VERTICAL_THRUSTER_SHAPE is a DEF node that has 1 USE node: USE_1 -->
<Shape DEF='VERTICAL_THRUSTER_SHAPE'> |
204 |
<!-- Appearance
THRUSTER_APPEARANCE is a DEF node that has 1 USE node: USE_1 -->
<Appearance DEF='THRUSTER_APPEARANCE'> |
205 | <Material diffuseColor='.2 .2 .2'/> |
206 | </Appearance> |
207 | <Cylinder height='.29' radius='.0635' side='false'/> |
208 | </Shape> |
209 |
<!-- ROUTE information for FORWARD_VERTICAL_BEAMCONE node:
[from THRUSTER_CONES.forwardVerticalThrusterBeamTranslation to translation
]
-->
<Transform DEF='FORWARD_VERTICAL_BEAMCONE' rotation='0 0 1 1.57079' translation='0 .145 0'> |
210 |
<!-- ROUTE information for ForwardVerticalBeamCone node:
[from THRUSTER_CONES.forwardVerticalThrusterBeamRange to range
]
-->
<ProtoInstance name='BeamCone' DEF='ForwardVerticalBeamCone'> |
211 | <fieldValue name='name' value='ForwardVerticalBeamCone'/> |
212 | <!-- range -1.0..0..1.0m <==> -24V..0..24V --> |
213 | <fieldValue name='defaultRange' value='1'/> |
214 | <fieldValue name='beamHeightDegrees' value='8'/> |
215 | <fieldValue name='beamWidthDegrees' value='8'/> |
216 | <fieldValue name='solid' value='false'/> |
217 | <fieldValue name='wireframe' value='true'/> |
218 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
219 | <fieldValue name='transparency' value='0'/> |
220 | <fieldValue name='traceEnabled' value='false'/> |
221 | </ProtoInstance> |
222 | </Transform> |
223 | </Transform> |
224 | <Transform DEF='AFTER_VERTICAL_THRUSTER' translation='-0.4953 0 0'> |
225 | <Shape USE='VERTICAL_THRUSTER_SHAPE'/> |
226 |
<!-- ROUTE information for AFTER_VERTICAL_BEAMCONE node:
[from THRUSTER_CONES.afterVerticalThrusterBeamTranslation to translation
]
-->
<Transform DEF='AFTER_VERTICAL_BEAMCONE' rotation='0 0 1 1.57079' translation='0 .145 0'> |
227 |
<!-- ROUTE information for AfterVerticalBeamCone node:
[from THRUSTER_CONES.afterVerticalThrusterBeamRange to range
]
-->
<ProtoInstance name='BeamCone' DEF='AfterVerticalBeamCone'> |
228 | <fieldValue name='name' value='AfterVerticalBeamCone'/> |
229 | <!-- range -1.0..0..1.0m <==> -24V..0..24V --> |
230 | <fieldValue name='defaultRange' value='1'/> |
231 | <fieldValue name='beamHeightDegrees' value='8'/> |
232 | <fieldValue name='beamWidthDegrees' value='8'/> |
233 | <fieldValue name='solid' value='false'/> |
234 | <fieldValue name='wireframe' value='true'/> |
235 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
236 | <fieldValue name='transparency' value='0'/> |
237 | <fieldValue name='traceEnabled' value='false'/> |
238 | </ProtoInstance> |
239 | </Transform> |
240 | </Transform> |
241 | <Transform DEF='FORWARD_LATERAL_THRUSTER' rotation='1 0 0 1.57079' translation='.4699 0 0'> |
242 |
<!-- Shape
LATERAL_THRUSTER_SHAPE is a DEF node that has 1 USE node: USE_1 -->
<Shape DEF='LATERAL_THRUSTER_SHAPE'> |
243 | <Appearance USE='THRUSTER_APPEARANCE'/> |
244 | <Cylinder height='.44' radius='.0635' side='false'/> |
245 | </Shape> |
246 |
<!-- ROUTE information for FORWARD_LATERAL_BEAMCONE node:
[from THRUSTER_CONES.forwardLateralThrusterBeamTranslation to translation
]
-->
<Transform DEF='FORWARD_LATERAL_BEAMCONE' rotation='0 0 1 1.57079' translation='0 .145 0'> |
247 |
<!-- ROUTE information for ForwardLateralBeamCone node:
[from THRUSTER_CONES.forwardLateralThrusterBeamRange to range
]
-->
<ProtoInstance name='BeamCone' DEF='ForwardLateralBeamCone'> |
248 | <fieldValue name='name' value='ForwardLateralBeamCone'/> |
249 | <!-- range -1.0..0..1.0m <==> -24V..0..24V --> |
250 | <fieldValue name='defaultRange' value='1'/> |
251 | <fieldValue name='beamHeightDegrees' value='8'/> |
252 | <fieldValue name='beamWidthDegrees' value='8'/> |
253 | <fieldValue name='solid' value='false'/> |
254 | <fieldValue name='wireframe' value='true'/> |
255 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
256 | <fieldValue name='transparency' value='0'/> |
257 | <fieldValue name='traceEnabled' value='false'/> |
258 | </ProtoInstance> |
259 | </Transform> |
260 | </Transform> |
261 | <Transform DEF='AFTER_LATERAL_THRUSTER' rotation='1 0 0 1.57079' translation='-0.6223 0 0'> |
262 | <Shape USE='LATERAL_THRUSTER_SHAPE'/> |
263 |
<!-- ROUTE information for AFTER_LATERAL_BEAMCONE node:
[from THRUSTER_CONES.afterLateralThrusterBeamTranslation to translation
]
-->
<Transform DEF='AFTER_LATERAL_BEAMCONE' rotation='0 0 1 1.57079' translation='0 .145 0'> |
264 |
<!-- ROUTE information for AfterLateralBeamCone node:
[from THRUSTER_CONES.afterLateralThrusterBeamRange to range
]
-->
<ProtoInstance name='BeamCone' DEF='AfterLateralBeamCone'> |
265 | <fieldValue name='name' value='AfterLateralBeamCone'/> |
266 | <!-- range -1.0..0..1.0m <==> -24V..0..24V --> |
267 | <fieldValue name='defaultRange' value='1'/> |
268 | <fieldValue name='beamHeightDegrees' value='8'/> |
269 | <fieldValue name='beamWidthDegrees' value='8'/> |
270 | <fieldValue name='solid' value='false'/> |
271 | <fieldValue name='wireframe' value='true'/> |
272 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
273 | <fieldValue name='transparency' value='0'/> |
274 | <fieldValue name='traceEnabled' value='false'/> |
275 | </ProtoInstance> |
276 | </Transform> |
277 | </Transform> |
278 |
<!-- ROUTE information for THRUSTER_CONES node:
[from forwardVerticalThrusterBeamTranslation to FORWARD_VERTICAL_BEAMCONE.translation
]
[from forwardVerticalThrusterBeamRange to ForwardVerticalBeamCone.range
]
[from afterVerticalThrusterBeamTranslation to AFTER_VERTICAL_BEAMCONE.translation
]
[from afterVerticalThrusterBeamRange to AfterVerticalBeamCone.range
]
[from forwardLateralThrusterBeamTranslation to FORWARD_LATERAL_BEAMCONE.translation
]
[from forwardLateralThrusterBeamRange to ForwardLateralBeamCone.range
]
[from afterLateralThrusterBeamTranslation to AFTER_LATERAL_BEAMCONE.translation
]
[from afterLateralThrusterBeamRange to AfterLateralBeamCone.range
]
-->
<Script DEF='THRUSTER_CONES'> |
279 | <field name='set_forwardVerticalThruster' type='SFFloat' accessType='inputOnly'/> |
280 | <field name='set_afterVerticalThruster' type='SFFloat' accessType='inputOnly'/> |
281 | <field name='set_forwardLateralThruster' type='SFFloat' accessType='inputOnly'/> |
282 | <field name='set_afterLateralThruster' type='SFFloat' accessType='inputOnly'/> |
283 | <field name='forwardVerticalThrusterBeamTranslation' type='SFVec3f' accessType='outputOnly'/> |
284 | <field name='forwardVerticalThrusterBeamRange' type='SFFloat' accessType='outputOnly'/> |
285 | <field name='afterVerticalThrusterBeamTranslation' type='SFVec3f' accessType='outputOnly'/> |
286 | <field name='afterVerticalThrusterBeamRange' type='SFFloat' accessType='outputOnly'/> |
287 | <field name='forwardLateralThrusterBeamTranslation' type='SFVec3f' accessType='outputOnly'/> |
288 | <field name='forwardLateralThrusterBeamRange' type='SFFloat' accessType='outputOnly'/> |
289 | <field name='afterLateralThrusterBeamTranslation' type='SFVec3f' accessType='outputOnly'/> |
290 | <field name='afterLateralThrusterBeamRange' type='SFFloat' accessType='outputOnly'/> |
291 | <IS> |
292 | <connect nodeField='set_forwardVerticalThruster' protoField='set_forwardVerticalThruster'/> |
293 | <connect nodeField='set_afterVerticalThruster' protoField='set_afterVerticalThruster'/> |
294 | <connect nodeField='set_forwardLateralThruster' protoField='set_forwardLateralThruster'/> |
295 | <connect nodeField='set_afterLateralThruster' protoField='set_afterLateralThruster'/> |
296 | </IS> |
<![CDATA[
ecmascript: function set_forwardVerticalThruster (value, timeStamp) { if (value >= 0) forwardVerticalThrusterBeamTranslation = new SFVec3f(0, .145, 0); else forwardVerticalThrusterBeamTranslation = new SFVec3f(0, -0.145 + value, 0); forwardVerticalThrusterBeamRange = value; } function set_afterVerticalThruster (value, timeStamp) { if (value >= 0) afterVerticalThrusterBeamTranslation = new SFVec3f(0, .145, 0); else afterVerticalThrusterBeamTranslation = new SFVec3f(0, -0.145 + value, 0); afterVerticalThrusterBeamRange = value; } function set_forwardLateralThruster (value, timeStamp) { if (value >= 0) forwardLateralThrusterBeamTranslation = new SFVec3f(0, .21, 0); else forwardLateralThrusterBeamTranslation = new SFVec3f(0, -0.21 + value, 0); forwardLateralThrusterBeamRange = value; } function set_afterLateralThruster (value, timeStamp) { if (value >= 0) afterLateralThrusterBeamTranslation = new SFVec3f(0, .21, 0); else afterLateralThrusterBeamTranslation = new SFVec3f(0, -0.21 + value, 0); afterLateralThrusterBeamRange = value; }
]]>
|
|
298 | </Script> |
299 | <Group> |
300 | < ROUTE fromNode='THRUSTER_CONES' fromField='forwardVerticalThrusterBeamTranslation' toNode='FORWARD_VERTICAL_BEAMCONE' toField='translation'/> |
301 | < ROUTE fromNode='THRUSTER_CONES' fromField='forwardVerticalThrusterBeamRange' toNode='ForwardVerticalBeamCone' toField='range'/> |
302 | < ROUTE fromNode='THRUSTER_CONES' fromField='afterVerticalThrusterBeamTranslation' toNode='AFTER_VERTICAL_BEAMCONE' toField='translation'/> |
303 | < ROUTE fromNode='THRUSTER_CONES' fromField='afterVerticalThrusterBeamRange' toNode='AfterVerticalBeamCone' toField='range'/> |
304 | < ROUTE fromNode='THRUSTER_CONES' fromField='forwardLateralThrusterBeamTranslation' toNode='FORWARD_LATERAL_BEAMCONE' toField='translation'/> |
305 | < ROUTE fromNode='THRUSTER_CONES' fromField='forwardLateralThrusterBeamRange' toNode='ForwardLateralBeamCone' toField='range'/> |
306 | < ROUTE fromNode='THRUSTER_CONES' fromField='afterLateralThrusterBeamTranslation' toNode='AFTER_LATERAL_BEAMCONE' toField='translation'/> |
307 | < ROUTE fromNode='THRUSTER_CONES' fromField='afterLateralThrusterBeamRange' toNode='AfterLateralBeamCone' toField='range'/> |
308 | </Group> |
309 | <Shape DEF='HULL'> |
310 |
<!-- Appearance
HULL_APPEARANCE is a DEF node that has 1 USE node: USE_1 -->
<Appearance DEF='HULL_APPEARANCE'> |
311 | <Material DEF='HullMaterial'> |
312 | <IS> |
313 | <connect nodeField='diffuseColor' protoField='hullColor'/> |
314 | </IS> |
315 | </Material> |
316 | </Appearance> |
317 | <IndexedFaceSet creaseAngle='2.2' coordIndex='0 26 34 33 32 31 25 1 -1 1 25 31 32 33 34 26 0 -1 1 25 29 28 2 -1 2 28 29 25 1 -1 2 28 35 36 37 38 27 3 -1 3 27 38 37 36 35 28 2 -1 3 27 30 26 0 -1 0 26 30 27 3 -1 0 4 1 -1 0 1 4 -1 1 5 2 -1 1 2 5 -1 2 6 3 -1 2 3 6 -1 3 7 0 -1 3 0 7 -1 7 0 8 -1 7 8 0 -1 8 0 9 -1 8 9 0 -1 9 0 4 -1 9 4 0 -1 4 1 10 -1 4 10 1 -1 10 1 11 -1 10 11 1 -1 11 1 5 -1 11 5 1 -1 5 2 12 -1 5 12 2 -1 12 2 13 -1 12 13 2 -1 13 2 6 -1 13 6 2 -1 6 3 14 -1 6 14 3 -1 14 3 15 -1 14 15 3 -1 15 3 7 -1 15 7 3 -1 4 10 16 -1 10 4 16 -1 10 11 16 -1 11 10 16 -1 11 5 17 -1 5 11 17 -1 5 12 18 -1 12 5 18 -1 12 13 19 -1 13 12 19 -1 13 6 19 -1 6 13 19 -1 6 14 20 -1 14 6 20 -1 14 15 20 -1 15 14 20 -1 15 7 21 -1 7 15 21 -1 7 8 22 -1 8 7 22 -1 8 9 23 -1 9 8 23 -1 9 4 23 -1 4 9 23 -1 4 16 23 -1 16 4 23 -1 11 17 16 -1 17 11 16 -1 5 18 17 -1 18 5 17 -1 12 19 18 -1 19 12 18 -1 6 20 19 -1 20 6 19 -1 20 15 21 -1 15 20 21 -1 21 7 22 -1 7 21 22 -1 22 8 23 -1 8 22 23 -1 23 16 24 -1 16 23 24 -1 16 17 24 -1 17 16 24 -1 17 18 24 -1 18 17 24 -1 18 19 24 -1 19 18 24 -1 19 20 24 -1 20 19 24 -1 20 21 24 -1 21 20 24 -1 21 22 24 -1 22 21 24 -1 22 23 24 -1 23 22 24 -1 25 26 30 29 -1 29 30 26 25 -1 27 28 29 30 -1 30 29 28 27 -1 31 32 36 35 -1 35 36 32 31 -1 32 33 37 36 -1 36 37 33 32 -1 34 38 37 33 -1 33 37 38 34 -1'> |
318 | <!-- Bow Cowling [0..24], Stern Cowling [25..30], Rudder Post [31..38] --> |
319 | <Coordinate point='.6985 .13335 -0.20955 .6985 .13335 .20955 .6985 -0.13335 .20955 .6985 -0.13335 -0.20955 1.05 .085 0 1.05 0 .1143 1.05 -0.085 0 1.05 0 -0.1143 1.05 .04572 -0.098985 1.05 .079188 -0.05715 1.05 .079188 .05715 1.05 .04572 .098985 1.05 -0.04572 .098985 1.05 -0.079188 .05715 1.05 -0.079188 -0.05715 1.05 -0.04572 -0.098985 1.1 .04064 .02032 1.1 .02032 .06096 1.1 -0.02032 .06096 1.1 -0.04064 .02032 1.1 -0.04064 -0.02032 1.1 -0.02032 -0.06096 1.1 .02032 -0.06096 1.1 .04064 -0.02032 1.11 0 0 -0.6985 .13335 .20955 -0.6985 .13335 -0.20955 -0.6985 -0.13335 -0.20955 -0.6985 -0.13335 .20955 -1.1303 0 .20955 -1.1303 0 -0.20955 -0.6985 .13335 .0635 -0.8509 .13335 .0635 -0.8509 .13335 -0.0635 -0.6985 .13335 -0.0635 -0.6985 -0.13335 .0635 -0.8509 -0.13335 .0635 -0.8509 -0.13335 -0.0635 -0.6985 -0.13335 -0.0635'/> |
320 | </IndexedFaceSet> |
321 | </Shape> |
322 | <!-- original translation -1.1557 0 .09525 --> |
323 | <Transform DEF='STARTBOARD_SCREW_BEAMCONE_AND_SHAFT' translation='-1.3 0 .3'> |
324 | <Transform DEF='STARTBOARD_THRUSTER_BODY' rotation='0 0 1 1.57' translation='.15 0 0'> |
325 | <Shape> |
326 |
<!-- Appearance
THRUSTER_BODY_APPEARANCE is a DEF node that has 1 USE node: USE_1 -->
<Appearance DEF='THRUSTER_BODY_APPEARANCE'> |
327 | <Material diffuseColor='.9 .9 .9'/> |
328 | </Appearance> |
329 | <Cylinder height='.16' radius='.08'/> |
330 | </Shape> |
331 | <Shape> |
332 |
<!-- Appearance
THRUSTER_INNERBODY_APPEARANCE is a DEF node that has 1 USE node: USE_1 -->
<Appearance DEF='THRUSTER_INNERBODY_APPEARANCE'> |
333 | <Material diffuseColor='.2 .2 .2'/> |
334 | </Appearance> |
335 | <Cylinder height='.22' radius='.06'/> |
336 | </Shape> |
337 | </Transform> |
338 | <Transform DEF='STARBOARD_THRUSTER_BRACKET' rotation='0 0 1 1.57' translation='.2 0 -0.05'> |
339 | <Shape> |
340 | <Appearance> |
341 | <Material diffuseColor='.9 .9 .9'/> |
342 | </Appearance> |
343 | <Box size='.02 .05 .2'/> |
344 | </Shape> |
345 | </Transform> |
346 | <Transform DEF='STARBOARD_SCREW_BEAMCONE' rotation='0 1 0 3.14'> |
347 | <ProtoInstance name='BeamCone' DEF='StarboardScrewBeamCone'> |
348 | <fieldValue name='name' value='StarboardScrewBeamCone'/> |
349 | <!-- range values -1..0..1m <==> -700..0..700 RPM --> |
350 | <fieldValue name='defaultRange' value='1'/> |
351 | <fieldValue name='beamHeightDegrees' value='8'/> |
352 | <fieldValue name='beamWidthDegrees' value='8'/> |
353 | <fieldValue name='solid' value='false'/> |
354 | <fieldValue name='wireframe' value='true'/> |
355 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
356 | <fieldValue name='transparency' value='0'/> |
357 | <fieldValue name='traceEnabled' value='false'/> |
358 | <IS> |
359 | <connect nodeField='range' protoField='set_stbdRpm'/> |
360 | </IS> |
361 | </ProtoInstance> |
362 | </Transform> |
363 | |
364 | <Transform rotation='0 0 1 1.57079' translation='.0281 0 0'> |
365 | <Shape DEF='SCREW_SHAFT'> |
366 |
<!-- Appearance
SCREW_APPEARANCE is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<Appearance DEF='SCREW_APPEARANCE'> |
367 | <Material diffuseColor='.226 .197 0'/> |
368 | </Appearance> |
369 | <Cylinder bottom='false' height='.0762' radius='.008' top='false'/> |
370 | </Shape> |
371 | </Transform> |
372 | <Transform rotation='0 0 1 1.57079' translation='-0.015 0 0'> |
373 | <Shape DEF='SHAFT_END_CAP'> |
374 | <Appearance USE='SCREW_APPEARANCE'/> |
375 | <Cone bottom='false' bottomRadius='.008' height='.01'/> |
376 | </Shape> |
377 | </Transform> |
378 | </Group> |
379 | </Transform> |
380 | <!-- original translation -1.1557 0 .09525 --> |
381 | <Transform DEF='STARBOARD_SCREW' translation='-1.3 0 .3'> |
382 |
<!-- Transform
STARBOARD_BLADE is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<Transform DEF='STARBOARD_BLADE'> |
383 | <Transform rotation='0 1 0 -0.39'> |
384 | <Shape> |
385 | <Appearance USE='SCREW_APPEARANCE'/> |
386 | <IndexedFaceSet coordIndex='0 1 2 3 4 5 6 7 -1 0 7 6 5 4 3 2 1 -1'> |
387 |
<!-- Coordinate
BLADE_COORDINATES is a DEF node that has 1 USE node: USE_1 --> <Coordinate DEF='BLADE_COORDINATES' point='0 0 -0.00508 0 .02540 -0.02032 0 .04572 -0.01524 0 .05080 -0.00508 0 .05080 .00508 0 .04572 .01524 0 .02540 .02032 0 0 .00508'/> |
388 | </IndexedFaceSet> |
389 | </Shape> |
390 | </Transform> |
391 | </Transform> |
392 | <Transform rotation='1 0 0 1.57079'> |
393 | <Transform USE='STARBOARD_BLADE'/> |
394 | </Transform> |
395 | <Transform rotation='1 0 0 3.14159267'> |
396 | <Transform USE='STARBOARD_BLADE'/> |
397 | </Transform> |
398 | <Transform rotation='1 0 0 -1.57079'> |
399 | <Transform USE='STARBOARD_BLADE'/> |
400 | </Transform> |
401 | </Transform> |
402 | <!-- original translation -1.1557 0 -0.09525 --> |
403 | <Transform DEF='PORT_SCREW_BEAMCONE_AND_SHAFT' translation='-1.3 0 -0.3'> |
404 | <Transform DEF='PORT_THRUSTER_BODY' rotation='0 0 1 1.57' translation='.15 0 0'> |
405 | <Shape> |
406 | <Appearance USE='THRUSTER_BODY_APPEARANCE'/> |
407 | <Cylinder height='.16' radius='.08'/> |
408 | </Shape> |
409 | <Shape> |
410 | <Appearance USE='THRUSTER_INNERBODY_APPEARANCE'/> |
411 | <Cylinder height='.22' radius='.05'/> |
412 | </Shape> |
413 | </Transform> |
414 | <Transform DEF='PORT_THRUSTER_BRACKET' rotation='0 0 1 1.57' translation='.2 0 .05'> |
415 | <Shape> |
416 | <Appearance> |
417 | <Material diffuseColor='.9 .9 .9'/> |
418 | </Appearance> |
419 | <Box size='.02 .05 .2'/> |
420 | </Shape> |
421 | </Transform> |
422 | <Transform DEF='PORT_SCREW_BEAMCONE' rotation='0 1 0 3.14'> |
423 | <ProtoInstance name='BeamCone' DEF='PortScrewBeamCone'> |
424 | <fieldValue name='name' value='PortScrewBeamCone'/> |
425 | <!-- range values -1..0..1 m <==> -700..0..700 RPM --> |
426 | <fieldValue name='defaultRange' value='1'/> |
427 | <fieldValue name='beamHeightDegrees' value='8'/> |
428 | <fieldValue name='beamWidthDegrees' value='8'/> |
429 | <fieldValue name='solid' value='false'/> |
430 | <fieldValue name='wireframe' value='true'/> |
431 | <!-- Greenish blue for sea water flow --> |
432 | <fieldValue name='noContactColor' value='0 .8 .4'/> |
433 | <fieldValue name='transparency' value='0'/> |
434 | <fieldValue name='traceEnabled' value='false'/> |
435 | <IS> |
436 | <connect nodeField='range' protoField='set_portRpm'/> |
437 | </IS> |
438 | </ProtoInstance> |
439 | </Transform> |
440 | <Group USE='SHAFT'/> |
441 | </Transform> |
442 | <!-- original translation -1.1557 0 -0.09525 --> |
443 | <Transform DEF='PORT_SCREW' translation='-1.3 0 -0.3'> |
444 |
<!-- Group
PORT_BLADE is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<Group DEF='PORT_BLADE'> |
445 | <Transform rotation='0 1 0 .39'> |
446 | <Shape> |
447 | <Appearance USE='SCREW_APPEARANCE'/> |
448 | <IndexedFaceSet coordIndex='0 1 2 3 4 5 6 7 -1 0 7 6 5 4 3 2 1 -1'> |
449 | <!-- This blade has reversed pitch --> |
450 | <Coordinate USE='BLADE_COORDINATES'/> |
451 | </IndexedFaceSet> |
452 | </Shape> |
453 | </Transform> |
454 | </Group> |
455 | <Transform rotation='1 0 0 1.57079'> |
456 | <Group USE='PORT_BLADE'/> |
457 | </Transform> |
458 | <Transform rotation='1 0 0 3.14159267'> |
459 | <Group USE='PORT_BLADE'/> |
460 | </Transform> |
461 | <Transform rotation='1 0 0 -1.57079'> |
462 | <Group USE='PORT_BLADE'/> |
463 | </Transform> |
464 | </Transform> |
465 | </Transform> |
466 | <Shape> |
467 | <!-- Medium-resolution LOD level --> |
468 | <Appearance USE='HULL_APPEARANCE'/> |
469 | <!-- size is full length, height, width --> |
470 | <Box size='2.2 .26 .42'/> |
471 | </Shape> |
472 | </LOD> |
473 | <Group> |
474 | <Viewpoint DEF='HULLNAME_VIEWPOINT' description='Aries Prototype' position='0 0 4'> |
475 | <IS> |
476 | <connect nodeField='description' protoField='hullName'/> |
477 | </IS> |
478 | </Viewpoint> |
479 | <Viewpoint description='Port Bow' orientation='0 1 0 2.356' position='8 0 -8'/> |
480 | <Viewpoint description='Bow' orientation='0 1 0 1.572' position='10 0 0'/> |
481 | <Viewpoint description='Starboard Bow' orientation='0 1 0 0.785' position='8 0 8'/> |
482 | <Viewpoint description='Port Beam' orientation='0 1 0 3.14159267' position='0 0 -10'/> |
483 | <Viewpoint description='Port Astern' orientation='0 1 0 3.926' position='-8 0 -8'/> |
484 | <Viewpoint description='Astern' orientation='0 1 0 -1.4' position='-10 0 0'/> |
485 | <Viewpoint description='Starboard Astern' orientation='0 1 0 -0.783' position='-10 0 10'/> |
486 | <Viewpoint description='Looking down from 25m above Aries' orientation='1 0 0 -1.57' position='0 25 0'/> |
487 | </Group> |
488 | </Transform> |
489 | </ProtoBody> |
490 | </ProtoDeclare> |
491 | <Viewpoint description='Aries AUV'/> |
492 | <Group> |
493 | <ProtoInstance name='Aries'> |
494 | <fieldValue name='translation' value='0 0.4 0'/> |
495 | </ProtoInstance> |
496 | </Group> |
497 | <!-- Viewable geometry is anchored text that links to an example that showing the usage of AriesPrototype --> |
498 | <Anchor description='AriesExample' parameter='"target=_blank"' url=' "AriesExample.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Robots/UnmannedUnderwaterVehicles/AriesExample.x3d" "AriesExample.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Robots/UnmannedUnderwaterVehicles/AriesExample.wrl" '> |
499 | <Shape> |
500 | <Appearance> |
501 | <Material diffuseColor='0 1 1' emissiveColor='0 1 1'/> |
502 | </Appearance> |
503 | <Text string='"AriesPrototype" "is a prototype definition file" "" "click on text to view" "AriesExample"'> |
504 | <FontStyle justify='"MIDDLE" "MIDDLE"'/> |
505 | </Text> |
506 | </Shape> |
507 | </Anchor> |
508 | </Scene> |
509 | </X3D> |
Event Graph ROUTE Table entries with 20 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.
PLANE_SURFACES
Script forwardRuddersRotation SFRotation |
FORWARD_RUDDERS
Transform rotation SFRotation |
|
PLANE_SURFACES
Script afterRuddersRotation SFRotation |
AFTER_RUDDERS
Transform rotation SFRotation |
|
PLANE_SURFACES
Script forwardPlanesRotation SFRotation |
FORWARD_PLANES
Transform rotation SFRotation |
|
PLANE_SURFACES
Script afterPlanesRotation SFRotation |
AFTER_PLANES
Transform rotation SFRotation |
SONAR_STEERING_AND_DETECTS
Script ST725Rotation SFRotation |
ST725
Transform rotation SFRotation |
|
SONAR_STEERING_AND_DETECTS
Script ST1000Rotation SFRotation |
ST1000
Transform rotation SFRotation |
|
SONAR_STEERING_AND_DETECTS
Script ST725Contact SFBool |
ST725BeamCone
ProtoInstance contact SFBool |
|
SONAR_STEERING_AND_DETECTS
Script ST1000Contact SFBool |
ST1000BeamCone
ProtoInstance contact SFBool |
|
SONAR_STEERING_AND_DETECTS
Script ST725Range_changed SFFloat |
ST725BeamCone
ProtoInstance range SFFloat |
|
SONAR_STEERING_AND_DETECTS
Script ST1000Range_changed SFFloat |
ST1000BeamCone
ProtoInstance range SFFloat |
|
SONAR_STEERING_AND_DETECTS
Script ST725Intensity SFFloat |
ST725BeamCone
ProtoInstance transparency SFFloat |
|
SONAR_STEERING_AND_DETECTS
Script ST1000Intensity SFFloat |
ST1000BeamCone
ProtoInstance transparency SFFloat |
THRUSTER_CONES
Script forwardVerticalThrusterBeamTranslation SFVec3f |
FORWARD_VERTICAL_BEAMCONE
Transform translation SFVec3f |
|
THRUSTER_CONES
Script forwardVerticalThrusterBeamRange SFFloat |
ForwardVerticalBeamCone
ProtoInstance range SFFloat |
|
THRUSTER_CONES
Script afterVerticalThrusterBeamTranslation SFVec3f |
AFTER_VERTICAL_BEAMCONE
Transform translation SFVec3f |
|
THRUSTER_CONES
Script afterVerticalThrusterBeamRange SFFloat |
AfterVerticalBeamCone
ProtoInstance range SFFloat |
|
THRUSTER_CONES
Script forwardLateralThrusterBeamTranslation SFVec3f |
FORWARD_LATERAL_BEAMCONE
Transform translation SFVec3f |
|
THRUSTER_CONES
Script forwardLateralThrusterBeamRange SFFloat |
ForwardLateralBeamCone
ProtoInstance range SFFloat |
|
THRUSTER_CONES
Script afterLateralThrusterBeamTranslation SFVec3f |
AFTER_LATERAL_BEAMCONE
Transform translation SFVec3f |
|
THRUSTER_CONES
Script afterLateralThrusterBeamRange SFFloat |
AfterLateralBeamCone
ProtoInstance range SFFloat |
line 493
ProtoInstance Aries |
No direct ROUTE connection found for events to/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. |
AfterLateralBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
AfterVerticalBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
ForwardLateralBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
ForwardVerticalBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
PortScrewBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
ST1000BeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
ST725BeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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. |
StarboardScrewBeamCone
ProtoInstance BeamCone |
No direct ROUTE connection found for events to/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 498
Anchor |
description='AriesExample' 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.
-->