X3D Model Documentation: GuardRoom.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2 
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "https://www.web3d.org/specifications/x3d-3.0.dtd">
  3  <X3D profile='Immersive' version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.0.xsd'>
  4       <head>
  5            <meta name='titlecontent=' GuardRoom.x3d '/>
  6            <meta name='descriptioncontent='Display the guard room of the condominium. Include 3 electronic gates.'/>
  7            <meta name='identifiercontent=' https://www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/GuardRoom.x3d '/>
  8            <meta name='creatorcontent='Hwee Ping Ng'/>
  9            <meta name='createdcontent='25 August 2004'/>
 10            <meta name='modifiedcontent='20 October 2019'/>
 11            <meta name='licensecontent='../../license.html'/>
 12       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: ClickSensor, Clock, Door, DoorFramePaint, DoorPath, Electronic_Gate_Right, electronicgate_link, Guard_Room_Door, GuardRoomCeiling, GuardRoomDoorWallTop, GuardRoomDoorWallTop2, GuardRoomDoorWallTop3, GuardRoomWallBottomWindow, GuardRoomWallLeftWindow, GuardRoomWallTopWindow, GuardRoomWindowFrameBreadth, GuardRoomWindowFrameLength, GuardRoomWindowGlass, GuardtRoomFloor, H1, Knob, KnobBase, roofsupport, TulipCluster, V1, Window

Index for Viewpoint node: Viewpoint_1
-->
 13       <Scene>
 14            <WorldInfo title='GuardRoom.x3d'/>
 15            <Transform>
 16 
               <!-- Group Window is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
               <Group DEF='Window'>
 17                      <Transform translation='0 2.4 0'>
 18 
                         <!-- Shape GuardRoomWindowFrameLength is a DEF node that has 1 USE node: USE_1 -->
                         <Shape DEF='GuardRoomWindowFrameLength'>
 19                                <Appearance>
 20                                     <Material diffuseColor='0.1 0.1 0.1'/>
 21                                </Appearance>
 22                                <Box size='2.4 0.1 0.1'/>
 23                           </Shape>
 24                      </Transform>
 25                      <Transform translation='0 1.2 0'>
 26                           <Shape USE='GuardRoomWindowFrameLength'/>
 27                      </Transform>
 28                      <Transform translation='-1.2 1.8 0'>
 29 
                         <!-- Shape GuardRoomWindowFrameBreadth is a DEF node that has 4 USE nodes: USE_1, USE_2, USE_3, USE_4 -->
                         <Shape DEF='GuardRoomWindowFrameBreadth'>
 30                                <Appearance>
 31                                     <Material diffuseColor='0.1 0.1 0.1'/>
 32                                </Appearance>
 33                                <Box size='0.1 1.2 0.1'/>
 34                           </Shape>
 35                      </Transform>
 36                      <Transform translation='-0.6 1.8 0'>
 37                           <Shape USE='GuardRoomWindowFrameBreadth'/>
 38                      </Transform>
 39                      <Transform translation='0 1.8 0'>
 40                           <Shape USE='GuardRoomWindowFrameBreadth'/>
 41                      </Transform>
 42                      <Transform translation='0.6 1.8 0'>
 43                           <Shape USE='GuardRoomWindowFrameBreadth'/>
 44                      </Transform>
 45                      <Transform translation='1.2 1.8 0'>
 46                           <Shape USE='GuardRoomWindowFrameBreadth'/>
 47                      </Transform>
 48                      <Transform translation='-0.9 1.8 0'>
 49 
                         <!-- Shape GuardRoomWindowGlass is a DEF node that has 3 USE nodes: USE_1, USE_2, USE_3 -->
                         <Shape DEF='GuardRoomWindowGlass'>
 50                                <Appearance>
 51                                     <Material diffuseColor='0 0 0.2transparency='0.8'/>
 52                                </Appearance>
 53                                <Box size='0.5 1.05 0.1'/>
 54                           </Shape>
 55                      </Transform>
 56                      <Transform translation='-0.3 1.8 0'>
 57                           <Shape USE='GuardRoomWindowGlass'/>
 58                      </Transform>
 59                      <Transform translation='0.3 1.8 0'>
 60                           <Shape USE='GuardRoomWindowGlass'/>
 61                      </Transform>
 62                      <Transform translation='0.3 1.8 0'>
 63                           <Shape USE='GuardRoomWindowGlass'/>
 64                      </Transform>
 65                      <Transform translation='0 2.7 0'>
 66                           <Shape DEF='GuardRoomWallTopWindow'>
 67                                <Appearance>
 68                                     <Material diffuseColor='0.835 0.804 0.525'/>
 69                                </Appearance>
 70                                <Box size='3 0.5 0.1'/>
 71                           </Shape>
 72                      </Transform>
 73                      <Transform translation='0 0.4 0'>
 74                           <Shape DEF='GuardRoomWallBottomWindow'>
 75                                <Appearance>
 76                                     <Material diffuseColor='0.835 0.804 0.525'/>
 77                                </Appearance>
 78                                <Box size='3 1.5 0.1'/>
 79                           </Shape>
 80                      </Transform>
 81                      <Transform translation='-1.5 1.3 0'>
 82 
                         <!-- Shape GuardRoomWallLeftWindow is a DEF node that has 1 USE node: USE_1 -->
                         <Shape DEF='GuardRoomWallLeftWindow'>
 83                                <Appearance>
 84                                     <Material diffuseColor='0.835 0.804 0.525'/>
 85                                </Appearance>
 86                                <Box size='0.5 3.3 0.1'/>
 87                           </Shape>
 88                      </Transform>
 89                      <Transform translation='1.5 1.3 0'>
 90                           <Shape USE='GuardRoomWallLeftWindow'/>
 91                      </Transform>
 92                 </Group>
 93            </Transform>
 94            <Transform rotation='0 1 0 -1.57translation='-1.8 0 -1.7'>
 95                 <Group USE='Window'/>
 96            </Transform>
 97            <Transform rotation='0 1 0 -1.57translation='1.8 0 -1.7'>
 98                 <Group USE='Window'/>
 99            </Transform>
