X3D Model Documentation: FormulaOneRaceCar.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='FormulaOneRaceCar.x3d'/>
  6            <meta name='descriptioncontent='A FormulaOne Race Car running in a predefined path'/>
  7            <meta name='creatorcontent='Athanasopoulos,Vasileios'/>
  8            <meta name='createdcontent='2 August 2002'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name=' warning content=' Missing files: nplogo.jpg (npslogo.jpg?) front.jpg f1.wav f2.wav f3.wav '/>
 11            <meta name='subjectcontent='Formula One Race Car'/>
 12            <meta name='identifiercontent='https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/FormulaOneRaceCar.x3d'/>
 13            <meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
 14            <meta name='licensecontent='../license.html'/>
 15       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: axis1, axis2, BACK, CAR, CLOCK, CLOCK1, CLOCK2, COVER, COVERSENS, DRAG, elastic, elastic1, Engine1, Engine2, Engine3, exhaust, FORMULA, FRONT, MOVE, nplogo, POS1, POS2, rad, SOUNDSOURCE1, SOUNDSOURCE2, SOUNDSOURCE3, TURN, ViewpointGroup, wheel1, wheel2, wheel3, wheel4

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6, Viewpoint_7, Viewpoint_8
-->
 16       <Scene>
 17            <Viewpoint description='Formula One Race Carorientation='-1 1 1 1position='6 8 8'/>
 18            <DirectionalLight direction='5 0 0'/>
 19            <Viewpoint description='Bottomorientation='1 0 0 1.57position='0 -25 -8'/>
 20            <Background groundColor='0 0 0skyColor='0 0 1'/>
 21 
          <!-- ROUTE information for CAR node:  [from DRAG.translation_changed to set_translation ] [from MOVE.value_changed to set_translation ] -->
          <Transform DEF='CARrotation='0 1 0 -1.57'>
 22                 <Group DEF='ViewpointGroup'>
 23                      <Group>
 24                           <Viewpoint description='Frontorientation='0 1 0 1.57position='10 2 0'/>
 25                           <Viewpoint description='Rightposition='0 2 10'/>
 26                           <Viewpoint description='Leftorientation='0 1 0 3.14position='0 1.5 -14'/>
 27                           <Viewpoint description='Backorientation='0 1 0 -1.57position='-10 0.85 0'/>
 28                           <Viewpoint description='Toporientation='1 0 0 -1.57position='0 15 0.5'/>
 29                      </Group>
 30                      <WorldInfo info='"null node"'/>
 31                 </Group>
 32                 <Group>
 33 
                    <!-- ROUTE information for FORMULA node:  [from TURN.value_changed to set_rotation ] -->
                    <Transform DEF='FORMULA'>
 34                           <Transform rotation='1 0 0 -1.57'>
 35                                <!-- "BACK WHEELS & AXIS" -->
 36                                <Group>
 37                                     <Transform rotation='1 0 0 1.57translation='0 -2.8 0'>
 38                                          <Group>
 39 
                                             <!-- ROUTE information for BACK node:  [from POS1.value_changed to set_rotation ] -->
                                             <Transform DEF='BACK'>
 40                                                    <Transform DEF='wheel1rotation='0 0 1 1.57translation='1.5 0 0'>
 41                                                         <!-- "OUTER WHEEL CYLINDER" -->
 42 
                                                       <!-- Shape elastic is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                                                       <Shape DEF='elastic'>
 43                                                              <Appearance>
 44                                                                   <Material diffuseColor='0 0 0'/>
 45                                                              </Appearance>
 46                                                              <Cylinder height='0.92radius='0.65'/>
 47                                                         </Shape>
 48                                                         <!-- "INNER WHEEL CYLINDER" -->
 49                                                         <Shape>
 50                                                              <Appearance>
 51                                                                   <Material diffuseColor='.5 .5 .5'/>
 52                                                              </Appearance>
 53                                                              <Cylinder height='.92radius='.45'/>
 54                                                         </Shape>
 55                                                    </Transform>
 56                                                    <Transform translation='1.912 0 0'>
 57 
                                                       <!-- Shape rad is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                                       <Shape DEF='rad'>
 58                                                              <Appearance>
 59                                                                   <Material/>
 60                                                              </Appearance>
 61                                                              <Box size='0.1 0.90 0.05'/>
 62                                                         </Shape>
 63                                                    </Transform>
 64                                                    <Transform rotation='1 0 0 1.57translation='1.912 0 0'>
 65                                                         <Shape>
 66                                                              <Appearance>
 67                                                                   <Material/>
 68                                                              </Appearance>
 69                                                              <Box size='0.1 0.90 0.05'/>
 70                                                         </Shape>
 71                                                    </Transform>
 72                                                    <Transform DEF='wheel2rotation='0 0 1 1.57translation='-1.5 0 0'>
 73                                                         <!-- "OUTER WHEEL CYLINDER" -->
 74                                                         <Shape USE='elastic'/>
 75                                                         <!-- "INNER WHEEL CYLINDER" -->
 76                                                         <Shape>
 77                                                              <Appearance>
 78                                                                   <Material diffuseColor='.5 .5 .5'/>
 79                                                              </Appearance>
 80                                                              <Cylinder height='.92radius='.45'/>
 81                                                         </Shape>
 82                                                    </Transform>
 83                                                    <Transform translation='-1.912 0 0'>
 84                                                         <Shape USE='rad'/>
 85                                                    </Transform>
 86                                                    <Transform rotation='1 0 0 1.57translation='-1.912 0 0'>
 87                                                         <Shape>
 88                                                              <Appearance>
 89                                                                   <Material/>
 90                                                              </Appearance>
 91                                                              <Box size='0.1 0.90 0.05'/>
 92                                                         </Shape>
 93                                                    </Transform>
 94                                                    <Transform DEF='axis1rotation='0 0 1 1.57'>
 95                                                         <Shape>
 96                                                              <Appearance>
 97                                                                   <Material diffuseColor='0 0 0'/>
 98                                                              </Appearance>
 99                                                              <Cylinder height='3.96radius='.12'/>
