X3D Model Documentation: ExampleScenario.x3d

  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='titlecontent=' ExampleScenario.x3d '/>
  6            <meta name='descriptioncontent='Example use of SphericalMine and other prototypes to build a 4-AUV minefield search scene. Output will be produced by Matlab program.'/>
  7            <meta name='creatorcontent='Don Brutzman, Arlene Guest and UW3303 class'/>
  8            <meta name='createdcontent='26 May 2004'/>
  9            <meta name='modifiedcontent='23 August 2023'/>
 10            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/ExampleScenario.x3d '/>
 11            <meta name='generatorcontent='X3D-Edit 3.3, https://www.web3d.org/x3d/tools/X3D-Edit'/>
 12            <meta name='licensecontent='../../license.html'/>
 13       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: ColorCodedMinefield, DieselLocation, EnvironmentBackground, HostileDieselSubGroup, MasterAnimationController, MinefieldGroup, RemusSideScan, Robot1, Robot2, Robot3, Robot4, RobotSearchGroup, RobotTrack1, RobotTrack2, RobotTrack3, RobotTrack4, TrackingTransformRobot1, TrackingTransformRobot2, TrackingTransformRobot3, TrackingTransformRobot4

Index for ExternProtoDeclare definitions: DvdController, SphericalMine, WaypointInterpolator
-->
 14       <Scene>
 15            <!-- ====================================== -->
 16            <ExternProtoDeclare name='SphericalMineappinfo='Spherical floating mine moored to bottom'   url=' "../../Weapons/UnderwaterMines/SphericalMinePrototype.x3d#SphericalMine" "https://www.web3d.org/x3d/content/examples/Savage/Weapons/UnderwaterMines/SphericalMinePrototype.x3d#SphericalMine" "../../Weapons/UnderwaterMines/SphericalMinePrototype.wrl#SphericalMine" "https://www.web3d.org/x3d/content/examples/Savage/Weapons/UnderwaterMines/SphericalMinePrototype.wrl#SphericalMine" '>
 17                 <field name='descriptiontype='SFStringaccessType='initializeOnly'
                appinfo='Description for each mine contact.'/>
 18                 <field name='colortype='SFColoraccessType='inputOutput'
                appinfo='Mine color can be used to indicate status (found/unknown/disabled/) tactic etc.'/>
 19                 <field name='translationtype='SFVec3faccessType='inputOutput'
                appinfo='Location of mine center in local world coordinates.'/>
 20                 <field name='scaletype='SFVec3faccessType='inputOutput'
                appinfo='Scale factor to change spherical mine size default diameter = 1m.'/>
 21                 <field name='bboxCentertype='SFVec3faccessType='initializeOnly'
                appinfo='Bounding box for collision detection of mine.'/>
 22                 <field name='tetherPointstype='MFVec3faccessType='inputOutput'
                appinfo='Top and bottom endpoints of line tether that anchors this mine to the bottom.'/>
 23                 <field name='proximityIsActivetype='SFBoolaccessType='outputOnly'
                appinfo='proximityIsActive can be used to activate information or interaction when the viewer nears the mine.'/>
 24                 <field name='proximitySizetype='SFVec3faccessType='inputOutput'
                appinfo='proximitySize provides overall box dimensions for proximity; thus (10 10 10) yields approximate radius 5 to 7 meters.'/>
 25            </ExternProtoDeclare>
 26            <!-- ====================================== -->
 27            <ExternProtoDeclare name='DvdControllerappinfo='Digital Virtual Display (DVD) Controller Prototype is a heads-up display (HUD) to control animation timing'   url=' "../../Tools/HeadsUpDisplays/DvdControllerPrototype.x3d#DvdController" "https://www.web3d.org/x3d/content/examples/Savage/Tools/HeadsUpDisplays/DvdControllerPrototype.x3d#DvdController" "../../Tools/HeadsUpDisplays/DvdControllerPrototype.wrl#DvdController" "https://www.web3d.org/x3d/content/examples/Savage/Tools/HeadsUpDisplays/DvdControllerPrototype.wrl#DvdController" '>
 28                 <field name='descriptiontype='SFStringaccessType='initializeOnly'
                appinfo='Short description of what is animated by this DvdController.'/>
 29                 <field name='playEnabledtype='SFBoolaccessType='initializeOnly'
                appinfo='Whether or not play mode is enabled including during startup.'/>
 30                 <field name='displayModetype='SFStringaccessType='initializeOnly'
                appinfo='Initializes how control buttons and slider are displayed. The control buttons include DIS control (i.e. Master Ghost Local) and Playback control (i.e. Reset to Start Fast Rewind Rewind Pause Play Fast Forward Reset to End). Possible values are (case sensitive): ALL DIS_ONLY PLAYBACK_ONLY SLIDER_ONLY DIS_PLAYBACK DIS_SLIDER PLAYBACK_SLIDER and NONE.'/>
 31                 <field name='setDisplayModetype='SFStringaccessType='inputOnly'
                appinfo='Sets how control buttons and slider are displayed. The control buttons include DIS control (i.e. Master Ghost Local) and Playback control (i.e. Reset to Start Fast Rewind Rewind Pause Play Fast Forward Reset to End). Possible values are (case sensitive): ALL DIS_ONLY PLAYBACK_ONLY SLIDER_ONLY DIS_PLAYBACK DIS_SLIDER PLAYBACK_SLIDER and NONE.'/>
 32                 <field name='buttonColortype='SFColoraccessType='initializeOnly'
                appinfo='Default button color.'/>
 33                 <field name='selectedButtonColortype='SFColoraccessType='initializeOnly'
                appinfo='Button color when selected by user.'/>
 34                 <field name='labelColortype='SFColoraccessType='initializeOnly'
                appinfo='Default label color.'/>
 35                 <field name='selectedLabelColortype='SFColoraccessType='initializeOnly'
                appinfo='Label color when selected by user.'/>
 36                 <field name='locationOffsettype='SFVec3faccessType='initializeOnly'
                appinfo='Modified screen location and distance (for size).'/>
 37                 <field name='clockEnabledtype='SFBoolaccessType='initializeOnly'
                appinfo='default value true'/>
 38                 <field name='cycleIntervaltype='SFTimeaccessType='initializeOnly'
                appinfo='Time for complete loop cycle in seconds.'/>
 39                 <field name='set_cycleIntervaltype='SFTimeaccessType='inputOnly'/>
 40                 <field name='cycleInterval_changedtype='SFTimeaccessType='outputOnly'/>
 41                 <field name='speedFactortype='SFFloataccessType='initializeOnly'
                appinfo='Factor used to determine the speed increase/decrease for Fast Rewind and Fast Forward action.'/>
 42                 <field name='isActivetype='SFBoolaccessType='outputOnly'/>
 43                 <field name='startTime_changedtype='SFTimeaccessType='outputOnly'/>
 44                 <field name='stopTime_changedtype='SFTimeaccessType='outputOnly'/>
 45                 <field name='time_changedtype='SFTimeaccessType='outputOnly'/>
 46                 <field name='fraction_changedtype='SFFloataccessType='outputOnly'/>
 47                 <field name='secondsElapsedtype='SFTimeaccessType='outputOnly'/>
 48                 <field name='isMastertype='SFBoolaccessType='outputOnly'
                appinfo='isMaster isRemote and isLocal are booleans represent a 3-way toggle. Only one of them can have a true value at any time.'/>
 49                 <field name='isRemotetype='SFBoolaccessType='outputOnly'
                appinfo='isMaster isRemote and isLocal are booleans represent a 3-way toggle. Only one of them can have a true value at any time.'/>
 50                 <field name='isLocaltype='SFBoolaccessType='outputOnly'
                appinfo='isMaster isRemote and isLocal are booleans represent a 3-way toggle. Only one of them can have a true value at any time.'/>
 51                 <field name='isPausedtype='SFBoolaccessType='outputOnly'
                appinfo='isPaused and isRunning always have opposite values. When isPaused is true isRunning will be false and vice versa.'/>
 52                 <field name='isRunningtype='SFBoolaccessType='outputOnly'
                appinfo='isPaused and isRunning always have opposite values. When isPaused is true isRunning will be false and vice versa.'/>
 53                 <field name='traceEnabledtype='SFBoolaccessType='initializeOnly'
                appinfo='Enable/disable console output for troubleshooting'/>
 54                 <field name='testTimeValtype='SFTimeaccessType='initializeOnly'
                appinfo='default value -2'/>
 55            </ExternProtoDeclare>
 56            <!-- ====================================== -->
 57            <ExternProtoDeclare name='WaypointInterpolatorappinfo='Reads waypoints and legSpeeds/legDurations/defaultSpeed to provide a customizable position/orientation interpolator.'   url=' "../../../Savage/Tools/Animation/WaypointInterpolatorPrototype.x3d#WaypointInterpolator" "https://www.web3d.org/x3d/content/examples/Savage/Tools/Animation/WaypointInterpolatorPrototype.x3d#WaypointInterpolator" "../../../Savage/Tools/Animation/WaypointInterpolatorPrototype.wrl#WaypointInterpolator" "https://www.web3d.org/x3d/content/examples/Savage/Tools/Animation/WaypointInterpolatorPrototype.wrl#WaypointInterpolator" '>
 58                 <!-- Priority of use: legSpeeds (m/sec), legDurations (seconds), defaultSpeed (m/sec) -->
 59                 <!-- interpolation fields -->
 60                 <!-- display-related fields -->
 61                 <field name='descriptiontype='SFStringaccessType='initializeOnly'
                appinfo='Short description of what is animated by this WaypointInterpolator.'/>
 62                 <field name='waypointstype='MFVec3faccessType='initializeOnly'
                appinfo='Waypoints being traversed with interpolation of intermediate positions and orientations.'/>
 63                 <field name='add_waypointtype='SFVec3faccessType='inputOnly'
                appinfo='Add another single waypoint to array of waypoints recalculate interpolator values.'/>
 64                 <field name='set_waypointstype='MFVec3faccessType='inputOnly'
                appinfo='Replace all waypoints recalculate interpolator values.'/>
 65                 <field name='pitchUpDownForVerticalWaypointstype='SFBoolaccessType='initializeOnly'
                appinfo='Whether to pitch child geometry (such as a vehicle) up or down to match vertical slope'/>
 66                 <field name='legSpeedstype='MFFloataccessType='initializeOnly'
                appinfo='Units m/sec. If used, array lengths for legSpeeds and legDurations must be one less than number of waypoints.'/>
 67                 <field name='legDurationstype='MFTimeaccessType='initializeOnly'
                appinfo='Units in seconds. If used, array lengths for legSpeeds and legDurations must be one less than number of waypoints.'/>
 68                 <field name='defaultSpeedtype='SFFloataccessType='initializeOnly'
                appinfo='Units m/sec.'/>
 69                 <field name='turningRatetype='SFFloataccessType='initializeOnly'
                appinfo='turningRate (degrees/second) also determines standoff distance prior to waypoint where turn commences. If 0 turns are instantaneous.'/>
 70                 <field name='totalDurationtype='SFTimeaccessType='outputOnly'
                appinfo='Output calculation summing all leg durations, useful for setting TimeSensor cycleInterval. Units in seconds.'/>
 71                 <field name='set_fractiontype='SFFloataccessType='inputOnly'
                appinfo='exposed PositionInterpolator and OrientationInterpolator setting'/>
 72                 <field name='position_changedtype='SFVec3faccessType='outputOnly'
                appinfo='exposed PositionInterpolator setting'/>
 73                 <field name='orientation_changedtype='SFRotationaccessType='outputOnly'
                appinfo='exposed OrientationInterpolator setting'/>
 74                 <field name='lineColortype='SFColoraccessType='inputOutput'
                appinfo='default color for non-active line segments'/>
 75                 <field name='highlightSegmentColortype='SFColoraccessType='inputOutput'
                appinfo='active segment highlight color'/>
 76                 <field name='transparencytype='SFFloataccessType='inputOutput'
                appinfo='1.0 is completely transparent, 0.0 is completely opaque.'/>
 77                 <field name='labelDisplayModetype='SFStringaccessType='initializeOnly'
                appinfo='allowed values: none; waypoints (produce labels at each waypoint); or interpolation (produce single moving label at interpolator time course speed location)'/>
 78                 <field name='heightLabeltype='SFStringaccessType='initializeOnly'
                appinfo='allowed values: altitude depth (negate Y value) none'/>
 79                 <field name='labelOffsettype='SFVec3faccessType='initializeOnly'
                appinfo='heightLabel relative location'/>
 80                 <field name='labelFontSizetype='SFFloataccessType='initializeOnly'
                appinfo='heightLabel text size'/>
 81                 <field name='labelColortype='SFColoraccessType='initializeOnly'
                appinfo='heightLabel text color'/>
 82                 <field name='traceEnabledtype='SFBoolaccessType='initializeOnly'
                appinfo='enable console output to trace script computations and prototype progress'/>
 83                 <field name='outputInitializationComputationstype='SFBoolaccessType='initializeOnly'
                appinfo='Output the number of waypoints totalDistance and totalDuration to console upon initialization'/>
 84                 <field name='verticalDropLineColortype='SFColoraccessType='inputOutput'
                appinfo='default color for vertical drop-line segments'/>
 85                 <field name='verticalDropLineTransparencytype='SFFloataccessType='inputOutput'
                appinfo='1.0 is completely transparent, 0.0 is completely opaque.'/>
 86            </ExternProtoDeclare>
 87            <!-- ====================================== -->
 88            <!-- Main scene begins here -->
 89            <WorldInfo title='UW3303 Minefield Search'/>
 90            <Inline DEF='EnvironmentBackground'   url=' "MinefieldSearchBackground.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/MinefieldSearchBackground.x3d" "MinefieldSearchBackground.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/MinefieldSearchBackground.wrl" '/>
 91            <Inline DEF='ColorCodedMinefield'   url=' "ColorCodedMinefield.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/ColorCodedMinefield.x3d" "ColorCodedMinefield.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/ColorCodedMinefield.wrl" '/>
 92            <Group DEF='MinefieldGroup'>
 93                 <!-- ***** generate custom mines ***** -->
 94                 <ProtoInstance name='SphericalMine'>
 95                      <fieldValue name='descriptionvalue='Spherical Mine # 1'/>
 96                      <fieldValue name='translationvalue='4850 -20 1350'/>
 97                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
 98                 </ProtoInstance>
 99                 <ProtoInstance name='SphericalMine'>