100            <Transform DEF='Guard_Room_Doortranslation='0 1.03 -3.4'>
101                 <Group>
102 
                    <!-- Shape V1 is a DEF node that has 1 USE node: USE_1 -->
                    <Shape DEF='V1'>
103 
                         <!-- Appearance DoorFramePaint is a DEF node that has 2 USE nodes: USE_1, USE_2 -->
                         <Appearance DEF='DoorFramePaint'/>
104                           <Box size='0.1 2.75 0.1'/>
105                      </Shape>
106                      <Transform translation='1 0 0'>
107                           <Shape USE='V1'/>
108                      </Transform>
109                      <Transform translation='0.5 1.4 0'>
110                           <Shape DEF='H1'>
111                                <Appearance USE='DoorFramePaint'/>
112                                <Box size='1 0.1 0.1'/>
113                           </Shape>
114                      </Transform>
115 
                    <!-- ROUTE information for Door node:  [from DoorPath.value_changed to set_rotation ] -->
                    <Transform DEF='Doorcenter='0.5 0 0translation='0.5 0 0'>
116                           <Shape>
117                                <Appearance USE='DoorFramePaint'/>
118                                <Box size='1 2.75 0.05'/>
119                           </Shape>
120                           <Transform rotation='1 0 0 1.571translation='-0.35 0 0'>
121                                <Shape DEF='KnobBase'>
122                                     <Appearance>
123                                          <Material diffuseColor='1 0.6 0.2'/>
124                                     </Appearance>
125                                     <Cylinder height='0.075radius='0.05'/>
126                                </Shape>
127                           </Transform>
128                           <Transform translation='-0.35 0 0.06'>
129 
                              <!-- Shape Knob is a DEF node that has 1 USE node: USE_1 -->
                              <Shape DEF='Knob'>
130                                     <Appearance>
131                                          <Material diffuseColor='1 0.6 0.2'/>
132                                     </Appearance>
133                                     <Sphere radius='0.05'/>
134                                </Shape>
135                           </Transform>
136                           <Transform translation='-0.35 0 -0.06'>
137                                <Shape USE='Knob'/>
138                           </Transform>
139 
                         <!-- ROUTE information for ClickSensor node:  [from touchTime to Clock.set_startTime ] -->
                         <TouchSensor DEF='ClickSensordescription='GuardRoom Electronic Gate Sensor'/>