100                                                         </Shape>
101                                                    </Transform>
102                                               </Transform>
103 
                                             <!-- ROUTE information for CLOCK1 node:  [from fraction_changed to POS1.set_fraction ] -->
                                             <TimeSensor DEF='CLOCK1cycleInterval='2loop='true'/>
104 
                                             <!-- ROUTE information for POS1 node:  [from CLOCK1.fraction_changed to set_fraction ] [from value_changed to BACK.set_rotation ] -->
                                             <OrientationInterpolator DEF='POS1key='0 0.5 1keyValue='1 0 0 0 1 0 0 -3.14 1 0 0 -6.28'/>
105                                          </Group>
106                                          < ROUTE  fromNode='CLOCK1' fromField='fraction_changed' toNode='POS1' toField='set_fraction'/>
107                                          < ROUTE  fromNode='POS1' fromField='value_changed' toNode='BACK' toField='set_rotation'/>
108                                     </Transform>
109                                </Group>
110                                <!-- "FRONT WHEELS & AXIS" -->
111                                <Group>
112                                     <Transform rotation='1 0 0 1.57translation='0 2.65 0'>
113                                          <Group>
114 
                                             <!-- ROUTE information for FRONT node:  [from POS2.value_changed to set_rotation ] -->
                                             <Transform DEF='FRONT'>
