X3D Model Documentation: LightingAlternatives.x3d

  1  <?xml version="1.0" encoding="UTF-8"?>
  2  <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
  3  <X3D profile='Immersive' version='3.3 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.3.xsd'>
  4       <head>
  5            <meta name='titlecontent='LightingAlternatives.x3d'/>
  6            <meta name='descriptioncontent='Lighting alternatives for best rendering the cathedral.'/>
  7            <meta name='creatorcontent='Michele Foti and Don Brutzman'/>
  8            <meta name='createdcontent='19 March 2012'/>
  9            <meta name='modifiedcontent='20 October 2019'/>
 10            <meta name='referencecontent='TODO.html'/>
 11            <meta name='referencecontent='http://www.sancarloscathedral.net'/>
 12            <meta name='referencecontent='RoyalPresidioChapelHistoricalReferences.pdf'/>
 13            <meta name='referencecontent='CulturalHeritageProjectSanCarlosCathedral.pdf'/>
 14            <meta name='referencecontent='originals/'/>
 15            <meta name=' warning content=' under development '/>
 16            <meta name='identifiercontent='https://www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/SanCarlosCathedral/LightingAlternatives.x3d'/>
 17            <meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
 18            <meta name='licensecontent='../license.html'/>
 19       </head>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: AlternativeLight1, AlternativeLight10, AlternativeLight2, AlternativeLight3, AlternativeLight4, AlternativeLight5, AlternativeLight6, AlternativeLight7, AlternativeLight8, AlternativeLight9, LightSwitch, Maintch, maintouch, Point1, Point1a, Point2, Point2a, Point3, Point3a, Point4, Point4a, Point5, Point5a, Point6, Point6a, Point7, Point7a, Sequenc, Sequenc0, Sequenc1, Sequenc2, Sequenc3, Sequenc4, Sequenc5, Sequenc6, Sequenc7, Sequenc8, Sequenc9, tch0, tch1, tch2, tch3, tch4, tch5, tch6, tch7, tch8, tch9, tex0, tex02, tex1, tex12, tex2, tex22, tex3, tex32, tex4, tex42, tex5, tex52, tex6, tex62, tex7, tex72, tex8, tex82, tex9, tex92, TextFontStyle, time, time0, time1, time2, time3, time4, time5, time6, time7, time8, time9, touch, touch0, touch1, touch2, touch3, touch4, touch5, touch6, touch7, touch8, touch9
