X3D Model Documentation: TwentyFiveMm.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='TwentyFiveMm.x3d'/>
  6            <meta name='descriptioncontent='A 25mm machine gun used on US Navy ships'/>
  7            <meta name='creatorcontent='LT Patrick Sullivan'/>
  8            <meta name='createdcontent='14 January 2005'/>
  9            <meta name='modifiedcontent='28 November 2019'/>
 10            <meta name='referencecontent='TwentyFiveMm.vzx'/>
 11            <meta name='identifiercontent='https://savage.nps.edu/Savage/Weapons/CrewServedWeapons/TwentyFiveMm.x3d'/>
 12            <meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
 13            <meta name='generatorcontent='FluxStudio, http://www.vivaty.com/downloads/studio'/>
 14            <meta name='generatorcontent='Wings3D, http://www.wings3d.com'/>
 15            <meta name='licensecontent='../../license.html'/>
 16       </head>
<!--

<!-- -->
<!-- to top Index for DEF nodes: ammoSupport, barrelCover, barrelPlate, base, baseBracket, basePlate, black, bolt, brace, grey, gun, gunAssembly, handle, handleMount, leftAssembly, lightGrey, mainAssembly, rightAssembly, shoulderBrace, spring, steel, supportBrace, triggerCover, twentyFiveMMGun
-->
 17       <Scene>
 18            <WorldInfo title='TwentyFiveMm.x3d'/>
 19            <Transform scale='.44 .44 .44'>
 20                 <Group DEF='twentyFiveMMGun'>
 21                      <!-- Deck base of 25mm gun -->
 22                      <Group DEF='base'>
 23                           <Transform DEF='basePlate'>
 24                                <Shape>
 25                                     <Box size='2 .04 2'/>
 26 
                                   <!-- Appearance grey is a DEF node that has 5 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5 -->
                                   <Appearance DEF='grey'>
 27                                          <Material diffuseColor='.6 .6 .6'/>
 28                                     </Appearance>
 29                                </Shape>
 30                           </Transform>
 31                           <Transform rotation='0 1 0 .785translation='0 .1 0'>
 32 
                              <!-- Shape baseBracket is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='baseBracket'>
 33                                     <Box size='1.9 .2 .04'/>
 34                                     <Appearance USE='grey'/>
 35                                </Shape>
 36                           </Transform>
 37                           <Transform rotation='0 1 0 -.785translation='0 .1 0'>
 38                                <Shape USE='baseBracket'/>
 39                           </Transform>
 40                           <Transform translation='0 .1 0'>
 41                                <Shape>
 42                                     <Cylinder bottom='falseheight='.2radius='.5top='false'/>
 43                                     <Appearance USE='grey'/>
 44                                </Shape>
 45                           </Transform>
 46                           <Transform translation='0 .2 0'>
 47                                <Shape>
 48                                     <Cylinder height='.04radius='.96'/>
 49                                     <Appearance USE='grey'/>
 50                                </Shape>
 51                           </Transform>
 52                      </Group>
 53                      <Group DEF='mainAssembly'>
 54                           <Group DEF='rightAssembly'>
 55                                <Transform translation='0 .23 0'>
 56                                     <Shape>
 57                                          <Cylinder height='.04radius='.9'/>
 58 
                                        <!-- Appearance lightGrey is a DEF node that has 21 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 -->
                                        <Appearance DEF='lightGrey'>
 59                                               <Material ambientIntensity='.5diffuseColor='.8 .8 .8shininess='.001'/>
 60                                          </Appearance>
 61                                     </Shape>
 62                                </Transform>
 63                                <Transform translation='0 1 0'>
 64                                     <Shape>
 65                                          <Cone bottomRadius='.5'/>
 66                                          <Appearance USE='lightGrey'/>
 67                                     </Shape>
 68                                </Transform>
 69                                <!-- Bolts to be used for detail -->
 70                                <Transform translation='.7 .25 0'>
 71 
                                   <!-- Group bolt 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='bolt'>
 72                                          <Transform/>
 73                                          <Shape>
 74                                               <Appearance USE='lightGrey'/>
 75                                               <Cylinder height='.1radius='.03'/>
 76                                          </Shape>
 77                                          <Transform translation='0 .07 0'>
 78                                               <Shape>
 79                                                    <Box size='.03 .03 .03'/>
 80                                                    <Appearance USE='lightGrey'/>
 81                                               </Shape>
 82                                          </Transform>
 83                                     </Group>
 84                                </Transform>
 85                                <Transform translation='-.7 .25 0'>
 86                                     <Group USE='bolt'/>
 87                                </Transform>
 88                                <Transform translation='0 .25 .7'>
 89                                     <Group USE='bolt'/>
 90                                </Transform>
 91                                <Transform translation='0 .25 -.7'>
 92                                     <Group USE='bolt'/>
 93                                </Transform>
 94                                <Transform translation='.5 .25 .5'>
 95                                     <Group USE='bolt'/>
 96                                </Transform>
 97                                <Transform translation='-.5 .25 -.5'>
 98                                     <Group USE='bolt'/>
 99                                </Transform>
