X3D Model Documentation: Mk45.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=' Mk45.x3d '/>
  6            <meta name='descriptioncontent='Mk45 main gun of Yavuz Class Frigate'/>
  7            <meta name='creatorcontent='Ozan APAYDIN'/>
  8            <meta name='createdcontent='17 September 2001'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name='referencecontent=' https://www.fas.org/man/dod-101/sys/ship/weaps/mk-45.htm '/>
 11            <meta name='photocontent='mk45shot.jpg'/>
 12            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateYavuzTurkey/Mk45.x3d '/>
 13            <meta name='generatorcontent='X3D-Edit 3.2, https://www.web3d.org/x3d/tools/X3D-Edit'/>
 14            <meta name='licensecontent='../../license.html'/>
 15       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: BoomMaterial, BoomTimer, BoomTransform, CannonFireSound, CannonSense, CannonTrans, FireButton, FireButtonSensor, GunColor, Namlu, NamluDondur, NamluTrans, ScaleInterp, TransparencyInterp
-->
 16       <Scene>
 17            <WorldInfo title='Mk45.x3d'/>
 18            <Background skyColor='0.7 0.7 0.7'/>
 19            <Sound maxBack='100maxFront='100minBack='0.01minFront='0.01'>
 20 
               <!-- ROUTE information for CannonFireSound node:  [from FireButtonSensor.touchTime to startTime ] -->
               <AudioClip DEF='CannonFireSound'   url=' "CannonFire.wav" "https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateYavuzTurkey/CannonFire.wav" '/>
 21            </Sound>
 22 
          <!-- ROUTE information for CannonTrans node:  [from CannonSense.rotation_changed to set_rotation ] -->
          <Transform DEF='CannonTranscenter='0.75 0 0'>
 23                 <Shape>
 24                      <Extrusion convex='falsecreaseAngle='.9crossSection='-1.1 0.0 -1.0 0.5 0.5 1 2.2 1 2.6 0.5 3 0 2.6 -0.5 2.2 -1 0.5 -1 -1.0 -0.5 -1.1 0.0scale='1.0 1.5 1.2 1.4 1.1 1.3 1.0 1.0 0.5 0.7 0.001 0.001spine='0.0 -1.0 0.0 0.0 1.3 0.0 0.0 1.9 0.0 0.0 2.0 0.0 0.0 2.3 0.0 0.0 2.5 0.0'/>
 25 
                    <!-- Appearance GunColor is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                    <Appearance DEF='GunColor'>
 26                           <Material diffuseColor='.7 .7 .8'/>
 27                      </Appearance>
 28                 </Shape>
 29                 <Transform translation='-1 0 0'>
 30                      <Shape>
 31                           <Extrusion crossSection='-0.75 0.78 0.75 0.78 0.75 -0.78 -0.75 -0.78 -0.75 0.78scale='1.0 1.0 0.3 0.855spine='0.0 -1.0 0.0 0.0 1.9 0.0'/>
 32                           <Appearance USE='GunColor'/>
 33                      </Shape>
 34                      <Transform rotation='0 0 1 -0.18translation='-0.36 1.15 0'>
 35                           <Shape>
 36                                <Box size='0.01 1.5 0.8'/>
 37                                <Appearance>
 38                                     <Material diffuseColor='0.1 0.1 0.1'/>
 39                                </Appearance>
 40                           </Shape>
 41                      </Transform>
 42                 </Transform>
 43                 <Transform rotation='1 0 0 -1.57'>
 44 
                    <!-- ROUTE information for NamluDondur node:  [from rotation_changed to NamluTrans.set_rotation ] -->
                    <CylinderSensor DEF='NamluDondurmaxAngle='0.45'/>
 45 
                    <!-- ROUTE information for NamluTrans node:  [from NamluDondur.rotation_changed to set_rotation ] -->
                    <Transform DEF='NamluTrans'>
 46                           <Transform rotation='1 0 0 1.57'>
 47                                <Transform rotation='0 0 1 1.57translation='-1.5 0.99 0'>
 48                                     <Group DEF='Namlu'>
 49                                          <Shape>
 50                                               <Cylinder height='0.5radius='0.2'/>
 51                                               <Appearance>
 52                                                    <Material diffuseColor='0.1 0.1 0.1'/>
 53                                               </Appearance>
 54                                          </Shape>
 55                                          <Transform translation='0.0 0.2 0'>
 56                                               <Shape>
 57                                                    <Cylinder height='0.6radius='0.16'/>
 58                                                    <Appearance>
 59                                                         <Material diffuseColor='1 1 0shininess='0.8'/>
 60                                                    </Appearance>
 61                                               </Shape>
 62                                               <Transform translation='0 2.5 0'>
 63                                                    <Shape>
 64                                                         <Cylinder height='4.5radius='0.12'/>
 65                                                         <Appearance>
 66                                                              <Material diffuseColor='0.5 0.5 0.5shininess='0.8'/>
 67                                                         </Appearance>
 68                                                    </Shape>
 69                                                    <Shape>
 70                                                         <Cylinder height='4.501radius='0.08'/>
 71                                                         <Appearance>
 72                                                              <Material diffuseColor='0.1 0.1 0.1'/>
 73                                                         </Appearance>
 74                                                    </Shape>
 75 
                                                  <!-- ROUTE information for BoomTransform node:  [from ScaleInterp.value_changed to set_scale ] -->
                                                  <Transform DEF='BoomTransformscale='0.00001 0.00001 0.00001translation='0.0 3.1 0.0'>
 76                                                         <Shape>
 77                                                              <Extrusion beginCap='falsecreaseAngle='1.57crossSection='1.0 0.0 0.92 -0.38 0.71 -0.71 0.38 -0.92 0.0 -1.0 -0.38 -0.92 -0.71 -0.71 -0.92 -0.38 -1.0 -0.0 -0.92 0.38 -0.71 0.71 -0.38 0.92 0.0 1.0 0.38 0.92 0.71 0.71 0.92 0.38 1.0 0.0endCap='falsespine='2.0 0.0 0.0 1.85 0.0 0.77 1.41 0.0 1.41 0.77 0.0 1.85 0.0 0.0 2.0 -0.77 0.0 1.85 -1.41 0.0 1.41 -1.85 0.0 0.77 -2.0 0.0 0.0 -1.85 0.0 -0.77 -1.41 0.0 -1.41 -0.77 0.0 -1.85 0.0 0.0 -2.0 0.77 0.0 -1.85 1.41 0.0 -1.41 1.85 0.0 -0.77 2.0 0.0 0.0'/>
 78                                                              <Appearance>
 79 
                                                                 <!-- ROUTE information for BoomMaterial node:  [from TransparencyInterp.value_changed to set_transparency ] -->
                                                                 <Material DEF='BoomMaterial'/>
 80                                                                   <ImageTexture   url=' "Boom1.jpg " "https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateYavuzTurkey/Boom1.jpg " '/>
 81                                                              </Appearance>
 82                                                         </Shape>
 83 
                                                       <!-- ROUTE information for TransparencyInterp node:  [from BoomTimer.fraction_changed to set_fraction ] [from value_changed to BoomMaterial.set_transparency ] -->
                                                       <ScalarInterpolator DEF='TransparencyInterpkey='0 0.04 0.1 0.7 1.0keyValue='1.0 0.2 0.3 1.0 1.0'/>
 84 
                                                       <!-- ROUTE information for ScaleInterp node:  [from BoomTimer.fraction_changed to set_fraction ] [from value_changed to BoomTransform.set_scale ] -->
                                                       <PositionInterpolator DEF='ScaleInterpkey='0 0.04 0.1 0.7 1.0keyValue='0.00001 0.00001 0.00001 0.05 0.4 0.05 0.4 0.6 0.4 0.5 0.9 0.5 0.00001 0.0001 0.00001'/>
 85 
                                                       <!-- ROUTE information for BoomTimer node:  [from FireButtonSensor.touchTime to set_startTime ] [from fraction_changed to ScaleInterp.set_fraction ] [from fraction_changed to TransparencyInterp.set_fraction ] -->
                                                       <TimeSensor DEF='BoomTimercycleInterval='5.0'/>
 86                                                    </Transform>
 87                                               </Transform>
 88                                          </Transform>
 89                                     </Group>
 90                                </Transform>
 91                           </Transform>
 92                      </Transform>
 93                      <Transform rotation='0 0 1 1.57translation='0.7 0 2.41'>
 94                           <Transform rotation='1 0 0 0.15'>
 95                                <Shape DEF='FireButton'>
 96                                     <Box size='0.5 0.5 0.001'/>
 97                                     <Appearance>
 98                                          <ImageTexture   url=' "FireButton.gif " "https://www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateYavuzTurkey/FireButton.gif " '/>
 99                                     </Appearance>