115                                                    <Transform DEF='wheel3rotation='0 0 1 1.57translation='1.5 0 0'>
116                                                         <!-- "OUTER WHEEL CYLINDER" -->
117                                                         <Shape DEF='elastic1'>
118                                                              <Appearance>
119                                                                   <Material diffuseColor='0 0 0'/>
120                                                              </Appearance>
121                                                              <Cylinder height='0.92radius='0.65'/>
122                                                         </Shape>
123                                                         <!-- "INNER WHEEL CYLINDER" -->
124                                                         <Shape>
125                                                              <Appearance>
126                                                                   <Material diffuseColor='.5 .5 .5'/>
127                                                              </Appearance>
128                                                              <Cylinder height='.92radius='.45'/>
129                                                         </Shape>
130                                                    </Transform>
131                                                    <Transform translation='1.912 0 0'>
132                                                         <Shape USE='rad'/>
133                                                    </Transform>
134                                                    <Transform rotation='1 0 0 1.57translation='1.912 0 0'>
135                                                         <Shape>
136                                                              <Appearance>
137                                                                   <Material/>
138                                                              </Appearance>
139                                                              <Box size='0.1 .90 .05'/>
140                                                         </Shape>
141                                                    </Transform>
142                                                    <Transform DEF='wheel4rotation='0 0 1 1.57translation='-1.5 0 0'>
143                                                         <!-- "OUTER WHEEL CYLINDER" -->
144                                                         <Shape USE='elastic'/>
145                                                         <!-- "INNER WHEEL CYLINDER" -->
146                                                         <Shape>
147                                                              <Appearance>
148                                                                   <Material diffuseColor='.5 .5 .5'/>
149                                                              </Appearance>
150                                                              <Cylinder height='.92radius='.45'/>
151                                                         </Shape>
152                                                    </Transform>
153                                                    <Transform translation='-1.912 0 0'>
154                                                         <Shape USE='rad'/>
155                                                    </Transform>
156                                                    <Transform rotation='1 0 0 1.57translation='-1.912 0 0'>
157                                                         <Shape>
158                                                              <Appearance>
159                                                                   <Material/>
160                                                              </Appearance>
161                                                              <Box size='0.1 .90 .05'/>
162                                                         </Shape>
163                                                    </Transform>
164                                                    <Transform DEF='axis2rotation='0 0 1 1.57'>
165                                                         <Shape>
166                                                              <Appearance>
167                                                                   <Material diffuseColor='0 0 0'/>
168                                                              </Appearance>
169                                                              <Cylinder height='3.96radius='.12'/>
170                                                         </Shape>
171                                                    </Transform>
172                                               </Transform>
173 
                                             <!-- ROUTE information for CLOCK2 node:  [from fraction_changed to POS2.set_fraction ] -->
                                             <TimeSensor DEF='CLOCK2cycleInterval='2loop='true'/>
174 
                                             <!-- ROUTE information for POS2 node:  [from CLOCK2.fraction_changed to set_fraction ] [from value_changed to FRONT.set_rotation ] -->
                                             <OrientationInterpolator DEF='POS2key='0 0.5 1keyValue='1 0 0 0 1 0 0 -3.14 1 0 0 -6.28'/>
175                                               < ROUTE  fromNode='CLOCK2' fromField='fraction_changed' toNode='POS2' toField='set_fraction'/>
176                                               < ROUTE  fromNode='POS2' fromField='value_changed' toNode='FRONT' toField='set_rotation'/>
177                                          </Group>
178                                     </Transform>
179                                </Group>
180                                <!-- "CAR BODY" -->
181                                <Group>
182                                     <!-- "CAR BODY" -->
183                                     <Transform scale='1 4 0.5'>
184                                          <Shape>
185                                               <Appearance>
186                                                    <Material diffuseColor='1 0 0'/>
187                                               </Appearance>
188                                               <Sphere/>
189                                          </Shape>
190                                          <Transform rotation='1 0 0 0translation='0 0.2 0.976'>
191                                               <Shape>
192                                                    <Appearance>
193                                                         <Material diffuseColor='0.2 1 0transparency='.5'/>
194 
                                                       <!-- ImageTexture nplogo is a DEF node that has 1 USE node: USE_1 -->
                                                       <ImageTexture DEF='nplogo'   url=' "nplogo.jpg " "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/nplogo.jpg " '/>