100                                <Transform translation='-.5 .25 .5'>
101                                     <Group USE='bolt'/>
102                                </Transform>
103                                <Transform translation='.5 .25 -.5'>
104                                     <Group USE='bolt'/>
105                                </Transform>
106                                <!-- Four Support Braces -->
107                                <Transform translation='.2 1 0'>
108 
                                   <!-- Group supportBrace is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                   <Group DEF='supportBrace'>
109                                          <Shape>
110                                               <Box size='.2 .4 .04'/>
111                                               <Appearance USE='lightGrey'/>
112                                          </Shape>
113                                     </Group>
114                                </Transform>
115                                <Transform translation='-.2 1 0'>
116                                     <Group USE='supportBrace'/>
117                                </Transform>
118                                <Transform rotation='0 1 0 1.57translation='0 1 .2'>
119                                     <Group USE='supportBrace'/>
120                                </Transform>
121                                <Transform rotation='0 1 0 1.57translation='0 1 -.2'>
122                                     <Group USE='supportBrace'/>
123                                </Transform>
124                           </Group>
125                           <!-- Left Assembly -->
126                           <Transform translation='-.3 1.3 .3'>
127                                <Group DEF='leftAssembly'>
128                                     <Shape>
129                                          <Box size='1.3 .5 1.3'/>
130                                          <Appearance USE='lightGrey'/>
131                                     </Shape>
132                                     <Transform translation='.25 .3 .2'>
133                                          <Shape>
134                                               <Box size='.8 1 .9'/>
135                                               <Appearance USE='lightGrey'/>
136                                          </Shape>
137                                     </Transform>
138                                     <Transform translation='-.35 .5 .2'>
139                                          <Shape>
140                                               <Box size='.6 1.2 .9'/>
141                                               <Appearance USE='lightGrey'/>
142                                          </Shape>
143                                     </Transform>
144                                     <Transform translation='-.35 .5 .6'>
145                                          <Shape>
146                                               <Box size='.45 1 .2'/>
147                                               <Appearance USE='lightGrey'/>
148                                          </Shape>
149                                          <Transform rotation='1 0 0 1.57translation='-.15 .38 .08'>
150                                               <Group USE='bolt'/>
151                                          </Transform>
152                                          <Transform rotation='1 0 0 1.57translation='0 .42 .08'>
153                                               <Group USE='bolt'/>
154                                          </Transform>
155                                          <Transform rotation='1 0 0 1.57translation='0 -.42 .08'>
156                                               <Group USE='bolt'/>
157                                          </Transform>
158                                          <Transform rotation='1 0 0 1.57translation='-.15 -.38 .08'>
159                                               <Group USE='bolt'/>
160                                          </Transform>
161                                     </Transform>
162                                     <Transform translation='.25 .3 .6'>
163                                          <Shape>
164                                               <Box size='.6 .8 .2'/>
165                                               <Appearance USE='lightGrey'/>
166                                          </Shape>
167                                          <Transform rotation='1 0 0 1.57translation='-.2 .23 .08'>
168                                               <Group USE='bolt'/>
169                                          </Transform>
170                                          <Transform rotation='1 0 0 1.57translation='-.2 -.23 .08'>
171                                               <Group USE='bolt'/>
172                                          </Transform>
173                                          <Transform rotation='1 0 0 1.57translation='-.05 .27 .08'>
174                                               <Group USE='bolt'/>
175                                          </Transform>
176                                          <Transform rotation='1 0 0 1.57translation='-.05 -.27 .08'>
177                                               <Group USE='bolt'/>
178                                          </Transform>
179                                     </Transform>
180                                </Group>
181                           </Transform>
182                           <Transform translation='-.3 1 -.5'>
183                                <Shape>
184                                     <Box size='1.3 1.1 .5'/>
185                                     <Appearance USE='lightGrey'/>
186                                </Shape>
187                           </Transform>
188                           <Transform translation='.15 1 -.75'>
189 
                              <!-- Shape ammoSupport is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                              <Shape DEF='ammoSupport'>
