#X3D V3.0 utf8 PROFILE Immersive # [X3D] version=3.0 # [X3D] noNamespaceSchemaLocation=https://www.web3d.org/specifications/x3d-3.0.xsd # X3D-to-ClassicVRML XSL translation autogenerated by X3dToClassicVrmlEncoding.xslt and X3dToVrml97.xslt # https://www.web3d.org/x3d/content/X3dToClassicVrmlEncoding.xslt # https://www.web3d.org/x3d/content/X3dToVrml97.xslt # Transformation using XSLT processor: Saxonica # head META "title" "Stinger.x3d" META "description" "Stinger Surface-to-Air Missile" META "creator" "Turgut AKGUL" META "created" "22 September 2003" META "modified" "28 November 2019" META "reference" "StingerRaytheon.pdf" META "reference" "https://www.fas.org/man/dod-101/sys/land/stinger.htm" META "reference" "http://www.howstuffworks.com/stinger.htm" META "subject" "Stinger surface-to-air missile" META "identifier" "https://savage.nps.edu/Savage/Weapons/Missiles/Stinger.x3d" META "generator" "X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit" META "license" "../../license.html" # [Scene] ========== ========== ========== WorldInfo { title "Stinger.x3d" } Background { groundAngle [ 1.309 1.570796 ] groundColor [ 0.0 0.0 0.1 0.0 0.1 0.3 0.3 0.3 0.6 ] skyAngle [ 1.309 1.571 ] skyColor [ 1.0 0.0 0.8 0.5 0.0 0.8 0.0 0.0 0.8 ] } Viewpoint { description "view1" orientation 0.682 -0.687 -0.252 3.138 position -2.6 1.5 -6.7 } Viewpoint { description "view2" orientation -0.105 0.994 0.039 1.3696 position 11.7 -0.1 2.6 } Transform { children [ Group { children [ DEF StingerMissile Transform { scale 4 4 4 children [ Transform { children [ # Built as well as possible to scale from pictures on FAS web site. Missile speed and distance for engagement are not what they are in real life for demonstration purposes. Transform { children [ DEF MISSILEBODY Group { children [ Transform { children [ Shape { appearance Appearance { material DEF GREY Material { diffuseColor 0.6 0.6 0.6 shininess .7 } } geometry Cylinder { height 1.31 radius 0.069 } } ] } Transform { translation 0.069 0.515 0 children [ DEF HEADFINS Group { children [ Transform { children [ DEF HEADFIN1 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0400 0 0.0800 0.0400 0 0.0800 0.0 0 0 0 0 ] } } appearance DEF FINCOLOR2 Appearance { material USE GREY } } DEF HEADFIN1HOLE Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 -0.004 0 0 0.004 0 -0.0800 0.004 0 -0.08 -0.004 0 0 -0.004 ] } } appearance Appearance { material DEF FinHoleColor Material { diffuseColor 0.1 0.1 0.1 } } } ] } Transform { translation -.138 0 0 children [ DEF HEADFIN2 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0400 0 -0.0800 0.0400 0 -0.0800 0.0 0 0 0 0 ] } } appearance Appearance { material USE GREY } } DEF HEADFIN2HOLE Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 -0.004 0 0 0.004 0 -0.0800 0.004 0 -0.08 -0.004 0 0 -0.004 ] } } appearance Appearance { material USE FinHoleColor } } ] } Transform { translation -0.069 0 0.069 children [ DEF HEADFIN3 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0400 0 0 0.0400 0.0800 0 0.0 0.0800 0 0 0 ] } } appearance Appearance { material USE GREY } } DEF HEADFIN3HOLE Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ -0.004 0 0 0.004 0 0 0.004 -0.0800 0 -0.004 -0.08 0 -0.004 0 0 ] } } appearance Appearance { material USE FinHoleColor } } ] } Transform { translation -0.069 0 -0.069 children [ DEF HEADFIN4 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0400 0 0 0.0400 -0.0800 0 0.0 -0.0800 0 0 0 ] } } appearance Appearance { material USE GREY } } DEF HEADFIN4HOLE Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ -0.004 0 0 0.004 0 0 0.004 -0.0800 0 -0.004 -0.08 0 -0.004 0 0 ] } } appearance Appearance { material USE FinHoleColor } } ] } ] } ] } ] } Transform { scale 1.31 1.31 1.31 translation 0 0.655 0 children [ DEF HEAD Group { children [ Shape { appearance Appearance { material USE GREY } geometry Extrusion { creaseAngle 1.785 crossSection [ 0.053727 0.000 0.04648 -0.02696 0.02696 -0.04648 0.0 -0.053727 -0.02696 -0.04648 -0.04648 -0.02696 -0.053727 0.000 -0.04648 0.02696 -0.02696 0.04648 0.0 0.053727 0.02696 0.04648 0.04648 0.02696 0.053727 0.0 ] scale [ 1.00 1.00 0.95 0.95 0.88 0.88 0.76 0.76 0.48 0.48 ] spine [ 0.00 0.00 0.00 0.00 0.01 0.00 0.00 0.02 0.00 0.00 0.03 0.00 0.00 0.04 0.00 ] } } ] } ] } Transform { children [ DEF TAIL Group { children [ Shape { appearance Appearance { material USE GREY } geometry Extrusion { creaseAngle 1.57 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 [ 0.069 0.069 0.068 0.068 0.067 0.067 0.066 0.066 0.065 0.065 0.064 0.064 0.063 0.063 0.062 0.062 0.061 0.061 0.060 0.060 0.059 0.059 0.058 0.058 0.057 0.057 0.056 0.056 0.055 0.055 0.054 0.054 0.053 0.053 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 0.052 ] solid FALSE spine [ 0.0 -0.655 0.0 0.0 -0.659 0.0 0.0 -0.663 0.0 0.0 -0.667 0.0 0.0 -0.671 0.0 0.0 -0.675 0.0 0.0 -0.679 0.0 0.0 -0.683 0.0 0.0 -0.687 0.0 0.0 -0.691 0.0 0.0 -0.695 0.0 0.0 -0.699 0.0 0.0 -0.703 0.0 0.0 -0.707 0.0 0.0 -0.711 0.0 0.0 -0.715 0.0 0.0 -0.719 0.0 0.0 -0.723 0.0 0.0 -0.727 0.0 0.0 -0.731 0.0 0.0 -0.735 0.0 0.0 -0.739 0.0 0.0 -0.743 0.0 0.0 -0.747 0.0 0.0 -0.751 0.0 0.0 -0.755 0.0 0.0 -0.759 0.0 0.0 -0.763 0.0 0.0 -0.767 0.0 0.0 -0.771 0.0 0.0 -0.775 0.0 0.0 -0.779 0.0 0.0 -0.784 0.0 0.0 -0.789 0.0 0.0 -0.793 0.0 0.0 -0.797 0.0 0.0 -0.801 0.0 0.0 -0.805 0.0 0.0 -0.809 0.0 0.0 -0.829 0.0 ] } } ] } ] } Transform { translation 0 .780 0 children [ DEF TAILFINS Group { children [ Transform { translation .052 -1.59 0 children [ DEF FIN1 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0600 0 0.0800 0.0400 0 0.0800 0.0200 0 0 0 0 ] } } appearance DEF FINCOLOR Appearance { material DEF FinColor Material { } } } ] } Transform { translation -.052 -1.59 0 children [ DEF FIN2 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0600 0 -0.0800 0.0400 0 -0.0800 0.0200 0 0 0 0 ] } } appearance Appearance { material USE FinColor } } ] } Transform { translation 0 -1.59 0.052 children [ DEF FIN3 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0600 0 0 0.0400 0.0800 0 0.0200 0.0800 0 0 0 ] } } appearance Appearance { material USE FinColor } } ] } Transform { translation 0 -1.59 -0.052 children [ DEF FIN4 Shape { geometry IndexedFaceSet { coordIndex [ 0 1 2 3 4 -1 ] solid FALSE coord Coordinate { point [ 0 0 0 0 0.0600 0 0 0.0400 -0.0800 0 0.0200 -0.0800 0 0 0 ] } } appearance Appearance { material USE FinColor } } ] } ] } ] } Transform { translation 0 -.88 0 children [ DEF EjectMotor Shape { appearance Appearance { material Material { diffuseColor 0.4 0.4 0.4 shininess .7 } } geometry Cylinder { height 0.10 radius 0.06 } } ] } Transform { translation 0 -.93 0 children [ DEF EjectMotorBehind Shape { appearance Appearance { material USE GREY } geometry Extrusion { creaseAngle 1.785 crossSection [ 0.053727 0.000 0.04648 -0.02696 0.02696 -0.04648 0.0 -0.053727 -0.02696 -0.04648 -0.04648 -0.02696 -0.053727 0.000 -0.04648 0.02696 -0.02696 0.04648 0.0 0.053727 0.02696 0.04648 0.04648 0.02696 0.053727 0.0 ] scale [ 1.00 1.00 0.85 0.85 0.85 0.85 0.76 0.76 0.76 0.76 ] spine [ 0.00 0.00 0.00 0.00 -0.01 0.00 0.00 -0.02 0.00 0.00 -0.03 0.00 0.00 -0.04 0.00 ] } } DEF EXHAUST Transform { rotation 0 1 0 3.14 scale 0.5 0.5 0.5 translation 0 -0.7 0 children [ # Exhaust flames are from the torch example in the source book. DEF Flames Shape { # No appearance, use emissive shading geometry IndexedFaceSet { coordIndex [ 0 1 2 -1 3 4 5 -1 6 7 8 -1 ] coord Coordinate { point [ 0.25 0.0 0.00 0.15 1.0 0.10 0.05 0.0 0.15 0.18 0.0 0.05 0.00 1.2 0.05 -0.10 0.0 0.05 -0.00 0.0 0.15 -0.13 0.8 0.10 -0.25 -0.25 0.00 ] } color Color { color [ 1.0 0.0 0.0 0.9 0.5 0 1.0 0.0 0.0 0.9 0.3 0 1.0 1.0 0.0 0.9 0.3 0 0.7 0.1 0.2 0.9 0.8 0 1.0 0.0 0.0 ] } } appearance Appearance { material Material { transparency .15 } } } Transform { rotation 0 1 0 1.57 scale 0.9 0.9 1 children [ USE Flames ] } Transform { rotation 0 1 0 -1.57 scale 0.9 0.9 1 children [ USE Flames ] } DEF EXHINT PositionInterpolator { key [ 0 .25 .5 .75 1 ] keyValue [ 1.4 1.4 1.4 2 2 2 2.5 2.5 2.5 2 2 2 1.4 1.4 1.4 ] } ### Warning: no ROUTE found for PositionInterpolator input ### Warning: no ROUTE found for PositionInterpolator output DEF EXHAUSTCLOCK TimeSensor { loop TRUE } ### Warning: no ROUTE found for TimeSensor output DEF RGMCLOCK TimeSensor { cycleInterval 28 } ### Warning: no ROUTE found for TimeSensor output ] } ] } ] } ] } ] } DEF CoordinateAxes Inline { url [ "../../X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d" "../../../Savage/Tools/Authoring/CoordinateAxes.x3d" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.x3d" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.x3d" "../../X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.wrl" "../../../Savage/Tools/Authoring/CoordinateAxes.wrl" "https://www.web3d.org/x3d/content/examples/X3dForWebAuthors/Chapter03Grouping/CoordinateAxes.wrl" "https://savage.nps.edu/Savage/Tools/Authoring/CoordinateAxes.wrl" ] } DEF MyTouchSensor TouchSensor { description "touch to start clock" } DEF CLOCK TimeSensor { cycleInterval 0.5 } DEF CubePathInterpolator OrientationInterpolator { key [ 0.0 0.50 1.0 ] keyValue [ 0.0 1.0 0.0 0.0 0.0 1.0 0.0 3.14 0.0 1.0 0.0 6.28 ] } DEF MyPlaneSensor PlaneSensor { description "drag stinger in plane" } ] } DEF Unfinished Script { inputOnly SFTime set_startTime initializeOnly SFTime startTime 0 outputOnly SFTime delayCompleteTime initializeOnly SFTime delayInterval 1 inputOnly SFTime set_delayInterval url [ "ecmascript: function set_startTime (newStartTimeValue) { startTime = newStartTimeValue; // disconnected?? delayCompleteTime = newStartTimeValue + delayInterval; } function set_delayInterval (newDelayTimeValue) { delayInterval = newDelayTimeValue; // disconnected?? delayCompleteTime = startTime + delayInterval; } " ] } ] } ROUTE MyTouchSensor.touchTime TO CLOCK.startTime ROUTE CLOCK.fraction_changed TO CubePathInterpolator.set_fraction ROUTE CubePathInterpolator.value_changed TO StingerMissile.set_rotation ROUTE MyPlaneSensor.translation_changed TO StingerMissile.set_translation