195                                                    </Appearance>
196                                                    <Box size='0.7 .2 .0000001'/>
197                                               </Shape>
198                                          </Transform>
199                                     </Transform>
200                                     <Group/>
201                                     <!-- "PILOT'S COVER SHELL" -->
202 
                                   <!-- ROUTE information for COVER node:  [from COVERSENS.rotation_changed to set_rotation ] -->
                                   <Transform DEF='COVERcenter='0 0 0.535scale='.5 0.9 0.3translation='0 -1 0'>
203                                          <Shape>
204                                               <Appearance>
205                                                    <Material transparency='0.55'/>
206                                               </Appearance>
207                                               <Sphere radius='1.3'/>
208                                          </Shape>
209 
                                        <!-- ROUTE information for COVERSENS node:  [from rotation_changed to COVER.set_rotation ] -->
                                        <CylinderSensor DEF='COVERSENSdescription='touch to activatediskAngle='0.262maxAngle='3.57'/>
210                                     </Transform>
211                                     < ROUTE  fromNode='COVERSENS' fromField='rotation_changed' toNode='COVER' toField='set_rotation'/>
212                                     <!-- "PILOT'S HEAD" -->
213                                     <Transform translation='0 -1.3 0.5'>
214                                          <Viewpoint description='Driverorientation='1 0 0 1.350position='0 0.25 -0.015'/>
215                                          <Transform rotation='1 0 0 1.67translation='0 0.7 -0.2'>
216                                               <Shape>
217                                                    <Appearance>
218                                                         <Material diffuseColor='1 0 0transparency='.5'/>
219                                                         <ImageTexture   url=' "front.jpg " "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/front.jpg " '/>
220                                                    </Appearance>
221                                                    <Box size='0.9 0.8 0.01'/>
222                                               </Shape>
223                                          </Transform>
224                                          <Transform rotation='1 0 0 1.67translation='0 0.701 -0.2'>
225                                               <Shape>
226                                                    <Appearance>
227                                                         <Material diffuseColor='1 0 0'/>
228                                                    </Appearance>
229                                                    <Box size='0.9 0.8 0.01'/>
230                                               </Shape>
231                                          </Transform>
232                                          <Shape>
233                                               <Appearance>
234                                                    <Material diffuseColor='1 0 0'/>
235                                               </Appearance>
236                                               <Sphere radius='0.25'/>
237                                          </Shape>
238                                     </Transform>
239                                     <!-- "FRONT-HORIZONTAL PANEL-TEXTURES " -->
240                                     <Transform translation='0 3.80 -0.3'>
241                                          <!-- "FRONT (HORIZONTAL) PANEL" -->
242                                          <Shape>
243                                               <Appearance>
244                                                    <Material diffuseColor='1 0 0'/>
245                                               </Appearance>
246                                               <Box size='3.94 .6 .03'/>
247                                          </Shape>
248                                          <!-- "FRONT-RIGHT (OUTER)VERTICAL PANEL" -->
249                                          <Transform translation='0.35 -0.2 0.15'>
250                                               <Shape>
251                                                    <Appearance>
252                                                         <Material diffuseColor='0.2 1 0'/>
253                                                    </Appearance>
254                                                    <Box size='.03 0.16 0.28'/>
255                                               </Shape>
256                                          </Transform>
257                                          <!-- "FRONT-LEFT (OUTER)VERTICAL PANEL -->
258                                          <Transform translation='-0.35 -0.2 0.15'>
259                                               <Shape>
260                                                    <Appearance>
261                                                         <Material diffuseColor='0.2 1 0'/>
262                                                    </Appearance>
263                                                    <Box size='.03 0.16 0.28'/>
264                                               </Shape>
265                                          </Transform>
266                                          <!-- "BACK TEXT" -->
267                                          <Transform rotation='0 0 1 -3.14translation='1.40 -7.20 1.05'>
268                                               <Transform rotation='1 0 0 0.266'>
269                                                    <Shape>
270                                                         <Appearance>
271                                                              <Material diffuseColor='1 1 0'/>
272                                                         </Appearance>
273                                                         <Text string='"MV-4204"'>
274                                                              <FontStyle size='.8style='BOLD'/>
275                                                         </Text>
276                                                    </Shape>
277                                               </Transform>
278                                          </Transform>
279                                          <!-- "FRONT RIGHT TEXT" -->
280                                          <Transform rotation='0 0 1 -3.14translation='2.2 0.2 0'>
281                                               <Transform translation='.5 .020 0.05'>
282                                                    <Shape>
283                                                         <Appearance>
284                                                              <Material diffuseColor='1 1 0'/>
285                                                         </Appearance>
286                                                         <Text string='"VRML"'>
287                                                              <FontStyle size='.4style='BOLD'/>
288                                                         </Text>
289                                                    </Shape>
290                                               </Transform>
291                                          </Transform>
292                                          <!-- "FRONT LEFT TEXT" -->
293                                          <Transform rotation='0 0 1 3.14translation='-2.1 0.2 0'>
294                                               <Transform translation='-1.5 0.01 0.05'>
295                                                    <Shape>
296                                                         <Appearance>
297                                                              <Material diffuseColor='1 1 0'/>
298                                                         </Appearance>
299                                                         <Text string='"VRML"'>
300                                                              <FontStyle size='.4style='BOLD'/>
301                                                         </Text>
302                                                    </Shape>
303                                               </Transform>
304                                          </Transform>
305                                          <!-- "FRONT-RIGHT (INNER)VERTICAL PANEL -->
306                                          <Transform translation='1.95 0.01 0.05'>
307                                               <Shape>
308                                                    <Appearance>
309                                                         <Material diffuseColor='0.2 1 0'/>
310                                                    </Appearance>
311                                                    <Box size='0.03 .6 .1'/>
312                                               </Shape>
313                                          </Transform>
314                                          <!-- "FRONT-LEFT (INNER)VERTICAL PANEL -->
315                                          <Transform translation='-1.95 0.01 0.05'>
316                                               <Shape>
317                                                    <Appearance>
318                                                         <Material diffuseColor='0.2 1 0'/>
319                                                    </Appearance>
320                                                    <Box size='0.03 .6 .1'/>
321                                               </Shape>
322                                          </Transform>
323                                     </Transform>
324                                     <!-- "BACK (INCLINED) UPPER PANEL" -->
325                                     <Transform rotation='1 0 0 -0.2translation='0 -3.57 0.75'>
326                                          <Shape>
327                                               <Appearance>
328                                                    <Material diffuseColor='1 0 0'/>
329                                               </Appearance>
330                                               <Box size='3.94 0.8 0.04'/>
331                                          </Shape>
332                                          <Transform translation='1.95 0 0.1'>
333                                               <Shape>
334                                                    <Appearance>
335                                                         <Material diffuseColor='0.2 1 0'/>
336                                                    </Appearance>
337                                                    <Box size='0.04 0.8 0.2'/>
338                                               </Shape>
339                                          </Transform>
340                                          <Transform translation='-1.95 0 0.1'>
341                                               <Shape>
342                                                    <Appearance>
343                                                         <Material diffuseColor='0.2 1 0'/>
344                                                    </Appearance>
345                                                    <Box size='0.04 0.8 0.2'/>
346                                               </Shape>
347                                          </Transform>
348                                     </Transform>
349                                     <!-- "HORIZONTAL PART OF THE CAR" -->
350                                     <Transform rotation='0 0 1 1.57scale='1 1 0.05translation='0 -0.15 0'>
351                                          <Shape>
352                                               <Appearance>
353                                                    <Material diffuseColor='.2 1 0'/>
354                                                    <ImageTexture USE='nplogo'/>
355                                               </Appearance>
356                                               <Cylinder height='3.95radius='1.9'/>
357                                          </Shape>
358                                          <!-- "RIGHT TEXT" -->
359                                          <Transform rotation='0 0 1 -3.14translation='0.6 1.65 2'>
360                                               <Shape>
361                                                    <Appearance>
362                                                         <Material diffuseColor='1 1 0'/>
363                                                    </Appearance>
364                                                    <Text string='"NPS"'>
365                                                         <FontStyle size='.8style='BOLD'/>
366                                                    </Text>
367                                               </Shape>
368                                          </Transform>
369                                          <!-- "LEFT TEXT" -->
370                                          <Transform rotation='0 0 1 -6.28translation='-0.8 -1.65 2'>
371                                               <Shape>
372                                                    <Appearance>
373                                                         <Material diffuseColor='1 1 0'/>
374                                                    </Appearance>
375                                                    <Text string='"NPS"'>
376                                                         <FontStyle size='.8style='BOLD'/>
377                                                    </Text>
378                                               </Shape>
379                                          </Transform>
380                                     </Transform>
381                                     <!-- "BACK-LEFT VERTICAL PANEL" -->
382                                     <Transform translation='-0.42 -3.4 0.35'>
383                                          <Shape>
384                                               <Appearance>
385                                                    <Material diffuseColor='0.2 1 0'/>
386                                               </Appearance>
387                                               <Box size='.06 0.26 0.7'/>
388                                          </Shape>
389                                     </Transform>
390                                     <!-- "BACK-RIGHT VERTICAL PANEL" -->
391                                     <Transform translation='0.42 -3.4 0.35'>
392                                          <Shape>
393                                               <Appearance>
394                                                    <Material diffuseColor='0.2 1 0'/>
395                                               </Appearance>
396                                               <Box size='.06 0.26 0.7'/>
397                                          </Shape>
398                                     </Transform>
399                                     <!-- "EXHAUST" -->
400                                     <Transform translation='0.2 -3.88 0'>
401 
                                        <!-- Shape exhaust is a DEF node that has 1 USE node: USE_1 -->
                                        <Shape DEF='exhaust'>