190                                     <Cylinder height='1.1radius='.03'/>
191                                     <Appearance USE='lightGrey'/>
192                                </Shape>
193                           </Transform>
194                           <Transform translation='-.75 1 -.75'>
195                                <Shape USE='ammoSupport'/>
196                           </Transform>
197                           <Transform translation='-.3 1 -.75'>
198                                <Shape USE='ammoSupport'/>
199                           </Transform>
200                           <Transform rotation='1 0 0 1.57translation='.2 1.6 -.4'>
201                                <Shape>
202                                     <Cylinder height='1radius='.25'/>
203                                     <Appearance USE='lightGrey'/>
204                                </Shape>
205                           </Transform>
206                           <Transform rotation='1 0 0 1.57translation='.2 1.6 -.85'>
207                                <Shape>
208                                     <Cylinder bottom='falseheight='.2radius='.18top='false'/>
209                                     <Appearance USE='lightGrey'/>
210                                </Shape>
211                           </Transform>
212                      </Group>
213                      <Transform DEF='guntranslation='1 -.6 -.3'>
214                           <Group DEF='gunAssembly'>
215                                <Transform rotation='0 0 1 -1.57translation='0 3 0'>
216                                     <Shape>
217                                          <Cone bottomRadius='.09height='1.5'/>
218 
                                        <!-- Appearance steel is a DEF node that has 6 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6 -->
                                        <Appearance DEF='steel'>
219                                               <Material diffuseColor='.3 .3 .3'/>
220                                          </Appearance>
221                                     </Shape>
222                                </Transform>
223                                <Transform rotation='0 0 1 1.57translation='.8 3 0'>
224                                     <Shape>
225                                          <Cylinder radius='.04'/>
226                                          <Appearance USE='steel'/>
227                                     </Shape>
228                                </Transform>
229                                <Transform rotation='0 0 1 1.57translation='1.8 3 0'>
230                                     <Shape>
231                                          <Cylinder height='.03radius='.045'/>
232                                          <Appearance USE='grey'/>
233                                     </Shape>
234                                </Transform>
235                                <Transform rotation='0 0 1 1.57translation='1.8 3 0'>
236                                     <Shape>
237                                          <Cone bottomRadius='.05height='.5'/>
238                                          <Appearance USE='grey'/>
239                                     </Shape>
240                                </Transform>
241                                <Transform rotation='0 0 1 1.57translation='-1.1 3 0'>
242                                     <Shape>
243                                          <Cylinder height='.8radius='.1'/>
244                                          <Appearance USE='steel'/>
245                                     </Shape>
246                                </Transform>
247                                <Transform rotation='0 0 1 1.57translation='-1.1 3.1 -.08'>
248                                     <Shape>
249                                          <Cylinder height='.6radius='.05'/>
250                                          <Appearance USE='steel'/>
251                                     </Shape>
252                                </Transform>
253                                <Transform rotation='0 0 1 1.57translation='-.2 3 0'>
254 
                                   <!-- Shape barrelCover is a DEF node that has 1 USE node: USE_1 -->
                                   <Shape DEF='barrelCover'>
255                                          <Cylinder height='.08radius='.3'/>
256                                          <Appearance USE='lightGrey'/>
257                                     </Shape>
258                                </Transform>
259                                <Transform rotation='0 0 1 1.57translation='-1.4 3 0'>
260                                     <Shape USE='barrelCover'/>
261                                </Transform>
262                                <Transform translation='-.8 3.275 0'>
263 
                                   <!-- Shape barrelPlate is a DEF node that has 5 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5 -->
                                   <Shape DEF='barrelPlate'>