140 
                         <!-- ROUTE information for Clock node:  [from ClickSensor.touchTime to set_startTime ] [from fraction_changed to DoorPath.set_fraction ] -->
                         <TimeSensor DEF='ClockcycleInterval='4'/>
141 
                         <!-- ROUTE information for DoorPath node:  [from Clock.fraction_changed to set_fraction ] [from value_changed to Door.set_rotation ] -->
                         <OrientationInterpolator DEF='DoorPathkey='0 0.5 1keyValue='0 1 0 0 0 1 0 0.78 0 1 0 1.1'/>
142                      </Transform>
143                 </Group>
144                 < ROUTE  fromNode='ClickSensor' fromField='touchTime' toNode='Clock' toField='set_startTime'/>
145                 < ROUTE  fromNode='Clock' fromField='fraction_changed' toNode='DoorPath' toField='set_fraction'/>
146                 < ROUTE  fromNode='DoorPath' fromField='value_changed' toNode='Door' toField='set_rotation'/>
147            </Transform>
148            <Transform translation='-0.9 1.3 -3.4'>
149                 <Shape DEF='GuardRoomDoorWallTop'>
150                      <Appearance>
151                           <Material diffuseColor='1 1 1'/>
152                      </Appearance>
153                      <Box size='1.75 3.3 0.1'/>
154                 </Shape>
155            </Transform>
156            <Transform translation='1.4 1.3 -3.4'>
157                 <Shape DEF='GuardRoomDoorWallTop2'>
158                      <Appearance>
159                           <Material diffuseColor='1 1 1'/>
160                      </Appearance>
161                      <Box size='0.75 3.3 0.1'/>
162                 </Shape>
163            </Transform>
164            <Transform translation='0.55 2.7 -3.4'>
165                 <Shape DEF='GuardRoomDoorWallTop3'>
166                      <Appearance>
167                           <Material diffuseColor='1 1 1'/>
168                      </Appearance>
169                      <Box size='1.2 0.5 0.1'/>
170                 </Shape>
171            </Transform>
172            <Transform translation='0 -0.5 -1.2'>
173                 <Shape DEF='GuardtRoomFloor'>
174                      <Appearance>
175                           <Material diffuseColor='1 1 1'/>
176                      </Appearance>
177                      <Box size='4.5 0.3 5'/>
178                 </Shape>
179            </Transform>
180            <Transform translation='0 3 -1.2'>
181                 <Shape DEF='GuardRoomCeiling'>
182                      <Appearance>
183                           <Material diffuseColor='0.835 0.804 0.525'/>
184                      </Appearance>
185                      <Box size='4 0.1 5'/>
186                 </Shape>
187            </Transform>
188            <Transform translation='-2.8 0.15 -1'>
189 
190            </Transform>
191            <Transform DEF='Electronic_Gate_Rightrotation='0 1 0 3.14translation='2.8 0.15 -1'>
192                 <Inline USE='electronicgate_link'/>
193            </Transform>
194            <Transform rotation='0 1 0 3.14translation='-9.3 0.15 -1'>
195                 <Inline USE='electronicgate_link'/>
196            </Transform>
197            <Transform rotation='0 1 0 1.57scale='2 2 2translation='0 1 1.5'>
198 
199            </Transform>
200            <Transform translation='0 -0.6 2'>
201                 <Shape>
202                      <Box size='4.5 0.1 4'/>
203                      <Appearance>
204                           <ImageTexture   url=' "LawnGrass.jpg " "https://www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/LawnGrass.jpg " '/>
205                      </Appearance>
206                 </Shape>
207            </Transform>
208            <Transform rotation='0 0 1 1.57translation='-1.8 1.2 1'>
209 
               <!-- Shape roofsupport is a DEF node that has 1 USE node: USE_1 -->
               <Shape DEF='roofsupport'>