-->
 20       <!-- Index for DEF nodes: DirectionalLights, LightSwitch, Spotlights -->
 21       <Scene>
 22            <!-- Note that turning off initial NavigationInfo headlight for WALK mode (interior viewing) must occur in parent scene, SanCarlosCathedral.x3d -->
 23            <WorldInfo title='LightingAlternatives.x3d'/>
 24 
 25                 <Group DEF='AlternativeLight1'>
 26                      <!-- Spotlights from windows (left side) -->
 27                      <SpotLight ambientIntensity='0.2color='0.4 0.4 0.4cutOffAngle='1direction='20 1 -40intensity='0.2location='-6 1 -35'/>
 28                      <SpotLight ambientIntensity='0.2color='0.4 0.4 0.4cutOffAngle='1direction='20 1 -30intensity='0.2location='1.7 1 -25.4'/>
 29                      <SpotLight ambientIntensity='0.2color='0.7 0.7 0.7cutOffAngle='1direction='20 1 -20intensity='0.4location='1.7 1 -17'/>
 30                 </Group>
 31                 <Group DEF='AlternativeLight2'>
 32                      <!-- DirectionalLights. They don't seem to work when child of a group node -->
 33                      <DirectionalLight color='0.4 0.4 0.4direction='-20 1 0'/>
 34                      <DirectionalLight color='0.4 0.4 0.4direction='20 1 0'/>
 35                      <DirectionalLight color='0.4 0.4 0.4direction='0 1 20'/>
 36                      <DirectionalLight color='0.4 0.4 0.4direction='0 1 -60'/>
 37                 </Group>
 38                 <Group DEF='AlternativeLight3'>
 39                      <!-- Spotlights from windows (left side). It simulates a "First morning beam" -->
 40                      <DirectionalLight color='0.5 0.5 0.5direction='20 1 30intensity='0.5'/>
 41                      <DirectionalLight color='0.5 0.5 0.5direction='-20 1 30intensity='0.5'/>
 42                      <SpotLight ambientIntensity='0.4beamWidth='1.5cutOffAngle='1direction='20 1 -50location='-6 1 -35radius='10'/>
 43                      <SpotLight ambientIntensity='0.4beamWidth='1.5cutOffAngle='1direction='20 1 -40location='1.7 1 -25.4radius='10'/>
 44                      <SpotLight ambientIntensity='0.4beamWidth='1.5cutOffAngle='1direction='20 1 -57location='1.7 1 -17radius='10'/>
 45                 </Group>
 46                 <Group DEF='AlternativeLight4'>
 47                      <!-- Spotlights from windows (left side). It simulates a "Morning Light" -->
 48                      <DirectionalLight color='0.6 0.6 0.6direction='20 1 -30intensity='0.6'/>
 49                      <DirectionalLight color='0.6 0.6 0.6direction='-20 1 -30intensity='0.6'/>
 50                      <SpotLight ambientIntensity='0.2color='0.4 0.4 0.4cutOffAngle='1direction='20 1 -40intensity='0.6location='-6 1 -35radius='10'/>
 51                      <SpotLight ambientIntensity='0.2color='0.4 0.4 0.4cutOffAngle='1direction='20 1 -30intensity='0.6location='1.7 1 -25.4radius='10'/>
 52                      <SpotLight ambientIntensity='0.2beamWidth='1color='0.6 0.6 0.6cutOffAngle='1direction='20 1 -20intensity='0.6location='1.7 1 -17radius='10'/>
 53                 </Group>
 54                 <Group DEF='AlternativeLight5'>
 55                      <!-- PointLights from chandeliers, simulating artificial light -->
 56                      <PointLight DEF='Point1color='0.8 0.8 0.8intensity='0.8location='5.8 2.4 -11.5radius='12.5'/>
 57                      <PointLight DEF='Point2color='0.8 0.8 0.8intensity='0.8location='5.8 2.4 -23radius='12.5'/>
 58                      <PointLight DEF='Point3color='0.8 0.8 0.8intensity='0.8location='-1.4 2.4 -34.5radius='12.5'/>
 59                      <PointLight DEF='Point4color='0.8 0.8 0.8intensity='0.8location='13 2.4 -34.5radius='12.5'/>
 60                      <PointLight DEF='Point5color='0.8 0.8 0.8intensity='0.8location='5.8 2.4 -34.5radius='12.5'/>
 61                      <PointLight DEF='Point6color='0.8 0.8 0.8intensity='0.8location='5.8 1 -1radius='12.5'/>
 62                      <PointLight DEF='Point7color='0.8 0.8 0.8intensity='0.8location='5.8 1 -5radius='12.5'/>
 63                 </Group>
 64                 <Group DEF='AlternativeLight6'>
 65                      <!-- PointLights from chandeliers, simulating artificial light. Tested with HeadLight ON -->
 66                      <PointLight DEF='Point1acolor='0.5 0.5 0.5intensity='0.5location='5.8 2.4 -11.5radius='8'/>
 67                      <PointLight DEF='Point2acolor='0.5 0.5 0.5intensity='0.5location='5.8 2.4 -23radius='8'/>
 68                      <PointLight DEF='Point3acolor='0.5 0.5 0.5intensity='0.5location='-1.4 2.4 -34.5radius='8'/>
 69                      <PointLight DEF='Point4acolor='0.5 0.5 0.5intensity='0.5location='13 2.4 -34.5radius='8'/>
 70                      <PointLight DEF='Point5acolor='0.5 0.5 0.5intensity='0.5location='5.8 2.4 -34.5radius='8'/>
 71                      <PointLight DEF='Point6acolor='0.5 0.5 0.5intensity='0.5location='5.8 1 -1radius='8'/>
 72                      <PointLight DEF='Point7acolor='0.5 0.5 0.5intensity='0.5location='5.8 1 -5radius='8'/>
 73                 </Group>
 74                 <Group DEF='AlternativeLight7'>
 75                      <!-- PointLights from windows (left side). Simulating sunlight -->
 76                      <PointLight intensity='0.5location='-6 1 -35'/>
 77                      <PointLight color='0.1 0.1 0.1intensity='0.05location='1.7 1 -25.4radius='10'/>
 78                      <PointLight ambientIntensity='0.4color='0.5 0.5 0.5intensity='0.7location='1.7 1 -17radius='10'/>
 79                      <PointLight ambientIntensity='0.4color='0.5 0.5 0.5intensity='0.8location='1.7 1 -7.5radius='10'/>
 80                 </Group>
 81                 <Group DEF='AlternativeLight8'>
 82                      <!-- PointLights from windows (left side). Simulating sunlight. Changing Radius Changes the "Intensity" -->
 83                      <PointLight ambientIntensity='0.2color='0.4 0.4 0.4intensity='0.2location='-6 1 -35radius='30'/>
 84                      <PointLight ambientIntensity='0.2color='0.4 0.4 0.4intensity='0.2location='1.7 1 -25.4radius='30'/>
 85                      <PointLight ambientIntensity='0.4color='0.7 0.7 0.7intensity='0.4location='1.7 1 -17radius='30'/>
 86                      <PointLight ambientIntensity='0.4color='0.7 0.7 0.7intensity='0.4location='1.7 1 -7.5radius='30'/>
 87                 </Group>
 88                 <Group DEF='AlternativeLight9'>
 89                      <!-- PointLights from windows (both sides, six windows). Good inside navigation. -->
 90                      <PointLight ambientIntensity='0.6color='0.5 0.5 0.5intensity='0.6location='1.7 1 -25.4radius='30'/>
 91                      <PointLight ambientIntensity='0.3color='0.7 0.7 0.7intensity='0.3location='1.7 1 -17radius='10'/>
 92                      <PointLight ambientIntensity='0.01color='0.4 0.4 0.4intensity='0.01location='1.7 1 -7.5radius='5'/>
 93                      <PointLight ambientIntensity='0.6color='0.5 0.5 0.5intensity='0.6location='9 1 -25.4radius='30'/>
 94                      <PointLight ambientIntensity='0.3color='0.7 0.7 0.7intensity='0.3location='9 1 -17radius='10'/>
 95                      <PointLight ambientIntensity='0.01color='0.1 0.1 0.1intensity='0.01location='9 1 -7.5radius='5'/>
 96                 </Group>
 97                 <Group DEF='AlternativeLight10'>
 98                      <!-- PointLights from windows (left side). Good inside navigation, but the light is too uniform on one side -->
 99                      <PointLight ambientIntensity='0.2color='0.4 0.4 0.4intensity='0.2location='-6 1 -35'/>