264                                          <Box size='1.2 .04 .11'/>
265                                          <Appearance USE='lightGrey'/>
266                                     </Shape>
267                                </Transform>
268                                <Transform translation='-.8 2.745 0'>
269                                     <Shape USE='barrelPlate'/>
270                                </Transform>
271                                <Transform rotation='1 0 0 .994translation='-.8 3.13 .24'>
272                                     <Shape USE='barrelPlate'/>
273                                </Transform>
274                                <Transform rotation='1 0 0 -.994translation='-.8 3.13 -.24'>
275                                     <Shape USE='barrelPlate'/>
276                                </Transform>
277                                <Transform rotation='1 0 0 2.2translation='-.8 2.828 .22'>
278                                     <Shape USE='barrelPlate'/>
279                                </Transform>
280                                <Transform rotation='1 0 0 -2.2translation='-.8 2.828 -.22'>
281                                     <Shape USE='barrelPlate'/>
282                                </Transform>
283                                <!-- Trigger Assembly -->
284                                <Transform rotation='0 0 1 1.57translation='-1.45 3 0'>
285                                     <Shape DEF='triggerCover'>
286                                          <Cylinder height='.05radius='.4'/>
287                                          <Appearance USE='lightGrey'/>
288                                     </Shape>
289                                </Transform>
290                                <Transform rotation='0 0 1 1.57translation='-1.7 3 0'>
291                                     <Shape>
292                                          <Cylinder height='.7radius='.2'/>
293                                          <Appearance USE='steel'/>
294                                     </Shape>
295                                </Transform>
296                                <Transform translation='-2.2 2.58 -.4'>
297                                     <Shape>
298                                          <Extrusion crossSection='0 0 0 .8 .2 .7 .2 .1 0 0spine='0 0 0 0 .05 0'/>
299                                          <Appearance USE='lightGrey'/>
300                                     </Shape>
301                                </Transform>
302                                <Transform rotation='1 0 0 3.14translation='-1.8 2.6 .3'>
303                                     <Shape>
304                                          <Extrusion crossSection='0 0 0 .7 1 .7 1 0 0 0scale='.5 1 1 1spine='0 0 0 0 .5 0'/>
305                                          <Appearance USE='lightGrey'/>
306                                     </Shape>
307                                </Transform>
308                                <Transform translation='-1.6 2.8 0'>
309                                     <Shape>
310                                          <Cone bottomRadius='.2height='.5'/>
311                                          <Appearance USE='steel'/>
312                                     </Shape>
313                                </Transform>
314                                <Transform translation='-2 3 0'>
315                                     <Shape>
316                                          <Box size='.1 .8 .4'/>
317                                          <Appearance USE='steel'/>
318                                     </Shape>
319                                </Transform>
320                                <Transform rotation='0 1 0 -.292translation='-2.1 3.2 -.15'>
321 
                                   <!-- Group shoulderBrace is a DEF node that has 1 USE node: USE_1 -->
                                   <Group DEF='shoulderBrace'>
322                                          <Transform rotation='0 0 1 1.57translation='-.12 0 0'>
323                                               <Shape>
324                                                    <Cylinder height='.5radius='.05'/>
325                                                    <Appearance USE='lightGrey'/>
326                                               </Shape>
327                                          </Transform>
328                                          <Transform rotation='0 0 1 1.57translation='-.22 0 0'>
329                                               <Shape>
330                                                    <Cylinder height='.2radius='.04'/>
331 
                                                  <!-- Appearance black is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                                  <Appearance DEF='black'>
332                                                         <Material diffuseColor='0.1 0.1 0.1'/>
333                                                    </Appearance>
334                                               </Shape>
335                                          </Transform>
336                                          <Transform scale='1 4 4translation='-.18 0 0'>
337 
                                             <!-- Shape spring is a DEF node that has 8 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8 -->
                                             <Shape DEF='spring'>