402                                               <Appearance>
403                                                    <Material diffuseColor='0 0 0'/>
404                                               </Appearance>
405                                               <Cylinder height='.25radius='.05'/>
406                                          </Shape>
407                                     </Transform>
408                                     <!-- "EXHAUST" -->
409                                     <Transform translation='-0.2 -3.88 0'>
410                                          <Shape USE='exhaust'/>
411                                     </Transform>
412                                </Group>
413                           </Transform>
414                           <Sound DEF='Engine1'>
415                                <AudioClip DEF='SOUNDSOURCE1description='V1loop='true'   url=' "f1.wav" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/f1.wav" '/>
416                           </Sound>
417                           <Sound DEF='Engine2'>
418                                <AudioClip DEF='SOUNDSOURCE2description='V2loop='true'   url=' "f2.wav" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/f2.wav" '/>
419                           </Sound>
420                           <Sound DEF='Engine3'>
421                                <AudioClip DEF='SOUNDSOURCE3description='V3loop='true'   url=' "f3.wav" "https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/f3.wav" '/>
422                           </Sound>
423                      </Transform>
424 
                    <!-- ROUTE information for MOVE node:  [from CLOCK.fraction_changed to set_fraction ] [from value_changed to CAR.set_translation ] -->
                    <Script DEF='MOVE'>