100                      <fieldValue name='descriptionvalue='Spherical Mine # 2'/>
101                      <fieldValue name='translationvalue='1150 -20 1550'/>
102                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
103                 </ProtoInstance>
104                 <ProtoInstance name='SphericalMine'>
105                      <fieldValue name='descriptionvalue='Spherical Mine # 3'/>
106                      <fieldValue name='translationvalue='8850 -20 1550'/>
107                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
108                 </ProtoInstance>
109                 <ProtoInstance name='SphericalMine'>
110                      <fieldValue name='descriptionvalue='Spherical Mine # 4'/>
111                      <fieldValue name='translationvalue='6150 -20 1750'/>
112                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
113                 </ProtoInstance>
114                 <ProtoInstance name='SphericalMine'>
115                      <fieldValue name='descriptionvalue='Spherical Mine # 5'/>
116                      <fieldValue name='translationvalue='9750 -20 1750'/>
117                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
118                 </ProtoInstance>
119                 <ProtoInstance name='SphericalMine'>
120                      <fieldValue name='descriptionvalue='Spherical Mine # 6'/>
121                      <fieldValue name='translationvalue='3750 -20 1850'/>
122                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
123                 </ProtoInstance>
124                 <ProtoInstance name='SphericalMine'>
125                      <fieldValue name='descriptionvalue='Spherical Mine # 7'/>
126                      <fieldValue name='translationvalue='4650 -20 1850'/>
127                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
128                 </ProtoInstance>
129                 <ProtoInstance name='SphericalMine'>
130                      <fieldValue name='descriptionvalue='Spherical Mine # 8'/>
131                      <fieldValue name='translationvalue='2850 -20 2050'/>
132                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
133                 </ProtoInstance>
134                 <ProtoInstance name='SphericalMine'>
135                      <fieldValue name='descriptionvalue='Spherical Mine # 9'/>
136                      <fieldValue name='translationvalue='6450 -20 2050'/>
137                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
138                 </ProtoInstance>
139                 <ProtoInstance name='SphericalMine'>
140                      <fieldValue name='descriptionvalue='Spherical Mine # 10'/>
141                      <fieldValue name='translationvalue='50 -20 2150'/>
142                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
143                 </ProtoInstance>
144                 <ProtoInstance name='SphericalMine'>
145                      <fieldValue name='descriptionvalue='Spherical Mine # 11'/>
146                      <fieldValue name='translationvalue='2950 -20 2250'/>
147                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
148                 </ProtoInstance>
149                 <ProtoInstance name='SphericalMine'>
150                      <fieldValue name='descriptionvalue='Spherical Mine # 12'/>
151                      <fieldValue name='translationvalue='3750 -20 2350'/>
152                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
153                 </ProtoInstance>
154                 <ProtoInstance name='SphericalMine'>
155                      <fieldValue name='descriptionvalue='Spherical Mine # 13'/>
156                      <fieldValue name='translationvalue='5850 -20 2350'/>
157                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
158                 </ProtoInstance>
159                 <ProtoInstance name='SphericalMine'>
160                      <fieldValue name='descriptionvalue='Spherical Mine # 14'/>
161                      <fieldValue name='translationvalue='6550 -20 2350'/>
162                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
163                 </ProtoInstance>
164                 <ProtoInstance name='SphericalMine'>
165                      <fieldValue name='descriptionvalue='Spherical Mine # 15'/>
166                      <fieldValue name='translationvalue='950 -20 2450'/>
167                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
168                 </ProtoInstance>
169                 <ProtoInstance name='SphericalMine'>
170                      <fieldValue name='descriptionvalue='Spherical Mine # 16'/>
171                      <fieldValue name='translationvalue='1250 -20 2450'/>
172                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
173                 </ProtoInstance>
174                 <ProtoInstance name='SphericalMine'>
175                      <fieldValue name='descriptionvalue='Spherical Mine # 17'/>
176                      <fieldValue name='translationvalue='9950 -20 2550'/>
177                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
178                 </ProtoInstance>
179                 <ProtoInstance name='SphericalMine'>
180                      <fieldValue name='descriptionvalue='Spherical Mine # 18'/>
181                      <fieldValue name='translationvalue='50 -20 2650'/>
182                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
183                 </ProtoInstance>
184                 <ProtoInstance name='SphericalMine'>
185                      <fieldValue name='descriptionvalue='Spherical Mine # 19'/>
186                      <fieldValue name='translationvalue='250 -20 2650'/>
187                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
188                 </ProtoInstance>
189                 <ProtoInstance name='SphericalMine'>
190                      <fieldValue name='descriptionvalue='Spherical Mine # 20'/>
191                      <fieldValue name='translationvalue='6250 -20 2650'/>
192                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
193                 </ProtoInstance>
194                 <ProtoInstance name='SphericalMine'>
195                      <fieldValue name='descriptionvalue='Spherical Mine # 21'/>
196                      <fieldValue name='translationvalue='9950 -20 2750'/>
197                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
198                 </ProtoInstance>
199                 <ProtoInstance name='SphericalMine'>
200                      <fieldValue name='descriptionvalue='Spherical Mine # 22'/>
201                      <fieldValue name='translationvalue='7250 -20 2850'/>
202                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
203                 </ProtoInstance>
204                 <ProtoInstance name='SphericalMine'>
205                      <fieldValue name='descriptionvalue='Spherical Mine # 23'/>
206                      <fieldValue name='translationvalue='8650 -20 2850'/>
207                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
208                 </ProtoInstance>
209                 <ProtoInstance name='SphericalMine'>
210                      <fieldValue name='descriptionvalue='Spherical Mine # 24'/>
211                      <fieldValue name='translationvalue='1650 -20 2950'/>
212                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
213                 </ProtoInstance>
214                 <ProtoInstance name='SphericalMine'>
215                      <fieldValue name='descriptionvalue='Spherical Mine # 25'/>
216                      <fieldValue name='translationvalue='2350 -20 2950'/>
217                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
218                 </ProtoInstance>
219                 <ProtoInstance name='SphericalMine'>
220                      <fieldValue name='descriptionvalue='Spherical Mine # 26'/>
221                      <fieldValue name='translationvalue='7550 -20 2950'/>
222                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
223                 </ProtoInstance>
224                 <ProtoInstance name='SphericalMine'>
225                      <fieldValue name='descriptionvalue='Spherical Mine # 27'/>
226                      <fieldValue name='translationvalue='2550 -20 3050'/>
227                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
228                 </ProtoInstance>
229                 <ProtoInstance name='SphericalMine'>
230                      <fieldValue name='descriptionvalue='Spherical Mine # 28'/>
231                      <fieldValue name='translationvalue='3050 -20 3050'/>
232                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
233                 </ProtoInstance>
234                 <ProtoInstance name='SphericalMine'>
235                      <fieldValue name='descriptionvalue='Spherical Mine # 29'/>
236                      <fieldValue name='translationvalue='9350 -20 3050'/>
237                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
238                 </ProtoInstance>
239                 <ProtoInstance name='SphericalMine'>
240                      <fieldValue name='descriptionvalue='Spherical Mine # 30'/>
241                      <fieldValue name='translationvalue='2950 -20 3150'/>
242                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
243                 </ProtoInstance>
244                 <ProtoInstance name='SphericalMine'>
245                      <fieldValue name='descriptionvalue='Spherical Mine # 31'/>
246                      <fieldValue name='translationvalue='9650 -20 3150'/>
247                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
248                 </ProtoInstance>
249                 <ProtoInstance name='SphericalMine'>
250                      <fieldValue name='descriptionvalue='Spherical Mine # 32'/>
251                      <fieldValue name='translationvalue='9750 -20 3150'/>
252                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
253                 </ProtoInstance>
254                 <ProtoInstance name='SphericalMine'>
255                      <fieldValue name='descriptionvalue='Spherical Mine # 33'/>
256                      <fieldValue name='translationvalue='3350 -20 3350'/>
257                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
258                 </ProtoInstance>
259                 <ProtoInstance name='SphericalMine'>
260                      <fieldValue name='descriptionvalue='Spherical Mine # 34'/>
261                      <fieldValue name='translationvalue='4650 -20 3350'/>
262                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
263                 </ProtoInstance>
264                 <ProtoInstance name='SphericalMine'>
265                      <fieldValue name='descriptionvalue='Spherical Mine # 35'/>
266                      <fieldValue name='translationvalue='1150 -20 3550'/>
267                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
268                 </ProtoInstance>
269                 <ProtoInstance name='SphericalMine'>
270                      <fieldValue name='descriptionvalue='Spherical Mine # 36'/>
271                      <fieldValue name='translationvalue='4650 -20 3550'/>
272                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
273                 </ProtoInstance>
274                 <ProtoInstance name='SphericalMine'>
275                      <fieldValue name='descriptionvalue='Spherical Mine # 37'/>
276                      <fieldValue name='translationvalue='6850 -20 3550'/>
277                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
278                 </ProtoInstance>
279                 <ProtoInstance name='SphericalMine'>
280                      <fieldValue name='descriptionvalue='Spherical Mine # 38'/>
281                      <fieldValue name='translationvalue='9450 -20 3650'/>
282                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
283                 </ProtoInstance>
284                 <ProtoInstance name='SphericalMine'>
285                      <fieldValue name='descriptionvalue='Spherical Mine # 39'/>
286                      <fieldValue name='translationvalue='450 -20 3850'/>
287                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
288                 </ProtoInstance>
289                 <ProtoInstance name='SphericalMine'>
290                      <fieldValue name='descriptionvalue='Spherical Mine # 40'/>
291                      <fieldValue name='translationvalue='9850 -20 3850'/>
292                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
293                 </ProtoInstance>
294                 <ProtoInstance name='SphericalMine'>
295                      <fieldValue name='descriptionvalue='Spherical Mine # 41'/>
296                      <fieldValue name='translationvalue='9550 -20 3950'/>
297                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
298                 </ProtoInstance>
299                 <ProtoInstance name='SphericalMine'>
300                      <fieldValue name='descriptionvalue='Spherical Mine # 42'/>
301                      <fieldValue name='translationvalue='4050 -20 4250'/>
302                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
303                 </ProtoInstance>
304                 <ProtoInstance name='SphericalMine'>
305                      <fieldValue name='descriptionvalue='Spherical Mine # 43'/>
306                      <fieldValue name='translationvalue='2550 -20 4350'/>
307                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
308                 </ProtoInstance>
309                 <ProtoInstance name='SphericalMine'>
310                      <fieldValue name='descriptionvalue='Spherical Mine # 44'/>
311                      <fieldValue name='translationvalue='7750 -20 4450'/>
312                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
313                 </ProtoInstance>
314                 <ProtoInstance name='SphericalMine'>
315                      <fieldValue name='descriptionvalue='Spherical Mine # 45'/>
316                      <fieldValue name='translationvalue='650 -20 4650'/>
317                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
318                 </ProtoInstance>
319                 <ProtoInstance name='SphericalMine'>
320                      <fieldValue name='descriptionvalue='Spherical Mine # 46'/>
321                      <fieldValue name='translationvalue='950 -20 4850'/>
322                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
323                 </ProtoInstance>
324                 <ProtoInstance name='SphericalMine'>
325                      <fieldValue name='descriptionvalue='Spherical Mine # 47'/>
326                      <fieldValue name='translationvalue='6350 -20 4850'/>
327                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
328                 </ProtoInstance>
329                 <ProtoInstance name='SphericalMine'>
330                      <fieldValue name='descriptionvalue='Spherical Mine # 48'/>
331                      <fieldValue name='translationvalue='8850 -20 4950'/>
332                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
333                 </ProtoInstance>
334                 <ProtoInstance name='SphericalMine'>
335                      <fieldValue name='descriptionvalue='Spherical Mine # 49'/>
336                      <fieldValue name='translationvalue='850 -20 5050'/>
337                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
338                 </ProtoInstance>
339                 <ProtoInstance name='SphericalMine'>
340                      <fieldValue name='descriptionvalue='Spherical Mine # 50'/>
341                      <fieldValue name='translationvalue='4150 -20 5050'/>
342                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
343                 </ProtoInstance>
344                 <ProtoInstance name='SphericalMine'>
345                      <fieldValue name='descriptionvalue='Spherical Mine # 51'/>
346                      <fieldValue name='translationvalue='9450 -20 5150'/>
347                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
348                 </ProtoInstance>
349                 <ProtoInstance name='SphericalMine'>
350                      <fieldValue name='descriptionvalue='Spherical Mine # 52'/>
351                      <fieldValue name='translationvalue='1250 -20 5250'/>
352                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
353                 </ProtoInstance>
354                 <ProtoInstance name='SphericalMine'>
355                      <fieldValue name='descriptionvalue='Spherical Mine # 53'/>
356                      <fieldValue name='translationvalue='3650 -20 5250'/>
357                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
358                 </ProtoInstance>
359                 <ProtoInstance name='SphericalMine'>
360                      <fieldValue name='descriptionvalue='Spherical Mine # 54'/>
361                      <fieldValue name='translationvalue='4650 -20 5250'/>
362                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
363                 </ProtoInstance>
364                 <ProtoInstance name='SphericalMine'>
365                      <fieldValue name='descriptionvalue='Spherical Mine # 55'/>
366                      <fieldValue name='translationvalue='6850 -20 5250'/>
367                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
368                 </ProtoInstance>
369                 <ProtoInstance name='SphericalMine'>
370                      <fieldValue name='descriptionvalue='Spherical Mine # 56'/>
371                      <fieldValue name='translationvalue='50 -20 5550'/>
372                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
373                 </ProtoInstance>
374                 <ProtoInstance name='SphericalMine'>
375                      <fieldValue name='descriptionvalue='Spherical Mine # 57'/>
376                      <fieldValue name='translationvalue='1850 -20 5850'/>
377                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
378                 </ProtoInstance>
379                 <ProtoInstance name='SphericalMine'>
380                      <fieldValue name='descriptionvalue='Spherical Mine # 58'/>
381                      <fieldValue name='translationvalue='4250 -20 5850'/>
382                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
383                 </ProtoInstance>
384                 <ProtoInstance name='SphericalMine'>
385                      <fieldValue name='descriptionvalue='Spherical Mine # 59'/>
386                      <fieldValue name='translationvalue='4850 -20 5950'/>
387                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
388                 </ProtoInstance>
389                 <ProtoInstance name='SphericalMine'>
390                      <fieldValue name='descriptionvalue='Spherical Mine # 60'/>
391                      <fieldValue name='translationvalue='7350 -20 6050'/>
392                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
393                 </ProtoInstance>
394                 <ProtoInstance name='SphericalMine'>
395                      <fieldValue name='descriptionvalue='Spherical Mine # 61'/>
396                      <fieldValue name='translationvalue='2550 -20 6150'/>
397                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
398                 </ProtoInstance>
399                 <ProtoInstance name='SphericalMine'>
400                      <fieldValue name='descriptionvalue='Spherical Mine # 62'/>
401                      <fieldValue name='translationvalue='7550 -20 6150'/>
402                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
403                 </ProtoInstance>
404                 <ProtoInstance name='SphericalMine'>
405                      <fieldValue name='descriptionvalue='Spherical Mine # 63'/>
406                      <fieldValue name='translationvalue='1350 -20 6350'/>
407                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
408                 </ProtoInstance>
409                 <ProtoInstance name='SphericalMine'>
410                      <fieldValue name='descriptionvalue='Spherical Mine # 64'/>
411                      <fieldValue name='translationvalue='3250 -20 6350'/>
412                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
413                 </ProtoInstance>
414                 <ProtoInstance name='SphericalMine'>
415                      <fieldValue name='descriptionvalue='Spherical Mine # 65'/>
416                      <fieldValue name='translationvalue='7350 -20 6350'/>
417                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
418                 </ProtoInstance>
419                 <ProtoInstance name='SphericalMine'>
420                      <fieldValue name='descriptionvalue='Spherical Mine # 66'/>
421                      <fieldValue name='translationvalue='9150 -20 6350'/>
422                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
423                 </ProtoInstance>
424                 <ProtoInstance name='SphericalMine'>
425                      <fieldValue name='descriptionvalue='Spherical Mine # 67'/>
426                      <fieldValue name='translationvalue='9650 -20 6550'/>
427                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
428                 </ProtoInstance>
429                 <ProtoInstance name='SphericalMine'>
430                      <fieldValue name='descriptionvalue='Spherical Mine # 68'/>
431                      <fieldValue name='translationvalue='9450 -20 6850'/>
432                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
433                 </ProtoInstance>
434                 <ProtoInstance name='SphericalMine'>
435                      <fieldValue name='descriptionvalue='Spherical Mine # 69'/>
436                      <fieldValue name='translationvalue='3750 -20 6950'/>
437                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
438                 </ProtoInstance>
439                 <ProtoInstance name='SphericalMine'>
440                      <fieldValue name='descriptionvalue='Spherical Mine # 70'/>
441                      <fieldValue name='translationvalue='9950 -20 6950'/>
442                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
443                 </ProtoInstance>
444                 <ProtoInstance name='SphericalMine'>
445                      <fieldValue name='descriptionvalue='Spherical Mine # 71'/>
446                      <fieldValue name='translationvalue='950 -20 7050'/>
447                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
448                 </ProtoInstance>
449                 <ProtoInstance name='SphericalMine'>
450                      <fieldValue name='descriptionvalue='Spherical Mine # 72'/>
451                      <fieldValue name='translationvalue='2850 -20 7050'/>
452                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
453                 </ProtoInstance>
454                 <ProtoInstance name='SphericalMine'>
455                      <fieldValue name='descriptionvalue='Spherical Mine # 73'/>
456                      <fieldValue name='translationvalue='6950 -20 7050'/>
457                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
458                 </ProtoInstance>
459                 <ProtoInstance name='SphericalMine'>
460                      <fieldValue name='descriptionvalue='Spherical Mine # 74'/>
461                      <fieldValue name='translationvalue='4550 -20 7350'/>
462                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
463                 </ProtoInstance>
464                 <ProtoInstance name='SphericalMine'>
465                      <fieldValue name='descriptionvalue='Spherical Mine # 75'/>
466                      <fieldValue name='translationvalue='8050 -20 7550'/>
467                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
468                 </ProtoInstance>
469                 <ProtoInstance name='SphericalMine'>
470                      <fieldValue name='descriptionvalue='Spherical Mine # 76'/>
471                      <fieldValue name='translationvalue='150 -20 7650'/>
472                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
473                 </ProtoInstance>
474                 <ProtoInstance name='SphericalMine'>
475                      <fieldValue name='descriptionvalue='Spherical Mine # 77'/>
476                      <fieldValue name='translationvalue='5450 -20 7850'/>
477                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
478                 </ProtoInstance>
479                 <ProtoInstance name='SphericalMine'>
480                      <fieldValue name='descriptionvalue='Spherical Mine # 78'/>
481                      <fieldValue name='translationvalue='5950 -20 7950'/>
482                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
483                 </ProtoInstance>
484                 <ProtoInstance name='SphericalMine'>
485                      <fieldValue name='descriptionvalue='Spherical Mine # 79'/>
486                      <fieldValue name='translationvalue='8150 -20 7950'/>
487                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
488                 </ProtoInstance>
489                 <ProtoInstance name='SphericalMine'>
490                      <fieldValue name='descriptionvalue='Spherical Mine # 80'/>
491                      <fieldValue name='translationvalue='9150 -20 7950'/>
492                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
493                 </ProtoInstance>
494                 <ProtoInstance name='SphericalMine'>
495                      <fieldValue name='descriptionvalue='Spherical Mine # 81'/>
496                      <fieldValue name='translationvalue='5150 -20 8050'/>
497                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
498                 </ProtoInstance>
499                 <ProtoInstance name='SphericalMine'>
500                      <fieldValue name='descriptionvalue='Spherical Mine # 82'/>
501                      <fieldValue name='translationvalue='5950 -20 8050'/>
502                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
503                 </ProtoInstance>
504                 <ProtoInstance name='SphericalMine'>
505                      <fieldValue name='descriptionvalue='Spherical Mine # 83'/>
506                      <fieldValue name='translationvalue='9750 -20 8050'/>
507                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
508                 </ProtoInstance>
509                 <ProtoInstance name='SphericalMine'>
510                      <fieldValue name='descriptionvalue='Spherical Mine # 84'/>
511                      <fieldValue name='translationvalue='5250 -20 8250'/>
512                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
513                 </ProtoInstance>
514                 <ProtoInstance name='SphericalMine'>
515                      <fieldValue name='descriptionvalue='Spherical Mine # 85'/>
516                      <fieldValue name='translationvalue='6950 -20 8250'/>
517                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
518                 </ProtoInstance>
519                 <ProtoInstance name='SphericalMine'>
520                      <fieldValue name='descriptionvalue='Spherical Mine # 86'/>
521                      <fieldValue name='translationvalue='4650 -20 8650'/>
522                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
523                 </ProtoInstance>
524                 <ProtoInstance name='SphericalMine'>
525                      <fieldValue name='descriptionvalue='Spherical Mine # 87'/>
526                      <fieldValue name='translationvalue='7250 -20 8650'/>
527                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
528                 </ProtoInstance>
529                 <ProtoInstance name='SphericalMine'>
530                      <fieldValue name='descriptionvalue='Spherical Mine # 88'/>
531                      <fieldValue name='translationvalue='8950 -20 8950'/>
532                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
533                 </ProtoInstance>
534                 <ProtoInstance name='SphericalMine'>
535                      <fieldValue name='descriptionvalue='Spherical Mine # 89'/>
536                      <fieldValue name='translationvalue='6550 -20 9050'/>
537                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
538                 </ProtoInstance>
539                 <ProtoInstance name='SphericalMine'>
540                      <fieldValue name='descriptionvalue='Spherical Mine # 90'/>
541                      <fieldValue name='translationvalue='5850 -20 9250'/>
542                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
543                 </ProtoInstance>
544                 <ProtoInstance name='SphericalMine'>
545                      <fieldValue name='descriptionvalue='Spherical Mine # 91'/>
546                      <fieldValue name='translationvalue='7250 -20 9250'/>
547                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
548                 </ProtoInstance>
549                 <ProtoInstance name='SphericalMine'>
550                      <fieldValue name='descriptionvalue='Spherical Mine # 92'/>
551                      <fieldValue name='translationvalue='750 -20 9350'/>
552                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
553                 </ProtoInstance>
554                 <ProtoInstance name='SphericalMine'>
555                      <fieldValue name='descriptionvalue='Spherical Mine # 93'/>
556                      <fieldValue name='translationvalue='5350 -20 9450'/>
557                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
558                 </ProtoInstance>
559                 <ProtoInstance name='SphericalMine'>
560                      <fieldValue name='descriptionvalue='Spherical Mine # 94'/>
561                      <fieldValue name='translationvalue='5850 -20 9450'/>
562                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
563                 </ProtoInstance>
564                 <ProtoInstance name='SphericalMine'>
565                      <fieldValue name='descriptionvalue='Spherical Mine # 95'/>
566                      <fieldValue name='translationvalue='3750 -20 9550'/>
567                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
568                 </ProtoInstance>
569                 <ProtoInstance name='SphericalMine'>
570                      <fieldValue name='descriptionvalue='Spherical Mine # 96'/>
571                      <fieldValue name='translationvalue='4650 -20 9550'/>
572                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
573                 </ProtoInstance>
574                 <ProtoInstance name='SphericalMine'>
575                      <fieldValue name='descriptionvalue='Spherical Mine # 97'/>
576                      <fieldValue name='translationvalue='4750 -20 9550'/>
577                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
578                 </ProtoInstance>
579                 <ProtoInstance name='SphericalMine'>
580                      <fieldValue name='descriptionvalue='Spherical Mine # 98'/>
581                      <fieldValue name='translationvalue='9850 -20 9550'/>
582                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
583                 </ProtoInstance>
584                 <ProtoInstance name='SphericalMine'>
585                      <fieldValue name='descriptionvalue='Spherical Mine # 99'/>
586                      <fieldValue name='translationvalue='6450 -20 9850'/>
587                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
588                 </ProtoInstance>
589                 <ProtoInstance name='SphericalMine'>
590                      <fieldValue name='descriptionvalue='Spherical Mine #100'/>
591                      <fieldValue name='translationvalue='6550 -20 9950'/>
592                      <fieldValue name='tetherPointsvalue='0 0 0 0 -5 0'/>
593                 </ProtoInstance>
594            </Group>
595            <!-- ***** generate hostile submarine position ***** -->
596            <Group DEF='HostileDieselSubGroup'>
597                 <!-- Assume center of sub is 4m above keel. Thus depth submarine = depth water + 4 (negative overall). -->
598                 <!-- Search program modifies actual (random) submarine position. -->
599                 <Transform DEF='DieselLocationtranslation='2850 -10 9550'>
600                      <!-- Don needs to split out behaviors from the other 209 models so that they are not moving. -->
601                      <Inline   url=' "../../Submarines/Various/Type209GlafkosDieselSubmarine.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/Various/Type209GlafkosDieselSubmarine.x3d" "../../Submarines/Various/Type209GlafkosDieselSubmarine.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Submarines/Various/Type209GlafkosDieselSubmarine.wrl" '/>
602                 </Transform>
603            </Group>
604            <Group DEF='RobotSearchGroup'>
605 
606                      <fieldValue name='buttonColorvalue='0.655 0.655 0.655'/>
607                      <fieldValue name='selectedButtonColorvalue='0.675 0.675 0.675'/>
608                      <fieldValue name='selectedLabelColorvalue='0.9 0 0'/>
609                      <fieldValue name='locationOffsetvalue='5 7 -10'/>
610                      <fieldValue name='cycleIntervalvalue='16980'/>
611                      <fieldValue name='speedFactorvalue='10.0'/>
612                      <fieldValue name='traceEnabledvalue='false'/>
613                 </ProtoInstance>
614                 <Group DEF='Robot1'>
615 
                    <!-- ROUTE information for RobotTrack1 node:  [from MasterAnimationController.fraction_changed to set_fraction ] [from position_changed to TrackingTransformRobot1.translation ] [from orientation_changed to TrackingTransformRobot1.rotation ] -->
                    <ProtoInstance name='WaypointInterpolatorDEF='RobotTrack1'>