100                      <PointLight ambientIntensity='0.2color='0.4 0.4 0.4intensity='0.2location='1.7 1 -25.4'/>
101                      <PointLight ambientIntensity='0.4color='0.7 0.7 0.7intensity='0.4location='1.7 1 -17'/>
102                      <PointLight ambientIntensity='0.4color='0.7 0.7 0.7intensity='0.4location='1.7 1 -7.5'/>
103                 </Group>
104            </Switch>
105            <Transform DEF='Maintchtranslation='2 2.4 -16.75'>
106 
               <!-- ROUTE information for touch node:  [from touchTime to time.startTime ] -->
               <TouchSensor DEF='touchdescription='Click here to start'/>
107                 <Shape>
108                      <Sphere/>
109                      <Appearance>
110                           <Material diffuseColor='1 1 1transparency='1'/>
111                      </Appearance>
112                 </Shape>
113            </Transform>
114 
          <!-- ROUTE information for maintouch node:  [from Sequenc.value_changed to translation ] -->
          <Transform DEF='maintouchtranslation='0 -5 0'>
115                 <Transform DEF='tch0translation='3 1.7 -15.525'>
116                      <Transform DEF='tex0translation='-0.15 -0.05 0.2'>
117                           <Shape>
118                                <Text string='"Light1"'>
119 
                                   <!-- FontStyle TextFontStyle is a DEF node that has 19 USE nodes: USE_1, USE_2, USE_3, USE_4, USE_5, USE_6, USE_7, USE_8, USE_9, USE_10, USE_11, USE_12, USE_13, USE_14, USE_15, USE_16, USE_17, USE_18, USE_19 -->
                                   <FontStyle DEF='TextFontStylejustify='"MIDDLE" "MIDDLE"size='0.15'/>
120                                </Text>
121                                <Appearance>
122                                     <Material diffuseColor='1 1 1'/>
123                                </Appearance>
124                           </Shape>
125                      </Transform>
126                      <Transform DEF='tex02rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
127                           <Shape>
128                                <Text string='"Light1"'>
129                                     <FontStyle USE='TextFontStyle'/>
130                                </Text>
131                                <Appearance>
132                                     <Material diffuseColor='1 1 1transparency='1'/>
133                                </Appearance>
134                           </Shape>
135                      </Transform>
136 
                    <!-- ROUTE information for touch0 node:  [from touchTime to time0.startTime ] -->
                    <TouchSensor DEF='touch0description='Click here to start'/>
