X3D Model Documentation: M1A1.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2 
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
  3  <X3D profile='Immersive' version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.0.xsd'>
  4       <head>
  5            <meta name='titlecontent=' M1A1.x3d '/>
  6            <meta name='descriptioncontent='M1A1 Abrams tank with draggable turret and barrel.'/>
  7            <meta name='creatorcontent='Scott Tufts'/>
  8            <meta name='createdcontent='15 September 2001'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name='referencecontent=' https://www.fas.org/man/dod-101/sys/land/m1.htm '/>
 11            <meta name='Imagecontent='m1-951231-F-8381L-003.jpg'/>
 12            <meta name='Imagecontent='https://www.fas.org/man/dod-101/sys/land/m1-951231-F-8381L-003.jpg'/>
 13            <meta name='subjectcontent='M1A1 Main Battle Tank Abrams'/>
 14            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/GroundVehicles/M1A1/M1A1.x3d '/>
 15            <meta name='generatorcontent='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/>
 16            <meta name='licensecontent='../../license.html'/>
 17       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: black, bolt, bolt_group_wheel, bore_evacuator, end_connector, guntube_bottom, guntube_group, guntube_motion, guntube_sensor, guntube_shroud, guntube_top, heat_tube, hull, hull_transform, left_mud_flap, left_skirt_1, left_skirt_2, left_skirt_3, left_skirt_4, left_skirt_5, left_skirt_6, left_skirt_7, lf_mf_sensor, metal, nut, pad, r_skrt_1_sensor, r_skrt_2_sensor, r_skrt_3_sensor, r_skrt_4_sensor, r_skrt_5_sensor, r_skrt_6_sensor, r_skrt_7_sensor, right_mud_flap, right_side_full_wheels, right_skirt_1, right_skirt_2, right_skirt_3, right_skirt_4, rt_mf_sensor, rubber, sand_color, sprocket, sprocket_bottom, support_roller_group, track_block, trans_l_mudflap, trans_ldr_hatch, trans_r_mudflap, trans_r_skrt_1, trans_r_skrt_2, trans_r_skrt_3, trans_r_skrt_4, trans_r_skrt_5, trans_r_skrt_6, trans_r_skrt_7, transform_guntube, transform_left_skirts, transform_right_skirts, transform_roadwheel, transform_track, turret, turret_group, turret_group_transform, turret_sensor, turret_transform, wheel, wheel_base, wheel_group

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4
-->
 18       <Scene>
 19            <WorldInfo title='M1A1.x3d'/>
 20            <Background groundAngle='1.309 1.570796groundColor='.1 .1 0 .4 .25 .2 .6 .6 .6skyAngle='1.309 1.571skyColor='0 .2 .7 0 .5 1 1 1 1'/>
 21            <Viewpoint description='Frontorientation='0 1 0 -1.57position='-10 0 -1'/>
 22            <Viewpoint description='Front Highorientation='.4 1 0 -1.2position='-9 3 0'/>
 23            <Viewpoint description='left side skirtsorientation='0 1 0 -3.14position='0 0 -8'/>
 24            <Viewpoint description='roadWheelorientation='0 1 0 -3.14position='0 -1 -4'/>
 25            <Transform DEF='hull_transformtranslation='-3.959 -1.7395 -3.479'>
 26                 <Shape DEF='hull'>
 27 
                    <!-- Appearance sand_color is a DEF node that has 40 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9, USE_10, USE_11, USE_12, USE_13, USE_14, USE_15, USE_16, USE_17, USE_18, USE_19, USE_20, USE_21, USE_22, USE_23, USE_24, USE_25, USE_26, USE_27, USE_28, USE_29, USE_30, USE_31, USE_32, USE_33, USE_34, USE_35, USE_36, USE_37, USE_38, USE_39, USE_40 -->
                    <Appearance DEF='sand_color'>
 28                           <Material diffuseColor='.8 .7 .6'/>
 29                      </Appearance>
 30                      <IndexedFaceSet solid='falsecoordIndex='0 8 7 6 5 4 3 2 1 0 -1 9 17 16 15 14 13 12 11 10 9 -1 0 1 10 9 0 -1 1 2 11 10 1 -1 2 3 12 11 2 -1 3 4 13 12 3 -1 4 5 14 13 4 -1 5 6 15 14 5 -1 6 7 16 15 6 -1 7 8 17 16 7 -1 8 0 9 17 8 -1'>
 31                           <Coordinate point='7.918 1.5 0 7.918 0.8 0 6.5 0.432 0 2 0.432 0 0.5 0.8 0 0 1.2 0 2.5 1.35 0 4.5 1.35 0 5.4 1.5 0 7.918 1.5 3.479 7.918 0.8 3.479 6.5 0.432 3.479 2 0.432 3.479 0.5 0.8 3.479 0 1.2 3.479 2.5 1.35 3.479 4.5 1.35 3.479 5.4 1.5 3.479'/>
 32                      </IndexedFaceSet>
 33                 </Shape>
 34                 <Shape>
 35                      <Appearance USE='sand_color'/>
 36                      <IndexedFaceSet solid='falsecoordIndex='0 5 4 3 2 1 0 -1 0 1 7 6 0 -1 6 11 10 9 8 7 6 -1 1 7 8 2 1 -1 8 2 3 9 8 -1 9 3 4 10 9 -1 10 4 5 11 10 -1 11 5 0 6 11 -1'>
 37                           <Coordinate point='7.918 1.5 3.47 7.918 1.266 3.47 1.1 1.266 3.47 2.5 1.35 3.47 4.5 1.35 3.47 5.4 1.5 3.47 7.918 1.5 4.15 7.918 1.266 4.15 1.1 1.266 4.15 2.5 1.35 4.15 4.5 1.35 4.15 5.4 1.5 4.15'/>
 38                      </IndexedFaceSet>
 39                 </Shape>
 40                 <Shape>
 41                      <Appearance USE='sand_color'/>
 42                      <IndexedFaceSet solid='falsecoordIndex='0 5 4 3 2 1 0 -1 0 1 7 6 0 -1 6 11 10 9 8 7 6 -1 1 7 8 2 1 -1 8 2 3 9 8 -1 9 3 4 10 9 -1 10 4 5 11 10 -1 11 5 0 6 11 -1'>
 43                           <Coordinate point='7.918 1.5 0.05 7.918 1.266 0.05 1.1 1.266 0.05 2.5 1.35 0.05 4.5 1.35 0.05 5.4 1.5 0.05 7.918 1.5 -.63 7.918 1.266 -.63 1.1 1.266 -.63 2.5 1.35 -.63 4.5 1.35 -.63 5.4 1.5 -.63'/>
 44                      </IndexedFaceSet>
 45                 </Shape>
 46                 <!-- Left side skirts -->
 47                 <Transform DEF='transform_right_skirtstranslation='0 -.02 0'>
 48 
                    <!-- ROUTE information for trans_r_skrt_1 node:  [from r_skrt_1_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_1center='2.5 1.35 -.63'>
 49 
                         <!-- ROUTE information for r_skrt_1_sensor node:  [from rotation_changed to trans_r_skrt_1.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_1_sensormaxAngle='0minAngle='-1.57'/>
 50                           <Shape DEF='right_skirt_1'>
 51                                <Appearance USE='sand_color'/>
 52                                <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 4 5 1 0 -1 1 5 6 2 1 -1 2 6 7 3 2 -1 3 0 4 7 3 -1'>
 53                                     <Coordinate point='0.5 0.8 -.63 0 1.2 -.63 2.5 1.35 -.63 2.5 0.62 -.63 0.5 0.8 -.67 0 1.2 -.67 2.5 1.35 -.67 2.5 0.62 -.67'/>
 54                                </IndexedFaceSet>
 55                           </Shape>
 56                      </Transform>
 57                      < ROUTE  fromNode='r_skrt_1_sensor' fromField='rotation_changed' toNode='trans_r_skrt_1' toField='set_rotation'/>
 58 
                    <!-- ROUTE information for trans_r_skrt_2 node:  [from r_skrt_2_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_2center='2.5 1.35 -.63'>
 59 
                         <!-- ROUTE information for r_skrt_2_sensor node:  [from rotation_changed to trans_r_skrt_2.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_2_sensormaxAngle='1.57'/>
 60                           <Shape DEF='right_skirt_2'>
 61                                <Appearance USE='sand_color'/>
 62                                <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
 63                                     <Coordinate point='2.51 1.35 -.63 3.3 1.35 -.63 3.3 .62 -.63 2.51 .62 -.63 2.51 1.35 -.67 3.3 1.35 -.67 3.3 .62 -.67 2.51 .62 -.67'/>
 64                                </IndexedFaceSet>
 65                           </Shape>
 66                      </Transform>
 67                      < ROUTE  fromNode='r_skrt_2_sensor' fromField='rotation_changed' toNode='trans_r_skrt_2' toField='set_rotation'/>
 68 
                    <!-- ROUTE information for trans_r_skrt_3 node:  [from r_skrt_3_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_3center='4.1 1.35 -.63'>
 69 
                         <!-- ROUTE information for r_skrt_3_sensor node:  [from rotation_changed to trans_r_skrt_3.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_3_sensormaxAngle='0minAngle='-1.57'/>
 70                           <Shape DEF='right_skirt_3'>
 71                                <Appearance USE='sand_color'/>
 72                                <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
 73                                     <Coordinate point='3.31 1.35 -.63 4.1 1.35 -.63 4.1 .62 -.63 3.31 .62 -.63 3.31 1.35 -.67 4.1 1.35 -.67 4.1 .62 -.67 3.31 .62 -.67'/>
 74                                </IndexedFaceSet>
 75                           </Shape>
 76                      </Transform>
 77                      < ROUTE  fromNode='r_skrt_3_sensor' fromField='rotation_changed' toNode='trans_r_skrt_3' toField='set_rotation'/>
 78 
                    <!-- ROUTE information for trans_r_skrt_4 node:  [from r_skrt_4_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_4center='4.1 1.35 -.63'>
 79 
                         <!-- ROUTE information for r_skrt_4_sensor node:  [from rotation_changed to trans_r_skrt_4.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_4_sensormaxAngle='1.57'/>
 80                           <Shape DEF='right_skirt_4'>
 81                                <Appearance USE='sand_color'/>
 82                                <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
 83                                     <Coordinate point='4.11 1.35 -.63 4.9 1.35 -.63 4.9 .62 -.63 4.11 .62 -.63 4.11 1.35 -.67 4.9 1.35 -.67 4.9 .62 -.67 4.11 .62 -.67'/>
 84                                </IndexedFaceSet>
 85                           </Shape>
 86                      </Transform>
 87                      < ROUTE  fromNode='r_skrt_4_sensor' fromField='rotation_changed' toNode='trans_r_skrt_4' toField='set_rotation'/>
 88 
                    <!-- ROUTE information for trans_r_skrt_5 node:  [from r_skrt_5_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_5center='5.7 1.35 -.63'>
 89 
                         <!-- ROUTE information for r_skrt_5_sensor node:  [from rotation_changed to trans_r_skrt_5.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_5_sensormaxAngle='0minAngle='-2'/>
 90                           <Shape>
 91 
                              <!-- Appearance black is a DEF node that has 9 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9 -->
                              <Appearance DEF='black'>
 92                                     <Material diffuseColor='0.1 .1 .1'/>
 93                                </Appearance>
 94                                <IndexedFaceSet solid='falsecoordIndex='0 1 5 4 0 -1'>
 95                                     <Coordinate point='4.91 1.35 -.63 5.7 1.35 -.63 5.7 .62 -.63 4.91 .62 -.63 4.91 1.35 -.67 5.7 1.35 -.67 5.7 .62 -.67 4.91 .62 -.67'/>
 96                                </IndexedFaceSet>
 97                           </Shape>
 98                           <Shape>
 99                                <Appearance USE='sand_color'/>
100                                <IndexedFaceSet solid='falsecoordIndex='4 5 6 7 4 -1'>
101                                     <Coordinate point='4.91 1.35 -.63 5.7 1.35 -.63 5.7 .62 -.63 4.91 .62 -.63 4.91 1.35 -.67 5.7 1.35 -.67 5.7 .62 -.67 4.91 .62 -.67'/>
102                                </IndexedFaceSet>
103                           </Shape>
104                      </Transform>
105                      < ROUTE  fromNode='r_skrt_5_sensor' fromField='rotation_changed' toNode='trans_r_skrt_5' toField='set_rotation'/>
106 
                    <!-- ROUTE information for trans_r_skrt_6 node:  [from r_skrt_6_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_skrt_6center='5.7 1.35 -.63'>
107 
                         <!-- ROUTE information for r_skrt_6_sensor node:  [from rotation_changed to trans_r_skrt_6.set_rotation ] -->
                         <CylinderSensor DEF='r_skrt_6_sensormaxAngle='2'/>
108                           <Shape>
109                                <Appearance USE='black'/>
110                                <IndexedFaceSet solid='falsecoordIndex='0 1 5 4 0 -1'>
111                                     <Coordinate point='5.71 1.35 -.63 6.5 1.35 -.63 6.5 .62 -.63 5.71 .62 -.63 5.71 1.35 -.67 6.5 1.35 -.67 6.5 .62 -.67 5.71 .62 -.67'/>
112                                </IndexedFaceSet>
113                           </Shape>
114                           <Shape>
115                                <Appearance USE='sand_color'/>
116                                <IndexedFaceSet solid='falsecoordIndex='4 5 6 7 4 -1'>
117                                     <Coordinate point='5.71 1.35 -.63 6.5 1.35 -.63 6.5 .62 -.63 5.71 .62 -.63 5.71 1.35 -.67 6.5 1.35 -.67 6.5 .62 -.67 5.71 .62 -.67'/>
118                                </IndexedFaceSet>
119                           </Shape>
120                           < ROUTE  fromNode='r_skrt_6_sensor' fromField='rotation_changed' toNode='trans_r_skrt_6' toField='set_rotation'/>
121 
                         <!-- ROUTE information for trans_r_skrt_7 node:  [from r_skrt_7_sensor.rotation_changed to set_rotation ] -->
                         <Transform DEF='trans_r_skrt_7center='6.51 1.35 -0.67'>
122 
                              <!-- ROUTE information for r_skrt_7_sensor node:  [from rotation_changed to trans_r_skrt_7.set_rotation ] -->
                              <CylinderSensor DEF='r_skrt_7_sensormaxAngle='3minAngle='-1.57'/>
123                                <Shape>
124                                     <Appearance USE='black'/>
125                                     <IndexedFaceSet solid='falsecoordIndex='0 1 3 2 0 -1'>
126                                          <Coordinate point='6.51 1.35 -.63 7.75 1.35 -.63 6.51 1.35 -.67 7.75 1.35 -.67'/>
127                                     </IndexedFaceSet>
128                                </Shape>
129                                <Shape>
130                                     <Appearance USE='sand_color'/>
131                                     <IndexedFaceSet creaseAngle='3.14solid='falsecoordIndex='0 10 9 8 7 0 -1'>
132                                          <Coordinate point='6.51 1.35 -0.67 7.75 1.35 -0.67 7.75 1.1 -0.67 7.35 1.1 -0.67 7.33 1.09 -0.67 7.31 1.075 -0.67 7.29 1.055 -0.67 7.27 1.02 -0.67 7.25 1 -0.67 7.25 0.62 -0.67 6.51 0.62 -0.67'/>
133                                     </IndexedFaceSet>
134                                </Shape>
135                                <Shape>
136                                     <Appearance USE='sand_color'/>
137                                     <IndexedFaceSet creaseAngle='3.14solid='falsecoordIndex='0 7 6 5 4 3 2 1 0 -1'>
138                                          <Coordinate point='6.51 1.35 -0.67 7.75 1.35 -0.67 7.75 1.1 -0.67 7.35 1.1 -0.67 7.33 1.09 -0.67 7.31 1.075 -0.67 7.29 1.055 -0.67 7.27 1.02 -0.67 7.25 1 -0.67 7.25 0.62 -0.67 6.51 0.62 -0.67'/>
139                                     </IndexedFaceSet>
140                                </Shape>
141                           </Transform>
142                           < ROUTE  fromNode='r_skrt_7_sensor' fromField='rotation_changed' toNode='trans_r_skrt_7' toField='set_rotation'/>
143                      </Transform>
144                 </Transform>
145                 <!-- Right side skirts -->
146                 <Transform DEF='transform_left_skirtstranslation='0 -.02 0'>
147                      <Shape DEF='left_skirt_1'>
148                           <Appearance USE='sand_color'/>
149                           <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 4 5 1 0 -1 1 5 6 2 1 -1 2 6 7 3 2 -1 3 0 4 7 3 -1'>
150                                <Coordinate point='0.5 0.8 4.15 0 1.2 4.15 2.5 1.35 4.15 2.5 0.62 4.15 0.5 0.8 4.19 0 1.2 4.19 2.5 1.35 4.19 2.5 0.62 4.19'/>
151                           </IndexedFaceSet>
152                      </Shape>
153                      <Shape DEF='left_skirt_2'>
154                           <Appearance USE='sand_color'/>
155                           <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
156                                <Coordinate point='2.51 1.35 4.15 3.3 1.35 4.15 3.3 .62 4.15 2.51 .62 4.15 2.51 1.35 4.19 3.3 1.35 4.19 3.3 .62 4.19 2.51 .62 4.19'/>
157                           </IndexedFaceSet>
158                      </Shape>
159                      <Shape DEF='left_skirt_3'>
160                           <Appearance USE='sand_color'/>
161                           <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
162                                <Coordinate point='3.31 1.35 4.15 4.1 1.35 4.15 4.1 .62 4.15 3.31 .62 4.15 3.31 1.35 4.19 4.1 1.35 4.19 4.1 .62 4.19 3.31 .62 4.19'/>
163                           </IndexedFaceSet>
164                      </Shape>
165                      <Shape DEF='left_skirt_4'>
166                           <Appearance USE='sand_color'/>
167                           <IndexedFaceSet creaseAngle='1.57solid='falsecoordIndex='0 3 2 1 0 -1 4 7 6 5 4 -1 0 1 5 4 0 -1 1 2 6 5 1 -1 2 3 7 6 2 -1 3 0 4 7 3 -1'>
168                                <Coordinate point='4.11 1.35 4.15 4.9 1.35 4.15 4.9 .62 4.15 4.11 .62 4.15 4.11 1.35 4.19 4.9 1.35 4.19 4.9 .62 4.19 4.11 .62 4.19'/>
169                           </IndexedFaceSet>
170                      </Shape>
171                      <Group DEF='left_skirt_5'>
172                           <Shape>
173                                <Appearance USE='black'/>
174                                <IndexedFaceSet solid='falsecoordIndex='0 1 5 4 0 -1'>
175                                     <Coordinate point='4.91 1.35 4.15 5.7 1.35 4.15 5.7 .62 4.15 4.91 .62 4.15 4.91 1.35 4.19 5.7 1.35 4.19 5.7 .62 4.19 4.91 .62 4.19'/>
176                                </IndexedFaceSet>
177                           </Shape>
178                           <Shape>
179                                <Appearance USE='sand_color'/>
180                                <IndexedFaceSet solid='falsecoordIndex='4 5 6 7 4 -1'>
181                                     <Coordinate point='4.91 1.35 4.15 5.7 1.35 4.15 5.7 .62 4.15 4.91 .62 4.15 4.91 1.35 4.19 5.7 1.35 4.19 5.7 .62 4.19 4.91 .62 4.19'/>
182                                </IndexedFaceSet>
183                           </Shape>
184                      </Group>
185                      <Group DEF='left_skirt_6'>
186                           <Shape>
187                                <Appearance USE='black'/>
188                                <IndexedFaceSet solid='falsecoordIndex='0 1 5 4 0 -1'>
189                                     <Coordinate point='5.71 1.35 4.15 6.5 1.35 4.15 6.5 .62 4.15 5.71 .62 4.15 5.71 1.35 4.19 6.5 1.35 4.19 6.5 .62 4.19 5.71 .62 4.19'/>
190                                </IndexedFaceSet>
191                           </Shape>
192                           <Shape>
193                                <Appearance USE='sand_color'/>
194                                <IndexedFaceSet solid='falsecoordIndex='4 5 6 7 4 -1'>
195                                     <Coordinate point='5.71 1.35 4.15 6.5 1.35 4.15 6.5 .62 4.15 5.71 .62 4.15 5.71 1.35 4.19 6.5 1.35 4.19 6.5 .62 4.19 5.71 .62 4.19'/>
196                                </IndexedFaceSet>
197                           </Shape>
198                      </Group>
199                      <Group DEF='left_skirt_7'>
200                           <Shape>
201                                <Appearance USE='black'/>
202                                <IndexedFaceSet solid='falsecoordIndex='0 1 3 2 0 -1'>
203                                     <Coordinate point='6.51 1.35 4.15 7.75 1.35 4.15 6.51 1.35 4.19 7.75 1.35 4.19'/>
204                                </IndexedFaceSet>
205                           </Shape>
206                           <Shape>
207                                <Appearance USE='sand_color'/>
208                                <IndexedFaceSet creaseAngle='3.14solid='falsecoordIndex='0 10 9 8 7 0 -1'>
209                                     <Coordinate point='6.51 1.35 4.19 7.75 1.35 4.19 7.75 1.1 4.19 7.35 1.1 4.19 7.33 1.09 4.19 7.31 1.075 4.19 7.29 1.055 4.19 7.27 1.02 4.19 7.25 1 4.19 7.25 0.62 4.19 6.51 0.62 4.19'/>
210                                </IndexedFaceSet>
211                           </Shape>
212                           <Shape>
213                                <Appearance USE='sand_color'/>
214                                <IndexedFaceSet creaseAngle='3.14solid='falsecoordIndex='0 7 6 5 4 3 2 1 0 -1'>
215                                     <Coordinate point='6.51 1.35 4.19 7.75 1.35 4.19 7.75 1.1 4.19 7.35 1.1 4.19 7.33 1.09 4.19 7.31 1.075 4.19 7.29 1.055 4.19 7.27 1.02 4.19 7.25 1 4.19 7.25 0.62 4.19 6.51 0.62 4.19'/>
216                                </IndexedFaceSet>
217                           </Shape>
218                      </Group>
219                 </Transform>
220                 <Transform rotation='1 0 0 -1.57'>
221 
                    <!-- ROUTE information for trans_r_mudflap node:  [from rt_mf_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_r_mudflapcenter='1.1 0 1.266translation='0 0.63 0'>
222 
                         <!-- ROUTE information for rt_mf_sensor node:  [from rotation_changed to trans_r_mudflap.set_rotation ] -->
                         <CylinderSensor DEF='rt_mf_sensormaxAngle='.3'/>
223                           <Shape DEF='right_mud_flap'>
224                                <Appearance USE='sand_color'/>
225                                <IndexedFaceSet solid='falsecoordIndex='0 1 2 3 0 -1 0 3 5 4 0 -1'>
226                                     <Coordinate point='0.1 0 1.25 1.1 0 1.266 1.1 -0.63 1.266 0.1 -0.63 1.25 0 0 1.16 0 -0.63 1.16'/>
227                                </IndexedFaceSet>
228                           </Shape>
229                      </Transform>
230                 </Transform>
231                 < ROUTE  fromNode='rt_mf_sensor' fromField='rotation_changed' toNode='trans_r_mudflap' toField='set_rotation'/>
232                 <Transform rotation='1 0 0 -1.57'>
233 
                    <!-- ROUTE information for trans_l_mudflap node:  [from lf_mf_sensor.rotation_changed to set_rotation ] -->
                    <Transform DEF='trans_l_mudflapcenter='1.1 3.479 1.266translation='0 -7.638 0'>
234 
                         <!-- ROUTE information for lf_mf_sensor node:  [from rotation_changed to trans_l_mudflap.set_rotation ] -->
                         <CylinderSensor DEF='lf_mf_sensormaxAngle='.3'/>
235                           <Shape DEF='left_mud_flap'>
236                                <Appearance USE='sand_color'/>
237                                <IndexedFaceSet solid='falsecoordIndex='0 1 2 3 0 -1 0 3 5 4 0 -1'>
238                                     <Coordinate point='0.1 3.479 1.25 1.1 3.479 1.266 1.1 4.159 1.266 0.1 4.159 1.25 0 3.479 1.16 0 4.159 1.16'/>
239                                </IndexedFaceSet>
240                           </Shape>
241                      </Transform>
242                 </Transform>
243                 < ROUTE  fromNode='lf_mf_sensor' fromField='rotation_changed' toNode='trans_l_mudflap' toField='set_rotation'/>
244            </Transform>
245            <!-- This is the left side road wheels of the tank. -->
246            <Transform DEF='transform_roadwheeltranslation='0 -1.2395 0.375'>
247 
               <!-- Group wheel_group is a DEF node that has 15 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9, USE_10, USE_11, USE_12, USE_13, USE_14, USE_15 -->
               <Group DEF='wheel_group'>
248                      <Transform translation='.3 0 0'>
249 
                         <!-- Transform wheel is a DEF node that has 1 USE node: USE_1 -->
                         <Transform DEF='wheelrotation='1 0 0 1.57'>
250 
                              <!-- Shape wheel_base is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='wheel_base'>
251                                     <Appearance USE='sand_color'/>
252                                     <Cylinder height='.025radius='.25'/>
253                                </Shape>
254 
                              <!-- Group bolt_group_wheel is a DEF node that has 1 USE node: USE_1 -->
                              <Group DEF='bolt_group_wheel'>
255                                     <Transform translation='0 -.14 -0.14'>
256 
                                        <!-- Shape nut is a DEF node that has 4 USE nodes: USE_1, USE_2, USE_3, USE_4 -->
                                        <Shape DEF='nut'>
257                                               <Appearance USE='sand_color'/>
258                                               <Cylinder height='0.005radius='0.01'/>
259                                          </Shape>
260 
                                        <!-- Shape bolt is a DEF node that has 4 USE nodes: USE_1, USE_2, USE_3, USE_4 -->
                                        <Shape DEF='bolt'>
261                                               <Appearance>
262                                                    <Material diffuseColor='.6 .7 .7'/>
263                                               </Appearance>
264                                               <Cylinder height='.0125radius='0.00625'/>
265                                          </Shape>
266                                     </Transform>
267                                     <Transform translation='0.115 -.14 -.05948'>
268                                          <Shape USE='nut'/>
269                                          <Shape USE='bolt'/>
270                                     </Transform>
271                                     <Transform translation='-0.115 -.14 -.05948'>
272                                          <Shape USE='nut'/>
273                                          <Shape USE='bolt'/>
274                                     </Transform>
275                                     <Transform translation='-0.075 -.14 .075'>
276                                          <Shape USE='nut'/>
277                                          <Shape USE='bolt'/>
278                                     </Transform>
279                                     <Transform translation='0.075 -.14 .075'>
280                                          <Shape USE='nut'/>
281                                          <Shape USE='bolt'/>
282                                     </Transform>
283                                </Group>
284 
                              <!-- Shape rubber is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='rubber'>
285                                     <Appearance USE='black'/>
286                                     <Extrusion creaseAngle='.4crossSection='0.255 0 0.254 0.022561028 0.252 0.039 0.25 0.050249378 0.245 0.070710678 0.24 0.08616844 0.2325 0.1047318 0.225 0.12 0.2 0.15819292 0.175 0.18547237 0.15 0.206215906 0.125 0.222261108 0.1 0.234574082 0.075 0.243721152 0.05 0.250049995 0.025 0.253771551 0 0.255 -0.025 0.253771551 -0.05 0.250049995 -0.075 0.243721152 -0.1 0.234574082 -0.125 0.222261108 -0.15 0.206215906 -0.175 0.18547237 -0.2 0.15819292 -0.225 0.12 -0.2325 0.1047318 -0.24 0.08616844 -0.245 0.070710678 -0.25 0.050249378 -0.252 0.039 -0.254 0.022561028 -0.25425 0.019543221 -0.2545 0.01596089 -0.25475 0.011288822 -0.25495 0.005049505 -0.255 0 -0.25495 -0.005049505 -0.25475 -0.011288822 -0.2545 -0.01596089 -0.25425 -0.019543221 -0.254 -0.022561028 -0.252 -0.039 -0.25 -0.050249378 -0.245 -0.070710678 -0.24 -0.08616844 -0.2325 -0.1047318 -0.225 -0.12 -0.2 -0.15819292 -0.175 -0.18547237 -0.15 -0.206215906 -0.125 -0.222261108 -0.1 -0.234574082 -0.075 -0.243721152 -0.05 -0.250049995 -0.025 -0.253771551 0 -0.255 0.025 -0.253771551 0.05 -0.250049995 0.075 -0.243721152 0.1 -0.234574082 0.125 -0.222261108 0.15 -0.206215906 0.175 -0.18547237 0.2 -0.15819292 0.225 -0.12 0.2325 -0.1047318 0.24 -0.08616844 0.245 -0.070710678 0.25 -0.050249378 0.252 -0.039 0.254 -0.022561028 0.25425 -0.019543221 0.2545 -0.01596089 0.25475 -0.011288822 0.25495 -0.005049505 0.26995 -0.005195912 0.26975 -0.01161626 0.2695 -0.016424068 0.26925 -0.020110632 0.269 -0.023216374 0.2685 -0.028420943 0.266 -0.046303348 0.2625 -0.063196123 0.2575 -0.081201909 0.25 -0.10198039 0.225 -0.149248116 0.2 -0.181383571 0.175 -0.205608852 0.15 -0.224499443 0.125 -0.239321959 0.1 -0.250798724 0.075 -0.259374247 0.05 -0.265329983 0.025 -0.268840101 0 -0.27 -0.025 -0.268840101 -0.05 -0.265329983 -0.075 -0.259374247 -0.1 -0.250798724 -0.125 -0.239321959 -0.15 -0.224499443 -0.175 -0.205608852 -0.2 -0.181383571 -0.225 -0.149248116 -0.25 -0.10198039 -0.2575 -0.081201909 -0.2625 -0.063196123 -0.266 -0.046303348 -0.2685 -0.028420943 -0.269 -0.023216374 -0.26925 -0.020110632 -0.2695 -0.016424068 -0.26975 -0.01161626 -0.26995 -0.005195912 -0.26975 0.01161626 -0.2695 0.016424068 -0.26925 0.020110632 -0.269 0.023216374 -0.2685 0.028420943 -0.266 0.046303348 -0.2625 0.063196123 -0.2575 0.081201909 -0.25 0.10198039 -0.225 0.149248116 -0.2 0.181383571 -0.175 0.205608852 -0.15 0.224499443 -0.125 0.239321959 -0.1 0.250798724 -0.075 0.259374247 -0.05 0.265329983 -0.025 0.268840101 0 0.27 0.025 0.268840101 0.05 0.265329983 0.075 0.259374247 0.1 0.250798724 0.125 0.239321959 0.15 0.224499443 0.175 0.205608852 0.2 0.181383571 0.225 0.149248116 0.25 0.10198039 0.2575 0.081201909 0.2625 0.063196123 0.266 0.046303348 0.2685 0.028420943 0.2695 0.016424068 0.26975 0.01161626 0.26995 0.005195912 0.27 0 0.255 0spine='0.0 -0.015 0.0 0.0 0.205 0.0'/>
287                                </Shape>
288                                <Transform translation='0 -.025 0'>
289                                     <Shape>
290                                          <Cylinder height='.05radius='.15'/>
291                                          <Appearance USE='sand_color'/>
292                                     </Shape>
293                                </Transform>
294                           </Transform>
295                      </Transform>
296                      <Transform rotation='1 0 0 1.57translation='.3 -.025 0'>
297                           <Shape>
298                                <Cylinder height='.125radius='.1'/>
299                                <Appearance USE='sand_color'/>
300                           </Shape>
301                           <Transform>
302                                <Shape>
303                                     <Sphere radius='.0975'/>
304                                     <Appearance>
305                                          <Material diffuseColor='0.9 0.9 0.9transparency='.8'/>
306                                     </Appearance>
307                                </Shape>
308                           </Transform>
309                      </Transform>
310                      <Transform rotation='1 0 0 -3.14translation='.3 0 -.1150'>
311                           <Transform USE='wheel'/>
312                      </Transform>
313                 </Group>
314                 <Transform translation='.8 0 0'>
315                      <Group USE='wheel_group'/>
316                 </Transform>
317                 <Transform translation='-.8 0 0'>
318                      <Group USE='wheel_group'/>
319                 </Transform>
320                 <Transform translation='1.6 0 0'>
321                      <Group USE='wheel_group'/>
322                 </Transform>
323                 <Transform translation='-1.6 0 0'>
324                      <Group USE='wheel_group'/>
325                 </Transform>
326                 <Transform translation='-2.4 0 0'>
327                      <Group USE='wheel_group'/>
328                 </Transform>
329                 <Transform translation='2.4 0 0'>
330                      <Group USE='wheel_group'/>
331                 </Transform>
332                 <Transform translation='-3.709 .375 0'>
333                      <Group USE='wheel_group'/>
334                 </Transform>
335 
               <!-- Transform sprocket is a DEF node that has 1 USE node: USE_1 -->
               <Transform DEF='sprocketrotation='1 0 0 1.57translation='3.5 .3734 -.06'>
336                      <Shape>
337                           <Appearance USE='sand_color'/>
338                           <Cylinder height='.6radius='.25top='false'/>
339                      </Shape>
340                      <Group>
341                           <Transform translation='0 -.29 0'>
342 
                              <!-- Shape sprocket_bottom is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                              <Shape DEF='sprocket_bottom'>
343                                     <Appearance USE='sand_color'/>
344                                     <Extrusion creaseAngle='3.14crossSection='-0.25 0 -0.24 0.07 -0.22 0.118743421 -0.2 0.15 -0.17 0.183303028 -0.14 0.207123152 -0.1 0.229128785 -0.05 0.244948974 0 0.25 0.05 0.244948974 0.1 0.229128785 0.14 0.207123152 0.17 0.183303028 0.2 0.15 0.22 0.118743421 0.24 0.07 0.25 0 0.29 0 0.28 0.075498344 0.26 0.128452326 0.24 0.162788206 0.22 0.188944436 0.185 0.223327114 0.15 0.248193473 0.11 0.268328157 0.06 0.283725219 0 0.29 -0.06 0.283725219 -0.11 0.268328157 -0.15 0.248193473 -0.185 0.223327114 -0.22 0.188944436 -0.24 0.162788206 -0.26 0.128452326 -0.28 0.075498344 -0.29 0 -0.25 0solid='falsespine='0 0 0 0 .01 0'/>
345                                </Shape>
346                           </Transform>
347                           <Transform rotation='0 1 0 3.14translation='0 -.29 0'>
348                                <Shape USE='sprocket_bottom'/>
349                           </Transform>
350                           <Transform translation='0 .28 0'>
351                                <Shape USE='sprocket_bottom'/>
352                           </Transform>
353                           <Transform rotation='0 1 0 3.14translation='0 .28 0'>
354                                <Shape USE='sprocket_bottom'/>
355                           </Transform>
356                      </Group>
357                      <Transform translation='0 -0.3 0'>
358                           <Shape>
359                                <Appearance USE='sand_color'/>
360                                <Cylinder height='.15radius='.075'/>
361                           </Shape>
362                      </Transform>
363                 </Transform>
364            </Transform>
365            <!-- This is the left side track assembly -->
366 
          <!-- Transform transform_track is a DEF node that has 1 USE node: USE_1 -->
          <Transform DEF='transform_tracktranslation='0 -1.5095 0.31525'>
367                 <Transform translation='0 -0.01 0'>
368 
                    <!-- Transform track_block is a DEF node that has 59 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9, USE_10, USE_11, USE_12, USE_13, USE_14, USE_15, USE_16, USE_17, USE_18, USE_19, USE_20, USE_21, USE_22, USE_23, USE_24, USE_25, USE_26, USE_27, USE_28, USE_29, USE_30, USE_31, USE_32, USE_33, USE_34, USE_35, USE_36, USE_37, USE_38, USE_39, USE_40, USE_41, USE_42, USE_43, USE_44, USE_45, USE_46, USE_47, USE_48, USE_49, USE_50, USE_51, USE_52, USE_53, USE_54, USE_55, USE_56, USE_57, USE_58, USE_59 -->
                    <Transform DEF='track_blockrotation='1 0 0 1.57'>
369 
                         <!-- Shape heat_tube is a DEF node that has 1 USE node: USE_1 -->
                         <Shape DEF='heat_tube'>
370 
                              <!-- Appearance metal is a DEF node that has 6 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6 -->
                              <Appearance DEF='metal'>
371                                     <Material shininess='.8'/>
372                                </Appearance>
373                                <Cylinder height='.6radius='.01'/>
374                           </Shape>
375                           <Transform translation='.225 0 0'>
376                                <Shape USE='heat_tube'/>
377                           </Transform>
378                           <Transform translation='.1125 .14 0'>
379 
                              <!-- Shape pad is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='pad'>
380                                     <Appearance USE='black'/>
381                                     <Box size='.26 .27 .025'/>
382                                </Shape>
383                           </Transform>
384                           <Transform translation='.1125 -.14 0'>
385                                <Shape USE='pad'/>
386                           </Transform>
387                           <Transform translation='-.021 -.005 0'>
388                                <Shape>
389                                     <Appearance USE='metal'/>
390                                     <Extrusion creaseAngle='3.14crossSection='-0.028 -0.01077033 -0.03 .0001 -.0325 0 0.0325 0 .0325 .0001 0.028 -0.01077033 0.002 -0.049959984 0 -0.05 -0.002 -0.049959984solid='falsespine='0 0 .0 0 .01 .0'/>
391                                </Shape>
392                                <Shape>
393                                     <IndexedFaceSet coordIndex='0 2 3 1 0 -1'>
394                                          <Coordinate point='-0.028 0 -0.01077 -0.002 0 -0.04996 -0.028 0.01 -0.01077 -0.002 0.01 -0.04996 -0.028 0 -0.01077'/>
395                                     </IndexedFaceSet>
396                                     <Appearance USE='metal'/>
397                                </Shape>
398                           </Transform>
399                           <Transform translation='-.021 0 0.005525'>
400                                <Shape>
401                                     <Appearance USE='metal'/>
402                                     <Box size='.065 .01 .0115'/>
403                                </Shape>
404                           </Transform>
405                           <Transform translation='.0025 .28 0'>
406 
                              <!-- Shape end_connector is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='end_connector'>
407                                     <Appearance USE='metal'/>
408                                     <Extrusion creaseAngle='3.14crossSection='0 0.0125 0.005 0.011456439 0.008 0.009604686 0.01 0.0075 0.0125 0 0.01 -0.0075 0.008 -0.009604686 0.005 -0.011456439 0 -0.0125 -0.005 -0.011456439 -0.007 -0.010356158 -0.0345 -0.01036 -0.0365 -0.01146 -0.0415 -0.0125 -0.0465 -0.01146 -0.0495 -0.0096 -0.0515 -0.0075 -0.054 0 -0.0515 0.0075 -0.0495 0.0096 -0.0465 0.01146 -0.0415 0.0125 -0.0365 0.01146 -0.0345 0.01036 -0.007 0.010356158 -0.005 0.011456439 0 0.0125spine='0 0 0 0 .015 0'/>
409                                </Shape>
410                           </Transform>
411                           <Transform translation='0 -.295 0'>
412                                <Shape USE='end_connector'/>
413                           </Transform>
414                      </Transform>
415                 </Transform>
416                 <Transform translation='-.265 -0.01 0'>
417                      <Transform USE='track_block'/>
418                 </Transform>
419                 <Transform translation='-.53 -0.01 0'>
420                      <Transform USE='track_block'/>
421                 </Transform>
422                 <Transform translation='-.795 -0.01 0'>
423                      <Transform USE='track_block'/>
424                 </Transform>
425                 <Transform translation='-1.06 -0.01 0'>
426                      <Transform USE='track_block'/>
427                 </Transform>
428                 <Transform translation='-1.325 -0.01 0'>
429                      <Transform USE='track_block'/>
430                 </Transform>
431                 <Transform translation='-1.59 -0.01 0'>
432                      <Transform USE='track_block'/>
433                 </Transform>
434                 <Transform translation='-1.855 -0.01 0'>
435                      <Transform USE='track_block'/>
436                 </Transform>
437                 <Transform translation='-2.12 -0.01 0'>
438                      <Transform USE='track_block'/>
439                 </Transform>
440                 <Transform translation='-2.385 -0.01 0'>
441                      <Transform USE='track_block'/>
442                 </Transform>
443                 <Transform rotation='0 0 1 -.3translation='-2.64 .0579 0'>
444                      <Transform USE='track_block'/>
445                 </Transform>
446                 <Transform rotation='0 0 1 -.3translation='-2.8925 0.135 0'>
447                      <Transform USE='track_block'/>
448                 </Transform>
449                 <Transform rotation='0 0 1 -.3translation='-3.145 0.213 0'>
450                      <Transform USE='track_block'/>
451                 </Transform>
452                 <Transform rotation='0 0 1 -.3translation='-3.3975 0.291 0'>
453                      <Transform USE='track_block'/>
454                 </Transform>
455                 <Transform rotation='0 0 1 -.67translation='-3.611 0.442 0'>
456                      <Transform USE='track_block'/>
457                 </Transform>
458                 <Transform rotation='0 0 1 -1.24translation='-3.714 0.68 0'>
459                      <Transform USE='track_block'/>
460                 </Transform>
461                 <Transform rotation='0 0 1 -2.3translation='-3.575 0.885 0'>
462                      <Transform USE='track_block'/>
463                 </Transform>
464                 <Transform rotation='0 0 1 -3.04translation='-3.325 0.937 0'>
465                      <Transform USE='track_block'/>
466                 </Transform>
467                 <Transform rotation='0 0 1 -3.14translation='-3.061 0.941 0'>
468                      <Transform USE='track_block'/>
469                 </Transform>
470                 <Transform rotation='0 0 1 -3.14translation='-2.796 0.941 0'>
471                      <Transform USE='track_block'/>
472                 </Transform>
473                 <Transform rotation='0 0 1 -3.14translation='-2.531 0.941 0'>
474                      <Transform USE='track_block'/>
475                 </Transform>
476                 <Transform rotation='0 0 1 -3.14translation='-2.266 0.941 0'>
477                      <Transform USE='track_block'/>
478                 </Transform>
479                 <Transform rotation='0 0 1 -3.14translation='-2.001 0.941 0'>
480                      <Transform USE='track_block'/>
481                 </Transform>
482                 <Transform rotation='0 0 1 -3.14translation='-1.736 0.941 0'>
483                      <Transform USE='track_block'/>
484                 </Transform>
485                 <Transform rotation='0 0 1 -3.14translation='-1.471 0.941 0'>
486                      <Transform USE='track_block'/>
487                 </Transform>
488                 <Transform rotation='0 0 1 -3.14translation='-1.206 0.941 0'>
489                      <Transform USE='track_block'/>
490                 </Transform>
491                 <Transform rotation='0 0 1 -3.14translation='-0.941 0.941 0'>
492                      <Transform USE='track_block'/>
493                 </Transform>
494                 <Transform rotation='0 0 1 -3.14translation='-0.676 0.941 0'>
495                      <Transform USE='track_block'/>
496                 </Transform>
497                 <Transform rotation='0 0 1 -3.14translation='-0.411 0.941 0'>
498                      <Transform USE='track_block'/>
499                 </Transform>
500                 <Transform rotation='0 0 1 -3.14translation='-0.146 0.941 0'>
501                      <Transform USE='track_block'/>
502                 </Transform>
503                 <Transform rotation='0 0 1 -3.14translation='0.119 0.941 0'>
504                      <Transform USE='track_block'/>
505                 </Transform>
506                 <Transform rotation='0 0 1 -3.14translation='0.384 0.941 0'>
507                      <Transform USE='track_block'/>
508                 </Transform>
509                 <Transform rotation='0 0 1 -3.14translation='0.649 0.941 0'>
510                      <Transform USE='track_block'/>
511                 </Transform>
512                 <Transform rotation='0 0 1 -3.14translation='0.914 0.941 0'>
513                      <Transform USE='track_block'/>
514                 </Transform>
515                 <Transform rotation='0 0 1 -3.14translation='1.179 0.941 0'>
516                      <Transform USE='track_block'/>
517                 </Transform>
518                 <Transform rotation='0 0 1 -3.14translation='1.444 0.941 0'>
519                      <Transform USE='track_block'/>
520                 </Transform>
521                 <Transform rotation='0 0 1 -3.14translation='1.709 0.941 0'>
522                      <Transform USE='track_block'/>
523                 </Transform>
524                 <Transform rotation='0 0 1 -3.14translation='1.974 0.941 0'>
525                      <Transform USE='track_block'/>
526                 </Transform>
527                 <Transform rotation='0 0 1 -3.14translation='2.239 0.941 0'>
528                      <Transform USE='track_block'/>
529                 </Transform>
530                 <Transform rotation='0 0 1 -3.14translation='2.504 0.941 0'>
531                      <Transform USE='track_block'/>
532                 </Transform>
533                 <Transform rotation='0 0 1 -3.14translation='2.769 0.941 0'>
534                      <Transform USE='track_block'/>
535                 </Transform>
536                 <Transform rotation='0 0 1 -3.14translation='3.034 0.941 0'>
537                      <Transform USE='track_block'/>
538                 </Transform>
539                 <Transform rotation='0 0 1 -3.14translation='3.299 0.941 0'>
540                      <Transform USE='track_block'/>
541                 </Transform>
542                 <Transform rotation='0 0 1 -3.15translation='3.564 0.94 0'>
543                      <Transform USE='track_block'/>
544                 </Transform>
545                 <Transform rotation='0 0 1 -3.8translation='3.78 0.8025 0'>
546                      <Transform USE='track_block'/>
547                 </Transform>
548                 <Transform rotation='0 0 1 -4.82translation='3.788 0.555 0'>
549                      <Transform USE='track_block'/>
550                 </Transform>
551                 <Transform rotation='0 0 1 -5.5translation='3.624 0.359 0'>
552                      <Transform USE='track_block'/>
553                 </Transform>
554                 <Transform rotation='0 0 1 -5.85translation='3.3925 0.2375 0'>
555                      <Transform USE='track_block'/>
556                 </Transform>
557                 <Transform rotation='0 0 1 -5.85translation='3.152 0.1275 0'>
558                      <Transform USE='track_block'/>
559                 </Transform>
560                 <Transform rotation='0 0 1 -5.8translation='2.9155 0.0075 0'>
561                      <Transform USE='track_block'/>
562                 </Transform>
563                 <Transform translation='2.654 -0.01 0'>
564                      <Transform USE='track_block'/>
565                 </Transform>
566                 <Transform translation='2.385 -0.01 0'>
567                      <Transform USE='track_block'/>
568                 </Transform>
569                 <Transform translation='2.12 -0.01 0'>
570                      <Transform USE='track_block'/>
571                 </Transform>
572                 <Transform translation='1.855 -0.01 0'>
573                      <Transform USE='track_block'/>
574                 </Transform>
575                 <Transform translation='1.59 -0.01 0'>
576                      <Transform USE='track_block'/>
577                 </Transform>
578                 <Transform translation='1.325 -0.01 0'>
579                      <Transform USE='track_block'/>
580                 </Transform>
581                 <Transform translation='1.06 -0.01 0'>
582                      <Transform USE='track_block'/>
583                 </Transform>
584                 <Transform translation='.795 -0.01 0'>
585                      <Transform USE='track_block'/>
586                 </Transform>
587                 <Transform translation='.53 -0.01 0'>
588                      <Transform USE='track_block'/>
589                 </Transform>
590                 <Transform translation='.265 -0.01 0'>
591                      <Transform USE='track_block'/>
592                 </Transform>
593            </Transform>
594            <!-- Support wheel for the left side of tank -->
595 
          <!-- Group support_roller_group is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
          <Group DEF='support_roller_group'>
596                 <Transform rotation='1 0 0 1.57translation='-1.6 -0.6616 -.1'>
597                      <Shape>
598                           <Appearance USE='sand_color'/>
599                           <Cylinder height='.6radius='.03'/>
600                      </Shape>
601                 </Transform>
602                 <Transform rotation='1 0 0 1.57scale='.3 .3 .3translation='-1.6 -.6616 .2'>
603                      <Shape USE='wheel_base'/>
604                      <Shape USE='rubber'/>
605                      <Transform scale='.5 .5 .5translation='0 0.15 0'>
606                           <Group USE='bolt_group_wheel'/>
607                      </Transform>
608                 </Transform>
609            </Group>
610            <Transform translation='2.8 0 0'>
611                 <Group USE='support_roller_group'/>
612            </Transform>
613            <!-- This is the right side road wheels of the tank. -->
614            <Transform DEF='right_side_full_wheelsrotation='1 0 0 -3.14translation='0 -1.2395 -3.85'>
615                 <Group USE='wheel_group'/>
616                 <Transform translation='.8 0 0'>
617                      <Group USE='wheel_group'/>
618                 </Transform>
619                 <Transform translation='-.8 0 0'>
620                      <Group USE='wheel_group'/>
621                 </Transform>
622                 <Transform translation='1.6 0 0'>
623                      <Group USE='wheel_group'/>
624                 </Transform>
625                 <Transform translation='-1.6 0 0'>
626                      <Group USE='wheel_group'/>
627                 </Transform>
628                 <Transform translation='2.4 0 0'>
629                      <Group USE='wheel_group'/>
630                 </Transform>
631                 <Transform translation='-2.4 0 0'>
632                      <Group USE='wheel_group'/>
633                 </Transform>
634                 <Transform translation='-3.709 -.375 0'>
635                      <Group USE='wheel_group'/>
636                 </Transform>
637                 <Transform translation='2.8 0.1 -.45'>
638                      <Group USE='support_roller_group'/>
639                 </Transform>
640                 <Transform translation='0 0.1 -.45'>
641                      <Group USE='support_roller_group'/>
642                 </Transform>
643                 <Transform translation='0 -.748 0'>
644                      <Transform USE='sprocket'/>
645                 </Transform>
646            </Transform>
647            <!-- right side track -->
648            <Transform translation='0 0 -4.1'>
649                 <Transform USE='transform_track'/>
650            </Transform>
651            <!-- turret stuff -->
652 
          <!-- ROUTE information for turret_group_transform node:  [from turret_sensor.rotation_changed to set_rotation ] -->
          <Transform DEF='turret_group_transformtranslation='-1 .2 -1.7395'>
653                 <Group DEF='turret_group'>
654 
                    <!-- ROUTE information for turret_sensor node:  [from rotation_changed to turret_group_transform.set_rotation ] -->
                    <CylinderSensor DEF='turret_sensor'/>
655                      <Transform DEF='turret_transformrotation='1 0 0 -1.57'>
656                           <Transform rotation='1 0 0 1.57'>
657                                <Shape DEF='turret'>
658                                     <Appearance USE='sand_color'/>
659                                     <IndexedFaceSet solid='falsecoordIndex='0 1 2 3 4 5 6 0 -1 1 2 8 7 14 1 -1 2 3 9 8 2 -1 3 4 10 9 3 -1 4 5 11 10 4 -1 6 5 11 12 13 6 -1 7 14 16 7 -1 12 13 15 12 -1 13 14 16 15 13 -1 1 6 13 14 1 -1 7 8 17 7 -1 8 9 17 8 -1 9 10 17 9 -1 10 11 17 10 -1 11 12 17 11 -1 12 15 17 12 -1 15 16 17 15 -1 16 7 17 16 -1'>
660                                          <Coordinate point='-1.814 0.21 0 -1.814 0.21 0.305 -0.990 0.21 1.625 2.5 0.21 1.625 2.5 0.21 -1.625 -0.990 0.21 -1.625 -1.814 0.21 -0.305 -2 -0.35 0.777 -1.237 -0.35 2.031 2.7 -0.35 2.031 2.7 -0.35 -2.031 -1.237 -0.35 -2.031 -2 -0.35 -0.777 -1.95 -0.16 -0.37 -1.95 -0.16 0.37 -1.95 -0.35 -0.37 -1.95 -0.35 0.37 0 -0.63 0'/>
661                                     </IndexedFaceSet>
662                                </Shape>
663                                <Transform translation='0.8 0.165 1.1'>
664                                     <Shape>
665                                          <Appearance USE='black'/>
666                                          <Cylinder height='.1radius='.4'/>
667                                     </Shape>
668                                     <Transform DEF='trans_ldr_hatch'>
669                                          <Shape>
670                                               <Appearance USE='sand_color'/>
671                                               <Cylinder height='.2radius='.4'/>
672                                          </Shape>
673                                     </Transform>
674                                </Transform>
675                                <Transform translation='0.8 0.165 -1.1'>
676                                     <Shape>
677                                          <Appearance USE='black'/>
678                                          <Cylinder height='.1radius='.3'/>
679                                     </Shape>
680                                     <Transform>
681                                          <Shape>
682                                               <Appearance USE='sand_color'/>
683                                               <Cylinder height='.3radius='.3'/>
684                                          </Shape>
685                                     </Transform>
686                                </Transform>
687                                <Transform translation='-0.8 .18 1.1'>
688                                     <Shape>
689                                          <Appearance USE='sand_color'/>
690                                          <Cylinder height='.2radius='.25'/>
691                                     </Shape>
692                                </Transform>
693                                <Transform translation='-0.5 .21 -1.1'>
694                                     <Shape>
695                                          <Box size='.12 .12 .25'/>
696                                          <Appearance USE='sand_color'/>
697                                     </Shape>
698                                </Transform>
699                           </Transform>
700                      </Transform>
701                      <Transform rotation='1 0 0 1.57translation='-1.7 -.1 0'>
702                           <Shape>
703                                <Appearance USE='sand_color'/>
704                                <Cylinder height='.4radius='.175'/>
705                           </Shape>
706                      </Transform>
707                      <Group DEF='guntube_group'>
708                           <Transform DEF='guntube_motionrotation='1 0 0 -1.57'>
709 
                              <!-- ROUTE information for transform_guntube node:  [from guntube_sensor.rotation_changed to set_rotation ] -->
                              <Transform DEF='transform_guntuberotation='0 1 0 -1.57translation='-1.8 -0.07 0'>
710 
                                   <!-- ROUTE information for guntube_sensor node:  [from rotation_changed to transform_guntube.set_rotation ] -->
                                   <CylinderSensor DEF='guntube_sensormaxAngle='-1.05minAngle='-1.77'/>
711                                     <Shape DEF='guntube_top'>
712                                          <Appearance USE='metal'/>
713                                          <Extrusion creaseAngle='.8crossSection='0 0.12 0.02 0.118321596 0.04 0.113137085 0.06 0.103923048 0.08 0.089442719 0.1 0.066332496 0.12 0 0.1 0 0.08 0.06 0.06 0.08 0.04 0.091651514 0.02 0.09797959 0 0.1 -0.02 0.09797959 -0.04 0.091651514 -0.06 0.08 -0.08 0.06 -0.1 0 -0.12 0 -0.1 0.066332496 -0.08 0.089442719 -0.06 0.103923048 -0.04 0.113137085 -0.02 0.118321596 0 0.12solid='falsespine='0 0 0 0 0 3.25'/>
714                                     </Shape>
715                                     <Shape DEF='guntube_bottom'>
716                                          <Appearance USE='metal'/>
717                                          <Extrusion creaseAngle='.4crossSection='0 -0.12 0.02 -0.118321596 0.04 -0.113137085 0.06 -0.103923048 0.08 -0.089442719 0.1 -0.066332496 0.12 0 0.1 0 0.08 -0.06 0.06 -0.08 0.04 -0.091651514 0.02 -0.09797959 0 -0.1 -0.02 -0.09797959 -0.04 -0.091651514 -0.06 -0.08 -0.08 -0.06 -0.1 0 -0.12 0 -0.1 -0.066332496 -0.08 -0.089442719 -0.06 -0.103923048 -0.04 -0.113137085 -0.02 -0.118321596 0 -0.12solid='falsespine='0 0 0 0 0 3.25'/>
718                                     </Shape>
719                                     <Transform rotation='1 0 0 1.57'>
720                                          <Transform translation='0 .75 0'>
721                                               <Shape DEF='bore_evacuator'>
722                                                    <Appearance USE='sand_color'/>
723                                                    <Cylinder height='.7radius='.15'/>
724                                               </Shape>
725                                          </Transform>
726                                          <Transform translation='0 1.58625 0'>
727                                               <Shape DEF='guntube_shroud'>
728                                                    <Appearance USE='sand_color'/>
729                                                    <Cylinder height='3.1radius='.13'/>
730                                               </Shape>
731                                          </Transform>
732                                          <Transform translation='.15 3.1 0'>
733                                               <Shape>
734                                                    <Appearance>
735                                                         <Material diffuseColor='.9 .9 .9'/>
736                                                    </Appearance>
737                                                    <Cylinder height='.06radius='.02'/>
738                                               </Shape>
739                                          </Transform>
740                                          <Transform rotation='0 1 0 1.57translation='.13 3.1 0'>
741                                               <Shape>
742                                                    <Appearance USE='sand_color'/>
743                                                    <Box size='.04 .06 .01'/>
744                                               </Shape>
745                                          </Transform>
746                                     </Transform>
747                                     <Transform rotation='1 0 0 1.57translation='0 .25 .35'>
748                                          <Shape>
749                                               <Appearance USE='sand_color'/>
750                                               <Cylinder height='.4radius='.025'/>
751                                          </Shape>
752                                     </Transform>
753                                </Transform>
754                           </Transform>
755                      </Group>
756                      <Transform translation='2.5 .3 0'>
757                           <Shape>
758                                <Appearance USE='sand_color'/>
759                                <Cylinder height='.25radius='.01'/>
760                           </Shape>
761                           <Transform translation='0 .1225 0'>
762                                <Shape>
763                                     <Appearance USE='sand_color'/>
764                                     <Box size='.02 .005 .03'/>
765                                </Shape>
766                           </Transform>
767                      </Transform>
768                 </Group>
769                 < ROUTE  fromNode='turret_sensor' fromField='rotation_changed' toNode='turret_group_transform' toField='set_rotation'/>
770                 < ROUTE  fromNode='guntube_sensor' fromField='rotation_changed' toNode='transform_guntube' toField='set_rotation'/>
771            </Transform>
772       </Scene>
773  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: black, bolt, bolt_group_wheel, bore_evacuator, end_connector, guntube_bottom, guntube_group, guntube_motion, guntube_sensor, guntube_shroud, guntube_top, heat_tube, hull, hull_transform, left_mud_flap, left_skirt_1, left_skirt_2, left_skirt_3, left_skirt_4, left_skirt_5, left_skirt_6, left_skirt_7, lf_mf_sensor, metal, nut, pad, r_skrt_1_sensor, r_skrt_2_sensor, r_skrt_3_sensor, r_skrt_4_sensor, r_skrt_5_sensor, r_skrt_6_sensor, r_skrt_7_sensor, right_mud_flap, right_side_full_wheels, right_skirt_1, right_skirt_2, right_skirt_3, right_skirt_4, rt_mf_sensor, rubber, sand_color, sprocket, sprocket_bottom, support_roller_group, track_block, trans_l_mudflap, trans_ldr_hatch, trans_r_mudflap, trans_r_skrt_1, trans_r_skrt_2, trans_r_skrt_3, trans_r_skrt_4, trans_r_skrt_5, trans_r_skrt_6, trans_r_skrt_7, transform_guntube, transform_left_skirts, transform_right_skirts, transform_roadwheel, transform_track, turret, turret_group, turret_group_transform, turret_sensor, turret_transform, wheel, wheel_base, wheel_group

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4
-->
X3D Tooltips element index: Appearance, Background, Box, Coordinate, Cylinder, CylinderSensor, Extrusion, Group, head, IndexedFaceSet, Material, meta, ROUTE, Scene, Shape, Sphere, Transform, Viewpoint, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

Event Graph ROUTE Table entries with 11 ROUTE connections total, showing X3D event-model relationships for this scene.

Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.

guntube_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
transform_guntube
Transform
set_rotation
SFRotation

lf_mf_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_l_mudflap
Transform
set_rotation
SFRotation

r_skrt_1_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_1
Transform
set_rotation
SFRotation

r_skrt_2_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_2
Transform
set_rotation
SFRotation

r_skrt_3_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_3
Transform
set_rotation
SFRotation

r_skrt_4_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_4
Transform
set_rotation
SFRotation

r_skrt_5_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_5
Transform
set_rotation
SFRotation

r_skrt_6_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_6
Transform
set_rotation
SFRotation

r_skrt_7_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_skrt_7
Transform
set_rotation
SFRotation

rt_mf_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
trans_r_mudflap
Transform
set_rotation
SFRotation

turret_sensor
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
turret_group_transform
Transform
set_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/GroundVehicles/M1A1/M1A1Index.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/GroundVehicles/M1A1/M1A1.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)
-->

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