#X3D V3.2 utf8 PROFILE Immersive # [X3D] version=3.2 # [X3D] noNamespaceSchemaLocation=https://www.web3d.org/specifications/x3d-3.2.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" "BridgeDoorPort.x3d" META "description" "Brazilian Naval Academy Training Ship" META "creator" "Claudio Coreixas" META "created" "20 October 2009" META "modified" "20 October 2019" META "reference" "http://www.en.mar.mil.br" META "subject" "ships parts" META "identifier" "https://savage.nps.edu/Savage/ShipsMilitary/PatrolCraftNavalAcademyBrazil/BridgeDoorPort.x3d" META "generator" "X3D-Edit, https://savage.nps.edu/X3D-Edit" META "license" "../../license.html" # [Scene] ========== ========== ========== WorldInfo { title "BridgeDoorPort.x3d" } Viewpoint { description "Door" fieldOfView 0.45 orientation 1 0 0 0 position 5.7 2.3 4 } DEF spinTimer TimeSensor { cycleInterval 3 } DEF openDoor OrientationInterpolator { key [ 0 0.25 0.5 0.75 1 ] keyValue [ 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 -1.57 0 1 0 -3 ] } ROUTE spinTimer.fraction_changed TO openDoor.set_fraction DEF dogTimer TimeSensor { } DEF openDog OrientationInterpolator { key [ 0 1 ] keyValue [ 0 0 1 0 0 0 1 -1.3 ] } ROUTE dogTimer.fraction_changed TO openDog.set_fraction DEF openDoorTransform Transform { center 5.825 2 -0.55 children [ DEF openDogSpin Transform { center 5.6 2.3 -0.55 children [ Transform { children [ Transform { children [ DEF dog Shape { appearance Appearance { material Material { } } geometry Extrusion { ccw FALSE convex FALSE crossSection [ 0.01 0 0.0092 0.0038 0.0071 0.0071 0.0038 0.0092 0 0.01 -0.0038 0.0092 -0.0071 0.0071 -0.0092 0.0038 -0.01 0 -0.0092 -0.0038 -0.0071 -0.0071 -0.0038 -0.0092 0 -0.01 0.0038 -0.0092 0.0071 -0.0071 0.0092 -0.0039 0.01 0 ] scale [ 0.3 0.5 0.4 0.7 0.55 0.8 0.7 0.85 0.85 0.95 1 1 1 1 0.85 0.95 0.7 0.85 0.55 0.8 0.4 0.7 0.3 0.5 ] solid FALSE spine [ 5.6690 2.3000 -0.5330 5.6100 2.3000 -0.5330 5.6062 2.3000 -0.5338 5.6029 2.3000 -0.5359 5.6008 2.3000 -0.5391 5.6000 2.3000 -0.5430 5.6000 2.3000 -0.5570 5.6008 2.3000 -0.5608 5.6029 2.3000 -0.5641 5.6062 2.3000 -0.5662 5.6100 2.3000 -0.5670 5.6690 2.3000 -0.5670 ] } } ] } DEF dogSensor TouchSensor { description "Touch to Open Hatch" } ] ROUTE dogSensor.touchTime TO spinTimer.startTime ROUTE dogSensor.touchTime TO dogTimer.startTime } ] ROUTE openDog.value_changed TO openDogSpin.rotation } DEF BridgeDoorStb Shape { appearance Appearance { texture ImageTexture { url [ "wood02.jpg" "https://savage.nps.edu/Savage/ShipsMilitary/PatrolCraftNavalAcademyBrazil/wood.jpg" ] } } geometry DEF doorIFS IndexedFaceSet { coordIndex [ 0 4 5 1 -1 1 5 6 2 -1 2 6 7 3 -1 4 0 3 7 -1 ] creaseAngle 1.5 solid FALSE coord Coordinate { point [ 5.575 2 -0.55 5.825 2 -0.55 5.825 2.55 -0.55 5.575 2.55 -0.55 5.6 2.325 -0.55 5.8 2.325 -0.55 5.8 2.525 -0.55 5.6 2.525 -0.55 ] } } } DEF window Shape { appearance Appearance { material DEF Glass Material { ambientIntensity 0.37773332 diffuseColor 0.0 0.36666667 0.76666665 shininess 0.76666665 specularColor 1.0 1.0 1.0 transparency 0.58 } } geometry DEF windowIFS IndexedFaceSet { coordIndex [ 0 1 2 3 -1 ] creaseAngle 1.5 solid FALSE coord Coordinate { point [ 5.6 2.325 -0.55 5.8 2.325 -0.55 5.8 2.525 -0.55 5.6 2.525 -0.55 ] } } } ] ROUTE openDoor.value_changed TO openDoorTransform.rotation }