137                      <Shape>
138                           <Sphere radius='0.2'/>
139                           <Appearance>
140                                <Material diffuseColor='1 0 1'/>
141                           </Appearance>
142                      </Shape>
143                 </Transform>
144                 <Transform DEF='tch1translation='3.5 1.7 -15.525'>
145                      <Transform DEF='tex1translation='-0.15 -0.05 0.2'>
146                           <Shape>
147                                <Text string='"Light2"'>
148                                     <FontStyle USE='TextFontStyle'/>
149                                </Text>
150                                <Appearance>
151                                     <Material diffuseColor='1 1 1transparency='1'/>
152                                </Appearance>
153                           </Shape>
154                      </Transform>
155                      <Transform DEF='tex12rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
156                           <Shape>
157                                <Text string='"Light2"'>
158                                     <FontStyle USE='TextFontStyle'/>
159                                </Text>
160                                <Appearance>
161                                     <Material diffuseColor='1 1 1transparency='1'/>
162                                </Appearance>
163                           </Shape>
164                      </Transform>
165 
                    <!-- ROUTE information for touch1 node:  [from touchTime to time1.startTime ] -->
                    <TouchSensor DEF='touch1description='Click here to start'/>
166                      <Shape>
167                           <Sphere radius='0.2'/>
168                           <Appearance>
169                                <Material diffuseColor='1 0 1'/>
170                           </Appearance>
171                      </Shape>
172                 </Transform>
173                 <Transform DEF='tch2translation='4 1.7 -15.525'>
174                      <Transform DEF='tex2translation='-0.15 -0.05 0.2'>
175                           <Shape>
176                                <Text string='"Light3"'>
177                                     <FontStyle USE='TextFontStyle'/>
178                                </Text>
179                                <Appearance>
180                                     <Material diffuseColor='1 1 1transparency='1'/>
181                                </Appearance>
182                           </Shape>
183                      </Transform>
184                      <Transform DEF='tex22rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
185                           <Shape>
186                                <Text string='"Light3"'>
187                                     <FontStyle USE='TextFontStyle'/>
188                                </Text>
189                                <Appearance>
190                                     <Material diffuseColor='1 1 1transparency='1'/>
191                                </Appearance>
192                           </Shape>
193                      </Transform>
194 
                    <!-- ROUTE information for touch2 node:  [from touchTime to time2.startTime ] -->
                    <TouchSensor DEF='touch2description='Click here to start'/>
195                      <Shape>
196                           <Sphere radius='0.2'/>
197                           <Appearance>
198                                <Material diffuseColor='1 0 1'/>
199                           </Appearance>
200                      </Shape>
201                 </Transform>
202                 <Transform DEF='tch3translation='4.5 1.7 -15.525'>
203                      <Transform DEF='tex3translation='-0.15 -0.05 0.2'>
204                           <Shape>
205                                <Text string='"Light4"'>
206                                     <FontStyle USE='TextFontStyle'/>
207                                </Text>
208                                <Appearance>
209                                     <Material diffuseColor='1 1 1transparency='1'/>
210                                </Appearance>
211                           </Shape>
212                      </Transform>
213                      <Transform DEF='tex32rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
214                           <Shape>
215                                <Text string='"Light4"'>
216                                     <FontStyle USE='TextFontStyle'/>
217                                </Text>
218                                <Appearance>
219                                     <Material diffuseColor='1 1 1transparency='1'/>
220                                </Appearance>
221                           </Shape>
222                      </Transform>
223 
                    <!-- ROUTE information for touch3 node:  [from touchTime to time3.startTime ] -->
                    <TouchSensor DEF='touch3description='Click here to start'/>
224                      <Shape>
225                           <Sphere radius='0.2'/>
226                           <Appearance>
227                                <Material diffuseColor='1 0 1'/>
228                           </Appearance>
229                      </Shape>
230                 </Transform>
231                 <Transform DEF='tch4translation='5 1.7 -15.525'>
232                      <Transform DEF='tex4translation='-0.15 -0.05 0.2'>
233                           <Shape>
234                                <Text string='"Light5"'>
235                                     <FontStyle USE='TextFontStyle'/>
236                                </Text>
237                                <Appearance>
238                                     <Material diffuseColor='1 1 1transparency='1'/>
239                                </Appearance>
240                           </Shape>
241                      </Transform>
242                      <Transform DEF='tex42rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
243                           <Shape>
244                                <Text string='"Light5"'>
245                                     <FontStyle USE='TextFontStyle'/>
246                                </Text>
247                                <Appearance>
248                                     <Material diffuseColor='1 1 1transparency='1'/>
249                                </Appearance>
250                           </Shape>
251                      </Transform>
252 
                    <!-- ROUTE information for touch4 node:  [from touchTime to time4.startTime ] -->
                    <TouchSensor DEF='touch4description='Click here to start'/>
