#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" "House.x3d" META "description" "Final Project MV4204" META "creator" "Seksit Siripala" META "created" "5 September 2002" META "modified" "20 October 2019" META "identifier" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/House.x3d" META "generator" "X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit" META "license" "../../license.html" # [Scene] ========== ========== ========== WorldInfo { title "House.x3d" } Transform { children [ Background { backUrl [ "mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png" ] frontUrl [ "mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png" ] groundAngle [ 1.309 1.570796 ] groundColor [ 0.1 0.1 0 0.2 0.6 0.4 0.2 0.7 0.3 ] leftUrl [ "mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png" ] rightUrl [ "mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png" ] skyAngle [ 1.309 1.571 ] skyColor [ 0 0.2 0.7 0 0.5 1 1 1 1 ] } ] } Viewpoint { description "front" orientation 0 1 0 -0.57 position -15 3 25 } Viewpoint { description "fromLeft" orientation 0.07 1 0.07 -1.3 position -15 4 -2.5 } Viewpoint { description "fromRight" orientation 0 1 0 1.57 position 35 4 2.5 } Viewpoint { description "inside1" orientation 0 1 0 1.20 position 8.9 2.0 -3.2 } Viewpoint { description "inside2" orientation 0 1 0 0.50 position -0.15 1.3 -7.5 } DEF Front1 Group { children [ DEF wall1 Transform { translation -2.0 1 -3.0 children [ DEF part1 Shape { geometry Box { size 2 2 0.1 } appearance DEF wallAppearance Appearance { material Material { } texture DEF yellowBrick ImageTexture { url [ "yellowBrick.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/yellowBrick.jpg" ] } } } ] } DEF DOOR Transform { center 0.5 0 0 translation -0.5 1 -3.0 children [ DEF door Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture DEF wood ImageTexture { url [ "wood.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/wood.jpg" ] } } } Transform { translation -0.4 0 0.05 children [ DEF knubOut Shape { geometry DEF doorKnub Sphere { radius 0.05 } appearance DEF knub_ap Appearance { material Material { } } } DEF Clock TimeSensor { cycleInterval 3 } DEF doorPathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 -0.7 0 1 0 -1.0 0 1 0 -1.2 ] } DEF touchOpen TouchSensor { description "touch to open" } ] ROUTE touchOpen.touchTime TO Clock.set_startTime ROUTE Clock.fraction_changed TO doorPathOpen.set_fraction ROUTE doorPathOpen.value_changed TO DOOR.set_rotation } Transform { translation -0.4 0 -0.05 children [ USE knubOut DEF ClockClose TimeSensor { cycleInterval 2 } DEF doorPathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 -1.2 0 1 0 -1.0 0 1 0 -0.7 0 1 0 0 ] } DEF touchClose TouchSensor { description "touch to close" } ] ROUTE touchClose.touchTime TO ClockClose.set_startTime ROUTE ClockClose.fraction_changed TO doorPathClose.set_fraction ROUTE doorPathClose.value_changed TO DOOR.set_rotation } ] } DEF wall2 Transform { translation -1.5 3 -3.0 children [ DEF part2 Shape { geometry Box { size 3 2 0.1 } appearance DEF wallpart Appearance { material Material { diffuseColor 0.8 0.8 0.4 } texture USE yellowBrick } } ] } ] } DEF Front2 Group { children [ Transform { translation 2.25 3.25 0 children [ DEF partFront211 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } Transform { translation 6.75 3.25 0 children [ DEF partFront212 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } Transform { translation 2.25 0.75 0 children [ DEF partFront221 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } Transform { translation 6.75 0.75 0 children [ DEF partFront222 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } Transform { translation 1.25 2 0 children [ DEF partFront231 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } Transform { translation 4.5 2 0 children [ DEF partFront232 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } Transform { translation 7.75 2 0 children [ DEF partFront233 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF WINDOW1 Transform { translation 3 2 0.05 children [ DEF window1 Shape { geometry Box { size 1 1 0.075 } appearance DEF windowAppearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 -0.1 children [ DEF window1knubopen Shape { geometry DEF window1Knub Sphere { radius 0.05 } appearance Appearance { material Material { } } } ] } DEF window1Slide PlaneSensor { description "click and drag to move window" maxPosition 3 2 minPosition 2.1 2 } ] ROUTE window1Slide.translation_changed TO WINDOW1.set_translation } DEF WINDOW2 Transform { translation 6 2 0.05 children [ DEF window2 Shape { geometry Box { size 1 1 0.075 } appearance DEF windowApp Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 -0.1 children [ DEF window2knubopen Shape { geometry DEF window2Knub Sphere { radius 0.05 } appearance Appearance { material Material { } } } ] } DEF window2Slide PlaneSensor { description "click and drag to move window" maxPosition 6 2 minPosition 5.1 2 } ] ROUTE window2Slide.translation_changed TO WINDOW2.set_translation } ] } DEF Right Group { children [ DEF rightwall11 Transform { rotation 0 1 0 1.57 translation 9 3.25 -1.5 children [ DEF right11 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall12 Transform { rotation 0 1 0 1.57 translation 9 3.25 -4.5 children [ DEF right12 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall13 Transform { rotation 0 1 0 1.57 translation 9 3.25 -7.5 children [ DEF right13 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall14 Transform { rotation 0 1 0 1.57 translation 9 3.25 -10.5 children [ DEF right14 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall21 Transform { rotation 0 1 0 1.57 translation 9 0.75 -1.5 children [ DEF right21 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall22 Transform { rotation 0 1 0 1.57 translation 9 0.75 -4.5 children [ DEF right22 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall23 Transform { rotation 0 1 0 1.57 translation 9 0.75 -7.5 children [ DEF right23 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall24 Transform { rotation 0 1 0 1.57 translation 9 0.75 -10.5 children [ DEF right24 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF rightwall31 Transform { rotation 0 1 0 1.57 translation 9 2 -1.25 children [ DEF right31 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF rightwall32 Transform { rotation 0 1 0 1.57 translation 9 2 -4.5 children [ DEF right32 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } DEF rightwall33 Transform { rotation 0 1 0 1.57 translation 9 2 -7.5 children [ DEF right33 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } DEF rightwall34 Transform { rotation 0 1 0 1.57 translation 9 2 -10.75 children [ DEF right34 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF RIGHTWINDOW1 Transform { rotation 0 1 0 1.57 translation 9 2 -3 children [ DEF rightwindow1 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation -0.4 0 -0.1 children [ DEF rightWindow1KnubOpen Shape { geometry DEF rightWindow1KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow1Clock TimeSensor { } DEF rightWindow1Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -3 9 2 -3.5 9 2 -3.9 ] } DEF rightWindow1Open TouchSensor { description "touch to open" } ] ROUTE rightWindow1Open.touchTime TO rightWindow1Clock.set_startTime ROUTE rightWindow1Clock.fraction_changed TO rightWindow1Pos.set_fraction ROUTE rightWindow1Pos.value_changed TO RIGHTWINDOW1.set_translation } Transform { translation -0.4 -0.2 -0.1 children [ DEF rightWindow1KnubClose Shape { geometry DEF rightWindow1Knub1 Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow1Clock2 TimeSensor { } DEF rightWindow1Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -3.9 9 2 -3.5 9 2 -3 ] } DEF rightWindow1Close TouchSensor { description "touch to close" } ] ROUTE rightWindow1Close.touchTime TO rightWindow1Clock2.set_startTime ROUTE rightWindow1Clock2.fraction_changed TO rightWindow1Pos2.set_fraction ROUTE rightWindow1Pos2.value_changed TO RIGHTWINDOW1.set_translation } ] } DEF RIGHTWINDOW2 Transform { rotation 0 1 0 1.57 translation 9 2 -6 children [ DEF rightwindow2 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation -0.4 0 -0.1 children [ DEF rightWindow2KnubOpen Shape { geometry DEF rightWindow2KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow2Clock TimeSensor { } DEF rightWindow2Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -6 9 2 -6.5 9 2 -6.9 ] } DEF rightWindow2Open TouchSensor { description "touch to open" } ] ROUTE rightWindow2Open.touchTime TO rightWindow2Clock.set_startTime ROUTE rightWindow2Clock.fraction_changed TO rightWindow2Pos.set_fraction ROUTE rightWindow2Pos.value_changed TO RIGHTWINDOW2.set_translation } Transform { translation -0.4 -0.2 -0.1 children [ DEF rightWindow2KnubClose Shape { geometry DEF rightWindow2Knub2 Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow2Clock2 TimeSensor { } DEF rightWindow2Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -6.9 9 2 -6.5 9 2 -6 ] } DEF rightWindow2Close TouchSensor { description "touch to close" } ] ROUTE rightWindow2Close.touchTime TO rightWindow2Clock2.set_startTime ROUTE rightWindow2Clock2.fraction_changed TO rightWindow2Pos2.set_fraction ROUTE rightWindow2Pos2.value_changed TO RIGHTWINDOW2.set_translation } ] } DEF RIGHTWINDOW3 Transform { rotation 0 1 0 1.57 translation 9 2 -9 children [ DEF rightwindow3 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation -0.4 0 -0.1 children [ DEF rightWindow3KnubOpen Shape { geometry DEF rightWindow3KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow3Clock TimeSensor { } DEF rightWindow3Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -9 9 2 -9.5 9 2 -9.9 ] } DEF rightWindow3Open TouchSensor { description "touch to open" } ] ROUTE rightWindow3Open.touchTime TO rightWindow3Clock.set_startTime ROUTE rightWindow3Clock.fraction_changed TO rightWindow3Pos.set_fraction ROUTE rightWindow3Pos.value_changed TO RIGHTWINDOW3.set_translation } Transform { translation -0.4 -0.2 -0.1 children [ DEF rightWindow3KnubClose Shape { geometry DEF rightWindow2KnubC Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF rightWindow3Clock2 TimeSensor { } DEF rightWindow3Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 9 2 -9.9 9 2 -9.5 9 2 -9 ] } DEF rightWindow3Close TouchSensor { description "touch to close" } ] ROUTE rightWindow3Close.touchTime TO rightWindow3Clock2.set_startTime ROUTE rightWindow3Clock2.fraction_changed TO rightWindow3Pos2.set_fraction ROUTE rightWindow3Pos2.value_changed TO RIGHTWINDOW3.set_translation } ] } ] } DEF back Group { children [ DEF backwall11 Transform { translation 7.5 3.25 -12 children [ DEF back11 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall12 Transform { translation 4.5 3.25 -12 children [ DEF back12 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall13 Transform { translation 1.5 3.25 -12 children [ DEF back13 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall14 Transform { translation -1.5 3.25 -12 children [ DEF back14 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall21 Transform { translation 7 0.75 -12 children [ DEF back21 Shape { geometry Box { size 2 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall22 Transform { translation 4.5 0.75 -12 children [ DEF back22 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall23 Transform { translation 1.5 0.75 -12 children [ DEF back23 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall24 Transform { translation -1.5 0.75 -12 children [ DEF back24 Shape { geometry Box { size 3 1.5 0.1 } appearance USE wallAppearance } ] } DEF backwall31 Transform { translation 7.25 2 -12 children [ DEF back31 Shape { geometry Box { size 1.5 1 0.1 } appearance USE wallAppearance } ] } DEF backtwall32 Transform { translation 4.5 2 -12 children [ DEF back32 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } DEF backwall33 Transform { translation 1.5 2 -12 children [ DEF back33 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } DEF backwall34 Transform { translation -1.75 2 -12 children [ DEF back34 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF backwall35 Transform { translation 8.5 2.25 -12 children [ DEF back35 Shape { geometry Box { size 1 0.5 0.1 } appearance USE wallAppearance } ] } DEF BACKDOOR Transform { center 0.5 0 0 translation 8.5 1 -12 children [ DEF backdoor Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture USE wood } } Transform { translation -0.4 0 -0.05 children [ DEF knubOutB Shape { geometry DEF doorKnubB Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF ClockBD TimeSensor { cycleInterval 3 } DEF doorBDPathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 0.7 0 1 0 1.0 0 1 0 1.2 ] } DEF touchOpenBD TouchSensor { description "touch to open" } ] ROUTE touchOpenBD.touchTime TO ClockBD.set_startTime ROUTE ClockBD.fraction_changed TO doorBDPathOpen.set_fraction ROUTE doorBDPathOpen.value_changed TO BACKDOOR.set_rotation } Transform { translation -0.4 0 0.05 children [ USE knubOut DEF ClockCloseBD TimeSensor { cycleInterval 2 } DEF doorBDPathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 1.2 0 1 0 1.0 0 1 0 0.7 0 1 0 0 ] } DEF touchCloseBD TouchSensor { description "touch to close" } ] ROUTE touchCloseBD.touchTime TO ClockCloseBD.set_startTime ROUTE ClockCloseBD.fraction_changed TO doorBDPathClose.set_fraction ROUTE doorBDPathClose.value_changed TO BACKDOOR.set_rotation } ] } DEF BACKWINDOW1 Transform { translation 6 2 -12 children [ DEF backwindow1 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 0.1 children [ DEF backWindow1KnubOpen Shape { geometry DEF backWindow1KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow1Clock TimeSensor { } DEF backWindow1Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 6 2 -12 5.5 2 -12 5.1 2 -12 ] } DEF backWindow1Open TouchSensor { description "touch to open" } ] ROUTE backWindow1Open.touchTime TO backWindow1Clock.set_startTime ROUTE backWindow1Clock.fraction_changed TO backWindow1Pos.set_fraction ROUTE backWindow1Pos.value_changed TO BACKWINDOW1.set_translation } Transform { translation 0.4 -0.2 0.1 children [ DEF backWindow1KnubClose Shape { geometry DEF rightWindow1KnubC Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow1Clock2 TimeSensor { } DEF backWindow1Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 5.1 2 -12 5.5 2 -12 6 2 -12 ] } DEF backWindow1Close TouchSensor { description "touch to close" } ] ROUTE backWindow1Close.touchTime TO backWindow1Clock2.set_startTime ROUTE backWindow1Clock2.fraction_changed TO backWindow1Pos2.set_fraction ROUTE backWindow1Pos2.value_changed TO BACKWINDOW1.set_translation } ] } DEF BACKWINDOW2 Transform { translation 3 2 -12 children [ DEF backwindow2 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 0.1 children [ DEF backWindow2KnubOpen Shape { geometry DEF backWindow2KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow2Clock TimeSensor { } DEF backWindow2Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 3 2 -12 2.5 2 -12 2.1 2 -12 ] } DEF backWindow2Open TouchSensor { description "touch to open" } ] ROUTE backWindow2Open.touchTime TO backWindow2Clock.set_startTime ROUTE backWindow2Clock.fraction_changed TO backWindow2Pos.set_fraction ROUTE backWindow2Pos.value_changed TO BACKWINDOW2.set_translation } Transform { translation 0.4 -0.2 0.1 children [ DEF backWindow2KnubClose Shape { geometry DEF backWindow2KnubC Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow2Clock2 TimeSensor { } DEF backWindow2Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 2.1 2 -12 2.5 2 -12 3 2 -12 ] } DEF backWindow2Close TouchSensor { description "touch to close" } ] ROUTE backWindow2Close.touchTime TO backWindow2Clock2.set_startTime ROUTE backWindow2Clock2.fraction_changed TO backWindow2Pos2.set_fraction ROUTE backWindow2Pos2.value_changed TO BACKWINDOW2.set_translation } ] } DEF BACKWINDOW3 Transform { translation 0 2 -12 children [ DEF backwindow3 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 0.1 children [ DEF backWindow3KnubOpen Shape { geometry DEF backWindow3KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow3Clock TimeSensor { } DEF backWindow3Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ 0 2 -12 -0.5 2 -12 -0.9 2 -12 ] } DEF backWindow3Open TouchSensor { description "touch to open" } ] ROUTE backWindow3Open.touchTime TO backWindow3Clock.set_startTime ROUTE backWindow3Clock.fraction_changed TO backWindow3Pos.set_fraction ROUTE backWindow3Pos.value_changed TO BACKWINDOW3.set_translation } Transform { translation 0.4 -0.2 0.1 children [ DEF backWindow3KnubClose Shape { geometry DEF rightWindow3KnubC Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF backWindow3Clock2 TimeSensor { } DEF backWindow3Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ -0.9 2 -12 -0.5 2 -12 0 2 -12 ] } DEF backWindow3Close TouchSensor { description "touch to close" } ] ROUTE backWindow3Close.touchTime TO backWindow3Clock2.set_startTime ROUTE backWindow3Clock2.fraction_changed TO backWindow3Pos2.set_fraction ROUTE backWindow3Pos2.value_changed TO BACKWINDOW3.set_translation } ] } ] } DEF left1 Group { children [ DEF leftwall11 Transform { rotation 0 1 0 1.57 translation -3 3.25 -5.25 children [ DEF left11 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } DEF leftwall12 Transform { rotation 0 1 0 1.57 translation -3 3.25 -9.75 children [ DEF left12 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } DEF leftwall21 Transform { rotation 0 1 0 1.57 translation -3 0.75 -5.25 children [ DEF left21 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } DEF leftwall22 Transform { rotation 0 1 0 1.57 translation -3 0.75 -9.75 children [ DEF left22 Shape { geometry Box { size 4.5 1.5 0.1 } appearance USE wallAppearance } ] } DEF leftwall31 Transform { rotation 0 1 0 1.57 translation -3 2 -4.25 children [ DEF left31 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF leftwall32 Transform { rotation 0 1 0 1.57 translation -3 2 -7.5 children [ DEF left32 Shape { geometry Box { size 2 1 0.1 } appearance USE wallAppearance } ] } DEF leftwall33 Transform { rotation 0 1 0 1.57 translation -3 2 -10.75 children [ DEF left33 Shape { geometry Box { size 2.5 1 0.1 } appearance USE wallAppearance } ] } DEF LEFTWINDOW1 Transform { rotation 0 1 0 1.57 translation -3 2 -6 children [ DEF leftwindow1 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 0.1 children [ DEF leftWindow1KnubOpen Shape { geometry DEF lefttWindow1KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF leftWindow1Clock TimeSensor { } DEF leftWindow1Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ -3 2 -6 -3 2 -5.5 -3 2 -5.1 ] } DEF leftWindow1Open TouchSensor { description "touch to open" } ] ROUTE leftWindow1Open.touchTime TO leftWindow1Clock.set_startTime ROUTE leftWindow1Clock.fraction_changed TO leftWindow1Pos.set_fraction ROUTE leftWindow1Pos.value_changed TO LEFTWINDOW1.set_translation } Transform { translation 0.4 -0.2 0.1 children [ DEF leftWindow1KnubClose Shape { geometry DEF leftWindow1Knub2 Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF leftWindow1Clock2 TimeSensor { } DEF leftWindow1Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ -3 2 -5.1 -3 2 -5.5 -3 2 -6 ] } DEF leftWindow1Close TouchSensor { description "touch to close" } ] ROUTE leftWindow1Close.touchTime TO leftWindow1Clock2.set_startTime ROUTE leftWindow1Clock2.fraction_changed TO leftWindow1Pos2.set_fraction ROUTE leftWindow1Pos2.value_changed TO LEFTWINDOW1.set_translation } ] } DEF LEFTWINDOW2 Transform { rotation 0 1 0 1.57 translation -3 2 -9 children [ DEF leftwindow2 Shape { geometry Box { size 1 1 0.075 } appearance Appearance { material Material { diffuseColor 0.7 0.9 0.9 transparency 0.5 } } } Transform { translation 0.4 0 0.1 children [ DEF leftWindow2KnubOpen Shape { geometry DEF lefttWindow2KnubO Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF leftWindow2Clock TimeSensor { } DEF leftWindow2Pos PositionInterpolator { key [ 0 0.5 1 ] keyValue [ -3 2 -9 -3 2 -8.5 -3 2 -8.1 ] } DEF leftWindow2Open TouchSensor { description "touch to open" } ] ROUTE leftWindow2Open.touchTime TO leftWindow2Clock.set_startTime ROUTE leftWindow2Clock.fraction_changed TO leftWindow2Pos.set_fraction ROUTE leftWindow2Pos.value_changed TO LEFTWINDOW2.set_translation } Transform { translation 0.4 -0.2 0.1 children [ DEF leftWindow2KnubClose Shape { geometry DEF rightWindow2Knub1 Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF leftWindow2Clock2 TimeSensor { } DEF leftWindow2Pos2 PositionInterpolator { key [ 0 0.5 1 ] keyValue [ -3 2 -8.1 -3 2 -8.5 -3 2 -9 ] } DEF leftWindow2Close TouchSensor { description "touch to close" } ] ROUTE leftWindow2Close.touchTime TO leftWindow2Clock2.set_startTime ROUTE leftWindow2Clock2.fraction_changed TO leftWindow2Pos2.set_fraction ROUTE leftWindow2Pos2.value_changed TO LEFTWINDOW2.set_translation } ] } ] } DEF left2 Group { children [ DEF left2wall11 Transform { rotation 0 1 0 1.57 translation 0 3 -1.5 children [ DEF left2wall1 Shape { geometry Box { size 3 2 0.1 } appearance DEF left2wall1Appearance Appearance { material Material { } texture USE yellowBrick } } ] } DEF left2wall12 Transform { rotation 0 1 0 1.57 translation 0 1 -1.5 children [ DEF left2wall2 Shape { geometry Box { size 3 2 0.1 } appearance DEF left2wall2Appearance Appearance { material Material { } texture USE yellowBrick } } ] } ] } DEF FLOOR Group { children [ DEF floor1 Transform { translation 4.5 0.005 -6 children [ DEF floorshape1 Shape { geometry Box { size 9 0.01 12 } appearance DEF floorappearance Appearance { material Material { diffuseColor 0.9 0.9 0.9 } } } ] } DEF floor2 Transform { translation -1.5 0.005 -7.5 children [ DEF floorshape2 Shape { geometry Box { size 3 0.01 9 } appearance USE floorappearance } ] } ] } DEF INSIDE Group { children [ Transform { translation -1.25 1 -7.5 children [ DEF wall1roomleft Shape { geometry Box { size 3.5 2 0.1 } appearance USE wallAppearance } ] } Transform { translation -0.75 3 -7.5 children [ DEF left Shape { geometry Box { size 4.5 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 1.5 3 -9.75 children [ Shape { geometry Box { size 4.5 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 1.5 1 -9.75 children [ Shape { geometry Box { size 4.5 2 0.1 } appearance USE wallAppearance } ] } DEF DOORROOMLEFT Transform { center 0.5 0 0 translation 1 1 -7.5 children [ DEF doorroomleft Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture USE wood } } Transform { translation -0.4 0 0.05 children [ USE knubOut DEF Clockdoorroomleft TimeSensor { cycleInterval 3 } DEF doorroomleftPathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 -0.7 0 1 0 -1.0 0 1 0 -1.2 ] } DEF touchOpenroomleft TouchSensor { description "touch to open" } ] ROUTE touchOpenroomleft.touchTime TO Clockdoorroomleft.set_startTime ROUTE Clockdoorroomleft.fraction_changed TO doorroomleftPathOpen.set_fraction ROUTE doorroomleftPathOpen.value_changed TO DOORROOMLEFT.set_rotation } Transform { translation -0.4 0 -0.05 children [ USE knubOut DEF ClockCloseroomleft TimeSensor { cycleInterval 2 } DEF doorroomleftPathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 -1.2 0 1 0 -1.0 0 1 0 -0.7 0 1 0 0 ] } DEF touchCloseroomleft TouchSensor { description "touch to close" } ] ROUTE touchCloseroomleft.touchTime TO ClockCloseroomleft.set_startTime ROUTE ClockCloseroomleft.fraction_changed TO doorroomleftPathClose.set_fraction ROUTE doorroomleftPathClose.value_changed TO DOORROOMLEFT.set_rotation } ] } Transform { rotation 0 1 0 1.57 translation 7 3 -9.70 children [ Shape { geometry Box { size 4.50 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 7 1 -9.70 children [ Shape { geometry Box { size 4.50 2 0.1 } appearance USE wallAppearance } ] } Transform { translation 4.25 3 -7.5 children [ Shape { geometry Box { size 5.5 2 0.1 } appearance USE wallAppearance } ] } Transform { translation 3.75 1 -7.5 children [ Shape { geometry Box { size 4.5 2 0.1 } appearance USE wallAppearance } ] } DEF DOORROOMRIGHT Transform { center 0.5 0 0 translation 6.5 1 -7.5 children [ DEF doorroomright Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture USE wood } } Transform { translation -0.4 0 0.05 children [ USE knubOut DEF Clockdoorroomright TimeSensor { cycleInterval 3 } DEF doorroomrightPathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 -0.4 0 1 0 -0.7 0 1 0 -1.0 ] } DEF touchOpenroomright TouchSensor { description "touch to open" } ] ROUTE touchOpenroomright.touchTime TO Clockdoorroomright.set_startTime ROUTE Clockdoorroomright.fraction_changed TO doorroomrightPathOpen.set_fraction ROUTE doorroomrightPathOpen.value_changed TO DOORROOMRIGHT.set_rotation } Transform { translation -0.4 0 -0.05 children [ USE knubOut DEF ClockCloseroomright TimeSensor { cycleInterval 2 } DEF doorroomrightPathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 -1.0 0 1 0 -0.7 0 1 0 -0.4 0 1 0 0 ] } DEF touchCloseroomright TouchSensor { description "touch to close" } ] ROUTE touchCloseroomright.touchTime TO ClockCloseroomright.set_startTime ROUTE ClockCloseroomright.fraction_changed TO doorroomrightPathClose.set_fraction ROUTE doorroomrightPathClose.value_changed TO DOORROOMRIGHT.set_rotation } ] } Transform { translation 2.25 3 -3 children [ Shape { geometry Box { size 4.5 2 0.1 } appearance USE wallAppearance } ] } Transform { translation 1.75 1 -3 children [ Shape { geometry Box { size 3.5 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 4.45 1 -1.50 children [ Shape { geometry Box { size 2.90 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 4.45 3 -1.50 children [ Shape { geometry Box { size 2.90 2 0.1 } appearance USE wallAppearance } ] } DEF FRONTROOMDOOR Transform { center 0.5 0 0 translation 4 1 -3 children [ DEF frontroomdoor Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture USE wood } } Transform { translation -0.4 0 -0.05 children [ DEF knubOutfrontroom Shape { geometry DEF doorKnubFR Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF ClockFR TimeSensor { cycleInterval 3 } DEF doorFRPathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 0.4 0 1 0 0.7 0 1 0 0.9 ] } DEF touchOpenFR TouchSensor { description "touch to open" } ] ROUTE touchOpenFR.touchTime TO ClockFR.set_startTime ROUTE ClockFR.fraction_changed TO doorFRPathOpen.set_fraction ROUTE doorFRPathOpen.value_changed TO FRONTROOMDOOR.set_rotation } Transform { translation -0.4 0 0.05 children [ USE knubOut DEF ClockCloseFR TimeSensor { cycleInterval 2 } DEF doorFRPathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0.9 0 1 0 0.7 0 1 0 0.4 0 1 0 0 ] } DEF touchCloseFR TouchSensor { description "touch to close" } ] ROUTE touchCloseFR.touchTime TO ClockCloseFR.set_startTime ROUTE ClockCloseFR.fraction_changed TO doorFRPathClose.set_fraction ROUTE doorFRPathClose.value_changed TO FRONTROOMDOOR.set_rotation } ] } Transform { translation 5.75 3 -3 children [ Shape { geometry Box { size 2.5 2 0.1 } appearance USE wallAppearance } ] } Transform { translation 5.75 1 -3 children [ Shape { geometry Box { size 2.5 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 6.95 3 -1.50 children [ Shape { geometry Box { size 2.90 2 0.1 } appearance USE wallAppearance } ] } Transform { rotation 0 1 0 1.57 translation 6.95 1 -0.95 children [ Shape { geometry Box { size 2.0 2 0.1 } appearance USE wallAppearance } ] } DEF FRONTROOMDOOR2 Transform { center 0.5 0 0 rotation 0 1 0 1.57 translation 6.45 1 -2.95 children [ DEF frontroomdoor2 Shape { geometry Box { size 1 2 0.1 } appearance Appearance { material Material { diffuseColor 0.8 0.5 0 } texture USE wood } } Transform { translation -0.4 0 -0.05 children [ DEF knubOutfrontroom2 Shape { geometry DEF doorKnubFR2 Sphere { radius 0.05 } appearance Appearance { material Material { } } } DEF ClockFR2 TimeSensor { cycleInterval 3 } DEF doorFR2PathOpen OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0 0 1 0 0.4 0 1 0 0.7 0 1 0 0.9 ] } DEF touchOpenFR2 TouchSensor { description "touch to open" } ] ROUTE touchOpenFR2.touchTime TO ClockFR2.set_startTime ROUTE ClockFR2.fraction_changed TO doorFR2PathOpen.set_fraction ROUTE doorFR2PathOpen.value_changed TO FRONTROOMDOOR2.set_rotation } Transform { translation -0.4 0 0.05 children [ USE knubOut DEF ClockCloseFR2 TimeSensor { cycleInterval 2 } DEF doorFR2PathClose OrientationInterpolator { key [ 0 0.34 0.68 1 ] keyValue [ 0 1 0 0.9 0 1 0 0.7 0 1 0 0.4 0 1 0 0 ] } DEF touchCloseFR2 TouchSensor { description "touch to close" } ] ROUTE touchCloseFR2.touchTime TO ClockCloseFR2.set_startTime ROUTE ClockCloseFR2.fraction_changed TO doorFR2PathClose.set_fraction ROUTE doorFR2PathClose.value_changed TO FRONTROOMDOOR2.set_rotation } ] } ] } DEF roofandcelling Group { children [ DEF roof1 Transform { center 0 4 0 rotation 1 0 0 1 scale 1 1 0.01 translation 3 4.1 -5.8 children [ DEF roofpart1 Shape { geometry Cone { bottomRadius 6.1 height 7.3 } appearance DEF roofapp Appearance { material Material { diffuseColor 0 0.2 1 } texture DEF wellWall ImageTexture { url [ "wellWall.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/wellWall.jpg" ] } } } ] } DEF roof2 Transform { center 0 4 0 rotation 1 0 0 -1 scale 1 1 0.01 translation 3 4.1 -6.4 children [ USE roofpart1 ] } DEF roof3 Transform { center 0 4 0 rotation 0 0 1 -1 scale 0.02 1 1 translation 3.4 4.1 -6.1 children [ USE roofpart1 ] } DEF roof4 Transform { center 0 4 0 rotation 0 0 1 1 scale 0.02 1 1 translation 2.6 4.1 -6.1 children [ USE roofpart1 ] } DEF celling1 Transform { translation 3 4.075 -6 children [ DEF celling1shape Shape { geometry Box { size 12 0.05 12 } appearance DEF cellingapp Appearance { material Material { diffuseColor 0 0.2 1 } texture USE wellWall } } ] } ] } Group { children [ Transform { translation -6 0 0 children [ Inline { url [ "Tree.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Tree.x3d" "Tree.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Tree.wrl" ] } ] } Transform { rotation 0 1 0 -1.57 scale 0.5 0.5 0.5 translation -2.5 0.5 -5.5 children [ Inline { url [ "Desk.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Desk.x3d" "Desk.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Desk.wrl" ] } ] } Transform { rotation 0 1 0 1.57 scale 0.5 0.5 0.5 translation -2.5 1.4 -5.5 children [ Inline { url [ "TV.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/TV.x3d" "TV.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/TV.wrl" ] } ] } Transform { rotation 0 1 0 -3.14 scale 0.35 0.35 0.35 translation 1 0.10 -5.5 children [ Inline { url [ "Sofa.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Sofa.x3d" "Sofa.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Sofa.wrl" ] } ] } Transform { scale 0.5 0.5 0.5 translation 4.5 1 -5.5 children [ Inline { url [ "Table.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Table.x3d" "Table.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Table.wrl" ] } ] } Transform { scale 0.25 0.25 0.25 translation 5.5 0.50 -5.5 children [ DEF Chair Inline { url [ "Chair.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Chair.x3d" "Chair.wrl" "http://web.nps.navy.mil/~brutzmanChair/Savage/Buildings/HouseSeksitSiripala/Chair.wrl" ] } ] } Transform { rotation 0 1 0 3.14 scale 0.25 0.25 0.25 translation 3.5 0.50 -5.5 children [ USE Chair ] } Transform { rotation 0 1 0 3.14 scale 0.40 0.40 0.40 translation 3.25 0.32 -11 children [ DEF Bed Inline { url [ "Bed.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Bed.x3d" "Bed.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Bed.wrl" ] } ] } Transform { rotation 0 1 0 3.14 scale 0.40 0.40 0.40 translation -1.25 0.32 -11 children [ USE Bed ] } Transform { rotation 0 1 0 1.57 scale 0.7 0.7 0.7 translation 7.35 0.35 -8.2 children [ Inline { url [ "Cabinet.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Cabinet.x3d" "Cabinet.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Cabinet.wrl" ] } ] } Transform { rotation 0 1 0 1.57 translation 7.35 0.75 -9.5 children [ Inline { url [ "Refrigerator.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Refrigerator.x3d" "Refrigerator.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Refrigerator.wrl" ] } ] } Transform { rotation 0 1 0 3.14 scale 0.25 0.25 0.25 translation 6 0.75 -0.5 children [ Inline { url [ "Toilet.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Toilet.x3d" "Toilet.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Toilet.wrl" ] } DEF toilet Sound { location -0.957652 0.102433 0.970123 minBack 12.0 minFront 12.0 priority 1.0 source DEF Sound1clip_5 AudioClip { description "toilet flushing sound" url [ "toilet.wav" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/toilet.wav" ] } } ] } ] }