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='title' content='TwentyFiveMm.x3d'/> |
6 | <meta name='description' content='A 25mm machine gun used on US Navy ships'/> |
7 | <meta name='creator' content='LT Patrick Sullivan'/> |
8 | <meta name='created' content='14 January 2005'/> |
9 | <meta name='modified' content='28 November 2019'/> |
10 | <meta name='reference' content='TwentyFiveMm.vzx'/> |
11 | <meta name='identifier' content='https://savage.nps.edu/Savage/Weapons/CrewServedWeapons/TwentyFiveMm.x3d'/> |
12 | <meta name='generator' content='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/> |
13 | <meta name='generator' content='FluxStudio, http://www.vivaty.com/downloads/studio'/> |
14 | <meta name='generator' content='Wings3D, http://www.wings3d.com'/> |
15 | <meta name='license' content='../../license.html'/> |
16 | </head> |
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 | |
27 | <Material diffuseColor='.6 .6 .6'/> |
28 | </Appearance> |
29 | </Shape> |
30 | </Transform> |
31 | <Transform rotation='0 1 0 .785' translation='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 -.785' translation='0 .1 0'> |
38 | <Shape USE='baseBracket'/> |
39 | </Transform> |
40 | <Transform translation='0 .1 0'> |
41 | <Shape> |
42 | <Cylinder bottom='false' height='.2' radius='.5' top='false'/> |
43 | <Appearance USE='grey'/> |
44 | </Shape> |
45 | </Transform> |
46 | <Transform translation='0 .2 0'> |
47 | <Shape> |
48 | <Cylinder height='.04' radius='.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='.04' radius='.9'/> |
58 | |
59 | <Material ambientIntensity='.5' diffuseColor='.8 .8 .8' shininess='.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 | |
72 | <Transform/> |
73 | <Shape> |
74 | <Appearance USE='lightGrey'/> |
75 | <Cylinder height='.1' radius='.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.57' translation='0 1 .2'> |
119 | <Group USE='supportBrace'/> |
120 | </Transform> |
121 | <Transform rotation='0 1 0 1.57' translation='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.57' translation='-.15 .38 .08'> |
150 | <Group USE='bolt'/> |
151 | </Transform> |
152 | <Transform rotation='1 0 0 1.57' translation='0 .42 .08'> |
153 | <Group USE='bolt'/> |
154 | </Transform> |
155 | <Transform rotation='1 0 0 1.57' translation='0 -.42 .08'> |
156 | <Group USE='bolt'/> |
157 | </Transform> |
158 | <Transform rotation='1 0 0 1.57' translation='-.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.57' translation='-.2 .23 .08'> |
168 | <Group USE='bolt'/> |
169 | </Transform> |
170 | <Transform rotation='1 0 0 1.57' translation='-.2 -.23 .08'> |
171 | <Group USE='bolt'/> |
172 | </Transform> |
173 | <Transform rotation='1 0 0 1.57' translation='-.05 .27 .08'> |
174 | <Group USE='bolt'/> |
175 | </Transform> |
176 | <Transform rotation='1 0 0 1.57' translation='-.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.1' radius='.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.57' translation='.2 1.6 -.4'> |
201 | <Shape> |
202 | <Cylinder height='1' radius='.25'/> |
203 | <Appearance USE='lightGrey'/> |
204 | </Shape> |
205 | </Transform> |
206 | <Transform rotation='1 0 0 1.57' translation='.2 1.6 -.85'> |
207 | <Shape> |
208 | <Cylinder bottom='false' height='.2' radius='.18' top='false'/> |
209 | <Appearance USE='lightGrey'/> |
210 | </Shape> |
211 | </Transform> |
212 | </Group> |
213 | <Transform DEF='gun' translation='1 -.6 -.3'> |
214 | <Group DEF='gunAssembly'> |
215 | <Transform rotation='0 0 1 -1.57' translation='0 3 0'> |
216 | <Shape> |
217 | <Cone bottomRadius='.09' height='1.5'/> |
218 | |
219 | <Material diffuseColor='.3 .3 .3'/> |
220 | </Appearance> |
221 | </Shape> |
222 | </Transform> |
223 | <Transform rotation='0 0 1 1.57' translation='.8 3 0'> |
224 | <Shape> |
225 | <Cylinder radius='.04'/> |
226 | <Appearance USE='steel'/> |
227 | </Shape> |
228 | </Transform> |
229 | <Transform rotation='0 0 1 1.57' translation='1.8 3 0'> |
230 | <Shape> |
231 | <Cylinder height='.03' radius='.045'/> |
232 | <Appearance USE='grey'/> |
233 | </Shape> |
234 | </Transform> |
235 | <Transform rotation='0 0 1 1.57' translation='1.8 3 0'> |
236 | <Shape> |
237 | <Cone bottomRadius='.05' height='.5'/> |
238 | <Appearance USE='grey'/> |
239 | </Shape> |
240 | </Transform> |
241 | <Transform rotation='0 0 1 1.57' translation='-1.1 3 0'> |
242 | <Shape> |
243 | <Cylinder height='.8' radius='.1'/> |
244 | <Appearance USE='steel'/> |
245 | </Shape> |
246 | </Transform> |
247 | <Transform rotation='0 0 1 1.57' translation='-1.1 3.1 -.08'> |
248 | <Shape> |
249 | <Cylinder height='.6' radius='.05'/> |
250 | <Appearance USE='steel'/> |
251 | </Shape> |
252 | </Transform> |
253 | <Transform rotation='0 0 1 1.57' translation='-.2 3 0'> |
254 |
<!-- Shape
barrelCover is a DEF node that has 1 USE node: USE_1 -->
<Shape DEF='barrelCover'> |
255 | <Cylinder height='.08' radius='.3'/> |
256 | <Appearance USE='lightGrey'/> |
257 | </Shape> |
258 | </Transform> |
259 | <Transform rotation='0 0 1 1.57' translation='-1.4 3 0'> |
260 | <Shape USE='barrelCover'/> |
261 | </Transform> |
262 | <Transform translation='-.8 3.275 0'> |
263 | |
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 .994' translation='-.8 3.13 .24'> |
272 | <Shape USE='barrelPlate'/> |
273 | </Transform> |
274 | <Transform rotation='1 0 0 -.994' translation='-.8 3.13 -.24'> |
275 | <Shape USE='barrelPlate'/> |
276 | </Transform> |
277 | <Transform rotation='1 0 0 2.2' translation='-.8 2.828 .22'> |
278 | <Shape USE='barrelPlate'/> |
279 | </Transform> |
280 | <Transform rotation='1 0 0 -2.2' translation='-.8 2.828 -.22'> |
281 | <Shape USE='barrelPlate'/> |
282 | </Transform> |
283 | <!-- Trigger Assembly --> |
284 | <Transform rotation='0 0 1 1.57' translation='-1.45 3 0'> |
285 | <Shape DEF='triggerCover'> |
286 | <Cylinder height='.05' radius='.4'/> |
287 | <Appearance USE='lightGrey'/> |
288 | </Shape> |
289 | </Transform> |
290 | <Transform rotation='0 0 1 1.57' translation='-1.7 3 0'> |
291 | <Shape> |
292 | <Cylinder height='.7' radius='.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 0' spine='0 0 0 0 .05 0'/> |
299 | <Appearance USE='lightGrey'/> |
300 | </Shape> |
301 | </Transform> |
302 | <Transform rotation='1 0 0 3.14' translation='-1.8 2.6 .3'> |
303 | <Shape> |
304 | <Extrusion crossSection='0 0 0 .7 1 .7 1 0 0 0' scale='.5 1 1 1' spine='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='.2' height='.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 -.292' translation='-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.57' translation='-.12 0 0'> |
323 | <Shape> |
324 | <Cylinder height='.5' radius='.05'/> |
325 | <Appearance USE='lightGrey'/> |
326 | </Shape> |
327 | </Transform> |
328 | <Transform rotation='0 0 1 1.57' translation='-.22 0 0'> |
329 | <Shape> |
330 | <Cylinder height='.2' radius='.04'/> |
331 | |
332 | <Material diffuseColor='0.1 0.1 0.1'/> |
333 | </Appearance> |
334 | </Shape> |
335 | </Transform> |
336 | <Transform scale='1 4 4' translation='-.18 0 0'> |
337 | |
338 | <Sphere radius='.02'/> |
339 | <Appearance USE='black'/> |
340 | </Shape> |
341 | </Transform> |
342 | <Transform scale='1 4 4' translation='-.16 0 0'> |
343 | <Shape USE='spring'/> |
344 | </Transform> |
345 | <Transform scale='1 4 4' translation='-.20 0 0'> |
346 | <Shape USE='spring'/> |
347 | </Transform> |
348 | <Transform scale='1 4 4' translation='-.22 0 0'> |
349 | <Shape USE='spring'/> |
350 | </Transform> |
351 | <Transform scale='1 4 4' translation='-.24 0 0'> |
352 | <Shape USE='spring'/> |
353 | </Transform> |
354 | <Transform scale='1 4 4' translation='-.26 0 0'> |
355 | <Shape USE='spring'/> |
356 | </Transform> |
357 | <Transform scale='1 4 4' translation='-.28 0 0'> |
358 | <Shape USE='spring'/> |
359 | </Transform> |
360 | <Transform scale='1 4 4' translation='-.3 0 0'> |
361 | <Shape USE='spring'/> |
362 | </Transform> |
363 | <Transform scale='1 4 4' translation='-.32 0 0'> |
364 | <Shape USE='spring'/> |
365 | </Transform> |
366 | <Transform rotation='0 0 1 1.57' scale='.12 .12 .12' translation='-.65 0 0'> |
367 | <Transform rotation='1 0 0 1.57'> |
368 | <Shape DEF='brace'> |
369 | <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'/> |
370 | <Appearance USE='lightGrey'/> |
371 | </Shape> |
372 | </Transform> |
373 | </Transform> |
374 | </Group> |
375 | </Transform> |
376 | <Transform rotation='0 1 0 .292' translation='-2.1 3.2 .15'> |
377 | <Group USE='shoulderBrace'/> |
378 | </Transform> |
379 | <Transform scale='.85 .85 .85' translation='-4.5 1.82 .25'> |
380 | |
381 | <Transform rotation='0 0 1 1.57' scale='3 1 1' translation='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='.1' height='.08'/> |
391 | <Appearance USE='lightGrey'/> |
392 | </Shape> |
393 | </Transform> |
394 | <Transform rotation='0 0 1 3.14' translation='2.8 1.3 0'> |
395 | <Shape USE='handleMount'/> |
396 | </Transform> |
397 | </Group> |
398 | </Transform> |
399 | <Transform scale='.85 .85 .85' translation='-4.5 1.82 -.25'> |
400 | <Group USE='handle'/> |
401 | </Transform> |
402 | </Group> |
403 | </Transform> |
404 | </Group> |
405 | </Transform> |
406 | </Scene> |
407 | </X3D> |
<!--
Color-coding legend: X3D terminology
<X3dNode
DEF='idName' field='value'/>
matches XML terminology
<XmlElement
DEF='idName' attribute='value'/>
(Light-blue background: event-based behavior node or statement)
(Grey background inside box: inserted documentation)
(Magenta background: X3D Extensibility)
-->
<!--
For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints.
-->