253                      <Shape>
254                           <Sphere radius='0.2'/>
255                           <Appearance>
256                                <Material diffuseColor='1 0 1'/>
257                           </Appearance>
258                      </Shape>
259                 </Transform>
260                 <Transform DEF='tch5translation='5.5 1.7 -15.525'>
261                      <Transform DEF='tex5translation='-0.15 -0.05 0.2'>
262                           <Shape>
263                                <Text string='"Light6"'>
264                                     <FontStyle USE='TextFontStyle'/>
265                                </Text>
266                                <Appearance>
267                                     <Material diffuseColor='1 1 1transparency='1'/>
268                                </Appearance>
269                           </Shape>
270                      </Transform>
271                      <Transform DEF='tex52rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
272                           <Shape>
273                                <Text string='"Light6"'>
274                                     <FontStyle USE='TextFontStyle'/>
275                                </Text>
276                                <Appearance>
277                                     <Material diffuseColor='1 1 1transparency='1'/>
278                                </Appearance>
279                           </Shape>
280                      </Transform>
281 
                    <!-- ROUTE information for touch5 node:  [from touchTime to time5.startTime ] -->
                    <TouchSensor DEF='touch5description='Click here to start'/>
282                      <Shape>
283                           <Sphere radius='0.2'/>
284                           <Appearance>
285                                <Material diffuseColor='1 0 1'/>
286                           </Appearance>
287                      </Shape>
288                 </Transform>
289                 <Transform DEF='tch6translation='6 1.7 -15.525'>
290                      <Transform DEF='tex6translation='-0.15 -0.05 0.2'>
291                           <Shape>
292                                <Text string='"Light7"'>
293                                     <FontStyle USE='TextFontStyle'/>
294                                </Text>
295                                <Appearance>
296                                     <Material diffuseColor='1 1 1transparency='1'/>
297                                </Appearance>
298                           </Shape>
299                      </Transform>
300                      <Transform DEF='tex62rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
301                           <Shape>
302                                <Text string='"Light7"'>
303                                     <FontStyle USE='TextFontStyle'/>
304                                </Text>
305                                <Appearance>
306                                     <Material diffuseColor='1 1 1transparency='1'/>
307                                </Appearance>
308                           </Shape>
309                      </Transform>
310 
                    <!-- ROUTE information for touch6 node:  [from touchTime to time6.startTime ] -->
                    <TouchSensor DEF='touch6description='Click here to start'/>
311                      <Shape>
312                           <Sphere radius='0.2'/>
313                           <Appearance>
314                                <Material diffuseColor='1 0 1'/>
315                           </Appearance>
316                      </Shape>
317                 </Transform>
318                 <Transform DEF='tch7translation='6.5 1.7 -15.525'>
319                      <Transform DEF='tex7translation='-0.15 -0.05 0.2'>
320                           <Shape>
321                                <Text string='"Light8"'>
322                                     <FontStyle USE='TextFontStyle'/>
323                                </Text>
324                                <Appearance>
325                                     <Material diffuseColor='1 1 1transparency='1'/>
326                                </Appearance>
327                           </Shape>
328                      </Transform>
329                      <Transform DEF='tex72rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
330                           <Shape>
331                                <Text string='"Light8"'>
332                                     <FontStyle USE='TextFontStyle'/>
333                                </Text>
334                                <Appearance>
335                                     <Material diffuseColor='1 1 1transparency='1'/>
336                                </Appearance>
337                           </Shape>
338                      </Transform>
339 
                    <!-- ROUTE information for touch7 node:  [from touchTime to time7.startTime ] -->
                    <TouchSensor DEF='touch7description='Click here to start'/>