210                      <Box size='3.6 0.1 0.1'/>
211                      <Appearance>
212                           <Material diffuseColor='0.71 0.71 0.42'/>
213                      </Appearance>
214                 </Shape>
215            </Transform>
216            <Transform rotation='0 0 1 1.57translation='1.8 1.2 1'>
217                 <Shape USE='roofsupport'/>
218            </Transform>
219            <Transform rotation='0 1 0 1.57scale='2 2 2translation='1 1 1.5'>
220                 <Inline USE='TulipCluster'/>
221            </Transform>
222            <Transform rotation='0 1 0 1.57scale='2 2 2translation='-1 1 1.5'>
223                 <Inline USE='TulipCluster'/>
224            </Transform>
225            <Transform translation='-12 2 -6'>
226                 <Shape>
227                      <Box size='4 6.5 0.5'/>
228                      <Appearance>
229                           <Material diffuseColor='0.51 0.478 0.18'/>
230                      </Appearance>
231                 </Shape>
232            </Transform>
233            <Transform translation='-1 4.25 -6'>
234                 <Shape>
235                      <Appearance>
236                           <Material diffuseColor='0.51 0.478 0.18'/>
237                      </Appearance>
238                      <Box size='19 2 0.5'/>
239                 </Shape>
240            </Transform>
241            <Transform rotation='1 0 0 0.5scale='2 2 2translation='-5 3.5 -5.3'>
242                 <Inline   url=' "name.x3d" "https://www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/name.x3d" "name.wrl" "https://www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/name.wrl" '/>
243            </Transform>
244            <Transform translation='10 2 -6'>
245                 <Shape>
246                      <Box size='4 6.5 0.5'/>
247                      <Appearance>
248                           <Material diffuseColor='0.51 0.478 0.18'/>
249                      </Appearance>
250                 </Shape>
251            </Transform>
252            <Viewpoint description='Guard Roomorientation='-0.363 -0.931 -0.026 0.3position='-6.1 3.5 10'/>
253       </Scene>
254  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->
<!-- to top DEF nodes index: ClickSensor, Clock, Door, DoorFramePaint, DoorPath, Electronic_Gate_Right, electronicgate_link, Guard_Room_Door, GuardRoomCeiling, GuardRoomDoorWallTop, GuardRoomDoorWallTop2, GuardRoomDoorWallTop3, GuardRoomWallBottomWindow, GuardRoomWallLeftWindow, GuardRoomWallTopWindow, GuardRoomWindowFrameBreadth, GuardRoomWindowFrameLength, GuardRoomWindowGlass, GuardtRoomFloor, H1, Knob, KnobBase, roofsupport, TulipCluster, V1, Window

Index for Viewpoint node: Viewpoint_1
-->
X3D Tooltips element index: Appearance, Box, Cylinder, Group, head, ImageTexture, Inline, Material, meta, OrientationInterpolator, ROUTE, Scene, Shape, Sphere, TimeSensor, TouchSensor, Transform, Viewpoint, WorldInfo, X3D, plus documentation for accessType definitions, type definitions, XML data types, and field types

Event Graph ROUTE Table entries with 3 ROUTE connections total, showing X3D event-model relationships for this scene.

Each row shows an event cascade that may occur during a single timestamp interval between frame renderings, as part of the X3D execution model.

ClickSensor
TouchSensor
touchTime
SFTime

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

ROUTE
event to
(2)
DoorPath
OrientationInterpolator
set_fraction
SFFloat
then
 
 
 
DoorPath
OrientationInterpolator
value_changed
SFRotation

ROUTE
event to
(3)
Door
Transform
set_rotation
SFRotation


Additional guidance on X3D animation can be found in the 10-Step Animation Design Process and Event Tracing hint sheets. Have fun with X3D! 😀

-->
<!-- Online at
https://www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/GuardRoomIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/Savage/Buildings/ZenCondominium/GuardRoom.x3d -->

<!-- Color-coding legend: X3D terminology <X3dNode  DEF='idNamefield='value'/> matches XML terminology <XmlElement  DEF='idNameattribute='value'/>
(Light-blue background: event-based behavior node or statement) (Grey background inside box: inserted documentation) (Magenta background: X3D Extensibility)
-->

to top <!-- For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints. -->