616                           <!-- XZ coordinates are converted from Lat/Long based on the origin -->
617                           <!-- The origin is the first data point -->
618                           <fieldValue name='waypointsvalue='250 10 50 350 10 8750 450 10 50 550 10 8750 650 10 50 750 10 8750 850 10 50 950 10 8850 1050 10 50 1150 10 8850 1250 10 50 1350 10 8850 1450 10 50 1550 10 8850 1650 10 50 1750 10 8850 1850 10 50 1950 10 8850 2050 10 50 2150 10 8950 2250 10 50 2350 10 8950 2450 10 50 2550 10 8950 2650 10 50'/>
619                           <fieldValue name='pitchUpDownForVerticalWaypointsvalue='false'/>
620                           <fieldValue name='defaultSpeedvalue='1.5'/>
621                           <fieldValue name='turningRatevalue='90'/>
622                           <fieldValue name='lineColorvalue='1 0 0'/>
623                           <fieldValue name='highlightSegmentColorvalue='0.75 0.75 0'/>
624                           <fieldValue name='transparencyvalue='0'/>
625                           <fieldValue name='labelOffsetvalue='0 -0.8 0'/>
626                           <fieldValue name='labelFontSizevalue='0.5'/>
627                           <fieldValue name='labelColorvalue='0.3 0.9 0.6'/>
628                           <fieldValue name='traceEnabledvalue='false'/>
629                      </ProtoInstance>
630 
                    <!-- ROUTE information for TrackingTransformRobot1 node:  [from RobotTrack1.position_changed to translation ] [from RobotTrack1.orientation_changed to rotation ] -->
                    <Transform DEF='TrackingTransformRobot1'>