340                      <Shape>
341                           <Sphere radius='0.2'/>
342                           <Appearance>
343                                <Material diffuseColor='1 0 1'/>
344                           </Appearance>
345                      </Shape>
346                 </Transform>
347                 <Transform DEF='tch8translation='7 1.7 -15.525'>
348                      <Transform DEF='tex8translation='-0.15 -0.05 0.2'>
349                           <Shape>
350                                <Text string='"Light9"'>
351                                     <FontStyle USE='TextFontStyle'/>
352                                </Text>
353                                <Appearance>
354                                     <Material diffuseColor='1 1 1transparency='1'/>
355                                </Appearance>
356                           </Shape>
357                      </Transform>
358                      <Transform DEF='tex82rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
359                           <Shape>
360                                <Text string='"Light9"'>
361                                     <FontStyle USE='TextFontStyle'/>
362                                </Text>
363                                <Appearance>
364                                     <Material diffuseColor='1 1 1transparency='1'/>
365                                </Appearance>
366                           </Shape>
367                      </Transform>
368 
                    <!-- ROUTE information for touch8 node:  [from touchTime to time8.startTime ] -->
                    <TouchSensor DEF='touch8description='Click here to start'/>
369                      <Shape>
370                           <Sphere radius='0.2'/>
371                           <Appearance>
372                                <Material diffuseColor='1 0 1'/>
373                           </Appearance>
374                      </Shape>
375                 </Transform>
376                 <Transform DEF='tch9translation='7.5 1.7 -15.525'>
377                      <Transform DEF='tex9translation='-0.15 -0.05 0.2'>
378                           <Shape>
379                                <Text string='"Light10"'>
380                                     <FontStyle USE='TextFontStyle'/>
381                                </Text>
382                                <Appearance>
383                                     <Material diffuseColor='1 1 1transparency='1'/>
384                                </Appearance>
385                           </Shape>
386                      </Transform>
387                      <Transform DEF='tex92rotation='0 1 0 3.14translation='0.15 -0.05 -0.2'>
388                           <Shape>
389                                <Text string='"Light10"'>
390                                     <FontStyle USE='TextFontStyle'/>
391                                </Text>
392                                <Appearance>
393                                     <Material diffuseColor='1 1 1transparency='1'/>
394                                </Appearance>
395                           </Shape>
396                      </Transform>
397 
                    <!-- ROUTE information for touch9 node:  [from touchTime to time9.startTime ] -->
                    <TouchSensor DEF='touch9description='Click here to start'/>
398                      <Shape>
399                           <Sphere radius='0.2'/>
400                           <Appearance>
401                                <Material diffuseColor='1 0 1'/>
402                           </Appearance>
403                      </Shape>
404                 </Transform>
405            </Transform>
406 
          <!-- ROUTE information for time node:  [from touch.touchTime to startTime ] [from fraction_changed to Sequenc.set_fraction ] -->
          <TimeSensor DEF='timecycleInterval='15'/>
407 
          <!-- ROUTE information for time0 node:  [from touch0.touchTime to startTime ] [from fraction_changed to Sequenc0.set_fraction ] -->
          <TimeSensor DEF='time0'/>
408 
          <!-- ROUTE information for time1 node:  [from touch1.touchTime to startTime ] [from fraction_changed to Sequenc1.set_fraction ] -->
          <TimeSensor DEF='time1'/>
409 
          <!-- ROUTE information for time2 node:  [from touch2.touchTime to startTime ] [from fraction_changed to Sequenc2.set_fraction ] -->
          <TimeSensor DEF='time2'/>
410 
          <!-- ROUTE information for time3 node:  [from touch3.touchTime to startTime ] [from fraction_changed to Sequenc3.set_fraction ] -->
          <TimeSensor DEF='time3'/>
411 
          <!-- ROUTE information for time4 node:  [from touch4.touchTime to startTime ] [from fraction_changed to Sequenc4.set_fraction ] -->
          <TimeSensor DEF='time4'/>
412 
          <!-- ROUTE information for time5 node:  [from touch5.touchTime to startTime ] [from fraction_changed to Sequenc5.set_fraction ] -->
          <TimeSensor DEF='time5'/>
413 
          <!-- ROUTE information for time6 node:  [from touch6.touchTime to startTime ] [from fraction_changed to Sequenc6.set_fraction ] -->
          <TimeSensor DEF='time6'/>
414 
          <!-- ROUTE information for time7 node:  [from touch7.touchTime to startTime ] [from fraction_changed to Sequenc7.set_fraction ] -->
          <TimeSensor DEF='time7'/>
415 
          <!-- ROUTE information for time8 node:  [from touch8.touchTime to startTime ] [from fraction_changed to Sequenc8.set_fraction ] -->
          <TimeSensor DEF='time8'/>
416 
          <!-- ROUTE information for time9 node:  [from touch9.touchTime to startTime ] [from fraction_changed to Sequenc9.set_fraction ] -->
          <TimeSensor DEF='time9'/>
