X3D Model Documentation: Bell.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='Bell.x3d'/>
  6            <meta name='descriptioncontent='This file draws the Bell with sound effect.'/>
  7            <meta name='creatorcontent='Kok Keng Ng'/>
  8            <meta name='createdcontent='20 September 2002'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name='identifiercontent='https://savage.nps.edu/Savage/Buildings/PlayGround/Bell.x3d'/>
 11            <meta name='generatorcontent='X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit'/>
 12            <meta name='licensecontent='../../license.html'/>
 13       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: BELL, BELLBall, BELLBeam, BELLClip, BELLInterpolator, BELLSound, BELLTimeS, BELLTimeS1, BELLTouchS, BELLTx, GoldApp, WoodApp

Index for Viewpoint node: Viewpoint_1
-->
 14       <Scene>
 15            <WorldInfo title='Bell.x3d'/>
 16            <Viewpoint description='BellFrontposition='0 -1.2 7'/>
 17            <Group>
 18                 <PointLight intensity='0.2location='3 3 3'/>
 19 
               <!-- ROUTE information for BELLTx node:  [from BELLInterpolator.value_changed to set_rotation ] -->
               <Transform DEF='BELLTxrotation='1 0 0 0.001'>
 20                      <Group DEF='BELL'>
 21                           <Transform rotation='1 0 0 3.1415scale='0.5 0.5 0.5'>
 22                                <Shape>
 23                                     <Extrusion creaseAngle='1.57crossSection='1 0 0.92 -0.38 0.71 -0.71 0.38 -0.92 0 -1 -0.38 -0.92 -0.71 -0.71 -0.92 -0.38 -1 -0 -0.92 0.38 -0.71 0.71 -0.38 0.92 0 1 0.38 0.92 0.71 0.71 0.92 0.38 1 0endCap='falsescale='.00001 .00001 0.8 0.8 1.0 1.0 1.1 1.1 1.15 1.15 1.15 1.15 1.2 1.2 1.45 1.45 1.8 1.8 1.85 1.85 1.87 1.87 1.8 1.8 1.67 1.67 1.65 1.65 1.6 1.6 1.25 1.25 1.0 1.0 .95 0.95 .95 .95 .9 .9 0.8 0.8 0.00001 0.00001solid='falsespine='0 0.0 0 0 0.2 0 0 0.4 0 0 0.8 0 0 1.2 0 0 1.6 0 0 2.0 0 0 2.4 0 0 2.8 0 0 3.2 0 0 3.3 0 0 3.32 0 0 3.3 0 0 3.2 0 0 2.8 0 0 2.4 0 0 2.0 0 0 1.6 0 0 1.2 0 0 0.8 0 0 0.4 0 0 0.2 0'/>
 24 
                                   <!-- Appearance GoldApp is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                                   <Appearance DEF='GoldApp'>
 25                                          <Material ambientIntensity='0.4diffuseColor='0.22 0.15 0shininess='0.16specularColor='0.71 0.70 0.56'/>
 26                                     </Appearance>
 27                                </Shape>
 28                           </Transform>
 29 
                         <!-- ROUTE information for BELLTimeS node:  [from BELLTouchS.touchTime to set_startTime ] [from fraction_changed to BELLInterpolator.set_fraction ] -->
                         <TimeSensor DEF='BELLTimeScycleInterval='4'/>
 30                           <TimeSensor DEF='BELLTimeS1cycleInterval='2'/>
 31 
                         <!-- ROUTE information for BELLTouchS node:  [from touchTime to BELLTimeS.set_startTime ] [from touchTime to BELLClip.set_startTime ] -->
                         <TouchSensor DEF='BELLTouchS'/>
 32 
                         <!-- ROUTE information for BELLInterpolator node:  [from BELLTimeS.fraction_changed to set_fraction ] [from value_changed to BELLTx.set_rotation ] -->
                         <OrientationInterpolator DEF='BELLInterpolatorkey='0.0 0.15 0.7 1.0keyValue='0 0.0 1 0.0 .0 0.0 1 0.475 .0 0.0 1 -0.475 .0 0.0 1 0'/>
 33                           <Transform>
 34                                <Transform>
 35                                     <Shape>
 36                                          <Cylinder height='0.15radius='0.08'/>
 37                                          <Appearance USE='GoldApp'/>
 38                                     </Shape>
 39                                </Transform>
 40                           </Transform>
 41                      </Group>
 42                 </Transform>
 43                 <Transform>
 44                      <Group DEF='BELLBall'>
 45                           <Transform translation='0 -0.9 0'>
 46                                <Shape>
 47                                     <Appearance USE='GoldApp'/>
 48                                     <Cylinder height='1.7radius='0.02'/>
 49                                </Shape>
 50                           </Transform>
 51                           <Transform translation='0 -1.8 0'>
 52                                <Shape>
 53                                     <Appearance USE='GoldApp'/>
 54                                     <Sphere radius='.1'/>
 55                                </Shape>
 56                           </Transform>
 57                      </Group>
 58                 </Transform>
 59                 <Transform>
 60                      <Group>
 61                           <Transform>
 62                                <Transform translation='-2 -1.5 0'>
 63 
                                   <!-- Shape BELLBeam is a DEF node that has 1 USE node: USE_1 -->
                                   <Shape DEF='BELLBeam'>
 64                                          <Box size='0.4 4 0.4'/>
 65 
                                        <!-- Appearance WoodApp is a DEF node that has 1 USE node: USE_1 -->
                                        <Appearance DEF='WoodApp'>
 66                                               <Material diffuseColor='0.8 0.5 0.1'/>
 67                                               <ImageTexture   url=' "wood.jpg " "https://savage.nps.edu/Savage/Buildings/PlayGround/wood.jpg " '/>
 68                                          </Appearance>
 69                                     </Shape>
 70                                </Transform>
 71                                <Transform translation='2 -1.5 0'>
 72                                     <Shape USE='BELLBeam'/>
 73                                </Transform>
 74                                <Transform translation='0 0.3 0'>
 75                                     <Shape>
 76                                          <Box size='3.6 0.4 0.4'/>
 77                                          <Appearance USE='WoodApp'/>
 78                                     </Shape>
 79                                </Transform>
 80                           </Transform>
 81                      </Group>
 82                 </Transform>
 83                 <Sound DEF='BELLSounddirection='1 1 1maxBack='65maxFront='65minBack='60minFront='60'>
 84 
                    <!-- ROUTE information for BELLClip node:  [from BELLTouchS.touchTime to set_startTime ] -->
                    <AudioClip DEF='BELLClip'   url=' "Dong.wav" "https://savage.nps.edu/Savage/Buildings/PlayGround/Dong.wav" '/>
 85                 </Sound>
 86                 < ROUTE  fromNode='BELLTouchS' fromField='touchTime' toNode='BELLTimeS' toField='set_startTime'/>
 87                 < ROUTE  fromNode='BELLTimeS' fromField='fraction_changed' toNode='BELLInterpolator' toField='set_fraction'/>
 88                 < ROUTE  fromNode='BELLInterpolator' fromField='value_changed' toNode='BELLTx' toField='set_rotation'/>
 89                 < ROUTE  fromNode='BELLTouchS' fromField='touchTime' toNode='BELLClip' toField='set_startTime'/>
 90            </Group>
 91            <Background skyColor='0.15 0.15 0.8'/>
 92       </Scene>
 93  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top Index for DEF nodes: BELL, BELLBall, BELLBeam, BELLClip, BELLInterpolator, BELLSound, BELLTimeS, BELLTimeS1, BELLTouchS, BELLTx, GoldApp, WoodApp

Index for Viewpoint node: Viewpoint_1
-->
X3D Tooltips element index: Appearance, AudioClip, Background, Box, Cylinder, Extrusion, Group, head, ImageTexture, Material, meta, OrientationInterpolator, PointLight, ROUTE, Scene, Shape, Sound, Sphere, TimeSensor, TouchSensor, Transform, Viewpoint, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

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

BELLTouchS
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
BELLTimeS
TimeSensor
set_startTime
SFTime
then
 
 
 
BELLTimeS
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
BELLInterpolator
OrientationInterpolator
set_fraction
SFFloat
then
 
 
 
BELLInterpolator
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(3)
BELLTx
Transform
set_rotation
SFRotation
BELLTouchS
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
BELLClip
AudioClip
set_startTime
SFTime

BELLTimeS1
TimeSensor
No ROUTE connection found for output events from this node. 


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://savage.nps.edu/Savage/Buildings/PlayGround/BellIndex.html -->
<!-- Version control at
https://gitlab.nps.edu/Savage/Savage/Buildings/PlayGround/Bell.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. -->