425                           <field name='set_fractiontype='SFFloataccessType='inputOnly'/>
426                           <field name='value_changedtype='SFVec3faccessType='outputOnly'/>
427                           <field name='radiustype='SFFloatvalue='10accessType='initializeOnly'/>
428                           <field name='turnstype='SFFloatvalue='1accessType='initializeOnly'/>
  <![CDATA[
          
ecmascript:

function set_fraction (fraction,eventTime)
{
    value_changed[0]=radius*Math.sin(turns*fraction*6.28);
    value_changed[1]=0;
    value_changed[2]=radius*Math.cos(turns*fraction*6.28);
 }

        
]]>
430                      </Script>
431 
                    <!-- ROUTE information for TURN node:  [from CLOCK.fraction_changed to set_fraction ] [from value_changed to FORMULA.set_rotation ] -->
                    <Script DEF='TURN'>
432                           <field name='set_fractiontype='SFFloataccessType='inputOnly'/>
433                           <field name='value_changedtype='SFRotationaccessType='outputOnly'/>
434                           <field name='radiustype='SFFloatvalue='1accessType='initializeOnly'/>
435                           <field name='turnstype='SFFloatvalue='1accessType='initializeOnly'/>
  <![CDATA[
          
ecmascript:

function set_fraction (fraction,eventTime)
{
    value_changed[0]=0;
    value_changed[1]=1;
    value_changed[2]=0;
    value_changed[3]=fraction*6.28;
 }

        
]]>
437                      </Script>
438 
                    <!-- ROUTE information for DRAG node:  [from translation_changed to CAR.set_translation ] -->
                    <PlaneSensor DEF='DRAGdescription='touch to activate'/>