631                           <!-- Always align initial geometry with X axis -->
632                           <Group>
633                                <!-- Point vehicle along X-axis -->
634                                <Transform>
635 
636                                </Transform>
637                           </Group>
638                      </Transform>
639                      < ROUTE  fromNode='MasterAnimationController' fromField='fraction_changed' toNode='RobotTrack1' toField='set_fraction'/>
640                      < ROUTE  fromNode='RobotTrack1' fromField='position_changed' toNode='TrackingTransformRobot1' toField='translation'/>
641                      < ROUTE  fromNode='RobotTrack1' fromField='orientation_changed' toNode='TrackingTransformRobot1' toField='rotation'/>
642                 </Group>
643                 <Group DEF='Robot2'>
644 
                    <!-- ROUTE information for RobotTrack2 node:  [from MasterAnimationController.fraction_changed to set_fraction ] [from position_changed to TrackingTransformRobot2.translation ] [from orientation_changed to TrackingTransformRobot2.rotation ] -->
                    <ProtoInstance name='WaypointInterpolatorDEF='RobotTrack2'>
645                           <!-- XZ coordinates are converted from Lat/Long based on the origin -->
646                           <!-- The origin is the first data point -->
647                           <fieldValue name='waypointsvalue='2650 10 50 2750 10 8950 2850 10 50 2950 10 8950 3050 10 50 3150 10 8950 3250 10 50 3350 10 9050 3450 10 50 3550 10 9050 3650 10 50 3750 10 9150 3850 10 50 3950 10 9150 4050 10 50 4150 10 9250 4250 10 50 4350 10 9350 4450 10 50 4550 10 9550 4650 10 50 4750 10 9850 4850 10 50 4950 10 9950'/>
648                           <fieldValue name='pitchUpDownForVerticalWaypointsvalue='false'/>
649                           <fieldValue name='defaultSpeedvalue='1.5'/>
650                           <fieldValue name='turningRatevalue='90'/>
651                           <fieldValue name='lineColorvalue='1 0 0'/>
652                           <fieldValue name='highlightSegmentColorvalue='0.75 0.75 0'/>
653                           <fieldValue name='transparencyvalue='0'/>
654                           <fieldValue name='labelOffsetvalue='0 -0.8 0'/>
655                           <fieldValue name='labelFontSizevalue='0.5'/>
656                           <fieldValue name='labelColorvalue='0.3 0.9 0.6'/>
657                           <fieldValue name='traceEnabledvalue='false'/>
658                      </ProtoInstance>
659 
                    <!-- ROUTE information for TrackingTransformRobot2 node:  [from RobotTrack2.position_changed to translation ] [from RobotTrack2.orientation_changed to rotation ] -->
                    <Transform DEF='TrackingTransformRobot2'>
