#VRML V2.0 utf8 WorldInfo { title "Floppy's VRML Guide Example 21" info ["(C) Copyright 1999 Vapour Technology" "vrmlguide@vapourtech.com"] ] } DirectionalLight { direction 0 -1 -1 ambientIntensity .5 } Background { skyColor 0 0 0 } DEF BACKRED Background { skyColor 1 0 0 } DEF BACKGREEN Background { skyColor 0 1 0 } DEF BACKBLUE Background { skyColor 0 0 1 } Group { children [ DEF WORLDVIEW Viewpoint { description "EntryWay" position 0 1.6 7.5 } DEF MOVABLE NavigationInfo { headlight FALSE } DEF FLOOR Shape { appearance DEF METAL Appearance { material Material { shininess .75 diffuseColor .75 .75 .75 ambientIntensity .5 } } geometry Cylinder { radius 10 height .1 } } Transform { translation 0 5 0 children USE FLOOR } Shape { appearance Appearance { material Material { transparency 1 } } geometry Cylinder { radius 10.1 height 5 } } DEF PILLAR Transform { translation 0 2.5 9 children [ Shape { appearance USE METAL geometry Cylinder { radius .25 height 5 } } ] } Transform { rotation 0 1 0 .78 children USE PILLAR } Transform { rotation 0 1 0 1.57 children USE PILLAR } Transform { rotation 0 1 0 2.36 children USE PILLAR } Transform { rotation 0 1 0 3.14 children USE PILLAR } Transform { rotation 0 1 0 3.93 children USE PILLAR } Transform { rotation 0 1 0 4.71 children USE PILLAR } Transform { rotation 0 1 0 5.5 children USE PILLAR } Transform { translation -5 1 -3 children [ DEF WORLDSWITCH TouchSensor { } Shape { appearance Appearance { material Material { emissiveColor 1 1 0 } } geometry Sphere { radius .1 } } ] } Transform { translation -5 .5 -3 children [ Shape { appearance USE METAL geometry Cylinder { radius .05 height 1 } } ] } Transform { translation 5 .5 -3 children [ Shape { appearance USE METAL geometry Box { size .5 1 2 } } ] } Transform { translation 5 1 -3.5 children [ DEF REDSWITCH TouchSensor { } Shape { appearance Appearance { material Material { emissiveColor 1 0 0 } } geometry Sphere { radius .2 } } ] } Transform { translation 5 1 -3 children [ DEF GREENSWITCH TouchSensor { } Shape { appearance Appearance { material Material { emissiveColor 0 1 0 } } geometry Sphere { radius .2 } } ] } Transform { translation 5 1 -2.5 children [ DEF BLUESWITCH TouchSensor { } Shape { appearance Appearance { material Material { emissiveColor 0 0 1 } } geometry Sphere { radius .2 } } ] } ] } DEF PLATFORMTIMER TimeSensor { cycleInterval 60 loop TRUE } DEF PLATFORMINT OrientationInterpolator { key [ 0 .25 .5 .75 1 ] keyValue [ 0 -1 0 0 0 -1 0 1.57 0 -1 0 3.14 0 -1 0 4.71 0 -1 0 0 ] } DEF PLATFORM Transform { children [ Transform { translation 0 0 20 children [ DEF PLATFORMVIEW Viewpoint { description "Moving Platform" position 0 1.6 1 } DEF STATIC NavigationInfo { headlight FALSE type "NONE" } Shape { appearance USE METAL geometry Box { size 2.2 .1 2.2 } } Transform { translation 0 1.1 -1 children [ DEF PLATFORMSWITCH TouchSensor { } Shape { appearance Appearance { material Material { emissiveColor 1 1 0 } } geometry Sphere { radius .1 } } ] } Transform { translation 0 .5 -1 children [ Shape { appearance USE METAL geometry Cylinder { radius .05 height 1 } } ] } ] } ] } DEF REDFILTER Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "javascript: function input(value, time) { if (value==boolValue) output = value; }" } DEF GREENFILTER Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "javascript: function input(value, time) { if (value==boolValue) output = value; }" } DEF BLUEFILTER Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "javascript: function input(value, time) { if (value==boolValue) output = value; }" } DEF PLATFORMFILTER Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "javascript: function input(value, time) { if (value==boolValue) output = value; }" } DEF WORLDFILTER Script { eventIn SFBool input field SFBool boolValue TRUE eventOut SFBool output url "javascript: function input(value, time) { if (value==boolValue) output = value; }" } #Platform animation ROUTE PLATFORMTIMER.fraction_changed TO PLATFORMINT.set_fraction ROUTE PLATFORMINT.value_changed TO PLATFORM.rotation #Viewpoint binding ROUTE WORLDSWITCH.isActive TO WORLDFILTER.input ROUTE WORLDFILTER.output TO PLATFORMVIEW.set_bind ROUTE PLATFORMSWITCH.isActive TO PLATFORMFILTER.input ROUTE PLATFORMFILTER.output TO WORLDVIEW.set_bind #NavigationInfo updating ROUTE WORLDFILTER.output TO STATIC.set_bind ROUTE PLATFORMFILTER.output TO MOVABLE.set_bind #Background binding ROUTE REDSWITCH.isActive TO REDFILTER.input ROUTE REDFILTER.output TO BACKRED.set_bind ROUTE GREENSWITCH.isActive TO GREENFILTER.input ROUTE GREENFILTER.output TO BACKGREEN.set_bind ROUTE BLUESWITCH.isActive TO BLUEFILTER.input ROUTE BLUEFILTER.output TO BACKBLUE.set_bind
© Copyright 1999 Vapour Technology - vrmlguide@vapourtech.com