439 
                    <!-- ROUTE information for CLOCK node:  [from fraction_changed to MOVE.set_fraction ] [from fraction_changed to TURN.set_fraction ] -->
                    <TimeSensor DEF='CLOCKcycleInterval='8.0loop='true'/>
440                 </Group>
441                 < ROUTE  fromNode='DRAG' fromField='translation_changed' toNode='CAR' toField='set_translation'/>
442                 < ROUTE  fromNode='CLOCK' fromField='fraction_changed' toNode='MOVE' toField='set_fraction'/>
443                 < ROUTE  fromNode='MOVE' fromField='value_changed' toNode='CAR' toField='set_translation'/>
444                 < ROUTE  fromNode='CLOCK' fromField='fraction_changed' toNode='TURN' toField='set_fraction'/>
445                 < ROUTE  fromNode='TURN' fromField='value_changed' toNode='FORMULA' toField='set_rotation'/>
446            </Transform>
447       </Scene>
448  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: axis1, axis2, BACK, CAR, CLOCK, CLOCK1, CLOCK2, COVER, COVERSENS, DRAG, elastic, elastic1, Engine1, Engine2, Engine3, exhaust, FORMULA, FRONT, MOVE, nplogo, POS1, POS2, rad, SOUNDSOURCE1, SOUNDSOURCE2, SOUNDSOURCE3, TURN, ViewpointGroup, wheel1, wheel2, wheel3, wheel4

Index for Viewpoint nodes: Viewpoint_1, Viewpoint_2, Viewpoint_3, Viewpoint_4, Viewpoint_5, Viewpoint_6, Viewpoint_7, Viewpoint_8
-->
X3D Tooltips element index: Appearance, AudioClip, Background, Box, Cylinder, CylinderSensor, DirectionalLight, field, FontStyle, Group, head, ImageTexture, Material, meta, OrientationInterpolator, PlaneSensor, ROUTE, Scene, Script, Shape, Sound, Sphere, Text, TimeSensor, Transform, Viewpoint, WorldInfo, X3D, accessType and type, XML data types, field types

Event Graph ROUTE Table entries with 10 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

ROUTE
event to
(1)
MOVE
Script
set_fraction
SFFloat
then
 
 
 
MOVE
Script
value_changed
SFVec3f

ROUTE
event to
(2)
CAR
Transform
set_translation
SFVec3f
CLOCK
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(1)
TURN
Script
set_fraction
SFFloat
then
 
 
 
TURN
Script
value_changed
SFRotation

ROUTE
event to
(2)
FORMULA
Transform
set_rotation
SFRotation

CLOCK1
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(1)
POS1
OrientationInterpolator
set_fraction
SFFloat
then
 
 
 
POS1
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(2)
BACK
Transform
set_rotation
SFRotation

CLOCK2
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(1)
POS2
OrientationInterpolator
set_fraction
SFFloat
then
 
 
 
POS2
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(2)
FRONT
Transform
set_rotation
SFRotation

DRAG
PlaneSensor
translation_changed
SFVec3f

ROUTE
event to
(1)
CAR
Transform
set_translation
SFVec3f

COVERSENS
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
COVER
Transform
set_rotation
SFRotation

Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Basic/StudentProjects/FormulaOneRaceCarIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Basic/StudentProjects/FormulaOneRaceCar.x3d -->

<!-- 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)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->