417            < ROUTE  fromNode='touch' fromField='touchTime' toNode='time' toField='startTime'/>
418            < ROUTE  fromNode='touch0' fromField='touchTime' toNode='time0' toField='startTime'/>
419            < ROUTE  fromNode='touch1' fromField='touchTime' toNode='time1' toField='startTime'/>
420            < ROUTE  fromNode='touch2' fromField='touchTime' toNode='time2' toField='startTime'/>
421            < ROUTE  fromNode='touch3' fromField='touchTime' toNode='time3' toField='startTime'/>
422            < ROUTE  fromNode='touch4' fromField='touchTime' toNode='time4' toField='startTime'/>
423            < ROUTE  fromNode='touch5' fromField='touchTime' toNode='time5' toField='startTime'/>
424            < ROUTE  fromNode='touch6' fromField='touchTime' toNode='time6' toField='startTime'/>
425            < ROUTE  fromNode='touch7' fromField='touchTime' toNode='time7' toField='startTime'/>
426            < ROUTE  fromNode='touch8' fromField='touchTime' toNode='time8' toField='startTime'/>
427            < ROUTE  fromNode='touch9' fromField='touchTime' toNode='time9' toField='startTime'/>
428 
          <!-- ROUTE information for Sequenc node:  [from time.fraction_changed to set_fraction ] [from value_changed to maintouch.translation ] -->
          <PositionInterpolator DEF='Sequenckey='0 0.01 0.99 1keyValue='0 -5 0 0 0 0 0 0 0 0 -5 0'/>