660                           <!-- Always align initial geometry with X axis -->
661                           <Group>
662                                <!-- Point vehicle along X-axis -->
663                                <Transform>
664                                     <Inline USE='RemusSideScan'/>
665                                </Transform>
666                           </Group>
667                      </Transform>
668                      < ROUTE  fromNode='MasterAnimationController' fromField='fraction_changed' toNode='RobotTrack2' toField='set_fraction'/>
669                      < ROUTE  fromNode='RobotTrack2' fromField='position_changed' toNode='TrackingTransformRobot2' toField='translation'/>
670                      < ROUTE  fromNode='RobotTrack2' fromField='orientation_changed' toNode='TrackingTransformRobot2' toField='rotation'/>
671                 </Group>
672                 <Group DEF='Robot3'>
673 
                    <!-- ROUTE information for RobotTrack3 node:  [from MasterAnimationController.fraction_changed to set_fraction ] [from position_changed to TrackingTransformRobot3.translation ] [from orientation_changed to TrackingTransformRobot3.rotation ] -->
                    <ProtoInstance name='WaypointInterpolatorDEF='RobotTrack3'>
674                           <!-- XZ coordinates are converted from Lat/Long based on the origin -->
675                           <!-- The origin is the first data point -->
676                           <fieldValue name='waypointsvalue='4850 10 50 4950 10 9950 5050 10 50 5150 10 9950 5250 10 50 5350 10 9850 5450 10 50 5550 10 9550 5650 10 50 5750 10 9350 5850 10 50 5950 10 9250 6050 10 50 6150 10 9150 6250 10 50 6350 10 9150 6450 10 50 6550 10 9050 6650 10 50 6750 10 9050 6850 10 50 6950 10 8950 7050 10 50'/>
677                           <fieldValue name='pitchUpDownForVerticalWaypointsvalue='false'/>
678                           <fieldValue name='defaultSpeedvalue='1.5'/>
679                           <fieldValue name='turningRatevalue='90'/>
680                           <fieldValue name='lineColorvalue='1 0 0'/>
681                           <fieldValue name='highlightSegmentColorvalue='0.75 0.75 0'/>
682                           <fieldValue name='transparencyvalue='0'/>
683                           <fieldValue name='labelOffsetvalue='0 -0.8 0'/>
684                           <fieldValue name='labelFontSizevalue='0.5'/>
685                           <fieldValue name='labelColorvalue='0.3 0.9 0.6'/>
686                           <fieldValue name='traceEnabledvalue='false'/>
687                      </ProtoInstance>
688 
                    <!-- ROUTE information for TrackingTransformRobot3 node:  [from RobotTrack3.position_changed to translation ] [from RobotTrack3.orientation_changed to rotation ] -->
                    <Transform DEF='TrackingTransformRobot3'>
