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='DirtBike.x3d'/> |
6 | <meta name='description' content='Simple dirt bike model.'/> |
7 | <meta name=' TODO ' content=' Future work: why not make wheels rotate, as well as spokes? also need to make handle bars steerable. '/> |
8 | <meta name='creator' content='Matthew Molmer'/> |
9 | <meta name='created' content='25 February 2004'/> |
10 | <meta name='modified' content='7 April 2024'/> |
11 | <meta name='identifier' content='https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/DirtBike.x3d'/> |
12 | <meta name='generator' content='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/> |
13 | <meta name='license' content='../license.html'/> |
14 | </head> |
15 | <Scene> |
16 | <WorldInfo title='DirtBike.x3d'/> |
17 | <Viewpoint description='Closeup Side View' position='.5 .2 1.5'/> |
18 | <Viewpoint description='sprocket view' position='.30 .08 .38'/> |
19 | <Viewpoint description='far away side view' position='0 0 5'/> |
20 | <Group DEF='frameGroup'> |
21 | <Transform rotation='0 0 1 .1' translation='.64 .34 0'> |
22 | <Transform rotation='0 0 1 1.57'> |
23 | <Shape DEF='piece_1'> |
24 | <Cylinder height='.64' radius='.02'/> |
25 | <Appearance> |
26 | <Material diffuseColor='1 0 0'/> |
27 | </Appearance> |
28 | </Shape> |
29 | </Transform> |
30 | </Transform> |
31 | <Transform rotation='0 0 1 .50' translation='.68 .20 0'> |
32 | <Transform rotation='0 0 1 1.57'> |
33 | <Shape DEF='piece_2'> |
34 | <Cylinder height='.64' radius='.02'/> |
35 | <Appearance> |
36 | <Material diffuseColor='1 0 0'/> |
37 | </Appearance> |
38 | </Shape> |
39 | </Transform> |
40 | </Transform> |
41 | <Transform translation='.378 .030 0'> |
42 | <Transform rotation='1 0 0 1.57'> |
43 | <Shape DEF='piece_10'> |
44 | <Cylinder height='.10' radius='.03'/> |
45 | <Appearance> |
46 | <Material diffuseColor='1 0 0'/> |
47 | </Appearance> |
48 | </Shape> |
49 | </Transform> |
50 | </Transform> |
51 | <Transform rotation='0 1 0 .087' translation='.19 .015 .045'> |
52 | <Transform rotation='0 0 1 1.65'> |
53 | <Shape DEF='piece_5'> |
54 | <Cylinder height='.38' radius='.012'/> |
55 | <Appearance> |
56 | <Material diffuseColor='1 0 0'/> |
57 | </Appearance> |
58 | </Shape> |
59 | </Transform> |
60 | </Transform> |
61 | <Transform rotation='0 1 0 -.087' translation='.19 .015 -.045'> |
62 | <Transform rotation='0 0 1 1.65'> |
63 | <Shape DEF='piece_6'> |
64 | <Cylinder height='.38' radius='.012'/> |
65 | <Appearance> |
66 | <Material diffuseColor='1 0 0'/> |
67 | </Appearance> |
68 | </Shape> |
69 | </Transform> |
70 | </Transform> |
71 | <Transform translation='.35 .17 0'> |
72 | <Transform rotation='0 0 1 .175'> |
73 | <Shape DEF='piece_9'> |
74 | <Cylinder height='.32' radius='.02'/> |
75 | <Appearance> |
76 | <Material diffuseColor='1 0 0'/> |
77 | </Appearance> |
78 | </Shape> |
79 | </Transform> |
80 | </Transform> |
81 | <Transform> |
82 | <Transform rotation='1 0 0 1.57'> |
83 | <Shape DEF='backWheelPost'> |
84 | <Cylinder height='.14' radius='.010'/> |
85 | <Appearance> |
86 | <Material/> |
87 | </Appearance> |
88 | </Shape> |
89 | </Transform> |
90 | </Transform> |
91 | <Transform translation='1.046 .005 0'> |
92 | <Transform rotation='1 0 0 1.57'> |
93 | <Shape DEF='frontWheelPost'> |
94 | <Cylinder height='.14' radius='.010'/> |
95 | <Appearance> |
96 | <Material/> |
97 | </Appearance> |
98 | </Shape> |
99 | </Transform> |
100 | </Transform> |
101 | <Transform rotation='0 1 0 .16' translation='.16 .16 .035'> |
102 | <Transform rotation='0 0 1 -.82'> |
103 | <Shape DEF='piece_7'> |
104 | <Cylinder height='.45' radius='.010'/> |
105 | <Appearance> |
106 | <Material diffuseColor='1 0 0'/> |
107 | </Appearance> |
108 | </Shape> |
109 | </Transform> |
110 | </Transform> |
111 | <Transform rotation='0 1 0 -.16' translation='.16 .16 -.035'> |
112 | <Transform rotation='0 0 1 -.82'> |
113 | <Shape DEF='piece_8'> |
114 | <Cylinder height='.45' radius='.010'/> |
115 | <Appearance> |
116 | <Material diffuseColor='1 0 0'/> |
117 | </Appearance> |
118 | </Shape> |
119 | </Transform> |
120 | </Transform> |
121 | <Transform rotation='0 0 1 .175' translation='.98 .372 0'> |
122 | <Transform> |
123 | <Shape DEF='piece_12'> |
124 | <Cylinder height='.058' radius='.025'/> |
125 | <Appearance> |
126 | <Material diffuseColor='1 0 0'/> |
127 | </Appearance> |
128 | </Shape> |
129 | </Transform> |
130 | </Transform> |
131 | </Group> |
132 |
<!-- Group
rotatingSpokes is a DEF node that has 1 USE node: USE_1 -->
<Group DEF='rotatingSpokes'> |
133 |
<!-- ROUTE information for Column node:
[from ColumnPath.value_changed to set_rotation
]
-->
<Transform DEF='Column'> |
134 | <Group DEF='spokeGroup'> |
135 | <Transform> |
136 | |
137 | <Cylinder height='.48' radius='0.003'/> |
138 | <Appearance> |
139 | <Material diffuseColor='.9 .8 .7'/> |
140 | </Appearance> |
141 | </Shape> |
142 | </Transform> |
143 | <Transform rotation='1 1 0 3.14'> |
144 | <Shape USE='spoke'/> |
145 | </Transform> |
146 | <Transform rotation='0 0 1 .78'> |
147 | <Shape USE='spoke'/> |
148 | </Transform> |
149 | <Transform rotation='0 0 1 2.35'> |
150 | <Shape USE='spoke'/> |
151 | </Transform> |
152 | <Transform rotation='0 0 1 .26'> |
153 | <Shape USE='spoke'/> |
154 | </Transform> |
155 | <Transform rotation='0 0 1 .52'> |
156 | <Shape USE='spoke'/> |
157 | </Transform> |
158 | <Transform rotation='0 0 1 1.30'> |
159 | <Shape USE='spoke'/> |
160 | </Transform> |
161 | <Transform rotation='0 0 1 1.04'> |
162 | <Shape USE='spoke'/> |
163 | </Transform> |
164 | <Transform rotation='0 0 1 1.57'> |
165 | <Shape USE='spoke'/> |
166 | </Transform> |
167 | <Transform rotation='0 0 1 1.83'> |
168 | <Shape USE='spoke'/> |
169 | </Transform> |
170 | <Transform rotation='0 0 1 2.61'> |
171 | <Shape USE='spoke'/> |
172 | </Transform> |
173 | <Transform rotation='0 0 1 4.71'> |
174 | <Shape USE='spoke'/> |
175 | </Transform> |
176 | <Transform rotation='0 0 1 4.45'> |
177 | <Shape USE='spoke'/> |
178 | </Transform> |
179 | <Transform rotation='0 0 1 4.18'> |
180 | <Shape USE='spoke'/> |
181 | </Transform> |
182 | <Transform rotation='0 0 1 3.92'> |
183 | <Shape USE='spoke'/> |
184 | </Transform> |
185 | <Transform rotation='0 0 1 3.66'> |
186 | <Shape USE='spoke'/> |
187 | </Transform> |
188 | <Transform rotation='0 0 1 3.40'> |
189 | <Shape USE='spoke'/> |
190 | </Transform> |
191 | <Transform rotation='0 0 1 2.87'> |
192 | <Shape USE='spoke'/> |
193 | </Transform> |
194 | <Transform rotation='0 0 1 2.09'> |
195 | <Shape USE='spoke'/> |
196 | </Transform> |
197 | </Group> |
198 | </Transform> |
199 |
<!-- ROUTE information for Clock node:
[from fraction_changed to ColumnPath.set_fraction
]
-->
<TimeSensor DEF='Clock' cycleInterval='4.0' loop='true'/> |
200 |
<!-- ROUTE information for ColumnPath node:
[from Clock.fraction_changed to set_fraction
]
[from value_changed to Column.set_rotation
]
-->
<OrientationInterpolator DEF='ColumnPath' key='0.0 0.50 1.0' keyValue='0.0 0.0 -1.0 0.0 0.0 0.0 -1.0 3.14 0.0 0.0 -1.0 6.28'/> |
201 | < ROUTE fromNode='Clock' fromField='fraction_changed' toNode='ColumnPath' toField='set_fraction'/> |
202 | < ROUTE fromNode='ColumnPath' fromField='value_changed' toNode='Column' toField='set_rotation'/> |
203 | </Group> |
204 | <Transform translation='1.044 0 0'> |
205 | <Group USE='rotatingSpokes'/> |
206 | </Transform> |
207 | <Group DEF='handleBarsAssembly'> |
208 | <Transform rotation='0 0 1 .175' scale='.15 .15 .15' translation='.86 .395 0'> |
209 | <Shape DEF='handleBars'> |
210 | <Extrusion 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='.08 .08 .08 .08 .10 .10 .10 .10 .10 .10 .10 .10 .12 .12 .12 .12 .12 .12 .12 .12 .10 .10 .10 .10 .10 .10 .08 .08 .08 .08' spine='.88 1.26 .96 .88 1.24 .52 .88 1.22 .50 .88 1.20 .48 1 .04 .42 1 .02 .40 1 0 .38 1 0 0 1 0 -.38 1 .02 -.40 1 .04 -.42 .88 1.20 -.48 .88 1.22 -.50 .88 1.24 -.52 .88 1.26 -.96'/> |
211 | <Appearance> |
212 | <Material/> |
213 | </Appearance> |
214 | </Shape> |
215 | </Transform> |
216 | <Transform rotation='0 0 1 .175' translation='.98 .38 0'> |
217 | <Transform> |
218 | <Shape DEF='handleBarPost'> |
219 | <Cylinder height='.12' radius='.02'/> |
220 | <Appearance> |
221 | <Material diffuseColor='0 0 0'/> |
222 | </Appearance> |
223 | </Shape> |
224 | </Transform> |
225 | </Transform> |
226 | <Transform rotation='0 0 1 .175' translation='.98 .418 0'> |
227 | <Transform> |
228 | <Shape DEF='gooseNeck'> |
229 | <Box size='.10 .040 .07'/> |
230 | <Appearance> |
231 | <Material diffuseColor='0 0 0'/> |
232 | </Appearance> |
233 | </Shape> |
234 | </Transform> |
235 | </Transform> |
236 | <Transform rotation='0 0 1 .175' scale='.175 .175 .175' translation='.818 .30 0'> |
237 | <Shape DEF='frontForks'> |
238 | <Extrusion 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='.10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .04 .10 .04 .10 .04' spine='1 -1.96 .30 1 -1.86 .30 1 -1.66 .30 1 -1.76 .30 1 -1.56 .30 1 -1.46 .30 1 -1.36 .30 1 -1.22 .30 1 -1.20 .30 1 -.12 .30 1 -.10 .28 1 -.08 .26 1 -.08 0 1 -.08 -.26 1 -.10 -.28 1 -.12 -.30 1 -1.20 -.30 1 -1.22 -.30 1 -1.36 -.30 1 -1.46 -.30 1 -1.56 -.30 1 -1.66 -.30 1 -1.76 -.30 1 -1.86 -.30 1 -1.96 -.30'/> |
239 | <Appearance> |
240 | <Material diffuseColor='0 0 0'/> |
241 | </Appearance> |
242 | </Shape> |
243 | </Transform> |
244 | <Transform rotation='1 0 0 1.58' translation='.955 .602 .12'> |
245 |
<!-- Shape
handleGrips is a DEF node that has 1 USE node: USE_1 -->
<Shape DEF='handleGrips'> |
246 | <Cylinder height='.08' radius='.018'/> |
247 | <Appearance> |
248 | <Material diffuseColor='0 0 0'/> |
249 | </Appearance> |
250 | </Shape> |
251 | </Transform> |
252 | <Transform rotation='1 0 0 1.58' translation='.955 .602 -.12'> |
253 | <Shape USE='handleGrips'/> |
254 | </Transform> |
255 | </Group> |
256 | <Group DEF='seatAssembly'> |
257 | <Transform rotation='0 0 1 .25' scale='.15 .15 .15' translation='.16 .40 0'> |
258 | <Shape DEF='seat'> |
259 | <Extrusion 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='.10 .38 .10 .40 .11 .42 .11 .44 .10 .42 .10 .36 .10 .32 .10 .26 .08 .22 .06 .20 .04 .18 .02 .16 .02 .12' spine='.40 0 0 .42 0 0 .44 0 0 .54 0 0 .64 0 0 1 0 0 1.24 0 0 1.34 0 0 1.44 0 0 1.54 0 0 1.56 0 0 1.58 0 0 1.60 0 0'/> |
260 | <Appearance> |
261 | <Material diffuseColor='0 0 1'/> |
262 | </Appearance> |
263 | </Shape> |
264 | </Transform> |
265 | <Transform translation='.335 .25 0'> |
266 | <Transform rotation='0 0 1 .175'> |
267 | <Shape DEF='seatPost'> |
268 | <Cylinder height='.34' radius='.015'/> |
269 | <Appearance> |
270 | <Material diffuseColor='0 0 0'/> |
271 | </Appearance> |
272 | </Shape> |
273 | </Transform> |
274 | </Transform> |
275 | <Transform translation='.305 .42 0'> |
276 | <Shape DEF='seatMount'> |
277 | <Box size='.035 .02 .035'/> |
278 | <Appearance> |
279 | <Material/> |
280 | </Appearance> |
281 | </Shape> |
282 | </Transform> |
283 | </Group> |
284 | <Group DEF='pedalAssembly'> |
285 | <Transform DEF='pedalArm' scale='.15 .15 .15' translation='.228 .030 0'> |
286 | <Shape> |
287 | <Extrusion 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='.08 .08 .08 .08 .08 .08 .10 .10 .10 .10 .10 .10 .10 .10 .10 .10 .08 .08 .08 .08 .08 .08' spine='1.10 -1.12 .52 1.10 -1.10 .50 1 -.04 .48 1 -.02 .46 1 0 .44 1 0 0 1 0 -.44 1 .02 -.46 1 .04 -.48 .88 1.10 -.50 .88 1.12 -.52'/> |
288 | <Appearance> |
289 | <Material/> |
290 | </Appearance> |
291 | </Shape> |
292 | </Transform> |
293 | <Transform translation='.39 -.136 .1'> |
294 | |
295 | <Box size='.05 .015 .06'/> |
296 | <Appearance> |
297 | <Material diffuseColor='0 0 0'/> |
298 | </Appearance> |
299 | </Shape> |
300 | </Transform> |
301 | <Transform translation='.36 .20 -.1'> |
302 | <Shape USE='pedals'/> |
303 | </Transform> |
304 | </Group> |
305 | <Group DEF='rotatingSpokets'> |
306 | <Transform DEF='Column1' scale='.06 .06 .06' translation='.38 .030 .04'> |
307 |
<!-- Group
spoketAssembly is a DEF node that has 1 USE node: USE_1 -->
<Group DEF='spoketAssembly'> |
308 | <Transform DEF='WHEEL' rotation='1 0 0 1.57'> |
309 | <Transform scale='1 .09 1' translation='0 .20 0'> |
310 | <Shape DEF='center'> |
311 | <Sphere radius='.28'/> |
312 | <Appearance> |
313 | <Material diffuseColor='0 0 0'/> |
314 | </Appearance> |
315 | </Shape> |
316 | </Transform> |
317 | <Transform translation='0 .1 .3'/> |
318 | <Transform> |
319 | |
320 | <Transform DEF='SPOKE' scale='.9 .09 .5' translation='.6 .20 0'> |
321 | <Shape DEF='inner'> |
322 | <Sphere radius='.5'/> |
323 | <Appearance> |
324 | <Material diffuseColor='0 0 0'/> |
325 | </Appearance> |
326 | </Shape> |
327 | </Transform> |
328 | |
329 | <Transform scale='.35 .09 .8' translation='.95 .2 0'> |
330 | <Shape DEF='outer'> |
331 | <Sphere radius='.5'/> |
332 | <Appearance> |
333 | <Material diffuseColor='0 0 0'/> |
334 | </Appearance> |
335 | </Shape> |
336 | </Transform> |
337 | <Transform rotation='0 1 0 .785' translation='1.025 .2 0'> |
338 | <Shape DEF='teeth'> |
339 | <Box size='.3 .08 .3'/> |
340 | <Appearance> |
341 | <Material diffuseColor='0 0 0'/> |
342 | </Appearance> |
343 | </Shape> |
344 | </Transform> |
345 | </Group> |
346 | <Transform rotation='0 1 0 .53'> |
347 | <Group USE='SURFACE'/> |
348 | </Transform> |
349 | </Group> |
350 | <Transform rotation='0 1 0 1.05'> |
351 | <Group USE='SPOKE_GROUP'/> |
352 | <Transform rotation='0 1 0 1.05'> |
353 | <Group USE='SPOKE_GROUP'/> |
354 | <Transform rotation='0 1 0 1.05'> |
355 | <Group USE='SPOKE_GROUP'/> |
356 | <Transform rotation='0 1 0 1.05'> |
357 | <Group USE='SPOKE_GROUP'/> |
358 | <Transform rotation='0 1 0 1.05'> |
359 | <Group USE='SPOKE_GROUP'/> |
360 | </Transform> |
361 | </Transform> |
362 | </Transform> |
363 | </Transform> |
364 | </Transform> |
365 | </Transform> |
366 | </Transform> |
367 | </Group> |
368 | </Transform> |
369 | <Transform scale='.03 .03 .03' translation='0 0 .05'> |
370 | <Group USE='spoketAssembly'/> |
371 | </Transform> |
372 | </Group> |
373 | |
374 | <Transform rotation='1 0 0 1.57' scale='.26 .26 .26'> |
375 | <Shape> |
376 | <Extrusion beginCap='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' endCap='false' scale='.96 .96 1.1 1.1' solid='false' spine='0 .07 0 0 .07 0'/> |
377 | <Appearance> |
378 | <Material diffuseColor='0 0 0'/> |
379 | </Appearance> |
380 | </Shape> |
381 | <Shape> |
382 | <Extrusion beginCap='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' endCap='false' scale='.9 .9 .9 .9' solid='false' spine='0 .07 0 0 -.07 0'/> |
383 | <Appearance> |
384 | <Material/> |
385 | </Appearance> |
386 | </Shape> |
387 | <Shape> |
388 | <Extrusion beginCap='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' endCap='false' scale='1.1 1.1 1.1 1.1' solid='false' spine='0 .07 0 0 -.07 0'/> |
389 | <Appearance> |
390 | <Material diffuseColor='0 0 0'/> |
391 | </Appearance> |
392 | </Shape> |
393 | <Shape> |
394 | <Extrusion beginCap='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' endCap='false' scale='.96 .96 1.1 1.1' solid='false' spine='0 -.07 0 0 -.07 0'/> |
395 | <Appearance> |
396 | <Material diffuseColor='0 0 0'/> |
397 | </Appearance> |
398 | </Shape> |
399 | <Shape> |
400 | <Extrusion beginCap='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' endCap='false' scale='.96 .96 .9 .9' solid='false' spine='0 .07 0 0 .07 0'/> |
401 | <Appearance> |
402 | <Material/> |
403 | </Appearance> |
404 | </Shape> |
405 | <Shape> |
406 | <Extrusion beginCap='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' endCap='false' scale='.96 .96 .9 .9' solid='false' spine='0 -.07 0 0 -.07 0'/> |
407 | <Appearance> |
408 | <Material/> |
409 | </Appearance> |
410 | </Shape> |
411 | </Transform> |
412 | </Group> |
413 | <Transform translation='1.044 0 0'> |
414 | <Group USE='tireGroup'/> |
415 | </Transform> |
416 | <Transform> |
417 | <Transform rotation='0 0 1 .165' translation='0 -.004 .046'> |
418 |
<!-- Group
chainAssembly is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
<Group DEF='chainAssembly'> |
419 |
<!-- Transform
chainElement is a DEF node that has 29 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 -->
<Transform DEF='chainElement' rotation='1 0 0 1.57' scale='.04 .025 .04' translation='.38 .042 .005'> |
420 | <Transform translation='0 -.12 0'> |
421 | <Shape> |
422 | <Cylinder height='.05' radius='.15'/> |
423 | <Appearance> |
424 | <Material diffuseColor='0 0 0'/> |
425 | </Appearance> |
426 | </Shape> |
427 | </Transform> |
428 | <Transform translation='0 .12 0'> |
429 | <Shape> |
430 | <Cylinder height='.05' radius='.15'/> |
431 | <Appearance> |
432 | <Material diffuseColor='0 0 0'/> |
433 | </Appearance> |
434 | </Shape> |
435 | </Transform> |
436 | <Transform translation='.4 -.12 0'> |
437 | <Shape> |
438 | <Cylinder height='.05' radius='.15'/> |
439 | <Appearance> |
440 | <Material diffuseColor='0 0 0'/> |
441 | </Appearance> |
442 | </Shape> |
443 | </Transform> |
444 | <Transform translation='.4 .12 0'> |
445 | <Shape> |
446 | <Cylinder height='.05' radius='.15'/> |
447 | <Appearance> |
448 | <Material diffuseColor='0 0 0'/> |
449 | </Appearance> |
450 | </Shape> |
451 | </Transform> |
452 | <Shape> |
453 | <Cylinder height='.3' radius='.1'/> |
454 | <Appearance> |
455 | <Material/> |
456 | </Appearance> |
457 | </Shape> |
458 | <Transform translation='.4 0 0'> |
459 | <Shape> |
460 | <Cylinder height='.3' radius='.1'/> |
461 | <Appearance> |
462 | <Material/> |
463 | </Appearance> |
464 | </Shape> |
465 | </Transform> |
466 | <Transform translation='.25 .12 0'> |
467 | <Shape> |
468 | <Box size='.3 .05 .18'/> |
469 | <Appearance> |
470 | <Material diffuseColor='0 0 0'/> |
471 | </Appearance> |
472 | </Shape> |
473 | </Transform> |
474 | <Transform translation='.25 -.12 0'> |
475 | <Shape> |
476 | <Box size='.3 .05 .18'/> |
477 | <Appearance> |
478 | <Material diffuseColor='0 0 0'/> |
479 | </Appearance> |
480 | </Shape> |
481 | </Transform> |
482 | </Transform> |
483 | <Transform> |
484 | <Transform USE='chainElement'/> |
485 | </Transform> |
486 | <Transform translation='-.016 0 0'> |
487 | <Transform USE='chainElement'/> |
488 | </Transform> |
489 | <Transform translation='-.032 0 0'> |
490 | <Transform USE='chainElement'/> |
491 | </Transform> |
492 | <Transform translation='-.048 0 0'> |
493 | <Transform USE='chainElement'/> |
494 | </Transform> |
495 | <Transform translation='-.064 0 0'> |
496 | <Transform USE='chainElement'/> |
497 | </Transform> |
498 | <Transform translation='-.080 0 0'> |
499 | <Transform USE='chainElement'/> |
500 | </Transform> |
501 | <Transform translation='-.096 0 0'> |
502 | <Transform USE='chainElement'/> |
503 | </Transform> |
504 | <Transform translation='-.112 0 0'> |
505 | <Transform USE='chainElement'/> |
506 | </Transform> |
507 | <Transform translation='-.128 0 0'> |
508 | <Transform USE='chainElement'/> |
509 | </Transform> |
510 | <Transform translation='-.144 0 0'> |
511 | <Transform USE='chainElement'/> |
512 | </Transform> |
513 | <Transform translation='-.160 0 0'> |
514 | <Transform USE='chainElement'/> |
515 | </Transform> |
516 | <Transform translation='-.176 0 0'> |
517 | <Transform USE='chainElement'/> |
518 | </Transform> |
519 | <Transform translation='-.192 0 0'> |
520 | <Transform USE='chainElement'/> |
521 | </Transform> |
522 | <Transform translation='-.208 0 0'> |
523 | <Transform USE='chainElement'/> |
524 | </Transform> |
525 | </Group> |
526 | <Transform translation='-.192 0 0'> |
527 | <Group USE='chainAssembly'/> |
528 | </Transform> |
529 | </Transform> |
530 | <Transform translation='0 -.080 -.058'> |
531 | <Transform translation='.006 0 -.0310'> |
532 | <Transform translation='0 0 .135'> |
533 | <Group USE='chainAssembly'/> |
534 | </Transform> |
535 | <Transform translation='-.192 0 .135'> |
536 | <Group USE='chainAssembly'/> |
537 | </Transform> |
538 | </Transform> |
539 | </Transform> |
540 | <Transform> |
541 | <Transform translation='.032 0 0'> |
542 | <Transform rotation='0 0 1 -.175' translation='-.029 .127 .046'> |
543 | <Transform USE='chainElement'/> |
544 | </Transform> |
545 | <Transform rotation='0 0 1 -.250' translation='-.010 .152 .046'> |
546 | <Transform USE='chainElement'/> |
547 | </Transform> |
548 | <Transform rotation='0 0 1 -.600' translation='.045 .275 .046'> |
549 | <Transform USE='chainElement'/> |
550 | </Transform> |
551 | <Transform rotation='0 0 1 .600' translation='.0815 -.286 .046'> |
552 | <Transform USE='chainElement'/> |
553 | </Transform> |
554 | <Transform rotation='0 0 1 -.600' translation='.053 .266 .046'> |
555 | <Transform USE='chainElement'/> |
556 | </Transform> |
557 | </Transform> |
558 | <Transform rotation='0 0 1 -1' translation='.145 .34 0'> |
559 | <Transform translation='.032 0 0'> |
560 | <Transform rotation='0 0 1 -.175' translation='-.029 .127 .046'> |
561 | <Transform USE='chainElement'/> |
562 | </Transform> |
563 | <Transform rotation='0 0 1 -.250' translation='-.010 .152 .046'> |
564 | <Transform USE='chainElement'/> |
565 | </Transform> |
566 | <Transform rotation='0 0 1 -.600' translation='.045 .275 .046'> |
567 | <Transform USE='chainElement'/> |
568 | </Transform> |
569 | </Transform> |
570 | </Transform> |
571 | <Transform rotation='0 0 1 -1.5' translation='.319 .392 0'> |
572 | <Transform translation='.032 0 0'> |
573 | <Transform rotation='0 0 1 -.175' translation='-.029 .127 .046'> |
574 | <Transform USE='chainElement'/> |
575 | </Transform> |
576 | <Transform rotation='0 0 1 -.600' translation='.031 .279 .046'> |
577 | <Transform USE='chainElement'/> |
578 | </Transform> |
579 | <Transform rotation='0 0 1 2.2' translation='.65 -.21 .046'> |
580 | <Transform USE='chainElement'/> |
581 | </Transform> |
582 | </Transform> |
583 | </Transform> |
584 | </Transform> |
585 | <Transform rotation='0 0 1 .790' translation='-.275 -.278 .046'> |
586 | <Transform USE='chainElement'/> |
587 | </Transform> |
588 | <Transform rotation='0 0 1 1.57' translation='.004 -.376 .046'> |
589 | <Transform USE='chainElement'/> |
590 | </Transform> |
591 | <Transform rotation='0 0 1 -.790' translation='-.324 .215 .046'> |
592 | <Transform USE='chainElement'/> |
593 | </Transform> |
594 | <Transform rotation='0 0 1 -1.04' translation='-.267 .300 .046'> |
595 | <Transform USE='chainElement'/> |
596 | </Transform> |
597 | </Transform> |
598 | <Background groundAngle='1.309 1.570796' groundColor='.1 .2 0 .4 .26 .3 .6 .7 .7' skyAngle='1.309 1.571' skyColor='0 .2 .7 0 .5 1 1 1 1'/> |
599 | <PointLight location='0 1 0' radius='25'/> |
600 | </Scene> |
601 | </X3D> |
Event Graph ROUTE Table with 2 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.
Clock
TimeSensor fraction_changed SFFloat |
ColumnPath
OrientationInterpolator set_fraction SFFloat |
then
|
ColumnPath
OrientationInterpolator value_changed SFRotation |
Column
Transform set_rotation SFRotation |
<!--
Color 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. -->