338                                                    <Sphere radius='.02'/>
339                                                    <Appearance USE='black'/>
340                                               </Shape>
341                                          </Transform>
342                                          <Transform scale='1 4 4translation='-.16 0 0'>
343                                               <Shape USE='spring'/>
344                                          </Transform>
345                                          <Transform scale='1 4 4translation='-.20 0 0'>
346                                               <Shape USE='spring'/>
347                                          </Transform>
348                                          <Transform scale='1 4 4translation='-.22 0 0'>
349                                               <Shape USE='spring'/>
350                                          </Transform>
351                                          <Transform scale='1 4 4translation='-.24 0 0'>
352                                               <Shape USE='spring'/>
353                                          </Transform>
354                                          <Transform scale='1 4 4translation='-.26 0 0'>
355                                               <Shape USE='spring'/>
356                                          </Transform>
357                                          <Transform scale='1 4 4translation='-.28 0 0'>
358                                               <Shape USE='spring'/>
359                                          </Transform>
360                                          <Transform scale='1 4 4translation='-.3 0 0'>
361                                               <Shape USE='spring'/>
362                                          </Transform>
363                                          <Transform scale='1 4 4translation='-.32 0 0'>
364                                               <Shape USE='spring'/>
365                                          </Transform>
366                                          <Transform rotation='0 0 1 1.57scale='.12 .12 .12translation='-.65 0 0'>
367                                               <Transform rotation='1 0 0 1.57'>
368                                                    <Shape DEF='brace'>
369                                                         <Extrusion convex='falsecreaseAngle='3.14crossSection='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.00scale='.5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5 .5spine='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'/>
370                                                         <Appearance USE='lightGrey'/>
371                                                    </Shape>
372                                               </Transform>
373                                          </Transform>
374                                     </Group>
375                                </Transform>
376                                <Transform rotation='0 1 0 .292translation='-2.1 3.2 .15'>
377                                     <Group USE='shoulderBrace'/>
378                                </Transform>
379                                <Transform scale='.85 .85 .85translation='-4.5 1.82 .25'>
380 
                                   <!-- Group handle is a DEF node that has 1 USE node: USE_1 -->
                                   <Group DEF='handle'>
381                                          <Transform rotation='0 0 1 1.57scale='3 1 1translation='2.8 1.148 0'>
382                                               <!-- Handle Sphere -->
383                                               <Shape>
384                                                    <Sphere radius='.06'/>
385                                                    <Appearance USE='black'/>
386                                               </Shape>
387                                          </Transform>
388                                          <Transform translation='2.8 1.0 0'>
389 
                                             <!-- Shape handleMount is a DEF node that has 1 USE node: USE_1 -->
                                             <Shape DEF='handleMount'>
390                                                    <Cone bottomRadius='.1height='.08'/>
391                                                    <Appearance USE='lightGrey'/>
392                                               </Shape>
393                                          </Transform>
394                                          <Transform rotation='0 0 1 3.14translation='2.8 1.3 0'>
395                                               <Shape USE='handleMount'/>
396                                          </Transform>
397                                     </Group>
398                                </Transform>
399                                <Transform scale='.85 .85 .85translation='-4.5 1.82 -.25'>
400                                     <Group USE='handle'/>
401                                </Transform>
402                           </Group>
403                      </Transform>
404                 </Group>
405            </Transform>
406       </Scene>
407  </X3D>
<!--

<!-- -->
<!-- to top Index for DEF nodes: ammoSupport, barrelCover, barrelPlate, base, baseBracket, basePlate, black, bolt, brace, grey, gun, gunAssembly, handle, handleMount, leftAssembly, lightGrey, mainAssembly, rightAssembly, shoulderBrace, spring, steel, supportBrace, triggerCover, twentyFiveMMGun
-->
X3D Tooltips element index: Appearance, Box, Cone, Cylinder, Extrusion, Group, head, Material, meta, Scene, Shape, Sphere, Transform, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

-->
<!-- Online at
https://savage.nps.edu/Savage/Weapons/CrewServedWeapons/TwentyFiveMmIndex.html -->
<!-- Version control at
https://gitlab.nps.edu/Savage/Savage/Weapons/CrewServedWeapons/TwentyFiveMm.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. -->