100                                </Shape>
101 
                              <!-- ROUTE information for FireButtonSensor node:  [from touchTime to BoomTimer.set_startTime ] [from touchTime to CannonFireSound.startTime ] -->
                              <TouchSensor DEF='FireButtonSensor'/>
102                           </Transform>
103                      </Transform>
104                 </Transform>
105                 <Transform translation='0.75 -1 0'>
106                      <Shape>
107                           <Cylinder height='0.8'/>
108                           <Appearance USE='GunColor'/>
109                      </Shape>
110                 </Transform>
111 
               <!-- ROUTE information for CannonSense node:  [from rotation_changed to CannonTrans.set_rotation ] -->
               <CylinderSensor DEF='CannonSensemaxAngle='1.7minAngle='-1.7'/>
112            </Transform>
113            <Transform translation='0.75 -1.5 0'>
114                 <Shape>
115                      <Cylinder height='0.5radius='1.8'/>
116                      <Appearance USE='GunColor'/>
117                 </Shape>
118            </Transform>
119            < ROUTE  fromNode='CannonSense' fromField='rotation_changed' toNode='CannonTrans' toField='set_rotation'/>
120            < ROUTE  fromNode='NamluDondur' fromField='rotation_changed' toNode='NamluTrans' toField='set_rotation'/>
121            < ROUTE  fromNode='BoomTimer' fromField='fraction_changed' toNode='ScaleInterp' toField='set_fraction'/>
122            < ROUTE  fromNode='ScaleInterp' fromField='value_changed' toNode='BoomTransform' toField='set_scale'/>
123            < ROUTE  fromNode='BoomTimer' fromField='fraction_changed' toNode='TransparencyInterp' toField='set_fraction'/>
124            < ROUTE  fromNode='TransparencyInterp' fromField='value_changed' toNode='BoomMaterial' toField='set_transparency'/>
125            < ROUTE  fromNode='FireButtonSensor' fromField='touchTime' toNode='BoomTimer' toField='set_startTime'/>
126            < ROUTE  fromNode='FireButtonSensor' fromField='touchTime' toNode='CannonFireSound' toField='startTime'/>
127       </Scene>
128  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: BoomMaterial, BoomTimer, BoomTransform, CannonFireSound, CannonSense, CannonTrans, FireButton, FireButtonSensor, GunColor, Namlu, NamluDondur, NamluTrans, ScaleInterp, TransparencyInterp
-->
X3D Tooltips element index: Appearance, AudioClip, Background, Box, Cylinder, CylinderSensor, Extrusion, Group, head, ImageTexture, Material, meta, PositionInterpolator, ROUTE, ScalarInterpolator, Scene, Shape, Sound, TimeSensor, TouchSensor, Transform, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

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

FireButtonSensor
TouchSensor
touchTime
SFTime

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

ROUTE
event to
(2)
ScaleInterp
PositionInterpolator
set_fraction
SFFloat
then
 
 
 
ScaleInterp
PositionInterpolator
value_changed
SFVec3f

ROUTE
event to
(3)
BoomTransform
Transform
set_scale
SFVec3f
  then
 
 
 
BoomTimer
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
TransparencyInterp
ScalarInterpolator
set_fraction
SFFloat
then
 
 
 
TransparencyInterp
ScalarInterpolator
value_changed
SFFloat

ROUTE
event to
(3)
BoomMaterial
Material
set_transparency
SFFloat
FireButtonSensor
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
CannonFireSound
AudioClip
startTime
SFTime

CannonSense
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
CannonTrans
Transform
set_rotation
SFRotation

NamluDondur
CylinderSensor
rotation_changed
SFRotation

ROUTE
event to
(1)
NamluTrans
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/Savage/ShipsMilitary/FrigateYavuzTurkey/Mk45Index.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/ShipsMilitary/FrigateYavuzTurkey/Mk45.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. -->