689                           <!-- Always align initial geometry with X axis -->
690                           <Group>
691                                <!-- Point vehicle along X-axis -->
692                                <Transform>
693                                     <Inline USE='RemusSideScan'/>
694                                </Transform>
695                           </Group>
696                      </Transform>
697                      < ROUTE  fromNode='MasterAnimationController' fromField='fraction_changed' toNode='RobotTrack3' toField='set_fraction'/>
698                      < ROUTE  fromNode='RobotTrack3' fromField='position_changed' toNode='TrackingTransformRobot3' toField='translation'/>
699                      < ROUTE  fromNode='RobotTrack3' fromField='orientation_changed' toNode='TrackingTransformRobot3' toField='rotation'/>
700                 </Group>
701                 <Group DEF='Robot4'>
702 
                    <!-- ROUTE information for RobotTrack4 node:  [from MasterAnimationController.fraction_changed to set_fraction ] [from position_changed to TrackingTransformRobot4.translation ] [from orientation_changed to TrackingTransformRobot4.rotation ] -->
                    <ProtoInstance name='WaypointInterpolatorDEF='RobotTrack4'>
703                           <!-- XZ coordinates are converted from Lat/Long based on the origin -->
704                           <!-- The origin is the first data point -->
705                           <fieldValue name='waypointsvalue='7050 10 50 7150 10 8950 7250 10 50 7350 10 8950 7450 10 50 7550 10 8950 7650 10 50 7750 10 8950 7850 10 50 7950 10 8950 8050 10 50 8150 10 8850 8250 10 50 8350 10 8850 8450 10 50 8550 10 8850 8650 10 50 8750 10 8850 8850 10 50 8950 10 8850 9050 10 50 9150 10 8850 9250 10 50 9350 10 8750 9450 10 50'/>
706                           <fieldValue name='pitchUpDownForVerticalWaypointsvalue='false'/>
707                           <fieldValue name='defaultSpeedvalue='1.5'/>
708                           <fieldValue name='turningRatevalue='90'/>
709                           <fieldValue name='lineColorvalue='1 0 0'/>
710                           <fieldValue name='highlightSegmentColorvalue='0.75 0.75 0'/>
711                           <fieldValue name='transparencyvalue='0'/>
712                           <fieldValue name='labelOffsetvalue='0 -0.8 0'/>
713                           <fieldValue name='labelFontSizevalue='0.5'/>
714                           <fieldValue name='labelColorvalue='0.3 0.9 0.6'/>
715                           <fieldValue name='traceEnabledvalue='false'/>
716                      </ProtoInstance>
717 
                    <!-- ROUTE information for TrackingTransformRobot4 node:  [from RobotTrack4.position_changed to translation ] [from RobotTrack4.orientation_changed to rotation ] -->
                    <Transform DEF='TrackingTransformRobot4'>
