<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
<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'>
  <head>
    <meta content='Wolverine.x3d' name='title'/>
    <meta content='Wolverine is an M1A1 tank chassis with a deployable Heavy Assualt Bridge(HAB). Original M1A1 model authored by Scott Tufts.' name='description'/>
    <meta content='Nick Wittwer' name='creator'/>
    <meta content='15 February 2005' name='created'/>
    <meta content='20 October 2019' name='modified'/>
    <meta content='TODO list: - split out HAB as separate model; - build prototypes; . figure out how to add HABs to scene repeatedly; - check sound and image urls, permissions' name='warning'/>
    <meta content='WolverineConstructionReport.pdf' name='reference'/>
    <meta content='https://www.fas.org/man/dod-101/sys/land/m1.htm' name='reference'/>
    <meta content='https://www.fas.org/man/dod-101/sys/land/wolverine.htm' name='reference'/>
    <meta content='https://www.fas.org/man/dod-101/sys/land/wol3.jpg' name='Image'/>
    <meta content='https://www.fas.org/man/dod-101/sys/land/wolverine.htm' name='drawing'/>
    <meta content='M1A1 Main Battle Tank Abrams, MBT, Wolverine, HAB, Heavy Assault Bridge, AVLB' name='subject'/>
    <meta content='../../license.html' name='license'/>
    <meta content='https://www.web3d.org/x3d/content/examples/Basic/X3dSceneAuthoringHints.html#license' name='license'/>
    <meta content='https://www.web3d.org/x3d/content/examples/Savage/GroundVehicles/Wolverine/Wolverine.x3d' name='identifier'/>
    <meta content='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit' name='generator'/>
    <meta content='Xeena VRML importer, X3D-Edit 3.1, https://www.web3d.org/x3d/content/README.X3D-Edit.html' name='translator'/>
    <meta content='Vrml97ToX3dNist, http://ovrt.nist.gov/v2_x3d.html' name='generator'/>
    <meta content='Wings3D, http://www.wings3d.com' name='generator'/>
  </head>
  <Scene>
    <WorldInfo title='Wolverine.x3d'/>
    <Background groundAngle='1.309 1.570796' groundColor='0 0.3 .7 0 0.35 0.75 0 0.4 0.8' skyAngle='1.309 1.571' skyColor='0 0.2 0.7 0 0.5 1 1 1 1'/>
    <Group DEF='CommandButtons'>
      <Transform DEF='unfoldButton' translation='-3 3.5 0'>
        <Shape>
          <Appearance DEF='PanelGreen'>
            <Material diffuseColor='.2 .8 .2'/>
          </Appearance>
          <Sphere DEF='Button' radius='.25'/>
        </Shape>
        <TouchSensor DEF='unfold' description='unfold sensor'/>
        <Transform DEF='UnfoldText' scale='.25 .25 .25' translation='-.55 .3 0'>
          <Shape>
            <!-- Text above 1st Button. -->
            <Appearance DEF='black'>
              <Material diffuseColor='0 0 0'/>
            </Appearance>
            <Text string='"Press to Extend"'/>
          </Shape>
        </Transform>
        <Sound maxBack='1000' maxFront='1000'>
          <AudioClip DEF='BridgeSound' description='BridgeExtend' url='"bridgeExtend.wav" "http://www.grsites.com/sounds/18791905/vehicle/vehicle080.wav"'/>
        </Sound>
      </Transform>
      <Transform DEF='LayDownButton' translation='-1 3.5 0'>
        <Shape>
          <Appearance USE='PanelGreen'/>
          <Sphere USE='Button'/>
        </Shape>
        <TouchSensor DEF='LayOnGroundSensor' description='put bridge on ground senso'/>
        <Transform DEF='EmployBridgeButton' scale='.25 .25 .25' translation='-.5 .3 0'>
          <Shape>
            <!-- Text above 2nd Button. -->
            <Appearance USE='black'/>
            <Text string='"Press to Deploy"'/>
          </Shape>
        </Transform>
      </Transform>
      <Transform DEF='MoveTank' translation='1 3.5 0'>
        <Shape>
          <Appearance USE='PanelGreen'/>
          <Sphere USE='Button'/>
        </Shape>
        <TouchSensor DEF='MoveTankSensor' description='put bridge on ground senso'/>
        <Transform scale='.25 .25 .25' translation='-.5 .3 0'>
          <Shape>
            <!-- Text ablove 3rd button. -->
            <Appearance USE='black'/>
            <Text string='"Press to Employ"'/>
          </Shape>
        </Transform>
        <Sound minBack='1000' minFront='1000'>
          <AudioClip DEF='TankSound' description='TankMoving' url='"Tredlop2.wav" "http://www.grsites.com/sounds/18791905/vehicle/vehicle025.wav"'/>
        </Sound>
      </Transform>
    </Group>
    <Group DEF='Viewpoints'>
      <Viewpoint description='Side' position='0 2 10'/>
      <Viewpoint description='Side and back' orientation='1 0 0 -.35' position='-15 3.5 17'/>
    </Group>
    <Group DEF='Timers'>
      <TimeSensor DEF='ExtendHABClock' cycleInterval='10'/>
      <TimeSensor DEF='lauchTimer' cycleInterval='10'/>
      <TimeSensor DEF='MoveTankTimer' cycleInterval='10'/>
    </Group>
    <Group DEF='Movements'>
      <Group DEF='UnfoldingMovements'>
        <!-- Bottom Bay Movement -->
        <PositionInterpolator DEF='BridgePathBottomPositions' key='0.15 0.45 0.6' keyValue='0 0 0 -2.75 0 0 -5.5 0 0'/>
        <ROUTE fromField='fraction_changed' fromNode='ExtendHABClock' toField='set_fraction' toNode='BridgePathBottomPositions'/>
        <!-- TopBayMovements -->
        <PositionInterpolator DEF='BridgePathTopPositions' key='0.2 0.4 0.6 0.75 .9' keyValue='0 0 0 0 0.25 0 0 0.6 0 0 0.65 0 0 -0.2 0'/>
        <ROUTE fromField='fraction_changed' fromNode='ExtendHABClock' toField='set_fraction' toNode='BridgePathTopPositions'/>
        <!-- TopBayTilting -->
        <OrientationInterpolator DEF='TopTilt' key='0.15 0.25 0.5 0.75' keyValue='0.0 0.0 1.0 0.0 0.0 0.0 1.0 0.015 0.0 0.0 1.0 0.0 0.0 0.0 1.0 -0.075'/>
        <ROUTE fromField='fraction_changed' fromNode='ExtendHABClock' toField='set_fraction' toNode='TopTilt'/>
      </Group>
      <Group DEF='DeployMovements'>
        <!-- GroundBridge -->
        <PositionInterpolator DEF='BridgeOnGround' key='.2 .4 .6 .7' keyValue='-7 1 0.3 -15 1 0.3 -25.5 1 0.3 -25.5 -2 0.3'/>
        <ROUTE fromField='fraction_changed' fromNode='lauchTimer' toField='set_fraction' toNode='BridgeOnGround'/>
        <!-- TiltEntireBridge -->
        <OrientationInterpolator DEF='TiltBridgeToGround' key='0.6 0.7 0.85' keyValue='0 0 0 0 0 0 1 0.12 0 0 0 0'/>
        <ROUTE fromField='fraction_changed' fromNode='lauchTimer' toField='set_fraction' toNode='TiltBridgeToGround'/>
        <!-- FrontArmTilt -->
        <OrientationInterpolator DEF='TiltFrontArm' key='0.6 0.83 0.94' keyValue='0 0 0 0 0 0 1 -0.9 0 0 0 0'/>
        <ROUTE fromField='fraction_changed' fromNode='lauchTimer' toField='set_fraction' toNode='TiltFrontArm'/>
        <!-- FrontHydraulic -->
        <PositionInterpolator DEF='ExtendFrontHydraulic' key='0.6 0.83 0.94' keyValue='0 1 0 0 2.4 0 0 1 0'/>
        <ROUTE fromField='fraction_changed' fromNode='lauchTimer' toField='set_fraction' toNode='ExtendFrontHydraulic'/>
        <PositionInterpolator DEF='BackHydCylinder' key='0.1 0.65 0.95' keyValue='0.0 0.75 0.0 0.0 1.4 0.0 0.0 -0.25 0.0'/>
        <OrientationInterpolator DEF='BackHydCylTilt' key='.2 .65 .9' keyValue='0 0 1 0.75 0 0 1 -0.8 0 0 1 -0.85'/>
        <ROUTE fromField='fraction_changed' fromNode='ExtendHABClock' toField='set_fraction' toNode='BackHydCylinder'/>
        <ROUTE fromField='fraction_changed' fromNode='ExtendHABClock' toField='set_fraction' toNode='BackHydCylTilt'/>
      </Group>
      <Group DEF='CrossTankMovement'>
        <!-- CrossTank -->
        <PositionInterpolator DEF='MoveTankAcrossBridge' key='.01 .2 .4 .6 .8' keyValue='0 0 0 -10 0.4 0 -20 .8 0 -30 0.4 0 -40 0 0'/>
        <ROUTE fromField='fraction_changed' fromNode='MoveTankTimer' toField='set_fraction' toNode='MoveTankAcrossBridge'/>
        <OrientationInterpolator DEF='TiltTankAcrossBridge' key='.1 .3 .5 .7' keyValue='0 0 0 0 0 0 1 -0.1 0 0 1 0.1 0 0 0 0'/>
        <ROUTE fromField='fraction_changed' fromNode='MoveTankTimer' toField='set_fraction' toNode='TiltTankAcrossBridge'/>
      </Group>
    </Group>
    <Group DEF='M1HAB'>
      <Transform DEF='M1ChassisPlus'>
        <Transform DEF='M1Chassis' scale='1 1 .9'>
          <Inline DEF='M1A1Chassis' url='"M1A1Chassis.wrl" "https://www.web3d.org/x3d/content/examples/Savage/GroundVehicles/M1A1/M1A1Chassis.wrl"'/>
        </Transform>
        <!-- HAB turret -->
        <Group DEF='M1HABturret'>
          <Transform DEF='loadArm' scale='.8 .5 .85' translation='0 0 -1.5'>
            <Shape>
              <Appearance DEF='sand_color'>
                <Material diffuseColor='.8 .7 .6'/>
              </Appearance>
              <IndexedFaceSet coordIndex='0 1 8 9 -1 2 1 0 3 -1 5 1 2 6 -1 7 3 0 4 -1 7 4 5 6 -1 10 8 1 5 -1 10 11 13 12 -1 11 4 0 9 -1 11 10 5 4 -1 12 13 14 15 -1 14 13 11 9 -1 15 14 9 8 -1 17 16 7 6 -1 18 17 6 2 -1 19 3 7 16 -1 19 18 2 3 -1 20 16 17 21 24 -1 22 18 19 23 25 -1 22 21 17 18 -1 27 23 19 16 20 26 -1 29 27 26 28 24 21 22 25 -1 31 30 24 28 -1 32 31 28 26 -1 33 20 24 30 -1 33 32 26 20 -1 35 34 27 29 -1 36 35 29 25 -1 37 23 27 34 -1 37 36 25 23 -1 38 33 30 39 46 -1 40 31 32 41 47 -1 40 39 30 31 -1 41 32 33 38 -1 43 34 35 44 48 -1 43 42 37 34 -1 45 36 37 42 49 -1 45 44 35 36 -1 46 39 40 47 -1 47 41 38 46 -1 48 44 45 49 -1 49 42 43 48 -1 51 12 15 53 52 -1 51 50 53 15 8 10 12 -1 54 55 56 57 -1 55 54 50 51 -1 56 55 51 52 -1 57 53 50 54 -1 57 56 52 53 -1'>
                <Coordinate point='-0.161045 -0.863419 1.00218 -0.13592 1.13602 0.999036 0.646417 1.0889 0.99911 0.599297 -0.910538 1.00225 -0.116808 -0.86656 -0.997821 -0.13592 1.13288 -1.00096 0.646417 1.08576 -1.00089 0.640585 -0.91368 -0.997747 -0.176901 1.18314 0.998962 -1.21357 -0.816299 1.0021 -0.176901 1.18 -1.00104 -1.21947 -0.819441 -0.997895 -3.26944 1.23508 -0.801122 -3.39065 0.334725 -0.799708 -3.44521 0.337238 0.80029 -3.324 1.23759 0.798876 2.88173 -0.272004 -0.998755 2.90821 1.72744 -1.0019 2.90821 1.73058 0.998102 2.86109 -0.268863 1.00124 5.87202 -0.329679 -0.998664 5.92332 1.66967 -1.0018 5.92332 1.67281 0.998193 5.88003 -0.326717 1.00133 5.8959 1.15627 -1.001 5.89695 1.20425 0.998929 5.07222 -0.310621 -0.332027 5.07222 -0.309574 0.334639 5.8959 1.15732 -0.334332 5.89695 1.2032 0.332263 7.17741 0.459345 -0.999904 7.17741 0.460392 -0.333238 7.16737 0.034379 -0.332569 7.16737 0.0333318 -0.999234 7.1772 0.110093 0.33398 7.09555 0.509626 0.333352 7.09555 0.510673 1.00002 7.08618 0.11319 1.00064 8.2643 0.0506105 -0.999262 8.30364 0.433984 -0.999864 8.30364 0.435031 -0.333198 8.2643 0.0516577 -0.332596 8.18312 0.130469 1.00062 8.18312 0.129421 0.33395 8.22178 0.484265 0.333392 8.22178 0.485312 1.00006 8.47796 0.216939 -0.999523 8.47796 0.217986 -0.332857 8.39643 0.281485 0.333711 8.39643 0.282532 1.00038 -0.583875 1.19401 -0.477202 -1.81083 1.21151 -0.439022 -1.81083 1.21288 0.436852 -0.583875 1.19551 0.475087 -0.600174 1.02905 -0.463696 -1.78866 1.04595 -0.426814 -1.78866 1.04729 0.425164 -0.600174 1.03051 0.462099'/>
              </IndexedFaceSet>
            </Shape>
            <PointLight intensity='.6' location='3 3 3'/>
          </Transform>
          <Transform DEF='FrontArmTranslation' rotation='0 1 0 3.14' scale='.6 .45 .65' translation='-3.6 1.1 -1.5'>
            <Transform DEF='FrontArm'>
              <Shape>
                <Appearance USE='sand_color'/>
                <IndexedFaceSet coordIndex='5 1 2 6 -1 7 3 0 4 -1 7 4 5 6 17 -1 9 8 5 4 -1 10 9 4 0 -1 11 1 5 8 -1 11 10 0 1 -1 13 12 8 9 -1 15 14 10 11 -1 16 2 1 0 3 -1 17 6 2 16 -1 19 18 17 16 -1 20 19 16 3 -1 21 7 17 18 -1 21 20 3 7 -1 22 23 24 25 -1 23 22 21 18 -1 24 23 18 19 -1 25 20 21 22 -1 25 24 19 20 -1 27 13 9 10 14 26 -1 29 15 11 8 12 28 -1 29 28 27 26 -1 30 31 32 33 -1 31 30 15 29 -1 32 31 29 26 -1 33 14 15 30 -1 33 32 26 14 -1 34 35 36 37 -1 35 34 27 28 -1 36 35 28 12 -1 37 13 27 34 -1 37 36 12 13 -1 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 53 -1 54 38 39 55 -1 55 39 40 56 -1 56 40 41 57 -1 57 41 42 58 -1 58 42 43 59 -1 59 43 44 60 -1 60 44 45 61 -1 61 45 46 62 -1 62 46 47 63 -1 63 47 48 64 -1 64 48 49 65 -1 65 49 50 66 -1 66 50 51 67 -1 67 51 52 68 -1 68 52 53 69 -1 69 53 38 54 -1 69 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 -1'>
                  <Coordinate point='-1.0 -1.0 1.0 -1.0 1.0 1.0 0.635798 1.0 1.0 3.21678 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 1.0 -1.0 0.635798 1.0 -1.0 3.21678 -1.0 -1.0 -2.03303 1.0 -1.0 -2.03303 -0.43018 -1.0 -2.03303 -0.352978 1.0 -2.03303 1.0 1.0 -3.39692 1.0 -0.3 -3.39692 0.400655 -0.3 -3.39692 0.400655 0.3 -3.39692 1.0 0.3 2.76852 0.669533 1.0 2.76852 0.669533 -1.0 5.92251 0.669533 -1.0 5.92251 0.669533 1.0 5.92251 0.0109711 1.0 5.92251 0.0109711 -1.0 6.09129 0.231547 -1.0 6.53661 0.669533 -1.0 6.53661 0.669533 1.0 6.09129 0.231547 1.0 -3.39692 0.400655 0.18 -3.39692 0.400655 -0.18 -3.39692 1.0 -0.18 -3.39692 1.0 0.18 -3.70092 1.0 0.3 -3.70092 1.0 0.18 -3.70092 0.400655 0.18 -3.70092 0.400655 0.3 -3.70092 0.400655 -0.18 -3.70092 1.0 -0.18 -3.70092 1.0 -0.3 -3.70092 0.400655 -0.3 -3.6 1.0 -0.12 -3.71481 0.977164 -0.12 -3.81213 0.912132 -0.12 -3.87716 0.814805 -0.12 -3.9 0.7 -0.12 -3.87716 0.585195 -0.12 -3.81213 0.487868 -0.12 -3.71481 0.422836 -0.12 -3.6 0.4 -0.12 -3.48519 0.422836 -0.12 -3.38787 0.487868 -0.12 -3.32284 0.585195 -0.12 -3.3 0.7 -0.12 -3.32284 0.814805 -0.12 -3.38787 0.912132 -0.12 -3.48519 0.977164 -0.12 -3.6 1.0 0.12 -3.71481 0.977164 0.12 -3.81213 0.912132 0.12 -3.87716 0.814805 0.12 -3.9 0.7 0.12 -3.87716 0.585195 0.12 -3.81213 0.487868 0.12 -3.71481 0.422836 0.12 -3.6 0.4 0.12 -3.48519 0.422836 0.12 -3.38787 0.487868 0.12 -3.32284 0.585195 0.12 -3.3 0.7 0.12 -3.32284 0.814805 0.12 -3.38787 0.912132 0.12 -3.48519 0.977164 0.12'/>
                </IndexedFaceSet>
              </Shape>
            </Transform>
          </Transform>
          <Transform DEF='FrontHydraulic' rotation='0 0 1 .6' translation='-1 0.6 -1.5'>
            <Shape DEF='bigHydo'>
              <Appearance USE='sand_color'/>
              <Cylinder height='1' radius='.2'/>
            </Shape>
            <Transform DEF='LittleFrontHydroTranslation' translation='0 -1.0 0'>
              <Transform DEF='LittleFrontHydro'>
                <Shape DEF='littleHydro'>
                  <Appearance USE='sand_color'/>
                  <Cylinder radius='.08'/>
                </Shape>
              </Transform>
            </Transform>
          </Transform>
          <Transform DEF='BackHydraulic' rotation='0 0 1 .75' translation='6 .55 -1.5'>
            <Shape USE='bigHydo'/>
            <Transform DEF='BackHydroCylinder' translation='0 1.25 0'>
              <Shape USE='littleHydro'/>
              <Transform rotation='1 0 0 1.57' translation='0 1 0'>
                <Shape>
                  <Appearance USE='sand_color'/>
                  <Cylinder height='1.25' radius='.1'/>
                </Shape>
              </Transform>
            </Transform>
          </Transform>
          <Transform DEF='Hatch' translation='0 0.25 -3'>
            <Shape>
              <Appearance USE='sand_color'/>
              <IndexedFaceSet coordIndex='0 7 6 5 4 3 2 1 -1 3 11 10 2 -1 4 12 11 3 -1 5 13 12 4 -1 6 14 13 5 -1 7 15 14 6 -1 8 0 1 9 -1 9 1 2 10 -1 10 11 12 13 14 15 8 9 -1 15 7 0 8 -1'>
                <Coordinate point='-0.666053 -0.084515 -0.08561 -0.296482 -0.084515 -0.182057 0.192171 -0.084515 -0.171857 0.513661 -0.084515 -0.060986 0.479662 -0.084515 0.08561 0.110091 -0.084515 0.182057 -0.378562 -0.084515 0.171857 -0.700052 -0.084515 0.060986 -0.666053 -0.684515 -0.08561 -0.296482 -0.684515 -0.182057 0.192171 -0.684515 -0.171857 0.513661 -0.684515 -0.060986 0.479662 -0.684515 0.08561 0.110091 -0.684515 0.182057 -0.378562 -0.684515 0.171857 -0.700052 -0.684515 0.060986'/>
              </IndexedFaceSet>
            </Shape>
          </Transform>
          <Transform DEF='box' scale='.5 .3 .4' translation='0 0.25 1'>
            <Shape>
              <Appearance USE='sand_color'/>
              <IndexedFaceSet coordIndex='2 1 0 3 -1 4 0 1 5 -1 5 1 2 6 -1 6 2 3 7 -1 7 3 0 4 -1 7 4 5 6 -1 10 9 8 11 -1 12 8 9 13 -1 13 9 10 14 -1 14 10 11 15 -1 15 11 8 12 -1 15 12 13 14 -1 18 17 16 19 -1 20 16 17 21 -1 21 17 18 22 -1 22 18 19 23 -1 23 19 16 20 -1 23 20 21 22 -1 26 25 24 27 -1 28 24 25 29 -1 29 25 26 30 -1 30 26 27 31 -1 31 27 24 28 -1 31 28 29 30 -1'>
                <Coordinate point='-0.6741 1.00164 -0.0432 -0.6741 1.08724 -0.0432 0.6741 1.08724 -0.0432 0.6741 1.00164 -0.0432 -0.6741 1.00164 -0.5568 -0.6741 1.08724 -0.5568 0.6741 1.08724 -0.5568 0.6741 1.00164 -0.5568 -0.6741 1.00342 0.8568 -0.6741 1.08902 0.8568 0.6741 1.08902 0.8568 0.6741 1.00342 0.8568 -0.6741 1.00342 0.3432 -0.6741 1.08902 0.3432 0.6741 1.08902 0.3432 0.6741 1.00342 0.3432 -1.0 -1.0 1.0 -1.0 1.0 1.0 1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 1.0 -1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 -0.216188 1.45084 2.58824 -0.216188 1.45084 2.52832 0.412972 1.45084 2.52832 0.412972 1.45084 2.58824 -0.216188 1.09132 2.58824 -0.216188 1.09132 2.52832 0.412972 1.09132 2.52832 0.412972 1.09132 2.58824'/>
              </IndexedFaceSet>
            </Shape>
          </Transform>
          <Transform DEF='box2' scale='.4 .2 .4' translation='3 0 0'>
            <Shape>
              <Appearance USE='sand_color'/>
              <IndexedFaceSet coordIndex='2 1 0 3 -1 4 0 1 5 -1 5 1 2 6 -1 6 2 3 7 -1 7 3 0 4 -1 7 4 5 6 -1 10 9 8 11 -1 12 8 9 13 -1 13 9 10 14 -1 14 10 11 15 -1 15 11 8 12 -1 15 12 13 14 -1 18 17 16 19 -1 20 16 17 21 -1 21 17 18 22 -1 22 18 19 23 -1 23 19 16 20 -1 23 20 21 22 -1 26 25 24 27 -1 28 24 25 29 -1 29 25 26 30 -1 30 26 27 31 -1 31 27 24 28 -1 31 28 29 30 -1'>
                <Coordinate point='-0.6741 1.00164 -0.0432 -0.6741 1.08724 -0.0432 0.6741 1.08724 -0.0432 0.6741 1.00164 -0.0432 -0.6741 1.00164 -0.5568 -0.6741 1.08724 -0.5568 0.6741 1.08724 -0.5568 0.6741 1.00164 -0.5568 -0.6741 1.00342 0.8568 -0.6741 1.08902 0.8568 0.6741 1.08902 0.8568 0.6741 1.00342 0.8568 -0.6741 1.00342 0.3432 -0.6741 1.08902 0.3432 0.6741 1.08902 0.3432 0.6741 1.00342 0.3432 -1.0 -1.0 1.0 -1.0 1.0 1.0 1.0 1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 -1.0 -1.0 1.0 -1.0 1.0 1.0 -1.0 1.0 -1.0 -1.0 -0.216188 1.45084 2.58824 -0.216188 1.45084 2.52832 0.412972 1.45084 2.52832 0.412972 1.45084 2.58824 -0.216188 1.09132 2.58824 -0.216188 1.09132 2.52832 0.412972 1.09132 2.52832 0.412972 1.09132 2.58824'/>
              </IndexedFaceSet>
            </Shape>
          </Transform>
        </Group>
      </Transform>
      <!-- FoldedAssaultBridge -->
      <Transform DEF='HABstack' translation='-7 0.9 0.3'>
        <Transform DEF='BridgeHalf'>
          <Transform DEF='BridgeSection1' scale='.5 .5 .5'>
            <Group DEF='InsideNearSection'>
              <Shape DEF='InnerSide'>
                <Extrusion creaseAngle='3.14' crossSection='0 0 26 0 26 -2 2 -0.5 0 0' solid='false' spine='0 0 0 0 0 0.25 0 0 0.5 0 0 0.75 0 0 1'/>
                <Appearance USE='sand_color'/>
              </Shape>
              <Transform DEF='Roller' translation='26.1 2.0 0.5'>
                <Transform DEF='pivotPole' rotation='1 0 0 -1.57'>
                  <Shape>
                    <Cylinder height='1.0' radius='.05'/>
                    <Appearance USE='sand_color'/>
                  </Shape>
                </Transform>
                <Transform rotation='1 0 0 1.57' scale='.025 .025 .025' translation='0 0 0.5'>
                  <Shape DEF='wheel'>
                    <Extrusion beginCap='false' convex='false' creaseAngle='1.57' crossSection='1.00 0.00 0.92 -0.38 0.71 -0.71 0.38 -0.92 0.00 -1.00 -0.38 -0.92 -0.71 -0.71 -0.92 -0.38 -1.00 -0.00 -0.92 0.38 -0.71 0.71 -0.38 0.92 0.00 1.00 0.38 0.92 0.71 0.71 0.92 0.38 1.00 0.' endCap='false' spine='2.00 0.0 0.00 1.85 0.0 0.77 1.41 0.0 1.41 0.77 0.0 1.85 0.00 0.0 2.00 -0.77 0.0 1.85 -1.41 0.0 1.41 -1.85 0.0 0.77 -2.00 0.0 0.00 -1.85 0.0 -0.77 -1.41 0.0 -1.41 -0.77 0.0 -1.85 0.00 0.0 -2.00 0.77 0.0 -1.85 1.41 0.0 -1.41 1.85 0.0 -0.77 2.00 0.0 0.00'/>
                    <Appearance>
                      <Material diffuseColor='0 0 0'/>
                    </Appearance>
                  </Shape>
                </Transform>
                <Transform rotation='1 0 0 1.57' scale='.025 .025 .025' translation='0 0 -0.5'>
                  <Shape USE='wheel'/>
                </Transform>
              </Transform>
              <Transform DEF='AllRails'>
                <Transform DEF='BottomRails' translation='13.5 0.1 1.0'>
                  <Shape DEF='BottomRail'>
                    <Box size='25.5 0.175 0.025'/>
                    <Appearance USE='sand_color'/>
                  </Shape>
                  <Transform translation='0 0 -1'>
                    <Shape USE='BottomRail'/>
                    <Transform rotation='1 0 0 1.57' scale='.05 .05 .05' translation='12.7 0 -0.05'>
                      <Shape USE='wheel'/>
                    </Transform>
                  </Transform>
                  <Transform DEF='Bolts' rotation='1 0 0 1.57' scale='.0025 .07 .0025' translation='12.55 -0.05 0'>
                    <Shape DEF='bolt'>
                      <Cylinder height='.5' radius='8.5'/>
                      <Appearance>
                        <Material diffuseColor='0 0 0'/>
                      </Appearance>
                    </Shape>
                    <Transform translation='50.0 0 0'>
                      <Shape USE='bolt'/>
                    </Transform>
                    <Transform translation='50.0 0 -40.0'>
                      <Shape USE='bolt'/>
                    </Transform>
                    <Transform translation='0 0 -40'>
                      <Shape USE='bolt'/>
                    </Transform>
                  </Transform>
                </Transform>
              </Transform>
              <Transform DEF='InnerSide2' translation='0 0 -2'/>
            </Group>
            <Transform DEF='InsideFarSection' translation='0 0 -2'>
              <Shape USE='InnerSide'/>
              <Transform USE='Roller'/>
              <Transform translation='13.5 0.1 0'>
                <Shape USE='BottomRail'/>
                <Transform USE='Bolts'/>
              </Transform>
              <Transform translation='13.5 0.1 1.0'>
                <Shape USE='BottomRail'/>
                <Transform rotation='1 0 0 1.57' scale='.05 .05 .05' translation='12.7 0 0.05'>
                  <Shape USE='wheel'/>
                </Transform>
              </Transform>
            </Transform>
            <Transform DEF='RoadSurface' translation='0 0.01 -2.1'>
              <Shape DEF='Surface'>
                <Extrusion creaseAngle='3.14' crossSection='0 -0.05 2 -0.6 26 -2.2 26 -2.0 2 -0.50 0 0.0' scale='1 1 1 1 1 1 1 1 1 1' spine='0 0 0 0 0 0.5 0 0 1 0 0 1.5 0 0 3.2'/>
                <Appearance>
                  <ImageTexture url='"wellwall.jpg" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/wellwall.jpg"'/>
                </Appearance>
              </Shape>
            </Transform>
          </Transform>
          <Transform DEF='BridgeSection2' translation='0 0 -3.1'>
            <Transform USE='BridgeSection1'/>
          </Transform>
          <Transform DEF='ExtraDetails' translation='5.5 0.25 -1.5'>
            <Transform DEF='crossMember1'>
              <Shape DEF='Beam'>
                <Appearance>
                  <Material DEF='white' diffuseColor='1 1 1'/>
                </Appearance>
                <Box size='0.1 0.2 2.5'/>
              </Shape>
            </Transform>
            <Transform DEF='crossMember2' translation='1 0.05 0'>
              <Shape USE='Beam'/>
            </Transform>
            <Transform DEF='crossMember3' translation='3 .15 0'>
              <Shape USE='Beam'/>
            </Transform>
            <Transform DEF='crossMember4' translation='4 0.2 0'>
              <Shape USE='Beam'/>
            </Transform>
          </Transform>
        </Transform>
        <Transform DEF='BridgeHalf2'>
          <Transform rotation='0 1 0 3.14' translation='15 1.25 -3.65'>
            <Transform rotation='0 0 1 -0.065'>
              <Transform USE='BridgeHalf'/>
            </Transform>
          </Transform>
        </Transform>
        <Group DEF='ExtendBridgeRoutes'>
          <ROUTE fromField='value_changed' fromNode='BridgePathBottomPositions' toField='set_translation' toNode='BridgeHalf'/>
          <ROUTE fromField='value_changed' fromNode='BridgePathTopPositions' toField='set_translation' toNode='BridgeHalf2'/>
          <ROUTE fromField='value_changed' fromNode='TopTilt' toField='set_rotation' toNode='BridgeHalf2'/>
          <ROUTE fromField='value_changed' fromNode='ExtendFrontHydraulic' toField='set_translation' toNode='LittleFrontHydro'/>
          <ROUTE fromField='value_changed' fromNode='BackHydCylinder' toField='set_translation' toNode='BackHydroCylinder'/>
          <ROUTE fromField='value_changed' fromNode='BackHydCylTilt' toField='set_rotation' toNode='BackHydraulic'/>
          <ROUTE fromField='touchTime' fromNode='unfold' toField='set_startTime' toNode='BridgeSound'/>
        </Group>
      </Transform>
      <!-- MovementRoutes -->
      <Group DEF='LayBridgeRoutes'>
        <ROUTE fromField='value_changed' fromNode='BridgeOnGround' toField='set_translation' toNode='HABstack'/>
        <ROUTE fromField='touchTime' fromNode='unfold' toField='startTime' toNode='ExtendHABClock'/>
        <ROUTE fromField='value_changed' fromNode='TiltBridgeToGround' toField='set_rotation' toNode='HABstack'/>
        <ROUTE fromField='touchTime' fromNode='LayOnGroundSensor' toField='startTime' toNode='lauchTimer'/>
        <ROUTE fromField='value_changed' fromNode='TiltFrontArm' toField='set_rotation' toNode='FrontArm'/>
      </Group>
      <Group DEF='CrossBridgeRoutes'>
        <ROUTE fromField='value_changed' fromNode='MoveTankAcrossBridge' toField='set_translation' toNode='M1ChassisPlus'/>
        <ROUTE fromField='value_changed' fromNode='TiltTankAcrossBridge' toField='set_rotation' toNode='M1ChassisPlus'/>
        <ROUTE fromField='touchTime' fromNode='MoveTankSensor' toField='startTime' toNode='MoveTankTimer'/>
        <ROUTE fromField='touchTime' fromNode='MoveTankSensor' toField='set_startTime' toNode='TankSound'/>
      </Group>
    </Group>
  </Scene>
</X3D>