@prefix : . @prefix owl: . @prefix rdf: . @prefix rdfs: . @prefix schema: . @prefix dcterms: . @prefix xsd: . @prefix x3d: . @prefix x3do: . :X3D a owl:NamedIndividual, x3do:X3D ; x3do:hasHead :head ; x3do:hasScene :Scene ; x3do:profile 'Immersive' ; x3do:version '3.0' ; x3do:noNamespaceSchemaLocation 'https://www.web3d.org/specifications/x3d-3.0.xsd' . :head a owl:NamedIndividual, x3do:head ; x3do:hasParent :X3D ; x3do:hasMeta :meta_1_1, :meta_1_2, :meta_1_3, :meta_1_4, :meta_1_5, :meta_1_6, :meta_1_7, :meta_1_8 . :meta_1_1 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content 'House.x3d' ; x3do:name 'title' . :meta_1_2 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content 'Final Project MV4204' ; x3do:name 'description' . :meta_1_3 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content 'Seksit Siripala' ; x3do:name 'creator' . :meta_1_4 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content '5 September 2002' ; x3do:name 'created' . :meta_1_5 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content '20 October 2019' ; x3do:name 'modified' . :meta_1_6 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content 'https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/House.x3d' ; x3do:name 'identifier' . :meta_1_7 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content 'X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit' ; x3do:name 'generator' . :meta_1_8 a owl:NamedIndividual, x3do:meta ; x3do:hasParent :head ; x3do:content '../../license.html' ; x3do:name 'license' . :meta dcterms:title "House.x3d" . :meta dcterms:description "Final Project MV4204" . :meta dcterms:creator "Seksit Siripala" . :meta dcterms:created "5 September 2002" . :meta dcterms:modified "20 October 2019" . :meta dcterms:identifier "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/House.x3d" . :meta dcterms:generator "X3D-Edit 3.2, https://savage.nps.edu/X3D-Edit" . :meta dcterms:license "../../license.html" . :Scene a owl:NamedIndividual, x3do:Scene ; x3do:hasParent :X3D ; x3do:hasChildren :WorldInfo_2_1, :Transform_2_2, :Viewpoint_2_3, :Viewpoint_2_4, :Viewpoint_2_5, :Viewpoint_2_6, :Viewpoint_2_7, :Front1, :Front2, :Right, :back, :left1, :left2, :FLOOR, :INSIDE, :roofandcelling, :Group_2_17 . :WorldInfo_2_1 a owl:NamedIndividual, x3do:WorldInfo ; x3do:hasParent :Scene ; x3do:title 'House.x3d' . :Transform_2_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Scene ; x3do:hasChildren :Background_2_2_1 . :Background_2_2_1 a owl:NamedIndividual, x3do:Background ; x3do:hasParent :Transform_2_2 ; x3do:backUrl '"mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png"' ; x3do:frontUrl '"mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png"' ; x3do:groundAngle ( 1.309 1.570796 ) ; x3do:groundColor ( 0.1 0.1 0 0.2 0.6 0.4 0.2 0.7 0.3 ) ; x3do:leftUrl '"mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png"' ; x3do:rightUrl '"mountns.png" "https://www.web3d.org/x3d/content/examples/Vrml2Sourcebook/mountns.png"' ; x3do:skyAngle ( 1.309 1.571 ) ; x3do:skyColor ( 0 0.2 0.7 0 0.5 1 1 1 1 ) . :Viewpoint_2_3 a owl:NamedIndividual, x3do:Viewpoint ; x3do:hasParent :Scene ; x3do:description 'front' ; x3do:orientation ( 0 1 0 -0.57 ) ; x3do:position ( -15 3 25 ) . :Viewpoint_2_4 a owl:NamedIndividual, x3do:Viewpoint ; x3do:hasParent :Scene ; x3do:description 'fromLeft' ; x3do:orientation ( 0.07 1 0.07 -1.3 ) ; x3do:position ( -15 4 -2.5 ) . :Viewpoint_2_5 a owl:NamedIndividual, x3do:Viewpoint ; x3do:hasParent :Scene ; x3do:description 'fromRight' ; x3do:orientation ( 0 1 0 1.57 ) ; x3do:position ( 35 4 2.5 ) . :Viewpoint_2_6 a owl:NamedIndividual, x3do:Viewpoint ; x3do:hasParent :Scene ; x3do:description 'inside1' ; x3do:orientation ( 0 1 0 1.20 ) ; x3do:position ( 8.9 2.0 -3.2 ) . :Viewpoint_2_7 a owl:NamedIndividual, x3do:Viewpoint ; x3do:hasParent :Scene ; x3do:description 'inside2' ; x3do:orientation ( 0 1 0 0.50 ) ; x3do:position ( -0.15 1.3 -7.5 ) . :Front1 a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :wall1, :DOOR, :wall2 ; x3do:DEF 'Front1' . :wall1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front1 ; x3do:hasChildren :part1 ; x3do:DEF 'wall1' ; x3do:translation ( -2.0 1 -3.0 ) . :part1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :wall1 ; x3do:hasGeometry :Box_2_8_1_1_1 ; x3do:hasAppearance :wallAppearance ; x3do:DEF 'part1' . :Box_2_8_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :part1 ; x3do:size ( 2 2 0.1 ) . :wallAppearance a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :part1 ; x3do:hasMaterial :Material_2_8_1_1_2_1 ; x3do:hasTexture :yellowBrick ; x3do:DEF 'wallAppearance' . :Material_2_8_1_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :wallAppearance . :yellowBrick a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :wallAppearance ; x3do:DEF 'yellowBrick' ; x3do:url '"yellowBrick.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/yellowBrick.jpg"' . :DOOR a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front1 ; x3do:hasChildren :door, :Transform_2_8_2_2, :Transform_2_8_2_3 ; x3do:DEF 'DOOR' ; x3do:center ( 0.5 0 0 ) ; x3do:translation ( -0.5 1 -3.0 ) . :door a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :DOOR ; x3do:hasGeometry :Box_2_8_2_1_1 ; x3do:hasAppearance :Appearance_2_8_2_1_2 ; x3do:DEF 'door' . :Box_2_8_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :door ; x3do:size ( 1 2 0.1 ) . :Appearance_2_8_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :door ; x3do:hasMaterial :Material_2_8_2_1_2_1 ; x3do:hasTexture :wood . :Material_2_8_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_8_2_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_8_2_1_2 ; x3do:DEF 'wood' ; x3do:url '"wood.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/wood.jpg"' . :Transform_2_8_2_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOOR ; x3do:hasChildren :knubOut, :Clock, :doorPathOpen, :touchOpen ; x3do:hasROUTE :ROUTE_2_8_2_2_5, :ROUTE_2_8_2_2_6, :ROUTE_2_8_2_2_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_8_2_2 ; x3do:hasGeometry :doorKnub ; x3do:hasAppearance :knub_ap ; x3do:DEF 'knubOut' . :doorKnub a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :knubOut ; x3do:DEF 'doorKnub' ; x3do:radius 0.05 . :knub_ap a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :knubOut ; x3do:hasMaterial :Material_2_8_2_2_1_2_1 ; x3do:DEF 'knub_ap' . :Material_2_8_2_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :knub_ap . :Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_8_2_2 ; x3do:DEF 'Clock' ; x3do:cycleInterval '3' . :doorPathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_8_2_2 ; x3do:DEF 'doorPathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 -0.7 0 1 0 -1.0 0 1 0 -1.2 ) . :touchOpen a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_8_2_2 ; x3do:DEF 'touchOpen' ; x3do:description 'touch to open' . :ROUTE_2_8_2_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpen' ; x3do:toField 'set_startTime' ; x3do:toNode 'Clock' . :ROUTE_2_8_2_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorPathOpen' . :ROUTE_2_8_2_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorPathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOOR' . :Transform_2_8_2_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOOR ; x3do:hasChildren :knubOut-USE-1, :ClockClose, :doorPathClose, :touchClose ; x3do:hasROUTE :ROUTE_2_8_2_3_5, :ROUTE_2_8_2_3_6, :ROUTE_2_8_2_3_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOut-USE-1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_8_2_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockClose a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_8_2_3 ; x3do:DEF 'ClockClose' ; x3do:cycleInterval '2' . :doorPathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_8_2_3 ; x3do:DEF 'doorPathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 -1.2 0 1 0 -1.0 0 1 0 -0.7 0 1 0 0 ) . :touchClose a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_8_2_3 ; x3do:DEF 'touchClose' ; x3do:description 'touch to close' . :ROUTE_2_8_2_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchClose' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockClose' . :ROUTE_2_8_2_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockClose' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorPathClose' . :ROUTE_2_8_2_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_8_2_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorPathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOOR' . :wall2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front1 ; x3do:hasChildren :part2 ; x3do:DEF 'wall2' ; x3do:translation ( -1.5 3 -3.0 ) . :part2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :wall2 ; x3do:hasGeometry :Box_2_8_3_1_1 ; x3do:hasAppearance :wallpart ; x3do:DEF 'part2' . :Box_2_8_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :part2 ; x3do:size ( 3 2 0.1 ) . :wallpart a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :part2 ; x3do:hasMaterial :Material_2_8_3_1_2_1 ; x3do:hasTexture :yellowBrick-USE-1 ; x3do:DEF 'wallpart' . :Material_2_8_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :wallpart ; x3do:diffuseColor ( 0.8 0.8 0.4 ) . :yellowBrick-USE-1 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :wallpart ; owl:sameAs :yellowBrick . # DEF matching this USE :Front2 a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :Transform_2_9_1, :Transform_2_9_2, :Transform_2_9_3, :Transform_2_9_4, :Transform_2_9_5, :Transform_2_9_6, :Transform_2_9_7, :WINDOW1, :WINDOW2 ; x3do:DEF 'Front2' . :Transform_2_9_1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront211 ; x3do:translation ( 2.25 3.25 0 ) . :partFront211 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_1 ; x3do:hasGeometry :Box_2_9_1_1_1 ; x3do:hasAppearance :wallAppearance-USE-1 ; x3do:DEF 'partFront211' . :Box_2_9_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront211 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-1 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront211 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront212 ; x3do:translation ( 6.75 3.25 0 ) . :partFront212 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_2 ; x3do:hasGeometry :Box_2_9_2_1_1 ; x3do:hasAppearance :wallAppearance-USE-2 ; x3do:DEF 'partFront212' . :Box_2_9_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront212 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront212 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront221 ; x3do:translation ( 2.25 0.75 0 ) . :partFront221 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_3 ; x3do:hasGeometry :Box_2_9_3_1_1 ; x3do:hasAppearance :wallAppearance-USE-3 ; x3do:DEF 'partFront221' . :Box_2_9_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront221 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-3 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront221 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_4 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront222 ; x3do:translation ( 6.75 0.75 0 ) . :partFront222 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_4 ; x3do:hasGeometry :Box_2_9_4_1_1 ; x3do:hasAppearance :wallAppearance-USE-4 ; x3do:DEF 'partFront222' . :Box_2_9_4_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront222 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-4 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront222 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_5 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront231 ; x3do:translation ( 1.25 2 0 ) . :partFront231 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_5 ; x3do:hasGeometry :Box_2_9_5_1_1 ; x3do:hasAppearance :wallAppearance-USE-5 ; x3do:DEF 'partFront231' . :Box_2_9_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront231 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-5 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront231 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_6 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront232 ; x3do:translation ( 4.5 2 0 ) . :partFront232 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_6 ; x3do:hasGeometry :Box_2_9_6_1_1 ; x3do:hasAppearance :wallAppearance-USE-6 ; x3do:DEF 'partFront232' . :Box_2_9_6_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront232 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-6 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront232 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_9_7 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :partFront233 ; x3do:translation ( 7.75 2 0 ) . :partFront233 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_7 ; x3do:hasGeometry :Box_2_9_7_1_1 ; x3do:hasAppearance :wallAppearance-USE-7 ; x3do:DEF 'partFront233' . :Box_2_9_7_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :partFront233 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-7 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :partFront233 ; owl:sameAs :wallAppearance . # DEF matching this USE :WINDOW1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :window1, :Transform_2_9_8_2, :window1Slide ; x3do:hasROUTE :ROUTE_2_9_8_4 ; x3do:DEF 'WINDOW1' ; x3do:translation ( 3 2 0.05 ) . :window1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :WINDOW1 ; x3do:hasGeometry :Box_2_9_8_1_1 ; x3do:hasAppearance :windowAppearance ; x3do:DEF 'window1' . :Box_2_9_8_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :window1 ; x3do:size ( 1 1 0.075 ) . :windowAppearance a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :window1 ; x3do:hasMaterial :Material_2_9_8_1_2_1 ; x3do:DEF 'windowAppearance' . :Material_2_9_8_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :windowAppearance ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_9_8_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :WINDOW1 ; x3do:hasChildren :window1knubopen ; x3do:translation ( 0.4 0 -0.1 ) . :window1knubopen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_8_2 ; x3do:hasGeometry :window1Knub ; x3do:hasAppearance :Appearance_2_9_8_2_1_2 ; x3do:DEF 'window1knubopen' . :window1Knub a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :window1knubopen ; x3do:DEF 'window1Knub' ; x3do:radius 0.05 . :Appearance_2_9_8_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :window1knubopen ; x3do:hasMaterial :Material_2_9_8_2_1_2_1 . :Material_2_9_8_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_9_8_2_1_2 . :window1Slide a owl:NamedIndividual, x3do:PlaneSensor ; x3do:hasParent :WINDOW1 ; x3do:DEF 'window1Slide' ; x3do:description 'click and drag to move window' ; x3do:maxPosition ( 3 2 ) ; x3do:minPosition ( 2.1 2 ) . :ROUTE_2_9_8_4 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :WINDOW1 ; x3do:fromField 'translation_changed' ; x3do:fromNode 'window1Slide' ; x3do:toField 'set_translation' ; x3do:toNode 'WINDOW1' . :WINDOW2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Front2 ; x3do:hasChildren :window2, :Transform_2_9_9_2, :window2Slide ; x3do:hasROUTE :ROUTE_2_9_9_4 ; x3do:DEF 'WINDOW2' ; x3do:translation ( 6 2 0.05 ) . :window2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :WINDOW2 ; x3do:hasGeometry :Box_2_9_9_1_1 ; x3do:hasAppearance :windowApp ; x3do:DEF 'window2' . :Box_2_9_9_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :window2 ; x3do:size ( 1 1 0.075 ) . :windowApp a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :window2 ; x3do:hasMaterial :Material_2_9_9_1_2_1 ; x3do:DEF 'windowApp' . :Material_2_9_9_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :windowApp ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_9_9_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :WINDOW2 ; x3do:hasChildren :window2knubopen ; x3do:translation ( 0.4 0 -0.1 ) . :window2knubopen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_9_9_2 ; x3do:hasGeometry :window2Knub ; x3do:hasAppearance :Appearance_2_9_9_2_1_2 ; x3do:DEF 'window2knubopen' . :window2Knub a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :window2knubopen ; x3do:DEF 'window2Knub' ; x3do:radius 0.05 . :Appearance_2_9_9_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :window2knubopen ; x3do:hasMaterial :Material_2_9_9_2_1_2_1 . :Material_2_9_9_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_9_9_2_1_2 . :window2Slide a owl:NamedIndividual, x3do:PlaneSensor ; x3do:hasParent :WINDOW2 ; x3do:DEF 'window2Slide' ; x3do:description 'click and drag to move window' ; x3do:maxPosition ( 6 2 ) ; x3do:minPosition ( 5.1 2 ) . :ROUTE_2_9_9_4 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :WINDOW2 ; x3do:fromField 'translation_changed' ; x3do:fromNode 'window2Slide' ; x3do:toField 'set_translation' ; x3do:toNode 'WINDOW2' . :Right a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :rightwall11, :rightwall12, :rightwall13, :rightwall14, :rightwall21, :rightwall22, :rightwall23, :rightwall24, :rightwall31, :rightwall32, :rightwall33, :rightwall34, :RIGHTWINDOW1, :RIGHTWINDOW2, :RIGHTWINDOW3 ; x3do:DEF 'Right' . :rightwall11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right11 ; x3do:DEF 'rightwall11' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 3.25 -1.5 ) . :right11 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall11 ; x3do:hasGeometry :Box_2_10_1_1_1 ; x3do:hasAppearance :wallAppearance-USE-8 ; x3do:DEF 'right11' . :Box_2_10_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right11 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-8 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right11 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right12 ; x3do:DEF 'rightwall12' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 3.25 -4.5 ) . :right12 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall12 ; x3do:hasGeometry :Box_2_10_2_1_1 ; x3do:hasAppearance :wallAppearance-USE-9 ; x3do:DEF 'right12' . :Box_2_10_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right12 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-9 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right12 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall13 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right13 ; x3do:DEF 'rightwall13' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 3.25 -7.5 ) . :right13 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall13 ; x3do:hasGeometry :Box_2_10_3_1_1 ; x3do:hasAppearance :wallAppearance-USE-10 ; x3do:DEF 'right13' . :Box_2_10_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right13 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-10 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right13 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall14 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right14 ; x3do:DEF 'rightwall14' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 3.25 -10.5 ) . :right14 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall14 ; x3do:hasGeometry :Box_2_10_4_1_1 ; x3do:hasAppearance :wallAppearance-USE-11 ; x3do:DEF 'right14' . :Box_2_10_4_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right14 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-11 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right14 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall21 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right21 ; x3do:DEF 'rightwall21' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 0.75 -1.5 ) . :right21 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall21 ; x3do:hasGeometry :Box_2_10_5_1_1 ; x3do:hasAppearance :wallAppearance-USE-12 ; x3do:DEF 'right21' . :Box_2_10_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right21 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-12 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right21 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall22 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right22 ; x3do:DEF 'rightwall22' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 0.75 -4.5 ) . :right22 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall22 ; x3do:hasGeometry :Box_2_10_6_1_1 ; x3do:hasAppearance :wallAppearance-USE-13 ; x3do:DEF 'right22' . :Box_2_10_6_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right22 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-13 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right22 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall23 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right23 ; x3do:DEF 'rightwall23' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 0.75 -7.5 ) . :right23 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall23 ; x3do:hasGeometry :Box_2_10_7_1_1 ; x3do:hasAppearance :wallAppearance-USE-14 ; x3do:DEF 'right23' . :Box_2_10_7_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right23 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-14 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right23 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall24 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right24 ; x3do:DEF 'rightwall24' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 0.75 -10.5 ) . :right24 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall24 ; x3do:hasGeometry :Box_2_10_8_1_1 ; x3do:hasAppearance :wallAppearance-USE-15 ; x3do:DEF 'right24' . :Box_2_10_8_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right24 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-15 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right24 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall31 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right31 ; x3do:DEF 'rightwall31' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -1.25 ) . :right31 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall31 ; x3do:hasGeometry :Box_2_10_9_1_1 ; x3do:hasAppearance :wallAppearance-USE-16 ; x3do:DEF 'right31' . :Box_2_10_9_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right31 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-16 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right31 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall32 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right32 ; x3do:DEF 'rightwall32' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -4.5 ) . :right32 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall32 ; x3do:hasGeometry :Box_2_10_10_1_1 ; x3do:hasAppearance :wallAppearance-USE-17 ; x3do:DEF 'right32' . :Box_2_10_10_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right32 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-17 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right32 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall33 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right33 ; x3do:DEF 'rightwall33' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -7.5 ) . :right33 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall33 ; x3do:hasGeometry :Box_2_10_11_1_1 ; x3do:hasAppearance :wallAppearance-USE-18 ; x3do:DEF 'right33' . :Box_2_10_11_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right33 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-18 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right33 ; owl:sameAs :wallAppearance . # DEF matching this USE :rightwall34 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :right34 ; x3do:DEF 'rightwall34' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -10.75 ) . :right34 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :rightwall34 ; x3do:hasGeometry :Box_2_10_12_1_1 ; x3do:hasAppearance :wallAppearance-USE-19 ; x3do:DEF 'right34' . :Box_2_10_12_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :right34 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-19 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :right34 ; owl:sameAs :wallAppearance . # DEF matching this USE :RIGHTWINDOW1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :rightwindow1, :Transform_2_10_13_2, :Transform_2_10_13_3 ; x3do:DEF 'RIGHTWINDOW1' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -3 ) . :rightwindow1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :RIGHTWINDOW1 ; x3do:hasGeometry :Box_2_10_13_1_1 ; x3do:hasAppearance :Appearance_2_10_13_1_2 ; x3do:DEF 'rightwindow1' . :Box_2_10_13_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :rightwindow1 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_10_13_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightwindow1 ; x3do:hasMaterial :Material_2_10_13_1_2_1 . :Material_2_10_13_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_13_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_10_13_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW1 ; x3do:hasChildren :rightWindow1KnubOpen, :rightWindow1Clock, :rightWindow1Pos, :rightWindow1Open ; x3do:hasROUTE :ROUTE_2_10_13_2_5, :ROUTE_2_10_13_2_6, :ROUTE_2_10_13_2_7 ; x3do:translation ( -0.4 0 -0.1 ) . :rightWindow1KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_13_2 ; x3do:hasGeometry :rightWindow1KnubO ; x3do:hasAppearance :Appearance_2_10_13_2_1_2 ; x3do:DEF 'rightWindow1KnubOpen' . :rightWindow1KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow1KnubOpen ; x3do:DEF 'rightWindow1KnubO' ; x3do:radius 0.05 . :Appearance_2_10_13_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow1KnubOpen ; x3do:hasMaterial :Material_2_10_13_2_1_2_1 . :Material_2_10_13_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_13_2_1_2 . :rightWindow1Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_13_2 ; x3do:DEF 'rightWindow1Clock' . :rightWindow1Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_13_2 ; x3do:DEF 'rightWindow1Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -3 9 2 -3.5 9 2 -3.9 ) . :rightWindow1Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_13_2 ; x3do:DEF 'rightWindow1Open' ; x3do:description 'touch to open' . :ROUTE_2_10_13_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow1Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow1Clock' . :ROUTE_2_10_13_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow1Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow1Pos' . :ROUTE_2_10_13_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow1Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW1' . :Transform_2_10_13_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW1 ; x3do:hasChildren :rightWindow1KnubClose, :rightWindow1Clock2, :rightWindow1Pos2, :rightWindow1Close ; x3do:hasROUTE :ROUTE_2_10_13_3_5, :ROUTE_2_10_13_3_6, :ROUTE_2_10_13_3_7 ; x3do:translation ( -0.4 -0.2 -0.1 ) . :rightWindow1KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_13_3 ; x3do:hasGeometry :rightWindow1Knub1 ; x3do:hasAppearance :Appearance_2_10_13_3_1_2 ; x3do:DEF 'rightWindow1KnubClose' . :rightWindow1Knub1 a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow1KnubClose ; x3do:DEF 'rightWindow1Knub1' ; x3do:radius 0.05 . :Appearance_2_10_13_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow1KnubClose ; x3do:hasMaterial :Material_2_10_13_3_1_2_1 . :Material_2_10_13_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_13_3_1_2 . :rightWindow1Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_13_3 ; x3do:DEF 'rightWindow1Clock2' . :rightWindow1Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_13_3 ; x3do:DEF 'rightWindow1Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -3.9 9 2 -3.5 9 2 -3 ) . :rightWindow1Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_13_3 ; x3do:DEF 'rightWindow1Close' ; x3do:description 'touch to close' . :ROUTE_2_10_13_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow1Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow1Clock2' . :ROUTE_2_10_13_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow1Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow1Pos2' . :ROUTE_2_10_13_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_13_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow1Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW1' . :RIGHTWINDOW2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :rightwindow2, :Transform_2_10_14_2, :Transform_2_10_14_3 ; x3do:DEF 'RIGHTWINDOW2' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -6 ) . :rightwindow2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :RIGHTWINDOW2 ; x3do:hasGeometry :Box_2_10_14_1_1 ; x3do:hasAppearance :Appearance_2_10_14_1_2 ; x3do:DEF 'rightwindow2' . :Box_2_10_14_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :rightwindow2 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_10_14_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightwindow2 ; x3do:hasMaterial :Material_2_10_14_1_2_1 . :Material_2_10_14_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_14_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_10_14_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW2 ; x3do:hasChildren :rightWindow2KnubOpen, :rightWindow2Clock, :rightWindow2Pos, :rightWindow2Open ; x3do:hasROUTE :ROUTE_2_10_14_2_5, :ROUTE_2_10_14_2_6, :ROUTE_2_10_14_2_7 ; x3do:translation ( -0.4 0 -0.1 ) . :rightWindow2KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_14_2 ; x3do:hasGeometry :rightWindow2KnubO ; x3do:hasAppearance :Appearance_2_10_14_2_1_2 ; x3do:DEF 'rightWindow2KnubOpen' . :rightWindow2KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow2KnubOpen ; x3do:DEF 'rightWindow2KnubO' ; x3do:radius 0.05 . :Appearance_2_10_14_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow2KnubOpen ; x3do:hasMaterial :Material_2_10_14_2_1_2_1 . :Material_2_10_14_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_14_2_1_2 . :rightWindow2Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_14_2 ; x3do:DEF 'rightWindow2Clock' . :rightWindow2Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_14_2 ; x3do:DEF 'rightWindow2Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -6 9 2 -6.5 9 2 -6.9 ) . :rightWindow2Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_14_2 ; x3do:DEF 'rightWindow2Open' ; x3do:description 'touch to open' . :ROUTE_2_10_14_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow2Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow2Clock' . :ROUTE_2_10_14_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow2Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow2Pos' . :ROUTE_2_10_14_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow2Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW2' . :Transform_2_10_14_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW2 ; x3do:hasChildren :rightWindow2KnubClose, :rightWindow2Clock2, :rightWindow2Pos2, :rightWindow2Close ; x3do:hasROUTE :ROUTE_2_10_14_3_5, :ROUTE_2_10_14_3_6, :ROUTE_2_10_14_3_7 ; x3do:translation ( -0.4 -0.2 -0.1 ) . :rightWindow2KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_14_3 ; x3do:hasGeometry :rightWindow2Knub2 ; x3do:hasAppearance :Appearance_2_10_14_3_1_2 ; x3do:DEF 'rightWindow2KnubClose' . :rightWindow2Knub2 a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow2KnubClose ; x3do:DEF 'rightWindow2Knub2' ; x3do:radius 0.05 . :Appearance_2_10_14_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow2KnubClose ; x3do:hasMaterial :Material_2_10_14_3_1_2_1 . :Material_2_10_14_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_14_3_1_2 . :rightWindow2Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_14_3 ; x3do:DEF 'rightWindow2Clock2' . :rightWindow2Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_14_3 ; x3do:DEF 'rightWindow2Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -6.9 9 2 -6.5 9 2 -6 ) . :rightWindow2Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_14_3 ; x3do:DEF 'rightWindow2Close' ; x3do:description 'touch to close' . :ROUTE_2_10_14_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow2Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow2Clock2' . :ROUTE_2_10_14_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow2Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow2Pos2' . :ROUTE_2_10_14_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_14_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow2Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW2' . :RIGHTWINDOW3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Right ; x3do:hasChildren :rightwindow3, :Transform_2_10_15_2, :Transform_2_10_15_3 ; x3do:DEF 'RIGHTWINDOW3' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 9 2 -9 ) . :rightwindow3 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :RIGHTWINDOW3 ; x3do:hasGeometry :Box_2_10_15_1_1 ; x3do:hasAppearance :Appearance_2_10_15_1_2 ; x3do:DEF 'rightwindow3' . :Box_2_10_15_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :rightwindow3 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_10_15_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightwindow3 ; x3do:hasMaterial :Material_2_10_15_1_2_1 . :Material_2_10_15_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_15_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_10_15_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW3 ; x3do:hasChildren :rightWindow3KnubOpen, :rightWindow3Clock, :rightWindow3Pos, :rightWindow3Open ; x3do:hasROUTE :ROUTE_2_10_15_2_5, :ROUTE_2_10_15_2_6, :ROUTE_2_10_15_2_7 ; x3do:translation ( -0.4 0 -0.1 ) . :rightWindow3KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_15_2 ; x3do:hasGeometry :rightWindow3KnubO ; x3do:hasAppearance :Appearance_2_10_15_2_1_2 ; x3do:DEF 'rightWindow3KnubOpen' . :rightWindow3KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow3KnubOpen ; x3do:DEF 'rightWindow3KnubO' ; x3do:radius 0.05 . :Appearance_2_10_15_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow3KnubOpen ; x3do:hasMaterial :Material_2_10_15_2_1_2_1 . :Material_2_10_15_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_15_2_1_2 . :rightWindow3Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_15_2 ; x3do:DEF 'rightWindow3Clock' . :rightWindow3Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_15_2 ; x3do:DEF 'rightWindow3Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -9 9 2 -9.5 9 2 -9.9 ) . :rightWindow3Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_15_2 ; x3do:DEF 'rightWindow3Open' ; x3do:description 'touch to open' . :ROUTE_2_10_15_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow3Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow3Clock' . :ROUTE_2_10_15_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow3Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow3Pos' . :ROUTE_2_10_15_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow3Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW3' . :Transform_2_10_15_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :RIGHTWINDOW3 ; x3do:hasChildren :rightWindow3KnubClose, :rightWindow3Clock2, :rightWindow3Pos2, :rightWindow3Close ; x3do:hasROUTE :ROUTE_2_10_15_3_5, :ROUTE_2_10_15_3_6, :ROUTE_2_10_15_3_7 ; x3do:translation ( -0.4 -0.2 -0.1 ) . :rightWindow3KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_10_15_3 ; x3do:hasGeometry :rightWindow2KnubC ; x3do:hasAppearance :Appearance_2_10_15_3_1_2 ; x3do:DEF 'rightWindow3KnubClose' . :rightWindow2KnubC a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :rightWindow3KnubClose ; x3do:DEF 'rightWindow2KnubC' ; x3do:radius 0.05 . :Appearance_2_10_15_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :rightWindow3KnubClose ; x3do:hasMaterial :Material_2_10_15_3_1_2_1 . :Material_2_10_15_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_10_15_3_1_2 . :rightWindow3Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_10_15_3 ; x3do:DEF 'rightWindow3Clock2' . :rightWindow3Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_10_15_3 ; x3do:DEF 'rightWindow3Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 9 2 -9.9 9 2 -9.5 9 2 -9 ) . :rightWindow3Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_10_15_3 ; x3do:DEF 'rightWindow3Close' ; x3do:description 'touch to close' . :ROUTE_2_10_15_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'rightWindow3Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'rightWindow3Clock2' . :ROUTE_2_10_15_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'rightWindow3Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'rightWindow3Pos2' . :ROUTE_2_10_15_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_10_15_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'rightWindow3Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'RIGHTWINDOW3' . :back a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :backwall11, :backwall12, :backwall13, :backwall14, :backwall21, :backwall22, :backwall23, :backwall24, :backwall31, :backtwall32, :backwall33, :backwall34, :backwall35, :BACKDOOR, :BACKWINDOW1, :BACKWINDOW2, :BACKWINDOW3 ; x3do:DEF 'back' . :backwall11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back11 ; x3do:DEF 'backwall11' ; x3do:translation ( 7.5 3.25 -12 ) . :back11 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall11 ; x3do:hasGeometry :Box_2_11_1_1_1 ; x3do:hasAppearance :wallAppearance-USE-20 ; x3do:DEF 'back11' . :Box_2_11_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back11 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-20 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back11 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back12 ; x3do:DEF 'backwall12' ; x3do:translation ( 4.5 3.25 -12 ) . :back12 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall12 ; x3do:hasGeometry :Box_2_11_2_1_1 ; x3do:hasAppearance :wallAppearance-USE-21 ; x3do:DEF 'back12' . :Box_2_11_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back12 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-21 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back12 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall13 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back13 ; x3do:DEF 'backwall13' ; x3do:translation ( 1.5 3.25 -12 ) . :back13 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall13 ; x3do:hasGeometry :Box_2_11_3_1_1 ; x3do:hasAppearance :wallAppearance-USE-22 ; x3do:DEF 'back13' . :Box_2_11_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back13 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-22 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back13 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall14 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back14 ; x3do:DEF 'backwall14' ; x3do:translation ( -1.5 3.25 -12 ) . :back14 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall14 ; x3do:hasGeometry :Box_2_11_4_1_1 ; x3do:hasAppearance :wallAppearance-USE-23 ; x3do:DEF 'back14' . :Box_2_11_4_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back14 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-23 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back14 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall21 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back21 ; x3do:DEF 'backwall21' ; x3do:translation ( 7 0.75 -12 ) . :back21 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall21 ; x3do:hasGeometry :Box_2_11_5_1_1 ; x3do:hasAppearance :wallAppearance-USE-24 ; x3do:DEF 'back21' . :Box_2_11_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back21 ; x3do:size ( 2 1.5 0.1 ) . :wallAppearance-USE-24 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back21 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall22 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back22 ; x3do:DEF 'backwall22' ; x3do:translation ( 4.5 0.75 -12 ) . :back22 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall22 ; x3do:hasGeometry :Box_2_11_6_1_1 ; x3do:hasAppearance :wallAppearance-USE-25 ; x3do:DEF 'back22' . :Box_2_11_6_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back22 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-25 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back22 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall23 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back23 ; x3do:DEF 'backwall23' ; x3do:translation ( 1.5 0.75 -12 ) . :back23 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall23 ; x3do:hasGeometry :Box_2_11_7_1_1 ; x3do:hasAppearance :wallAppearance-USE-26 ; x3do:DEF 'back23' . :Box_2_11_7_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back23 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-26 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back23 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall24 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back24 ; x3do:DEF 'backwall24' ; x3do:translation ( -1.5 0.75 -12 ) . :back24 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall24 ; x3do:hasGeometry :Box_2_11_8_1_1 ; x3do:hasAppearance :wallAppearance-USE-27 ; x3do:DEF 'back24' . :Box_2_11_8_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back24 ; x3do:size ( 3 1.5 0.1 ) . :wallAppearance-USE-27 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back24 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall31 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back31 ; x3do:DEF 'backwall31' ; x3do:translation ( 7.25 2 -12 ) . :back31 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall31 ; x3do:hasGeometry :Box_2_11_9_1_1 ; x3do:hasAppearance :wallAppearance-USE-28 ; x3do:DEF 'back31' . :Box_2_11_9_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back31 ; x3do:size ( 1.5 1 0.1 ) . :wallAppearance-USE-28 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back31 ; owl:sameAs :wallAppearance . # DEF matching this USE :backtwall32 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back32 ; x3do:DEF 'backtwall32' ; x3do:translation ( 4.5 2 -12 ) . :back32 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backtwall32 ; x3do:hasGeometry :Box_2_11_10_1_1 ; x3do:hasAppearance :wallAppearance-USE-29 ; x3do:DEF 'back32' . :Box_2_11_10_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back32 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-29 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back32 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall33 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back33 ; x3do:DEF 'backwall33' ; x3do:translation ( 1.5 2 -12 ) . :back33 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall33 ; x3do:hasGeometry :Box_2_11_11_1_1 ; x3do:hasAppearance :wallAppearance-USE-30 ; x3do:DEF 'back33' . :Box_2_11_11_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back33 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-30 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back33 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall34 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back34 ; x3do:DEF 'backwall34' ; x3do:translation ( -1.75 2 -12 ) . :back34 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall34 ; x3do:hasGeometry :Box_2_11_12_1_1 ; x3do:hasAppearance :wallAppearance-USE-31 ; x3do:DEF 'back34' . :Box_2_11_12_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back34 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-31 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back34 ; owl:sameAs :wallAppearance . # DEF matching this USE :backwall35 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :back35 ; x3do:DEF 'backwall35' ; x3do:translation ( 8.5 2.25 -12 ) . :back35 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :backwall35 ; x3do:hasGeometry :Box_2_11_13_1_1 ; x3do:hasAppearance :wallAppearance-USE-32 ; x3do:DEF 'back35' . :Box_2_11_13_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :back35 ; x3do:size ( 1 0.5 0.1 ) . :wallAppearance-USE-32 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :back35 ; owl:sameAs :wallAppearance . # DEF matching this USE :BACKDOOR a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :backdoor, :Transform_2_11_14_2, :Transform_2_11_14_3 ; x3do:DEF 'BACKDOOR' ; x3do:center ( 0.5 0 0 ) ; x3do:translation ( 8.5 1 -12 ) . :backdoor a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :BACKDOOR ; x3do:hasGeometry :Box_2_11_14_1_1 ; x3do:hasAppearance :Appearance_2_11_14_1_2 ; x3do:DEF 'backdoor' . :Box_2_11_14_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :backdoor ; x3do:size ( 1 2 0.1 ) . :Appearance_2_11_14_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backdoor ; x3do:hasMaterial :Material_2_11_14_1_2_1 ; x3do:hasTexture :wood-USE-1 . :Material_2_11_14_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_14_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood-USE-1 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_11_14_1_2 ; owl:sameAs :wood . # DEF matching this USE :Transform_2_11_14_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKDOOR ; x3do:hasChildren :knubOutB, :ClockBD, :doorBDPathOpen, :touchOpenBD ; x3do:hasROUTE :ROUTE_2_11_14_2_5, :ROUTE_2_11_14_2_6, :ROUTE_2_11_14_2_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOutB a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_14_2 ; x3do:hasGeometry :doorKnubB ; x3do:hasAppearance :Appearance_2_11_14_2_1_2 ; x3do:DEF 'knubOutB' . :doorKnubB a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :knubOutB ; x3do:DEF 'doorKnubB' ; x3do:radius 0.05 . :Appearance_2_11_14_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :knubOutB ; x3do:hasMaterial :Material_2_11_14_2_1_2_1 . :Material_2_11_14_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_14_2_1_2 . :ClockBD a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_14_2 ; x3do:DEF 'ClockBD' ; x3do:cycleInterval '3' . :doorBDPathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_11_14_2 ; x3do:DEF 'doorBDPathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 0.7 0 1 0 1.0 0 1 0 1.2 ) . :touchOpenBD a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_14_2 ; x3do:DEF 'touchOpenBD' ; x3do:description 'touch to open' . :ROUTE_2_11_14_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpenBD' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockBD' . :ROUTE_2_11_14_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockBD' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorBDPathOpen' . :ROUTE_2_11_14_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorBDPathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'BACKDOOR' . :Transform_2_11_14_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKDOOR ; x3do:hasChildren :knubOut-USE-2, :ClockCloseBD, :doorBDPathClose, :touchCloseBD ; x3do:hasROUTE :ROUTE_2_11_14_3_5, :ROUTE_2_11_14_3_6, :ROUTE_2_11_14_3_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut-USE-2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_14_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockCloseBD a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_14_3 ; x3do:DEF 'ClockCloseBD' ; x3do:cycleInterval '2' . :doorBDPathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_11_14_3 ; x3do:DEF 'doorBDPathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 1.2 0 1 0 1.0 0 1 0 0.7 0 1 0 0 ) . :touchCloseBD a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_14_3 ; x3do:DEF 'touchCloseBD' ; x3do:description 'touch to close' . :ROUTE_2_11_14_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchCloseBD' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockCloseBD' . :ROUTE_2_11_14_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockCloseBD' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorBDPathClose' . :ROUTE_2_11_14_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_14_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorBDPathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'BACKDOOR' . :BACKWINDOW1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :backwindow1, :Transform_2_11_15_2, :Transform_2_11_15_3 ; x3do:DEF 'BACKWINDOW1' ; x3do:translation ( 6 2 -12 ) . :backwindow1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :BACKWINDOW1 ; x3do:hasGeometry :Box_2_11_15_1_1 ; x3do:hasAppearance :Appearance_2_11_15_1_2 ; x3do:DEF 'backwindow1' . :Box_2_11_15_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :backwindow1 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_11_15_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backwindow1 ; x3do:hasMaterial :Material_2_11_15_1_2_1 . :Material_2_11_15_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_15_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_11_15_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW1 ; x3do:hasChildren :backWindow1KnubOpen, :backWindow1Clock, :backWindow1Pos, :backWindow1Open ; x3do:hasROUTE :ROUTE_2_11_15_2_5, :ROUTE_2_11_15_2_6, :ROUTE_2_11_15_2_7 ; x3do:translation ( 0.4 0 0.1 ) . :backWindow1KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_15_2 ; x3do:hasGeometry :backWindow1KnubO ; x3do:hasAppearance :Appearance_2_11_15_2_1_2 ; x3do:DEF 'backWindow1KnubOpen' . :backWindow1KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow1KnubOpen ; x3do:DEF 'backWindow1KnubO' ; x3do:radius 0.05 . :Appearance_2_11_15_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow1KnubOpen ; x3do:hasMaterial :Material_2_11_15_2_1_2_1 . :Material_2_11_15_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_15_2_1_2 . :backWindow1Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_15_2 ; x3do:DEF 'backWindow1Clock' . :backWindow1Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_15_2 ; x3do:DEF 'backWindow1Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 6 2 -12 5.5 2 -12 5.1 2 -12 ) . :backWindow1Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_15_2 ; x3do:DEF 'backWindow1Open' ; x3do:description 'touch to open' . :ROUTE_2_11_15_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow1Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow1Clock' . :ROUTE_2_11_15_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow1Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow1Pos' . :ROUTE_2_11_15_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow1Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW1' . :Transform_2_11_15_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW1 ; x3do:hasChildren :backWindow1KnubClose, :backWindow1Clock2, :backWindow1Pos2, :backWindow1Close ; x3do:hasROUTE :ROUTE_2_11_15_3_5, :ROUTE_2_11_15_3_6, :ROUTE_2_11_15_3_7 ; x3do:translation ( 0.4 -0.2 0.1 ) . :backWindow1KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_15_3 ; x3do:hasGeometry :rightWindow1KnubC ; x3do:hasAppearance :Appearance_2_11_15_3_1_2 ; x3do:DEF 'backWindow1KnubClose' . :rightWindow1KnubC a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow1KnubClose ; x3do:DEF 'rightWindow1KnubC' ; x3do:radius 0.05 . :Appearance_2_11_15_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow1KnubClose ; x3do:hasMaterial :Material_2_11_15_3_1_2_1 . :Material_2_11_15_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_15_3_1_2 . :backWindow1Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_15_3 ; x3do:DEF 'backWindow1Clock2' . :backWindow1Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_15_3 ; x3do:DEF 'backWindow1Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 5.1 2 -12 5.5 2 -12 6 2 -12 ) . :backWindow1Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_15_3 ; x3do:DEF 'backWindow1Close' ; x3do:description 'touch to close' . :ROUTE_2_11_15_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow1Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow1Clock2' . :ROUTE_2_11_15_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow1Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow1Pos2' . :ROUTE_2_11_15_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_15_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow1Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW1' . :BACKWINDOW2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :backwindow2, :Transform_2_11_16_2, :Transform_2_11_16_3 ; x3do:DEF 'BACKWINDOW2' ; x3do:translation ( 3 2 -12 ) . :backwindow2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :BACKWINDOW2 ; x3do:hasGeometry :Box_2_11_16_1_1 ; x3do:hasAppearance :Appearance_2_11_16_1_2 ; x3do:DEF 'backwindow2' . :Box_2_11_16_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :backwindow2 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_11_16_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backwindow2 ; x3do:hasMaterial :Material_2_11_16_1_2_1 . :Material_2_11_16_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_16_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_11_16_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW2 ; x3do:hasChildren :backWindow2KnubOpen, :backWindow2Clock, :backWindow2Pos, :backWindow2Open ; x3do:hasROUTE :ROUTE_2_11_16_2_5, :ROUTE_2_11_16_2_6, :ROUTE_2_11_16_2_7 ; x3do:translation ( 0.4 0 0.1 ) . :backWindow2KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_16_2 ; x3do:hasGeometry :backWindow2KnubO ; x3do:hasAppearance :Appearance_2_11_16_2_1_2 ; x3do:DEF 'backWindow2KnubOpen' . :backWindow2KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow2KnubOpen ; x3do:DEF 'backWindow2KnubO' ; x3do:radius 0.05 . :Appearance_2_11_16_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow2KnubOpen ; x3do:hasMaterial :Material_2_11_16_2_1_2_1 . :Material_2_11_16_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_16_2_1_2 . :backWindow2Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_16_2 ; x3do:DEF 'backWindow2Clock' . :backWindow2Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_16_2 ; x3do:DEF 'backWindow2Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 3 2 -12 2.5 2 -12 2.1 2 -12 ) . :backWindow2Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_16_2 ; x3do:DEF 'backWindow2Open' ; x3do:description 'touch to open' . :ROUTE_2_11_16_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow2Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow2Clock' . :ROUTE_2_11_16_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow2Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow2Pos' . :ROUTE_2_11_16_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow2Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW2' . :Transform_2_11_16_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW2 ; x3do:hasChildren :backWindow2KnubClose, :backWindow2Clock2, :backWindow2Pos2, :backWindow2Close ; x3do:hasROUTE :ROUTE_2_11_16_3_5, :ROUTE_2_11_16_3_6, :ROUTE_2_11_16_3_7 ; x3do:translation ( 0.4 -0.2 0.1 ) . :backWindow2KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_16_3 ; x3do:hasGeometry :backWindow2KnubC ; x3do:hasAppearance :Appearance_2_11_16_3_1_2 ; x3do:DEF 'backWindow2KnubClose' . :backWindow2KnubC a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow2KnubClose ; x3do:DEF 'backWindow2KnubC' ; x3do:radius 0.05 . :Appearance_2_11_16_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow2KnubClose ; x3do:hasMaterial :Material_2_11_16_3_1_2_1 . :Material_2_11_16_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_16_3_1_2 . :backWindow2Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_16_3 ; x3do:DEF 'backWindow2Clock2' . :backWindow2Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_16_3 ; x3do:DEF 'backWindow2Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 2.1 2 -12 2.5 2 -12 3 2 -12 ) . :backWindow2Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_16_3 ; x3do:DEF 'backWindow2Close' ; x3do:description 'touch to close' . :ROUTE_2_11_16_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow2Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow2Clock2' . :ROUTE_2_11_16_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow2Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow2Pos2' . :ROUTE_2_11_16_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_16_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow2Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW2' . :BACKWINDOW3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :back ; x3do:hasChildren :backwindow3, :Transform_2_11_17_2, :Transform_2_11_17_3 ; x3do:DEF 'BACKWINDOW3' ; x3do:translation ( 0 2 -12 ) . :backwindow3 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :BACKWINDOW3 ; x3do:hasGeometry :Box_2_11_17_1_1 ; x3do:hasAppearance :Appearance_2_11_17_1_2 ; x3do:DEF 'backwindow3' . :Box_2_11_17_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :backwindow3 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_11_17_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backwindow3 ; x3do:hasMaterial :Material_2_11_17_1_2_1 . :Material_2_11_17_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_17_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_11_17_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW3 ; x3do:hasChildren :backWindow3KnubOpen, :backWindow3Clock, :backWindow3Pos, :backWindow3Open ; x3do:hasROUTE :ROUTE_2_11_17_2_5, :ROUTE_2_11_17_2_6, :ROUTE_2_11_17_2_7 ; x3do:translation ( 0.4 0 0.1 ) . :backWindow3KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_17_2 ; x3do:hasGeometry :backWindow3KnubO ; x3do:hasAppearance :Appearance_2_11_17_2_1_2 ; x3do:DEF 'backWindow3KnubOpen' . :backWindow3KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow3KnubOpen ; x3do:DEF 'backWindow3KnubO' ; x3do:radius 0.05 . :Appearance_2_11_17_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow3KnubOpen ; x3do:hasMaterial :Material_2_11_17_2_1_2_1 . :Material_2_11_17_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_17_2_1_2 . :backWindow3Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_17_2 ; x3do:DEF 'backWindow3Clock' . :backWindow3Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_17_2 ; x3do:DEF 'backWindow3Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( 0 2 -12 -0.5 2 -12 -0.9 2 -12 ) . :backWindow3Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_17_2 ; x3do:DEF 'backWindow3Open' ; x3do:description 'touch to open' . :ROUTE_2_11_17_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow3Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow3Clock' . :ROUTE_2_11_17_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow3Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow3Pos' . :ROUTE_2_11_17_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow3Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW3' . :Transform_2_11_17_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :BACKWINDOW3 ; x3do:hasChildren :backWindow3KnubClose, :backWindow3Clock2, :backWindow3Pos2, :backWindow3Close ; x3do:hasROUTE :ROUTE_2_11_17_3_5, :ROUTE_2_11_17_3_6, :ROUTE_2_11_17_3_7 ; x3do:translation ( 0.4 -0.2 0.1 ) . :backWindow3KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_11_17_3 ; x3do:hasGeometry :rightWindow3KnubC ; x3do:hasAppearance :Appearance_2_11_17_3_1_2 ; x3do:DEF 'backWindow3KnubClose' . :rightWindow3KnubC a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :backWindow3KnubClose ; x3do:DEF 'rightWindow3KnubC' ; x3do:radius 0.05 . :Appearance_2_11_17_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :backWindow3KnubClose ; x3do:hasMaterial :Material_2_11_17_3_1_2_1 . :Material_2_11_17_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_11_17_3_1_2 . :backWindow3Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_11_17_3 ; x3do:DEF 'backWindow3Clock2' . :backWindow3Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_11_17_3 ; x3do:DEF 'backWindow3Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( -0.9 2 -12 -0.5 2 -12 0 2 -12 ) . :backWindow3Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_11_17_3 ; x3do:DEF 'backWindow3Close' ; x3do:description 'touch to close' . :ROUTE_2_11_17_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'backWindow3Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'backWindow3Clock2' . :ROUTE_2_11_17_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'backWindow3Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'backWindow3Pos2' . :ROUTE_2_11_17_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_11_17_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'backWindow3Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'BACKWINDOW3' . :left1 a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :leftwall11, :leftwall12, :leftwall21, :leftwall22, :leftwall31, :leftwall32, :leftwall33, :LEFTWINDOW1, :LEFTWINDOW2 ; x3do:DEF 'left1' . :leftwall11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left11 ; x3do:DEF 'leftwall11' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 3.25 -5.25 ) . :left11 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall11 ; x3do:hasGeometry :Box_2_12_1_1_1 ; x3do:hasAppearance :wallAppearance-USE-33 ; x3do:DEF 'left11' . :Box_2_12_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left11 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-33 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left11 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left12 ; x3do:DEF 'leftwall12' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 3.25 -9.75 ) . :left12 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall12 ; x3do:hasGeometry :Box_2_12_2_1_1 ; x3do:hasAppearance :wallAppearance-USE-34 ; x3do:DEF 'left12' . :Box_2_12_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left12 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-34 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left12 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall21 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left21 ; x3do:DEF 'leftwall21' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 0.75 -5.25 ) . :left21 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall21 ; x3do:hasGeometry :Box_2_12_3_1_1 ; x3do:hasAppearance :wallAppearance-USE-35 ; x3do:DEF 'left21' . :Box_2_12_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left21 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-35 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left21 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall22 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left22 ; x3do:DEF 'leftwall22' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 0.75 -9.75 ) . :left22 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall22 ; x3do:hasGeometry :Box_2_12_4_1_1 ; x3do:hasAppearance :wallAppearance-USE-36 ; x3do:DEF 'left22' . :Box_2_12_4_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left22 ; x3do:size ( 4.5 1.5 0.1 ) . :wallAppearance-USE-36 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left22 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall31 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left31 ; x3do:DEF 'leftwall31' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 2 -4.25 ) . :left31 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall31 ; x3do:hasGeometry :Box_2_12_5_1_1 ; x3do:hasAppearance :wallAppearance-USE-37 ; x3do:DEF 'left31' . :Box_2_12_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left31 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-37 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left31 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall32 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left32 ; x3do:DEF 'leftwall32' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 2 -7.5 ) . :left32 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall32 ; x3do:hasGeometry :Box_2_12_6_1_1 ; x3do:hasAppearance :wallAppearance-USE-38 ; x3do:DEF 'left32' . :Box_2_12_6_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left32 ; x3do:size ( 2 1 0.1 ) . :wallAppearance-USE-38 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left32 ; owl:sameAs :wallAppearance . # DEF matching this USE :leftwall33 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :left33 ; x3do:DEF 'leftwall33' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 2 -10.75 ) . :left33 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :leftwall33 ; x3do:hasGeometry :Box_2_12_7_1_1 ; x3do:hasAppearance :wallAppearance-USE-39 ; x3do:DEF 'left33' . :Box_2_12_7_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left33 ; x3do:size ( 2.5 1 0.1 ) . :wallAppearance-USE-39 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left33 ; owl:sameAs :wallAppearance . # DEF matching this USE :LEFTWINDOW1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :leftwindow1, :Transform_2_12_8_2, :Transform_2_12_8_3 ; x3do:DEF 'LEFTWINDOW1' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 2 -6 ) . :leftwindow1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :LEFTWINDOW1 ; x3do:hasGeometry :Box_2_12_8_1_1 ; x3do:hasAppearance :Appearance_2_12_8_1_2 ; x3do:DEF 'leftwindow1' . :Box_2_12_8_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :leftwindow1 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_12_8_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftwindow1 ; x3do:hasMaterial :Material_2_12_8_1_2_1 . :Material_2_12_8_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_8_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_12_8_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :LEFTWINDOW1 ; x3do:hasChildren :leftWindow1KnubOpen, :leftWindow1Clock, :leftWindow1Pos, :leftWindow1Open ; x3do:hasROUTE :ROUTE_2_12_8_2_5, :ROUTE_2_12_8_2_6, :ROUTE_2_12_8_2_7 ; x3do:translation ( 0.4 0 0.1 ) . :leftWindow1KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_12_8_2 ; x3do:hasGeometry :lefttWindow1KnubO ; x3do:hasAppearance :Appearance_2_12_8_2_1_2 ; x3do:DEF 'leftWindow1KnubOpen' . :lefttWindow1KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :leftWindow1KnubOpen ; x3do:DEF 'lefttWindow1KnubO' ; x3do:radius 0.05 . :Appearance_2_12_8_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftWindow1KnubOpen ; x3do:hasMaterial :Material_2_12_8_2_1_2_1 . :Material_2_12_8_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_8_2_1_2 . :leftWindow1Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_12_8_2 ; x3do:DEF 'leftWindow1Clock' . :leftWindow1Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_12_8_2 ; x3do:DEF 'leftWindow1Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( -3 2 -6 -3 2 -5.5 -3 2 -5.1 ) . :leftWindow1Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_12_8_2 ; x3do:DEF 'leftWindow1Open' ; x3do:description 'touch to open' . :ROUTE_2_12_8_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'leftWindow1Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'leftWindow1Clock' . :ROUTE_2_12_8_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'leftWindow1Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'leftWindow1Pos' . :ROUTE_2_12_8_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'leftWindow1Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'LEFTWINDOW1' . :Transform_2_12_8_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :LEFTWINDOW1 ; x3do:hasChildren :leftWindow1KnubClose, :leftWindow1Clock2, :leftWindow1Pos2, :leftWindow1Close ; x3do:hasROUTE :ROUTE_2_12_8_3_5, :ROUTE_2_12_8_3_6, :ROUTE_2_12_8_3_7 ; x3do:translation ( 0.4 -0.2 0.1 ) . :leftWindow1KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_12_8_3 ; x3do:hasGeometry :leftWindow1Knub2 ; x3do:hasAppearance :Appearance_2_12_8_3_1_2 ; x3do:DEF 'leftWindow1KnubClose' . :leftWindow1Knub2 a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :leftWindow1KnubClose ; x3do:DEF 'leftWindow1Knub2' ; x3do:radius 0.05 . :Appearance_2_12_8_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftWindow1KnubClose ; x3do:hasMaterial :Material_2_12_8_3_1_2_1 . :Material_2_12_8_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_8_3_1_2 . :leftWindow1Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_12_8_3 ; x3do:DEF 'leftWindow1Clock2' . :leftWindow1Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_12_8_3 ; x3do:DEF 'leftWindow1Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( -3 2 -5.1 -3 2 -5.5 -3 2 -6 ) . :leftWindow1Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_12_8_3 ; x3do:DEF 'leftWindow1Close' ; x3do:description 'touch to close' . :ROUTE_2_12_8_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'leftWindow1Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'leftWindow1Clock2' . :ROUTE_2_12_8_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'leftWindow1Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'leftWindow1Pos2' . :ROUTE_2_12_8_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_8_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'leftWindow1Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'LEFTWINDOW1' . :LEFTWINDOW2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left1 ; x3do:hasChildren :leftwindow2, :Transform_2_12_9_2, :Transform_2_12_9_3 ; x3do:DEF 'LEFTWINDOW2' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( -3 2 -9 ) . :leftwindow2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :LEFTWINDOW2 ; x3do:hasGeometry :Box_2_12_9_1_1 ; x3do:hasAppearance :Appearance_2_12_9_1_2 ; x3do:DEF 'leftwindow2' . :Box_2_12_9_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :leftwindow2 ; x3do:size ( 1 1 0.075 ) . :Appearance_2_12_9_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftwindow2 ; x3do:hasMaterial :Material_2_12_9_1_2_1 . :Material_2_12_9_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_9_1_2 ; x3do:diffuseColor ( 0.7 0.9 0.9 ) ; x3do:transparency 0.5 . :Transform_2_12_9_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :LEFTWINDOW2 ; x3do:hasChildren :leftWindow2KnubOpen, :leftWindow2Clock, :leftWindow2Pos, :leftWindow2Open ; x3do:hasROUTE :ROUTE_2_12_9_2_5, :ROUTE_2_12_9_2_6, :ROUTE_2_12_9_2_7 ; x3do:translation ( 0.4 0 0.1 ) . :leftWindow2KnubOpen a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_12_9_2 ; x3do:hasGeometry :lefttWindow2KnubO ; x3do:hasAppearance :Appearance_2_12_9_2_1_2 ; x3do:DEF 'leftWindow2KnubOpen' . :lefttWindow2KnubO a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :leftWindow2KnubOpen ; x3do:DEF 'lefttWindow2KnubO' ; x3do:radius 0.05 . :Appearance_2_12_9_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftWindow2KnubOpen ; x3do:hasMaterial :Material_2_12_9_2_1_2_1 . :Material_2_12_9_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_9_2_1_2 . :leftWindow2Clock a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_12_9_2 ; x3do:DEF 'leftWindow2Clock' . :leftWindow2Pos a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_12_9_2 ; x3do:DEF 'leftWindow2Pos' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( -3 2 -9 -3 2 -8.5 -3 2 -8.1 ) . :leftWindow2Open a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_12_9_2 ; x3do:DEF 'leftWindow2Open' ; x3do:description 'touch to open' . :ROUTE_2_12_9_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'leftWindow2Open' ; x3do:toField 'set_startTime' ; x3do:toNode 'leftWindow2Clock' . :ROUTE_2_12_9_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'leftWindow2Clock' ; x3do:toField 'set_fraction' ; x3do:toNode 'leftWindow2Pos' . :ROUTE_2_12_9_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'leftWindow2Pos' ; x3do:toField 'set_translation' ; x3do:toNode 'LEFTWINDOW2' . :Transform_2_12_9_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :LEFTWINDOW2 ; x3do:hasChildren :leftWindow2KnubClose, :leftWindow2Clock2, :leftWindow2Pos2, :leftWindow2Close ; x3do:hasROUTE :ROUTE_2_12_9_3_5, :ROUTE_2_12_9_3_6, :ROUTE_2_12_9_3_7 ; x3do:translation ( 0.4 -0.2 0.1 ) . :leftWindow2KnubClose a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_12_9_3 ; x3do:hasGeometry :rightWindow2Knub1 ; x3do:hasAppearance :Appearance_2_12_9_3_1_2 ; x3do:DEF 'leftWindow2KnubClose' . :rightWindow2Knub1 a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :leftWindow2KnubClose ; x3do:DEF 'rightWindow2Knub1' ; x3do:radius 0.05 . :Appearance_2_12_9_3_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :leftWindow2KnubClose ; x3do:hasMaterial :Material_2_12_9_3_1_2_1 . :Material_2_12_9_3_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_12_9_3_1_2 . :leftWindow2Clock2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_12_9_3 ; x3do:DEF 'leftWindow2Clock2' . :leftWindow2Pos2 a owl:NamedIndividual, x3do:PositionInterpolator ; x3do:hasParent :Transform_2_12_9_3 ; x3do:DEF 'leftWindow2Pos2' ; x3do:key ( 0 0.5 1 ) ; x3do:keyValue ( -3 2 -8.1 -3 2 -8.5 -3 2 -9 ) . :leftWindow2Close a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_12_9_3 ; x3do:DEF 'leftWindow2Close' ; x3do:description 'touch to close' . :ROUTE_2_12_9_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'leftWindow2Close' ; x3do:toField 'set_startTime' ; x3do:toNode 'leftWindow2Clock2' . :ROUTE_2_12_9_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'leftWindow2Clock2' ; x3do:toField 'set_fraction' ; x3do:toNode 'leftWindow2Pos2' . :ROUTE_2_12_9_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_12_9_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'leftWindow2Pos2' ; x3do:toField 'set_translation' ; x3do:toNode 'LEFTWINDOW2' . :left2 a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :left2wall11, :left2wall12 ; x3do:DEF 'left2' . :left2wall11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left2 ; x3do:hasChildren :left2wall1 ; x3do:DEF 'left2wall11' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 0 3 -1.5 ) . :left2wall1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :left2wall11 ; x3do:hasGeometry :Box_2_13_1_1_1 ; x3do:hasAppearance :left2wall1Appearance ; x3do:DEF 'left2wall1' . :Box_2_13_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left2wall1 ; x3do:size ( 3 2 0.1 ) . :left2wall1Appearance a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left2wall1 ; x3do:hasMaterial :Material_2_13_1_1_2_1 ; x3do:hasTexture :yellowBrick-USE-2 ; x3do:DEF 'left2wall1Appearance' . :Material_2_13_1_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :left2wall1Appearance . :yellowBrick-USE-2 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :left2wall1Appearance ; owl:sameAs :yellowBrick . # DEF matching this USE :left2wall12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :left2 ; x3do:hasChildren :left2wall2 ; x3do:DEF 'left2wall12' ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 0 1 -1.5 ) . :left2wall2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :left2wall12 ; x3do:hasGeometry :Box_2_13_2_1_1 ; x3do:hasAppearance :left2wall2Appearance ; x3do:DEF 'left2wall2' . :Box_2_13_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left2wall2 ; x3do:size ( 3 2 0.1 ) . :left2wall2Appearance a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left2wall2 ; x3do:hasMaterial :Material_2_13_2_1_2_1 ; x3do:hasTexture :yellowBrick-USE-3 ; x3do:DEF 'left2wall2Appearance' . :Material_2_13_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :left2wall2Appearance . :yellowBrick-USE-3 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :left2wall2Appearance ; owl:sameAs :yellowBrick . # DEF matching this USE :FLOOR a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :floor1, :floor2 ; x3do:DEF 'FLOOR' . :floor1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FLOOR ; x3do:hasChildren :floorshape1 ; x3do:DEF 'floor1' ; x3do:translation ( 4.5 0.005 -6 ) . :floorshape1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :floor1 ; x3do:hasGeometry :Box_2_14_1_1_1 ; x3do:hasAppearance :floorappearance ; x3do:DEF 'floorshape1' . :Box_2_14_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :floorshape1 ; x3do:size ( 9 0.01 12 ) . :floorappearance a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :floorshape1 ; x3do:hasMaterial :Material_2_14_1_1_2_1 ; x3do:DEF 'floorappearance' . :Material_2_14_1_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :floorappearance ; x3do:diffuseColor ( 0.9 0.9 0.9 ) . :floor2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FLOOR ; x3do:hasChildren :floorshape2 ; x3do:DEF 'floor2' ; x3do:translation ( -1.5 0.005 -7.5 ) . :floorshape2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :floor2 ; x3do:hasGeometry :Box_2_14_2_1_1 ; x3do:hasAppearance :floorappearance-USE-1 ; x3do:DEF 'floorshape2' . :Box_2_14_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :floorshape2 ; x3do:size ( 3 0.01 9 ) . :floorappearance-USE-1 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :floorshape2 ; owl:sameAs :floorappearance . # DEF matching this USE :INSIDE a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :Transform_2_15_1, :Transform_2_15_2, :Transform_2_15_3, :Transform_2_15_4, :DOORROOMLEFT, :Transform_2_15_6, :Transform_2_15_7, :Transform_2_15_8, :Transform_2_15_9, :DOORROOMRIGHT, :Transform_2_15_11, :Transform_2_15_12, :Transform_2_15_13, :Transform_2_15_14, :FRONTROOMDOOR, :Transform_2_15_16, :Transform_2_15_17, :Transform_2_15_18, :Transform_2_15_19, :FRONTROOMDOOR2 ; x3do:DEF 'INSIDE' . :Transform_2_15_1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :wall1roomleft ; x3do:translation ( -1.25 1 -7.5 ) . :wall1roomleft a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_1 ; x3do:hasGeometry :Box_2_15_1_1_1 ; x3do:hasAppearance :wallAppearance-USE-40 ; x3do:DEF 'wall1roomleft' . :Box_2_15_1_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :wall1roomleft ; x3do:size ( 3.5 2 0.1 ) . :wallAppearance-USE-40 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :wall1roomleft ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :left ; x3do:translation ( -0.75 3 -7.5 ) . :left a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_2 ; x3do:hasGeometry :Box_2_15_2_1_1 ; x3do:hasAppearance :wallAppearance-USE-41 ; x3do:DEF 'left' . :Box_2_15_2_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :left ; x3do:size ( 4.5 2 0.1 ) . :wallAppearance-USE-41 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :left ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_3_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 1.5 3 -9.75 ) . :Shape_2_15_3_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_3 ; x3do:hasGeometry :Box_2_15_3_1_1 ; x3do:hasAppearance :wallAppearance-USE-42 . :Box_2_15_3_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_3_1 ; x3do:size ( 4.5 2 0.1 ) . :wallAppearance-USE-42 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_3_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_4 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_4_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 1.5 1 -9.75 ) . :Shape_2_15_4_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_4 ; x3do:hasGeometry :Box_2_15_4_1_1 ; x3do:hasAppearance :wallAppearance-USE-43 . :Box_2_15_4_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_4_1 ; x3do:size ( 4.5 2 0.1 ) . :wallAppearance-USE-43 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_4_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :DOORROOMLEFT a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :doorroomleft, :Transform_2_15_5_2, :Transform_2_15_5_3 ; x3do:DEF 'DOORROOMLEFT' ; x3do:center ( 0.5 0 0 ) ; x3do:translation ( 1 1 -7.5 ) . :doorroomleft a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :DOORROOMLEFT ; x3do:hasGeometry :Box_2_15_5_1_1 ; x3do:hasAppearance :Appearance_2_15_5_1_2 ; x3do:DEF 'doorroomleft' . :Box_2_15_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :doorroomleft ; x3do:size ( 1 2 0.1 ) . :Appearance_2_15_5_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :doorroomleft ; x3do:hasMaterial :Material_2_15_5_1_2_1 ; x3do:hasTexture :wood-USE-2 . :Material_2_15_5_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_5_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood-USE-2 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_15_5_1_2 ; owl:sameAs :wood . # DEF matching this USE :Transform_2_15_5_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOORROOMLEFT ; x3do:hasChildren :knubOut-USE-3, :Clockdoorroomleft, :doorroomleftPathOpen, :touchOpenroomleft ; x3do:hasROUTE :ROUTE_2_15_5_2_5, :ROUTE_2_15_5_2_6, :ROUTE_2_15_5_2_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut-USE-3 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_5_2 ; owl:sameAs :knubOut . # DEF matching this USE :Clockdoorroomleft a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_5_2 ; x3do:DEF 'Clockdoorroomleft' ; x3do:cycleInterval '3' . :doorroomleftPathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_5_2 ; x3do:DEF 'doorroomleftPathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 -0.7 0 1 0 -1.0 0 1 0 -1.2 ) . :touchOpenroomleft a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_5_2 ; x3do:DEF 'touchOpenroomleft' ; x3do:description 'touch to open' . :ROUTE_2_15_5_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpenroomleft' ; x3do:toField 'set_startTime' ; x3do:toNode 'Clockdoorroomleft' . :ROUTE_2_15_5_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'Clockdoorroomleft' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorroomleftPathOpen' . :ROUTE_2_15_5_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorroomleftPathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOORROOMLEFT' . :Transform_2_15_5_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOORROOMLEFT ; x3do:hasChildren :knubOut-USE-4, :ClockCloseroomleft, :doorroomleftPathClose, :touchCloseroomleft ; x3do:hasROUTE :ROUTE_2_15_5_3_5, :ROUTE_2_15_5_3_6, :ROUTE_2_15_5_3_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOut-USE-4 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_5_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockCloseroomleft a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_5_3 ; x3do:DEF 'ClockCloseroomleft' ; x3do:cycleInterval '2' . :doorroomleftPathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_5_3 ; x3do:DEF 'doorroomleftPathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 -1.2 0 1 0 -1.0 0 1 0 -0.7 0 1 0 0 ) . :touchCloseroomleft a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_5_3 ; x3do:DEF 'touchCloseroomleft' ; x3do:description 'touch to close' . :ROUTE_2_15_5_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchCloseroomleft' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockCloseroomleft' . :ROUTE_2_15_5_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockCloseroomleft' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorroomleftPathClose' . :ROUTE_2_15_5_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_5_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorroomleftPathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOORROOMLEFT' . :Transform_2_15_6 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_6_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 7 3 -9.70 ) . :Shape_2_15_6_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_6 ; x3do:hasGeometry :Box_2_15_6_1_1 ; x3do:hasAppearance :wallAppearance-USE-44 . :Box_2_15_6_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_6_1 ; x3do:size ( 4.50 2 0.1 ) . :wallAppearance-USE-44 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_6_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_7 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_7_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 7 1 -9.70 ) . :Shape_2_15_7_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_7 ; x3do:hasGeometry :Box_2_15_7_1_1 ; x3do:hasAppearance :wallAppearance-USE-45 . :Box_2_15_7_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_7_1 ; x3do:size ( 4.50 2 0.1 ) . :wallAppearance-USE-45 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_7_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_8 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_8_1 ; x3do:translation ( 4.25 3 -7.5 ) . :Shape_2_15_8_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_8 ; x3do:hasGeometry :Box_2_15_8_1_1 ; x3do:hasAppearance :wallAppearance-USE-46 . :Box_2_15_8_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_8_1 ; x3do:size ( 5.5 2 0.1 ) . :wallAppearance-USE-46 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_8_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_9 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_9_1 ; x3do:translation ( 3.75 1 -7.5 ) . :Shape_2_15_9_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_9 ; x3do:hasGeometry :Box_2_15_9_1_1 ; x3do:hasAppearance :wallAppearance-USE-47 . :Box_2_15_9_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_9_1 ; x3do:size ( 4.5 2 0.1 ) . :wallAppearance-USE-47 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_9_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :DOORROOMRIGHT a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :doorroomright, :Transform_2_15_10_2, :Transform_2_15_10_3 ; x3do:DEF 'DOORROOMRIGHT' ; x3do:center ( 0.5 0 0 ) ; x3do:translation ( 6.5 1 -7.5 ) . :doorroomright a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :DOORROOMRIGHT ; x3do:hasGeometry :Box_2_15_10_1_1 ; x3do:hasAppearance :Appearance_2_15_10_1_2 ; x3do:DEF 'doorroomright' . :Box_2_15_10_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :doorroomright ; x3do:size ( 1 2 0.1 ) . :Appearance_2_15_10_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :doorroomright ; x3do:hasMaterial :Material_2_15_10_1_2_1 ; x3do:hasTexture :wood-USE-3 . :Material_2_15_10_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_10_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood-USE-3 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_15_10_1_2 ; owl:sameAs :wood . # DEF matching this USE :Transform_2_15_10_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOORROOMRIGHT ; x3do:hasChildren :knubOut-USE-5, :Clockdoorroomright, :doorroomrightPathOpen, :touchOpenroomright ; x3do:hasROUTE :ROUTE_2_15_10_2_5, :ROUTE_2_15_10_2_6, :ROUTE_2_15_10_2_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut-USE-5 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_10_2 ; owl:sameAs :knubOut . # DEF matching this USE :Clockdoorroomright a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_10_2 ; x3do:DEF 'Clockdoorroomright' ; x3do:cycleInterval '3' . :doorroomrightPathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_10_2 ; x3do:DEF 'doorroomrightPathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 -0.4 0 1 0 -0.7 0 1 0 -1.0 ) . :touchOpenroomright a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_10_2 ; x3do:DEF 'touchOpenroomright' ; x3do:description 'touch to open' . :ROUTE_2_15_10_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpenroomright' ; x3do:toField 'set_startTime' ; x3do:toNode 'Clockdoorroomright' . :ROUTE_2_15_10_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'Clockdoorroomright' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorroomrightPathOpen' . :ROUTE_2_15_10_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorroomrightPathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOORROOMRIGHT' . :Transform_2_15_10_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :DOORROOMRIGHT ; x3do:hasChildren :knubOut-USE-6, :ClockCloseroomright, :doorroomrightPathClose, :touchCloseroomright ; x3do:hasROUTE :ROUTE_2_15_10_3_5, :ROUTE_2_15_10_3_6, :ROUTE_2_15_10_3_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOut-USE-6 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_10_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockCloseroomright a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_10_3 ; x3do:DEF 'ClockCloseroomright' ; x3do:cycleInterval '2' . :doorroomrightPathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_10_3 ; x3do:DEF 'doorroomrightPathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 -1.0 0 1 0 -0.7 0 1 0 -0.4 0 1 0 0 ) . :touchCloseroomright a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_10_3 ; x3do:DEF 'touchCloseroomright' ; x3do:description 'touch to close' . :ROUTE_2_15_10_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchCloseroomright' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockCloseroomright' . :ROUTE_2_15_10_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockCloseroomright' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorroomrightPathClose' . :ROUTE_2_15_10_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_10_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorroomrightPathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'DOORROOMRIGHT' . :Transform_2_15_11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_11_1 ; x3do:translation ( 2.25 3 -3 ) . :Shape_2_15_11_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_11 ; x3do:hasGeometry :Box_2_15_11_1_1 ; x3do:hasAppearance :wallAppearance-USE-48 . :Box_2_15_11_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_11_1 ; x3do:size ( 4.5 2 0.1 ) . :wallAppearance-USE-48 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_11_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_12_1 ; x3do:translation ( 1.75 1 -3 ) . :Shape_2_15_12_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_12 ; x3do:hasGeometry :Box_2_15_12_1_1 ; x3do:hasAppearance :wallAppearance-USE-49 . :Box_2_15_12_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_12_1 ; x3do:size ( 3.5 2 0.1 ) . :wallAppearance-USE-49 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_12_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_13 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_13_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 4.45 1 -1.50 ) . :Shape_2_15_13_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_13 ; x3do:hasGeometry :Box_2_15_13_1_1 ; x3do:hasAppearance :wallAppearance-USE-50 . :Box_2_15_13_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_13_1 ; x3do:size ( 2.90 2 0.1 ) . :wallAppearance-USE-50 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_13_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_14 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_14_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 4.45 3 -1.50 ) . :Shape_2_15_14_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_14 ; x3do:hasGeometry :Box_2_15_14_1_1 ; x3do:hasAppearance :wallAppearance-USE-51 . :Box_2_15_14_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_14_1 ; x3do:size ( 2.90 2 0.1 ) . :wallAppearance-USE-51 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_14_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :FRONTROOMDOOR a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :frontroomdoor, :Transform_2_15_15_2, :Transform_2_15_15_3 ; x3do:DEF 'FRONTROOMDOOR' ; x3do:center ( 0.5 0 0 ) ; x3do:translation ( 4 1 -3 ) . :frontroomdoor a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :FRONTROOMDOOR ; x3do:hasGeometry :Box_2_15_15_1_1 ; x3do:hasAppearance :Appearance_2_15_15_1_2 ; x3do:DEF 'frontroomdoor' . :Box_2_15_15_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :frontroomdoor ; x3do:size ( 1 2 0.1 ) . :Appearance_2_15_15_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :frontroomdoor ; x3do:hasMaterial :Material_2_15_15_1_2_1 ; x3do:hasTexture :wood-USE-4 . :Material_2_15_15_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_15_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood-USE-4 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_15_15_1_2 ; owl:sameAs :wood . # DEF matching this USE :Transform_2_15_15_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FRONTROOMDOOR ; x3do:hasChildren :knubOutfrontroom, :ClockFR, :doorFRPathOpen, :touchOpenFR ; x3do:hasROUTE :ROUTE_2_15_15_2_5, :ROUTE_2_15_15_2_6, :ROUTE_2_15_15_2_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOutfrontroom a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_15_2 ; x3do:hasGeometry :doorKnubFR ; x3do:hasAppearance :Appearance_2_15_15_2_1_2 ; x3do:DEF 'knubOutfrontroom' . :doorKnubFR a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :knubOutfrontroom ; x3do:DEF 'doorKnubFR' ; x3do:radius 0.05 . :Appearance_2_15_15_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :knubOutfrontroom ; x3do:hasMaterial :Material_2_15_15_2_1_2_1 . :Material_2_15_15_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_15_2_1_2 . :ClockFR a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_15_2 ; x3do:DEF 'ClockFR' ; x3do:cycleInterval '3' . :doorFRPathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_15_2 ; x3do:DEF 'doorFRPathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 0.4 0 1 0 0.7 0 1 0 0.9 ) . :touchOpenFR a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_15_2 ; x3do:DEF 'touchOpenFR' ; x3do:description 'touch to open' . :ROUTE_2_15_15_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpenFR' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockFR' . :ROUTE_2_15_15_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockFR' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorFRPathOpen' . :ROUTE_2_15_15_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorFRPathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'FRONTROOMDOOR' . :Transform_2_15_15_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FRONTROOMDOOR ; x3do:hasChildren :knubOut-USE-7, :ClockCloseFR, :doorFRPathClose, :touchCloseFR ; x3do:hasROUTE :ROUTE_2_15_15_3_5, :ROUTE_2_15_15_3_6, :ROUTE_2_15_15_3_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut-USE-7 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_15_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockCloseFR a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_15_3 ; x3do:DEF 'ClockCloseFR' ; x3do:cycleInterval '2' . :doorFRPathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_15_3 ; x3do:DEF 'doorFRPathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0.9 0 1 0 0.7 0 1 0 0.4 0 1 0 0 ) . :touchCloseFR a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_15_3 ; x3do:DEF 'touchCloseFR' ; x3do:description 'touch to close' . :ROUTE_2_15_15_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchCloseFR' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockCloseFR' . :ROUTE_2_15_15_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockCloseFR' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorFRPathClose' . :ROUTE_2_15_15_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_15_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorFRPathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'FRONTROOMDOOR' . :Transform_2_15_16 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_16_1 ; x3do:translation ( 5.75 3 -3 ) . :Shape_2_15_16_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_16 ; x3do:hasGeometry :Box_2_15_16_1_1 ; x3do:hasAppearance :wallAppearance-USE-52 . :Box_2_15_16_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_16_1 ; x3do:size ( 2.5 2 0.1 ) . :wallAppearance-USE-52 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_16_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_17 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_17_1 ; x3do:translation ( 5.75 1 -3 ) . :Shape_2_15_17_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_17 ; x3do:hasGeometry :Box_2_15_17_1_1 ; x3do:hasAppearance :wallAppearance-USE-53 . :Box_2_15_17_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_17_1 ; x3do:size ( 2.5 2 0.1 ) . :wallAppearance-USE-53 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_17_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_18 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_18_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 6.95 3 -1.50 ) . :Shape_2_15_18_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_18 ; x3do:hasGeometry :Box_2_15_18_1_1 ; x3do:hasAppearance :wallAppearance-USE-54 . :Box_2_15_18_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_18_1 ; x3do:size ( 2.90 2 0.1 ) . :wallAppearance-USE-54 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_18_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :Transform_2_15_19 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :Shape_2_15_19_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 6.95 1 -0.95 ) . :Shape_2_15_19_1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_19 ; x3do:hasGeometry :Box_2_15_19_1_1 ; x3do:hasAppearance :wallAppearance-USE-55 . :Box_2_15_19_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :Shape_2_15_19_1 ; x3do:size ( 2.0 2 0.1 ) . :wallAppearance-USE-55 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :Shape_2_15_19_1 ; owl:sameAs :wallAppearance . # DEF matching this USE :FRONTROOMDOOR2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :INSIDE ; x3do:hasChildren :frontroomdoor2, :Transform_2_15_20_2, :Transform_2_15_20_3 ; x3do:DEF 'FRONTROOMDOOR2' ; x3do:center ( 0.5 0 0 ) ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 6.45 1 -2.95 ) . :frontroomdoor2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :FRONTROOMDOOR2 ; x3do:hasGeometry :Box_2_15_20_1_1 ; x3do:hasAppearance :Appearance_2_15_20_1_2 ; x3do:DEF 'frontroomdoor2' . :Box_2_15_20_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :frontroomdoor2 ; x3do:size ( 1 2 0.1 ) . :Appearance_2_15_20_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :frontroomdoor2 ; x3do:hasMaterial :Material_2_15_20_1_2_1 ; x3do:hasTexture :wood-USE-5 . :Material_2_15_20_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_20_1_2 ; x3do:diffuseColor ( 0.8 0.5 0 ) . :wood-USE-5 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :Appearance_2_15_20_1_2 ; owl:sameAs :wood . # DEF matching this USE :Transform_2_15_20_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FRONTROOMDOOR2 ; x3do:hasChildren :knubOutfrontroom2, :ClockFR2, :doorFR2PathOpen, :touchOpenFR2 ; x3do:hasROUTE :ROUTE_2_15_20_2_5, :ROUTE_2_15_20_2_6, :ROUTE_2_15_20_2_7 ; x3do:translation ( -0.4 0 -0.05 ) . :knubOutfrontroom2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_20_2 ; x3do:hasGeometry :doorKnubFR2 ; x3do:hasAppearance :Appearance_2_15_20_2_1_2 ; x3do:DEF 'knubOutfrontroom2' . :doorKnubFR2 a owl:NamedIndividual, x3do:Sphere ; x3do:hasParent :knubOutfrontroom2 ; x3do:DEF 'doorKnubFR2' ; x3do:radius 0.05 . :Appearance_2_15_20_2_1_2 a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :knubOutfrontroom2 ; x3do:hasMaterial :Material_2_15_20_2_1_2_1 . :Material_2_15_20_2_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :Appearance_2_15_20_2_1_2 . :ClockFR2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_20_2 ; x3do:DEF 'ClockFR2' ; x3do:cycleInterval '3' . :doorFR2PathOpen a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_20_2 ; x3do:DEF 'doorFR2PathOpen' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0 0 1 0 0.4 0 1 0 0.7 0 1 0 0.9 ) . :touchOpenFR2 a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_20_2 ; x3do:DEF 'touchOpenFR2' ; x3do:description 'touch to open' . :ROUTE_2_15_20_2_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_2 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchOpenFR2' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockFR2' . :ROUTE_2_15_20_2_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_2 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockFR2' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorFR2PathOpen' . :ROUTE_2_15_20_2_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_2 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorFR2PathOpen' ; x3do:toField 'set_rotation' ; x3do:toNode 'FRONTROOMDOOR2' . :Transform_2_15_20_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :FRONTROOMDOOR2 ; x3do:hasChildren :knubOut-USE-8, :ClockCloseFR2, :doorFR2PathClose, :touchCloseFR2 ; x3do:hasROUTE :ROUTE_2_15_20_3_5, :ROUTE_2_15_20_3_6, :ROUTE_2_15_20_3_7 ; x3do:translation ( -0.4 0 0.05 ) . :knubOut-USE-8 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :Transform_2_15_20_3 ; owl:sameAs :knubOut . # DEF matching this USE :ClockCloseFR2 a owl:NamedIndividual, x3do:TimeSensor ; x3do:hasParent :Transform_2_15_20_3 ; x3do:DEF 'ClockCloseFR2' ; x3do:cycleInterval '2' . :doorFR2PathClose a owl:NamedIndividual, x3do:OrientationInterpolator ; x3do:hasParent :Transform_2_15_20_3 ; x3do:DEF 'doorFR2PathClose' ; x3do:key ( 0 0.34 0.68 1 ) ; x3do:keyValue ( 0 1 0 0.9 0 1 0 0.7 0 1 0 0.4 0 1 0 0 ) . :touchCloseFR2 a owl:NamedIndividual, x3do:TouchSensor ; x3do:hasParent :Transform_2_15_20_3 ; x3do:DEF 'touchCloseFR2' ; x3do:description 'touch to close' . :ROUTE_2_15_20_3_5 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_3 ; x3do:fromField 'touchTime' ; x3do:fromNode 'touchCloseFR2' ; x3do:toField 'set_startTime' ; x3do:toNode 'ClockCloseFR2' . :ROUTE_2_15_20_3_6 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_3 ; x3do:fromField 'fraction_changed' ; x3do:fromNode 'ClockCloseFR2' ; x3do:toField 'set_fraction' ; x3do:toNode 'doorFR2PathClose' . :ROUTE_2_15_20_3_7 a owl:NamedIndividual, x3do:ROUTE ; x3do:hasParent :Transform_2_15_20_3 ; x3do:fromField 'value_changed' ; x3do:fromNode 'doorFR2PathClose' ; x3do:toField 'set_rotation' ; x3do:toNode 'FRONTROOMDOOR2' . :roofandcelling a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :roof1, :roof2, :roof3, :roof4, :celling1 ; x3do:DEF 'roofandcelling' . :roof1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :roofandcelling ; x3do:hasChildren :roofpart1 ; x3do:DEF 'roof1' ; x3do:center ( 0 4 0 ) ; x3do:rotation ( 1 0 0 1 ) ; x3do:scale ( 1 1 0.01 ) ; x3do:translation ( 3 4.1 -5.8 ) . :roofpart1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :roof1 ; x3do:hasGeometry :Cone_2_16_1_1_1 ; x3do:hasAppearance :roofapp ; x3do:DEF 'roofpart1' . :Cone_2_16_1_1_1 a owl:NamedIndividual, x3do:Cone ; x3do:hasParent :roofpart1 ; x3do:bottomRadius 6.1 ; x3do:height 7.3 . :roofapp a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :roofpart1 ; x3do:hasMaterial :Material_2_16_1_1_2_1 ; x3do:hasTexture :wellWall ; x3do:DEF 'roofapp' . :Material_2_16_1_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :roofapp ; x3do:diffuseColor ( 0 0.2 1 ) . :wellWall a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :roofapp ; x3do:DEF 'wellWall' ; x3do:url '"wellWall.jpg" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/wellWall.jpg"' . :roof2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :roofandcelling ; x3do:hasChildren :roofpart1-USE-1 ; x3do:DEF 'roof2' ; x3do:center ( 0 4 0 ) ; x3do:rotation ( 1 0 0 -1 ) ; x3do:scale ( 1 1 0.01 ) ; x3do:translation ( 3 4.1 -6.4 ) . :roofpart1-USE-1 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :roof2 ; owl:sameAs :roofpart1 . # DEF matching this USE :roof3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :roofandcelling ; x3do:hasChildren :roofpart1-USE-2 ; x3do:DEF 'roof3' ; x3do:center ( 0 4 0 ) ; x3do:rotation ( 0 0 1 -1 ) ; x3do:scale ( 0.02 1 1 ) ; x3do:translation ( 3.4 4.1 -6.1 ) . :roofpart1-USE-2 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :roof3 ; owl:sameAs :roofpart1 . # DEF matching this USE :roof4 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :roofandcelling ; x3do:hasChildren :roofpart1-USE-3 ; x3do:DEF 'roof4' ; x3do:center ( 0 4 0 ) ; x3do:rotation ( 0 0 1 1 ) ; x3do:scale ( 0.02 1 1 ) ; x3do:translation ( 2.6 4.1 -6.1 ) . :roofpart1-USE-3 a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :roof4 ; owl:sameAs :roofpart1 . # DEF matching this USE :celling1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :roofandcelling ; x3do:hasChildren :celling1shape ; x3do:DEF 'celling1' ; x3do:translation ( 3 4.075 -6 ) . :celling1shape a owl:NamedIndividual, x3do:Shape ; x3do:hasParent :celling1 ; x3do:hasGeometry :Box_2_16_5_1_1 ; x3do:hasAppearance :cellingapp ; x3do:DEF 'celling1shape' . :Box_2_16_5_1_1 a owl:NamedIndividual, x3do:Box ; x3do:hasParent :celling1shape ; x3do:size ( 12 0.05 12 ) . :cellingapp a owl:NamedIndividual, x3do:Appearance ; x3do:hasParent :celling1shape ; x3do:hasMaterial :Material_2_16_5_1_2_1 ; x3do:hasTexture :wellWall-USE-1 ; x3do:DEF 'cellingapp' . :Material_2_16_5_1_2_1 a owl:NamedIndividual, x3do:Material ; x3do:hasParent :cellingapp ; x3do:diffuseColor ( 0 0.2 1 ) . :wellWall-USE-1 a owl:NamedIndividual, x3do:ImageTexture ; x3do:hasParent :cellingapp ; owl:sameAs :wellWall . # DEF matching this USE :Group_2_17 a owl:NamedIndividual, x3do:Group ; x3do:hasParent :Scene ; x3do:hasChildren :Transform_2_17_1, :Transform_2_17_2, :Transform_2_17_3, :Transform_2_17_4, :Transform_2_17_5, :Transform_2_17_6, :Transform_2_17_7, :Transform_2_17_8, :Transform_2_17_9, :Transform_2_17_10, :Transform_2_17_11, :Transform_2_17_12 . :Transform_2_17_1 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_1_1 ; x3do:translation ( -6 0 0 ) . :Inline_2_17_1_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_1 ; x3do:url '"Tree.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Tree.x3d" "Tree.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Tree.wrl"' . :Transform_2_17_2 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_2_1 ; x3do:rotation ( 0 1 0 -1.57 ) ; x3do:scale ( 0.5 0.5 0.5 ) ; x3do:translation ( -2.5 0.5 -5.5 ) . :Inline_2_17_2_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_2 ; x3do:url '"Desk.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Desk.x3d" "Desk.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Desk.wrl"' . :Transform_2_17_3 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_3_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:scale ( 0.5 0.5 0.5 ) ; x3do:translation ( -2.5 1.4 -5.5 ) . :Inline_2_17_3_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_3 ; x3do:url '"TV.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/TV.x3d" "TV.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/TV.wrl"' . :Transform_2_17_4 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_4_1 ; x3do:rotation ( 0 1 0 -3.14 ) ; x3do:scale ( 0.35 0.35 0.35 ) ; x3do:translation ( 1 0.10 -5.5 ) . :Inline_2_17_4_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_4 ; x3do:url '"Sofa.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Sofa.x3d" "Sofa.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Sofa.wrl"' . :Transform_2_17_5 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_5_1 ; x3do:scale ( 0.5 0.5 0.5 ) ; x3do:translation ( 4.5 1 -5.5 ) . :Inline_2_17_5_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_5 ; x3do:url '"Table.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Table.x3d" "Table.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Table.wrl"' . :Transform_2_17_6 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Chair ; x3do:scale ( 0.25 0.25 0.25 ) ; x3do:translation ( 5.5 0.50 -5.5 ) . :Chair a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_6 ; x3do:DEF 'Chair' ; x3do: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_2_17_7 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Chair-USE-1 ; x3do:rotation ( 0 1 0 3.14 ) ; x3do:scale ( 0.25 0.25 0.25 ) ; x3do:translation ( 3.5 0.50 -5.5 ) . :Chair-USE-1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_7 ; owl:sameAs :Chair . # DEF matching this USE :Transform_2_17_8 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Bed ; x3do:rotation ( 0 1 0 3.14 ) ; x3do:scale ( 0.40 0.40 0.40 ) ; x3do:translation ( 3.25 0.32 -11 ) . :Bed a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_8 ; x3do:DEF 'Bed' ; x3do:url '"Bed.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Bed.x3d" "Bed.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Bed.wrl"' . :Transform_2_17_9 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Bed-USE-1 ; x3do:rotation ( 0 1 0 3.14 ) ; x3do:scale ( 0.40 0.40 0.40 ) ; x3do:translation ( -1.25 0.32 -11 ) . :Bed-USE-1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_9 ; owl:sameAs :Bed . # DEF matching this USE :Transform_2_17_10 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_10_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:scale ( 0.7 0.7 0.7 ) ; x3do:translation ( 7.35 0.35 -8.2 ) . :Inline_2_17_10_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_10 ; x3do:url '"Cabinet.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Cabinet.x3d" "Cabinet.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Cabinet.wrl"' . :Transform_2_17_11 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_11_1 ; x3do:rotation ( 0 1 0 1.57 ) ; x3do:translation ( 7.35 0.75 -9.5 ) . :Inline_2_17_11_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_11 ; x3do:url '"Refrigerator.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Refrigerator.x3d" "Refrigerator.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Refrigerator.wrl"' . :Transform_2_17_12 a owl:NamedIndividual, x3do:Transform ; x3do:hasParent :Group_2_17 ; x3do:hasChildren :Inline_2_17_12_1, :toilet ; x3do:rotation ( 0 1 0 3.14 ) ; x3do:scale ( 0.25 0.25 0.25 ) ; x3do:translation ( 6 0.75 -0.5 ) . :Inline_2_17_12_1 a owl:NamedIndividual, x3do:Inline ; x3do:hasParent :Transform_2_17_12 ; x3do:url '"Toilet.x3d" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Toilet.x3d" "Toilet.wrl" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/Toilet.wrl"' . :toilet a owl:NamedIndividual, x3do:Sound ; x3do:hasParent :Transform_2_17_12 ; x3do:hasSource :Sound1clip_5 ; x3do:DEF 'toilet' ; x3do:location ( -0.957652 0.102433 0.970123 ) ; x3do:minBack 12.0 ; x3do:minFront 12.0 ; x3do:priority 1.0 . :Sound1clip_5 a owl:NamedIndividual, x3do:AudioClip ; x3do:hasParent :toilet ; x3do:DEF 'Sound1clip_5' ; x3do:description 'toilet flushing sound' ; x3do:url '"toilet.wav" "https://savage.nps.edu/Savage/Buildings/HouseSeksitSiripala/toilet.wav"' .