718                           <!-- Always align initial geometry with X axis -->
719                           <Group>
720                                <!-- Point vehicle along X-axis -->
721                                <Transform>
722                                     <Inline USE='RemusSideScan'/>
723                                </Transform>
724                           </Group>
725                      </Transform>
726                      < ROUTE  fromNode='MasterAnimationController' fromField='fraction_changed' toNode='RobotTrack4' toField='set_fraction'/>
727                      < ROUTE  fromNode='RobotTrack4' fromField='position_changed' toNode='TrackingTransformRobot4' toField='translation'/>
728                      < ROUTE  fromNode='RobotTrack4' fromField='orientation_changed' toNode='TrackingTransformRobot4' toField='rotation'/>
729                 </Group>
730            </Group>
731       </Scene>
732  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: ColorCodedMinefield, DieselLocation, EnvironmentBackground, HostileDieselSubGroup, MasterAnimationController, MinefieldGroup, RemusSideScan, Robot1, Robot2, Robot3, Robot4, RobotSearchGroup, RobotTrack1, RobotTrack2, RobotTrack3, RobotTrack4, TrackingTransformRobot1, TrackingTransformRobot2, TrackingTransformRobot3, TrackingTransformRobot4

Index for ExternProtoDeclare definitions: DvdController, SphericalMine, WaypointInterpolator
-->
X3D Tooltips element index: ExternProtoDeclare, field, fieldValue, Group, head, Inline, meta, ProtoInstance, ROUTE, Scene, Transform, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

Event Graph ROUTE Table entries with 12 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.

