<?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='TwentyFiveMm.x3d' name='title'/>
    <meta content='A 25mm machine gun used on US Navy ships' name='description'/>
    <meta content='LT Patrick Sullivan' name='creator'/>
    <meta content='14 January 2005' name='created'/>
    <meta content='28 November 2019' name='modified'/>
    <meta content='TwentyFiveMm.vzx' name='reference'/>
    <meta content='https://www.web3d.org/x3d/content/examples/Savage/Weapons/CrewServedWeapons/TwentyFiveMm.x3d' name='identifier'/>
    <meta content='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit' name='generator'/>
    <meta content='VizX3D, http://www.vivaty.com/downloads/studio' name='generator'/>
    <meta content='Wings3D, http://www.wings3d.com' name='generator'/>
    <meta content='../../license.html' name='license'/>
  </head>
  <Scene>
    <WorldInfo title='TwentyFiveMm.x3d'/>
    <Transform scale='.44 .44 .44'>
      <Group DEF='twentyFiveMMGun'>
        <!-- Deck base of 25mm gun -->
        <Group DEF='base'>
          <Transform DEF='basePlate'>
            <Shape>
              <Box size='2 .04 2'/>
              <Appearance DEF='grey'>
                <Material diffuseColor='.6 .6 .6'/>
              </Appearance>
            </Shape>
          </Transform>
          <Transform rotation='0 1 0 .785' translation='0 .1 0'>
            <Shape DEF='baseBracket'>
              <Box size='1.9 .2 .04'/>
              <Appearance USE='grey'/>
            </Shape>
          </Transform>
          <Transform rotation='0 1 0 -.785' translation='0 .1 0'>
            <Shape USE='baseBracket'/>
          </Transform>
          <Transform translation='0 .1 0'>
            <Shape>
              <Cylinder bottom='false' height='.2' radius='.5' top='false'/>
              <Appearance USE='grey'/>
            </Shape>
          </Transform>
          <Transform translation='0 .2 0'>
            <Shape>
              <Cylinder height='.04' radius='.96'/>
              <Appearance USE='grey'/>
            </Shape>
          </Transform>
        </Group>
        <Group DEF='mainAssembly'>
          <Group DEF='rightAssembly'>
            <Transform translation='0 .23 0'>
              <Shape>
                <Cylinder height='.04' radius='.9'/>
                <Appearance DEF='lightGrey'>
                  <Material ambientIntensity='.5' diffuseColor='.8 .8 .8' shininess='.001'/>
                </Appearance>
              </Shape>
            </Transform>
            <Transform translation='0 1 0'>
              <Shape>
                <Cone bottomRadius='.5'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <!-- Bolts to be used for detail -->
            <Transform translation='.7 .25 0'>
              <Group DEF='bolt'>
                <Transform/>
                <Shape>
                  <Appearance USE='lightGrey'/>
                  <Cylinder height='.1' radius='.03'/>
                </Shape>
                <Transform translation='0 .07 0'>
                  <Shape>
                    <Box size='.03 .03 .03'/>
                    <Appearance USE='lightGrey'/>
                  </Shape>
                </Transform>
              </Group>
            </Transform>
            <Transform translation='-.7 .25 0'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='0 .25 .7'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='0 .25 -.7'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='.5 .25 .5'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='-.5 .25 -.5'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='-.5 .25 .5'>
              <Group USE='bolt'/>
            </Transform>
            <Transform translation='.5 .25 -.5'>
              <Group USE='bolt'/>
            </Transform>
            <!-- Four Support Braces -->
            <Transform translation='.2 1 0'>
              <Group DEF='supportBrace'>
                <Shape>
                  <Box size='.2 .4 .04'/>
                  <Appearance USE='lightGrey'/>
                </Shape>
              </Group>
            </Transform>
            <Transform translation='-.2 1 0'>
              <Group USE='supportBrace'/>
            </Transform>
            <Transform rotation='0 1 0 1.57' translation='0 1 .2'>
              <Group USE='supportBrace'/>
            </Transform>
            <Transform rotation='0 1 0 1.57' translation='0 1 -.2'>
              <Group USE='supportBrace'/>
            </Transform>
          </Group>
          <!-- Left Assembly -->
          <Transform translation='-.3 1.3 .3'>
            <Group DEF='leftAssembly'>
              <Shape>
                <Box size='1.3 .5 1.3'/>
                <Appearance USE='lightGrey'/>
              </Shape>
              <Transform translation='.25 .3 .2'>
                <Shape>
                  <Box size='.8 1 .9'/>
                  <Appearance USE='lightGrey'/>
                </Shape>
              </Transform>
              <Transform translation='-.35 .5 .2'>
                <Shape>
                  <Box size='.6 1.2 .9'/>
                  <Appearance USE='lightGrey'/>
                </Shape>
              </Transform>
              <Transform translation='-.35 .5 .6'>
                <Shape>
                  <Box size='.45 1 .2'/>
                  <Appearance USE='lightGrey'/>
                </Shape>
                <Transform rotation='1 0 0 1.57' translation='-.15 .38 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='0 .42 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='0 -.42 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='-.15 -.38 .08'>
                  <Group USE='bolt'/>
                </Transform>
              </Transform>
              <Transform translation='.25 .3 .6'>
                <Shape>
                  <Box size='.6 .8 .2'/>
                  <Appearance USE='lightGrey'/>
                </Shape>
                <Transform rotation='1 0 0 1.57' translation='-.2 .23 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='-.2 -.23 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='-.05 .27 .08'>
                  <Group USE='bolt'/>
                </Transform>
                <Transform rotation='1 0 0 1.57' translation='-.05 -.27 .08'>
                  <Group USE='bolt'/>
                </Transform>
              </Transform>
            </Group>
          </Transform>
          <Transform translation='-.3 1 -.5'>
            <Shape>
              <Box size='1.3 1.1 .5'/>
              <Appearance USE='lightGrey'/>
            </Shape>
          </Transform>
          <Transform translation='.15 1 -.75'>
            <Shape DEF='ammoSupport'>
              <Cylinder height='1.1' radius='.03'/>
              <Appearance USE='lightGrey'/>
            </Shape>
          </Transform>
          <Transform translation='-.75 1 -.75'>
            <Shape USE='ammoSupport'/>
          </Transform>
          <Transform translation='-.3 1 -.75'>
            <Shape USE='ammoSupport'/>
          </Transform>
          <Transform rotation='1 0 0 1.57' translation='.2 1.6 -.4'>
            <Shape>
              <Cylinder height='1' radius='.25'/>
              <Appearance USE='lightGrey'/>
            </Shape>
          </Transform>
          <Transform rotation='1 0 0 1.57' translation='.2 1.6 -.85'>
            <Shape>
              <Cylinder bottom='false' height='.2' radius='.18' top='false'/>
              <Appearance USE='lightGrey'/>
            </Shape>
          </Transform>
        </Group>
        <Transform DEF='gun' translation='1 -.6 -.3'>
          <Group DEF='gunAssembly'>
            <Transform rotation='0 0 1 -1.57' translation='0 3 0'>
              <Shape>
                <Cone bottomRadius='.09' height='1.5'/>
                <Appearance DEF='steel'>
                  <Material diffuseColor='.3 .3 .3'/>
                </Appearance>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='.8 3 0'>
              <Shape>
                <Cylinder radius='.04'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='1.8 3 0'>
              <Shape>
                <Cylinder height='.03' radius='.045'/>
                <Appearance USE='grey'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='1.8 3 0'>
              <Shape>
                <Cone bottomRadius='.05' height='.5'/>
                <Appearance USE='grey'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='-1.1 3 0'>
              <Shape>
                <Cylinder height='.8' radius='.1'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='-1.1 3.1 -.08'>
              <Shape>
                <Cylinder height='.6' radius='.05'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='-.2 3 0'>
              <Shape DEF='barrelCover'>
                <Cylinder height='.08' radius='.3'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='-1.4 3 0'>
              <Shape USE='barrelCover'/>
            </Transform>
            <Transform translation='-.8 3.275 0'>
              <Shape DEF='barrelPlate'>
                <Box size='1.2 .04 .11'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <Transform translation='-.8 2.745 0'>
              <Shape USE='barrelPlate'/>
            </Transform>
            <Transform rotation='1 0 0 .994' translation='-.8 3.13 .24'>
              <Shape USE='barrelPlate'/>
            </Transform>
            <Transform rotation='1 0 0 -.994' translation='-.8 3.13 -.24'>
              <Shape USE='barrelPlate'/>
            </Transform>
            <Transform rotation='1 0 0 2.2' translation='-.8 2.828 .22'>
              <Shape USE='barrelPlate'/>
            </Transform>
            <Transform rotation='1 0 0 -2.2' translation='-.8 2.828 -.22'>
              <Shape USE='barrelPlate'/>
            </Transform>
            <!-- Trigger Assembly -->
            <Transform rotation='0 0 1 1.57' translation='-1.45 3 0'>
              <Shape DEF='triggerCover'>
                <Cylinder height='.05' radius='.4'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <Transform rotation='0 0 1 1.57' translation='-1.7 3 0'>
              <Shape>
                <Cylinder height='.7' radius='.2'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform translation='-2.2 2.58 -.4'>
              <Shape>
                <Extrusion crossSection='0 0 0 .8 .2 .7 .2 .1 0 0' spine='0 0 0 0 .05 0'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <Transform rotation='1 0 0 3.14' translation='-1.8 2.6 .3'>
              <Shape>
                <Extrusion crossSection='0 0 0 .7 1 .7 1 0 0 0' scale='.5 1 1 1' spine='0 0 0 0 .5 0'/>
                <Appearance USE='lightGrey'/>
              </Shape>
            </Transform>
            <Transform translation='-1.6 2.8 0'>
              <Shape>
                <Cone bottomRadius='.2' height='.5'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform translation='-2 3 0'>
              <Shape>
                <Box size='.1 .8 .4'/>
                <Appearance USE='steel'/>
              </Shape>
            </Transform>
            <Transform rotation='0 1 0 -.292' translation='-2.1 3.2 -.15'>
              <Group DEF='shoulderBrace'>
                <Transform rotation='0 0 1 1.57' translation='-.12 0 0'>
                  <Shape>
                    <Cylinder height='.5' radius='.05'/>
                    <Appearance USE='lightGrey'/>
                  </Shape>
                </Transform>
                <Transform rotation='0 0 1 1.57' translation='-.22 0 0'>
                  <Shape>
                    <Cylinder height='.2' radius='.04'/>
                    <Appearance DEF='black'>
                      <Material diffuseColor='0.1 0.1 0.1'/>
                    </Appearance>
                  </Shape>
                </Transform>
                <Transform scale='1 4 4' translation='-.18 0 0'>
                  <Shape DEF='spring'>
                    <Sphere radius='.02'/>
                    <Appearance USE='black'/>
                  </Shape>
                </Transform>
                <Transform scale='1 4 4' translation='-.16 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.20 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.22 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.24 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.26 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.28 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.3 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform scale='1 4 4' translation='-.32 0 0'>
                  <Shape USE='spring'/>
                </Transform>
                <Transform rotation='0 0 1 1.57' scale='.12 .12 .12' translation='-.65 0 0'>
                  <Transform rotation='1 0 0 1.57'>
                    <Shape DEF='brace'>
                      <Extrusion convex='false' creaseAngle='3.14' 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.00' scale='.5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5' 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'/>
                      <Appearance USE='lightGrey'/>
                    </Shape>
                  </Transform>
                </Transform>
              </Group>
            </Transform>
            <Transform rotation='0 1 0 .292' translation='-2.1 3.2 .15'>
              <Group USE='shoulderBrace'/>
            </Transform>
            <Transform scale='.85 .85 .85' translation='-4.5 1.82 .25'>
              <Group DEF='handle'>
                <Transform rotation='0 0 1 1.57' scale='3 1 1' translation='2.8 1.148 0'>
                  <!-- Handle Sphere -->
                  <Shape>
                    <Sphere radius='.06'/>
                    <Appearance USE='black'/>
                  </Shape>
                </Transform>
                <Transform translation='2.8 1.0 0'>
                  <Shape DEF='handleMount'>
                    <Cone bottomRadius='.1' height='.08'/>
                    <Appearance USE='lightGrey'/>
                  </Shape>
                </Transform>
                <Transform rotation='0 0 1 3.14' translation='2.8 1.3 0'>
                  <Shape USE='handleMount'/>
                </Transform>
              </Group>
            </Transform>
            <Transform scale='.85 .85 .85' translation='-4.5 1.82 -.25'>
              <Group USE='handle'/>
            </Transform>
          </Group>
        </Transform>
      </Group>
    </Transform>
  </Scene>
</X3D>