429 
          <!-- ROUTE information for Sequenc0 node:  [from time0.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc0key='0 1keyValue='0 0'/>
430 
          <!-- ROUTE information for Sequenc1 node:  [from time1.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc1key='0 1keyValue='0 1'/>
431 
          <!-- ROUTE information for Sequenc2 node:  [from time2.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc2key='0 1keyValue='0 2'/>
432 
          <!-- ROUTE information for Sequenc3 node:  [from time3.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc3key='0 1keyValue='0 3'/>
433 
          <!-- ROUTE information for Sequenc4 node:  [from time4.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc4key='0 1keyValue='0 4'/>
434 
          <!-- ROUTE information for Sequenc5 node:  [from time5.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc5key='0 1keyValue='0 5'/>
435 
          <!-- ROUTE information for Sequenc6 node:  [from time6.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc6key='0 1keyValue='0 6'/>
436 
          <!-- ROUTE information for Sequenc7 node:  [from time7.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc7key='0 1keyValue='0 7'/>
437 
          <!-- ROUTE information for Sequenc8 node:  [from time8.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc8key='0 1keyValue='0 8'/>
438 
          <!-- ROUTE information for Sequenc9 node:  [from time9.fraction_changed to set_fraction ] [from value_changed to LightSwitch.whichChoice ] -->
          <IntegerSequencer DEF='Sequenc9key='0 1keyValue='0 9'/>
439            < ROUTE  fromNode='time' fromField='fraction_changed' toNode='Sequenc' toField='set_fraction'/>
440            < ROUTE  fromNode='time0' fromField='fraction_changed' toNode='Sequenc0' toField='set_fraction'/>
441            < ROUTE  fromNode='time1' fromField='fraction_changed' toNode='Sequenc1' toField='set_fraction'/>
442            < ROUTE  fromNode='time2' fromField='fraction_changed' toNode='Sequenc2' toField='set_fraction'/>
443            < ROUTE  fromNode='time3' fromField='fraction_changed' toNode='Sequenc3' toField='set_fraction'/>
444            < ROUTE  fromNode='time4' fromField='fraction_changed' toNode='Sequenc4' toField='set_fraction'/>
445            < ROUTE  fromNode='time5' fromField='fraction_changed' toNode='Sequenc5' toField='set_fraction'/>
446            < ROUTE  fromNode='time6' fromField='fraction_changed' toNode='Sequenc6' toField='set_fraction'/>
447            < ROUTE  fromNode='time7' fromField='fraction_changed' toNode='Sequenc7' toField='set_fraction'/>
448            < ROUTE  fromNode='time8' fromField='fraction_changed' toNode='Sequenc8' toField='set_fraction'/>
449            < ROUTE  fromNode='time9' fromField='fraction_changed' toNode='Sequenc9' toField='set_fraction'/>
450            < ROUTE  fromNode='Sequenc' fromField='value_changed' toNode='maintouch' toField='translation'/>
451            < ROUTE  fromNode='Sequenc0' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
452            < ROUTE  fromNode='Sequenc1' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
453            < ROUTE  fromNode='Sequenc2' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
454            < ROUTE  fromNode='Sequenc3' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
455            < ROUTE  fromNode='Sequenc4' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
456            < ROUTE  fromNode='Sequenc5' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
457            < ROUTE  fromNode='Sequenc6' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
458            < ROUTE  fromNode='Sequenc7' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
459            < ROUTE  fromNode='Sequenc8' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
460            < ROUTE  fromNode='Sequenc9' fromField='value_changed' toNode='LightSwitch' toField='whichChoice'/>
461       </Scene>
462  </X3D>
<!--

<!--
Event Graph ROUTE Table shows event connections.
-->

<!-- to top Index for DEF nodes: AlternativeLight1, AlternativeLight10, AlternativeLight2, AlternativeLight3, AlternativeLight4, AlternativeLight5, AlternativeLight6, AlternativeLight7, AlternativeLight8, AlternativeLight9, LightSwitch, Maintch, maintouch, Point1, Point1a, Point2, Point2a, Point3, Point3a, Point4, Point4a, Point5, Point5a, Point6, Point6a, Point7, Point7a, Sequenc, Sequenc0, Sequenc1, Sequenc2, Sequenc3, Sequenc4, Sequenc5, Sequenc6, Sequenc7, Sequenc8, Sequenc9, tch0, tch1, tch2, tch3, tch4, tch5, tch6, tch7, tch8, tch9, tex0, tex02, tex1, tex12, tex2, tex22, tex3, tex32, tex4, tex42, tex5, tex52, tex6, tex62, tex7, tex72, tex8, tex82, tex9, tex92, TextFontStyle, time, time0, time1, time2, time3, time4, time5, time6, time7, time8, time9, touch, touch0, touch1, touch2, touch3, touch4, touch5, touch6, touch7, touch8, touch9
-->
X3D Tooltips element index: Appearance, DirectionalLight, FontStyle, Group, head, IntegerSequencer, Material, meta, PointLight, PositionInterpolator, ROUTE, Scene, Shape, Sphere, SpotLight, Switch, Text, TimeSensor, TouchSensor, Transform, WorldInfo, X3D, accessType and type, XML data types, field types

Event Graph ROUTE Table entries with 33 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.

touch
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time
TimeSensor
startTime
SFTime
then
 
 
 
time
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc
PositionInterpolator
set_fraction
SFFloat
then
 
 
 
Sequenc
PositionInterpolator
value_changed
SFVec3f

ROUTE
event to
(3)
maintouch
Transform
translation
SFVec3f

touch0
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time0
TimeSensor
startTime
SFTime
then
 
 
 
time0
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc0
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc0
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch1
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time1
TimeSensor
startTime
SFTime
then
 
 
 
time1
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc1
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc1
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch2
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time2
TimeSensor
startTime
SFTime
then
 
 
 
time2
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc2
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc2
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch3
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time3
TimeSensor
startTime
SFTime
then
 
 
 
time3
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc3
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc3
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch4
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time4
TimeSensor
startTime
SFTime
then
 
 
 
time4
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc4
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc4
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch5
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time5
TimeSensor
startTime
SFTime
then
 
 
 
time5
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc5
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc5
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch6
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time6
TimeSensor
startTime
SFTime
then
 
 
 
time6
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc6
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc6
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch7
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time7
TimeSensor
startTime
SFTime
then
 
 
 
time7
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc7
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc7
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch8
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time8
TimeSensor
startTime
SFTime
then
 
 
 
time8
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc8
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc8
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

touch9
TouchSensor
touchTime
SFTime

ROUTE
event to
(1)
time9
TimeSensor
startTime
SFTime
then
 
 
 
time9
TimeSensor
fraction_changed
SFFloat

ROUTE
event to
(2)
Sequenc9
IntegerSequencer
set_fraction
SFFloat
then
 
 
 
Sequenc9
IntegerSequencer
value_changed
SFInt32

ROUTE
event to
(3)
LightSwitch
Switch
whichChoice
SFInt32

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/X3dForAdvancedModeling/SanCarlosCathedral/LightingAlternativesIndex.html -->
<!-- Version control at
https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/X3dForAdvancedModeling/SanCarlosCathedral/LightingAlternatives.x3d -->

<!-- Color legend: X3D terminology <X3dNode DEF='idName' field='value'/> matches XML terminology <XmlElement DEF='idName' attribute='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. -->