line 94
ProtoInstance
SphericalMine
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 99
ProtoInstance
SphericalMine
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 104
ProtoInstance
SphericalMine
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 109
ProtoInstance
SphericalMine
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 114
ProtoInstance
SphericalMine
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 119
ProtoInstance
SphericalMine
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 124
ProtoInstance
SphericalMine
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 129
ProtoInstance
SphericalMine
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 134
ProtoInstance
SphericalMine
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 139
ProtoInstance
SphericalMine
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 144
ProtoInstance
SphericalMine
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 149
ProtoInstance
SphericalMine
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 154
ProtoInstance
SphericalMine
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 159
ProtoInstance
SphericalMine
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 164
ProtoInstance
SphericalMine
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 169
ProtoInstance
SphericalMine
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 174
ProtoInstance
SphericalMine
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 179
ProtoInstance
SphericalMine
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 184
ProtoInstance
SphericalMine
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 189
ProtoInstance
SphericalMine
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 194
ProtoInstance
SphericalMine
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 199
ProtoInstance
SphericalMine
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 204
ProtoInstance
SphericalMine
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 209
ProtoInstance
SphericalMine
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 214
ProtoInstance
SphericalMine
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 219
ProtoInstance
SphericalMine
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 224
ProtoInstance
SphericalMine
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 229
ProtoInstance
SphericalMine
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 234
ProtoInstance
SphericalMine
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 239
ProtoInstance
SphericalMine
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 244
ProtoInstance
SphericalMine
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 249
ProtoInstance
SphericalMine
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 254
ProtoInstance
SphericalMine
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 259
ProtoInstance
SphericalMine
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 264
ProtoInstance
SphericalMine
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 269
ProtoInstance
SphericalMine
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 274
ProtoInstance
SphericalMine
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 279
ProtoInstance
SphericalMine
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 284
ProtoInstance
SphericalMine
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 289
ProtoInstance
SphericalMine
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 294
ProtoInstance
SphericalMine
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 299
ProtoInstance
SphericalMine
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 304
ProtoInstance
SphericalMine
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 309
ProtoInstance
SphericalMine
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 314
ProtoInstance
SphericalMine
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 319
ProtoInstance
SphericalMine
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 324
ProtoInstance
SphericalMine
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 329
ProtoInstance
SphericalMine
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 334
ProtoInstance
SphericalMine
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 339
ProtoInstance
SphericalMine
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 344
ProtoInstance
SphericalMine
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 349
ProtoInstance
SphericalMine
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 354
ProtoInstance
SphericalMine
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 359
ProtoInstance
SphericalMine
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 364
ProtoInstance
SphericalMine
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 369
ProtoInstance
SphericalMine
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 374
ProtoInstance
SphericalMine
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 379
ProtoInstance
SphericalMine
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 384
ProtoInstance
SphericalMine
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 389
ProtoInstance
SphericalMine
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 394
ProtoInstance
SphericalMine
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 399
ProtoInstance
SphericalMine
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 404
ProtoInstance
SphericalMine
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 409
ProtoInstance
SphericalMine
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 414
ProtoInstance
SphericalMine
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 419
ProtoInstance
SphericalMine
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 424
ProtoInstance
SphericalMine
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 429
ProtoInstance
SphericalMine
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 434
ProtoInstance
SphericalMine
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 439
ProtoInstance
SphericalMine
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 444
ProtoInstance
SphericalMine
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 449
ProtoInstance
SphericalMine
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 454
ProtoInstance
SphericalMine
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 459
ProtoInstance
SphericalMine
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 464
ProtoInstance
SphericalMine
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 469
ProtoInstance
SphericalMine
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 474
ProtoInstance
SphericalMine
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 479
ProtoInstance
SphericalMine
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 484
ProtoInstance
SphericalMine
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 489
ProtoInstance
SphericalMine
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 494
ProtoInstance
SphericalMine
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 499
ProtoInstance
SphericalMine
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 504
ProtoInstance
SphericalMine
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 509
ProtoInstance
SphericalMine
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 514
ProtoInstance
SphericalMine
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 519
ProtoInstance
SphericalMine
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 524
ProtoInstance
SphericalMine
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 529
ProtoInstance
SphericalMine
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 534
ProtoInstance
SphericalMine
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 539
ProtoInstance
SphericalMine
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 544
ProtoInstance
SphericalMine
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 549
ProtoInstance
SphericalMine
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 554
ProtoInstance
SphericalMine
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 559
ProtoInstance
SphericalMine
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 564
ProtoInstance
SphericalMine
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 569
ProtoInstance
SphericalMine
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 574
ProtoInstance
SphericalMine
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 579
ProtoInstance
SphericalMine
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 584
ProtoInstance
SphericalMine
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 589
ProtoInstance
SphericalMine
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. 

MasterAnimationController
ProtoInstance
fraction_changed
SFFloat

ROUTE
event to
(1)
RobotTrack1
ProtoInstance
set_fraction
SFFloat
then
 
 
 
RobotTrack1
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(2)
TrackingTransformRobot1
Transform
rotation
SFRotation
  then
 
 
 
RobotTrack1
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(2)
TrackingTransformRobot1
Transform
translation
SFVec3f
MasterAnimationController
ProtoInstance
fraction_changed
SFFloat

ROUTE
event to
(1)
RobotTrack2
ProtoInstance
set_fraction
SFFloat
then
 
 
 
RobotTrack2
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(2)
TrackingTransformRobot2
Transform
rotation
SFRotation
  then
 
 
 
RobotTrack2
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(2)
TrackingTransformRobot2
Transform
translation
SFVec3f
MasterAnimationController
ProtoInstance
fraction_changed
SFFloat

ROUTE
event to
(1)
RobotTrack3
ProtoInstance
set_fraction
SFFloat
then
 
 
 
RobotTrack3
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(2)
TrackingTransformRobot3
Transform
rotation
SFRotation
  then
 
 
 
RobotTrack3
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(2)
TrackingTransformRobot3
Transform
translation
SFVec3f
MasterAnimationController
ProtoInstance
fraction_changed
SFFloat

ROUTE
event to
(1)
RobotTrack4
ProtoInstance
set_fraction
SFFloat
then
 
 
 
RobotTrack4
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(2)
TrackingTransformRobot4
Transform
rotation
SFRotation
  then
 
 
 
RobotTrack4
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(2)
TrackingTransformRobot4
Transform
translation
SFVec3f

      RobotTrack1
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(1)
TrackingTransformRobot1
Transform
translation
SFVec3f
RobotTrack1
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(1)
TrackingTransformRobot1
Transform
rotation
SFRotation

      RobotTrack2
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(1)
TrackingTransformRobot2
Transform
translation
SFVec3f
RobotTrack2
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(1)
TrackingTransformRobot2
Transform
rotation
SFRotation

      RobotTrack3
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(1)
TrackingTransformRobot3
Transform
translation
SFVec3f
RobotTrack3
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(1)
TrackingTransformRobot3
Transform
rotation
SFRotation

      RobotTrack4
ProtoInstance
position_changed
SFVec3f

ROUTE
event to
(1)
TrackingTransformRobot4
Transform
translation
SFVec3f
RobotTrack4
ProtoInstance
orientation_changed
SFRotation

ROUTE
event to
(1)
TrackingTransformRobot4
Transform
rotation
SFRotation

Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/ExampleScenarioIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/Scenarios/UW3303MinefieldSearch/ExampleScenario.x3d -->

<!-- Color-coding legend: X3D terminology <X3dNode  DEF='idNamefield='value'/> matches XML terminology <XmlElement  DEF='idNameattribute='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> -->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->