[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] VRML and XML
W. Eliot Kimber wrote: > I think that could be pretty useful, especially once VRML browsers let > you associate presentation styles with element types. After all, > rendering 3-D objects is not fundamentally different in the abstract > from rendering 2-D objects, it's still a matter of apply presentation > style. So why shouldn't XSL be just as useful for VRML worlds as for > 2-D documents? While it is possible to write a declarative architecture for the static nodes (eg VRML 1.0), it is a very different beast from a real time simulation language. As to associating XSL, how useful is it to associate a style language with a presentation language that already includes all of the presentation information required. VRML 2.0 is a real time simulation language. The event model is very interesting. It includes events, exposed fields, addChildren, etc. as part of the language. The test is to see if XML, DOM, DHTML adds anything useful. If others from the XML community are interested in this project, it will be conducted on an open list. Here is a simple VRML 2.0 file so you can discover what it looks like. Be aware that a VRML instance has a lot of assumed parts for information that the browser must explicitly support but which are not in the instance itself (eg, addChildren). VRML 2.0 was designed for a very efficient syntax. len #VRML V2.0 utf8 WorldInfo { title "Opening Animation" info [ ] } DEF FirstNav NavigationInfo { type ["NONE" ] headlight FALSE } Background{ skyColor 0 0 0 frontUrl["../galaxy/stars.jpg"] backUrl ["../galaxy/stars.jpg"] rightUrl ["../galaxy/stars.jpg"] leftUrl ["../galaxy/stars.jpg"] topUrl ["../galaxy/stars.jpg"] bottomUrl ["../galaxy/stars.jpg"] } DEF ZoomView Transform { translation 0 0 500 rotation 0 0 1 0 children [ DEF StartView Viewpoint{ position 0 0 0 orientation 0 0 1 0 fieldOfView 0.7 description "Travelling" jump TRUE } ] } DEF Title Transform { translation 0 0 130 #0 0 140 scale 1 1 1 children [ # DEF TitleTouch TouchSensor {} Shape{ appearance Appearance{ material Material{ } texture ImageTexture{ url [ "textures/title_1.gif"] repeatS FALSE repeatT FALSE } textureTransform TextureTransform { translation 0.01 0.01 scale 0.97 0.97 } } geometry IndexedFaceSet{ coord Coordinate{ point[ -250 -118 -40, 0 -118 -40, 0 125 -40, -250 125 -40] } #end coord coordIndex[ 0, 1, 2, 3] texCoord TextureCoordinate { point [ -0.01 -0.01, 1.01 -0.01, 1.01 1.01, -0.01 1.01 ] } texCoordIndex [ 0, 1, 2, 3] } #end geometry }, #end shape Shape{ appearance Appearance{ material Material { } texture ImageTexture{ url [ "textures/title_2.gif"] repeatS FALSE repeatT FALSE } textureTransform TextureTransform { translation 0.01 0.01 scale 0.98 0.98 } } geometry IndexedFaceSet{ coord Coordinate{ point [ 0 -118 -40, 250 -118 -40, 250 125 -40, 0 125 -40] } #end coord coordIndex[ 0, 1, 2, 3] texCoord TextureCoordinate { point [ -0.01 -0.01, 1.01 -0.01, 1.01 1.01, -0.01 1.01 ] point [ 0 0, 1 0, 1 1, 0 1 ] } texCoordIndex [ 0, 1, 2, 3] } #end geometry } #end shape ] #end Children } #end Transform DEF Title_PI PositionInterpolator { key [ 0, 0.25, 0.5, 0.75, 1 ] keyValue [ 0 0 130, 0 0 180, 0 0 300, 0 0 100000, 0 0 200000 ] } DEF Corona Transform{ children Billboard { axisOfRotation 0 0 0 children [ DEF FirstLight Transform{ children [ PointLight{ ambientIntensity 1 intensity 0.9 radius 220 } ] rotation 0 0 -1 0 translation 0 0 200 }, DEF AnotherLight Transform{ children [ PointLight{ ambientIntensity 1 intensity 0.4 radius 710 } ] rotation 0 0 -1 0 translation 0 0 700 }, DEF DirectSun Group { children [ DirectionalLight { direction 0 0 1 intensity 0.9 } ] }, Shape{ appearance Appearance{ material Material{ } texture ImageTexture{ url [ "textures/corona_l.gif"] repeatS FALSE repeatT FALSE } } geometry IndexedFaceSet{ creaseAngle 1 coord Coordinate{ point[ -249 -118 -40, 3 -118 -40, 3 128 -40, -249 128 -40] } #end coord coordIndex[ 0, 1, 2, 3] texCoord TextureCoordinate { point [ -0.01 -0.01, 1.01 -0.01, 1.01 1.01, -0.01 1.01 ] } texCoordIndex [ 0, 1, 2, 3] } #end geometry }, #end shape Shape{ appearance Appearance{ material Material{ } texture ImageTexture{ url [ "textures/corona_r.gif"] repeatS FALSE repeatT FALSE } } geometry IndexedFaceSet{ creaseAngle 1 coord Coordinate{ point [ -3 -118 -40, 250 -118 -40, 250 127 -40, -3 127 -40] } #end coord coordIndex[ 0, 1, 2, 3] texCoord TextureCoordinate { point [ -0.01 -0.01, 1.01 -0.01, 1.01 1.01, -0.01 1.01 ] point [ 0 0, 1 0, 1 1, 0 1 ] } texCoordIndex [ 0, 1, 2, 3] } #end geometry } #end shape ] # end billboard children } # end billboard } # end Corona transform DEF TheSpheres Transform { children [ DEF Core Transform { children [ Shape { appearance Appearance{ material Material { diffuseColor 1 1 1 emissiveColor 1 1 1 } } geometry Sphere{ radius 65 } } ] }, DEF Inner Transform{ children [ Shape{ appearance Appearance{ material Material{ diffuseColor 1 1 1 emissiveColor 0.5 0.4 0.2 #0.7 0.6 0.4 ambientIntensity 1 transparency 0.3 shininess 1 } texture ImageTexture{ url [ "textures/sol_1.gif"] } } geometry Sphere{ radius 69.5 } } ] rotation 0 1 0 0 }, DEF Outer Transform{ children [ Shape{ appearance Appearance{ material DEF Shell Material{ diffuseColor 1 1 1 emissiveColor 0.7 0.6 0.4 #0.9 0.8 0.6 ambientIntensity 1 shininess 0 transparency 0.75 } texture ImageTexture{ url [ "textures/sol_2.gif"] } } geometry Sphere{ radius 80 } } ] rotation 0 1 0 0 }, DEF Flares Transform{ children [ Shape{ appearance Appearance{ material DEF FlaresT Material{ diffuseColor 1 1 1 emissiveColor 0.5 0.4 0.25 #0.7 0.6 0.5 ambientIntensity 1 shininess 0.2 transparency 0 } texture ImageTexture{ url [ "textures/sol_3.gif"] } } geometry DEF FlareSphere Sphere{ radius 75 } } ] rotation 0 1 0 0 } ] # end TheSpheres children rotation 0 1 0 0 } DEF Inner_TmS TimeSensor{ cycleInterval 20 enabled TRUE loop TRUE } DEF Inner_OI OrientationInterpolator{ key [ 0, 0.333333, 0.666667, 1] keyValue [ 0 1 0 0, 0 1 0 2.0944, 0 1 0 4.18879, 0 1 0 6.28319] } ROUTE Inner_TmS.fraction_changed TO Inner_OI.set_fraction ROUTE Inner_OI.value_changed TO Inner.set_rotation DEF Flares_TmS TimeSensor { cycleInterval 42 enabled TRUE loop TRUE } DEF FlareExp TimeSensor { cycleInterval 3 enabled TRUE loop TRUE } DEF Flares_OI OrientationInterpolator{ key [ 0, 0.333333, 0.666667, 1] keyValue [ 0 1 0 0, 0 1 0 2.0944, 0 1 0 4.18879, 0 1 0 6.28319] } #DEF Flares_SI ScalarInterpolator { # key [ 0 .5 1 ] # keyValue [ 65 75 65 ] #0 0.7 0 ] # } DEF FlareScale PositionInterpolator { key [ 0 .5 1 ] keyValue [ 0.9 0.8 0.9 0.85 0.8 0.85 0.9 0.8 0.9 ] } ROUTE Flares_TmS.fraction_changed TO Flares_OI.set_fraction ROUTE Flares_OI.value_changed TO Flares.set_rotation #ROUTE FlareExp.fraction_changed TO Flares_SI.set_fraction #ROUTE Flares_SI.value_changed TO FlaresT.transparency ROUTE FlareExp.fraction_changed TO FlareScale.set_fraction ROUTE FlareScale.value_changed TO Flares.set_scale DEF Crash Transform{ rotation 0 1 0 -2.3562 translation 0 0 100000 children [ DEF CrashView Viewpoint{ position 0 400 1000 orientation -1 0 0 0.38051 fieldOfView 0.6 description "The Earth" jump TRUE } #DEF CrashNav NavigationInfo{ # type ["NONE" ] # avatarSize [0.025, 0.025, 0.025] # headlight FALSE #} DEF EandC Transform{ children [ DEF Earth Transform{ children [ Shape{ appearance Appearance{ material Material{ emissiveColor 0.2 0.2 0.2 diffuseColor 1 1 1 shininess 0.390625 transparency 0 } texture ImageTexture{ url [ "textures/earth.jpg"] } } geometry Sphere{ radius 63.78 } } ] scale 1.003 1 1.003 # 1/127 oblateness }, DEF Clouds Transform{ children [ Shape{ appearance Appearance{ material Material{ emissiveColor 0.2 0.2 0.2 diffuseColor 1 1 1 shininess 0.390625 } texture ImageTexture{ url [ "textures/clouds.gif"] } } geometry Sphere{ radius 63.98 # 12 km above sea level } } ] scale 1.04 1.04 1.04 # sorry, added separation needed for VRML browser z-buffer noise. }, DEF Haze Transform{ children [ Shape{ appearance Appearance{ material DEF HazeT Material{ # emissiveColor 0.35 0.2 0.2 diffuseColor 0.35 0.2 0.2 transparency 1 } } geometry Sphere{ radius 64.08 # 12 km above sea level } } ] scale 1.1 1.1 1.1 # sorry, added separation needed for VRML browser z-buffer noise. } ] # end EandC children rotation 0 0 1 -.40927971 # 23.45 degree inclination (23 degrees 27 minutes) scale 2.3 2.3 2.3 }, DEF PlanetLight Transform{ children [ PointLight{ ambientIntensity 0.6 radius 1500 } ] rotation 0 0 -1 0 translation -600 100 1000 }, DEF Asteroid Transform { translation 0 0 0 children [ Shape { appearance Appearance{ material Material{ ambientIntensity 0.05 emissiveColor 0.25 0.15 0.1 diffuseColor 0.8 0.6 0.4 specularColor 0.8 0.6 0.4 shininess 0.5 } texture ImageTexture { url "textures/asteroid.jpg" } } geometry Sphere { radius 10 } } #end Shape ] #end children of transform rotation 0 0 -1 0 scale 1 0.7 0.6 } DEF ExplodeTrans Transform{ # center 0 -20 -180 children Billboard { axisOfRotation 0 0 0 children [ DEF GoTouch TouchSensor{} DEF WhichImage Switch { whichChoice 0 choice [ Shape { geometry DEF largeFace IndexedFaceSet { coord Coordinate { point[ -100 -100 160, 100 -100 160, 100 100 160, -100 100 160] } #end coord coordIndex[ 0, 1, 2, 3] } #end geometry appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl01.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl03.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl05.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl09.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl11.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl13.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl15.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl17.gif" repeatS FALSE repeatT FALSE } } #end appearance }, #end shape Shape { geometry USE largeFace appearance Appearance { material Material{ diffuseColor 0 0 0 transparency 1 } texture ImageTexture { url "expl01.gif" repeatS FALSE repeatT FALSE } } #end appearance } #end shape ] #end choice }, #end Switch ] #end children of Billboard } #end Billboard # translation 0 20 180 } #end ExplodeTrans transform ] #end Crash children } #end Crash Transform DEF BillTime TimeSensor{ loop FALSE enabled FALSE cycleInterval 2 #1.8 startTime 0 stopTime 1 } DEF BillAnimate ScalarInterpolator { key [ 0, 0.5, 1 ] keyValue [ 0, 4, 8 ] } DEF ChangeImage Script { eventIn SFFloat newValue eventOut SFInt32 newImageCount url "javascript: function newValue(valueIn){ newImageCount = Math.round(valueIn); }" } DEF CheckTrigger Script { eventIn SFFloat fromTimer eventIn SFRotation earthRotation field SFBool triggerSet FALSE field SFBool doneOnce FALSE eventOut SFBool trigger eventOut SFBool trigger2 eventOut SFTime startIt # eventOut SFInt32 imageNumber url "javascript: function fromTimer(fractionIn){ if ( doneOnce ) return; else if (fractionIn >= 0.85) { triggerSet = TRUE; doneOnce = TRUE; } } function earthRotation(newRotation, timestamp){ if ( triggerSet == FALSE ) return; else if ( newRotation[3] > 0.4354 ) { if ( newRotation[3] < 1.1355 ) { print ('Rotation: ' + newRotation[3]); trigger = TRUE; trigger2 = TRUE; startIt = timestamp; triggerSet = FALSE; } } }" } ROUTE BillTime.fraction_changed TO BillAnimate.set_fraction ROUTE BillAnimate.value_changed TO ChangeImage.newValue ROUTE ChangeImage.newImageCount TO WhichImage.set_whichChoice #/S/SpinEngine{ object Earth enabled TRUE time 23.9 axis 0.000000 1.000000 0.000000 degrees -360.000000 oscillate FALSE repeat TRUE} #/SI/Start of SpinEngine DEF Earth_TmS TimeSensor{ cycleInterval 23.9 enabled TRUE loop TRUE } DEF Earth_OI OrientationInterpolator{ key [ 0, 0.25 0.5, 0.75, 1] keyValue [ 0 1 0 1.570796327, 0 1 0 3.141592654, 0 1 0 4.71238898, 0 1 0 0, 0 1 0 1.570796327] } ROUTE Earth_TmS.fraction_changed TO Earth_OI.set_fraction ROUTE Earth_OI.value_changed TO Earth.set_rotation #/SX/End of SpinEngine #/S/SpinEngine{ object Clouds enabled TRUE time 14.000000 axis 0.000000 1.000000 0.000000 degrees -360.000000 oscillate FALSE repeat TRUE} #/SI/Start of SpinEngine DEF Clouds_TmS TimeSensor{ cycleInterval 14 enabled TRUE loop TRUE } DEF Clouds_OI OrientationInterpolator{ key [ 0, 0.333333, 0.666667, 1] keyValue [ 0 1 0 0, 0 1 0 2.0944, 0 1 0 4.18879, 0 1 0 6.28319] } ROUTE Clouds_TmS.fraction_changed TO Clouds_OI.set_fraction ROUTE Clouds_OI.value_changed TO Clouds.set_rotation #/SX/End of SpinEngine DEF Falling_TmS TimeSensor { cycleInterval 22 loop FALSE enabled TRUE startTime 0 stopTime 0 } DEF Falling_PI PositionInterpolator { key [ 0, 0.5, 1 ] keyValue [ -30 420 1000, -15 190 500, 0 -40 0 ] } #/S/SpinEngine{ object Asteroid enabled TRUE time 12.000000 axis 1.000000 0.000000 0.000000 degrees -360.000000 oscillate FALSE repeat TRUE} #/SI/Start of SpinEngine DEF Asteroid_TmS TimeSensor{ cycleInterval 7 enabled TRUE loop TRUE } DEF Asteroid_OI OrientationInterpolator{ key [ 0, 0.333333, 0.666667, 1] keyValue [ 1 0 1 0, 1 0 1 2.0944, 1 0 1 4.18879, 1 0 1 6.28319] } ROUTE Asteroid_TmS.fraction_changed TO Asteroid_OI.set_fraction ROUTE Asteroid_OI.value_changed TO Asteroid.set_rotation #/SX/End of SpinEngine ROUTE Falling_TmS.fraction_changed TO Falling_PI.set_fraction ROUTE Falling_PI.value_changed TO Asteroid.set_translation DEF TitleTimer TimeSensor { loop FALSE enabled TRUE cycleInterval 8 startTime 0 stopTime 0 } DEF HazeTime TimeSensor{ cycleInterval 12 enabled FALSE loop FALSE startTime 0 stopTime 0 } DEF HazeDensity Script { eventIn SFFloat fromTimer eventOut SFFloat valueChanged url [ "javascript: function fromTimer(fractionIn){ valueChanged = (1 - fractionIn); }" ] } DEF SetStop Script { eventIn SFTime current eventOut SFTime StopIt url [ "javascript: function current(value){ StopIt = (value + 8); }" ] } DEF SetStart Script { eventIn SFTime current eventOut SFBool startIt eventOut SFTime theTime eventOut SFTime addedTime eventOut SFTime startAudio eventOut SFTime endAudio eventOut SFTime finalOrbit url [ "javascript: function current(value){ startIt = TRUE; theTime = (value + 6); addedTime = (value + 22); startAudio = (value + 2); endAudio = (value + 114); finalOrbit = (value + 62); //was + 58 }" ] } DEF StartFalling Script { eventIn SFBool set_theTime eventOut SFTime theTime_changed url [ "javascript: function set_theTime( value, timestamp ){ if ( value == TRUE ) { theTime_changed = (timestamp + 1); } }" ] } DEF Zoom_TmS TimeSensor { enabled FALSE loop FALSE startTime 0 stopTime 0 cycleInterval 16 } DEF Zoom_PI PositionInterpolator { key [ 0, 0.25, 0.5, 0.75, 1 ] keyValue [ 0 0 1000, 0 0 6000, 0 0 10000, -35 200 20000, -707.10678 400 99292.89322 ] } DEF Zoom_OI OrientationInterpolator { key [ 0, 0.5, 0.65, 0.75, 1 ] keyValue [ 0 1 0 0 -0.078102 -0.97895 -0.18856 0.4 -0.078102 -0.97895 -0.18856 1.1855 -0.078102 -0.97895 -0.18856 2.3711 -0.078102 -0.97895 -0.18856 2.3711 ] } DEF TriggerCrash Script { eventIn SFFloat fromTimer field SFBool doneOnce FALSE eventOut SFBool animationEnable eventOut SFBool viewpointDisable url [ "javascript: function fromTimer(fractionIn){ if (fractionIn >= 0.95) { if (doneOnce == TRUE) return; else { doneOnce = TRUE; animationEnable = TRUE; viewpointDisable = FALSE; } } else {trigger = FALSE;} }" ] } DEF ErasePrompt Script { eventIn SFTime timeIn field MFString name "../blanktxt.html" field MFString param "target=HTMLTEXT" eventOut SFTime startNow url [ "vrmlscript: function timeIn( value, timestamp ){ if ( value > 0 ) { startNow = timestamp; Browser.loadURL ( name, param ); } }" ] } DEF TitleOff Script { eventIn SFFloat fromTimer eventOut SFTime timeIt url [ "javascript: function fromTimer(fractionIn, timestamp){ if (fractionIn >= 0.3) { timeIt = (timestamp); } }" ] } DEF SwitchItOn Script { eventIn SFBool trigger eventOut SFBool animationEnable eventOut SFBool viewpointDisable url [ "javascript: function trigger(value){ if (value == TRUE) { animationEnable = TRUE; viewpointDisable = FALSE; } }" ] } DEF aSound Sound { source DEF TestSound AudioClip { url "scen01a.wav" startTime -1 stopTime 0 loop FALSE } minBack 100000 minFront 100000 maxBack 100000 maxFront 100000 spatialize FALSE intensity 1 location 0 0 70000 } DEF doneHere Script { eventIn SFBool trigger field SFBool doneOnce FALSE field MFString name2 "../l_muse1.html" field MFString param2 "target=HTMLTEXT" # field MFString name3 "../museum.html" # field MFString param3 "target=VRML" url [ "javascript: function trigger( value, timestamp ) { if (value == FALSE) { Browser.loadURL ( name2, param2 ); // Browser.loadURL ( name3, param3 ); } }" ] } # if ( doneOnce == FALSE ) { # doneOnce = TRUE; # return; # } # else { DEF FinalOrbit_TS TimeSensor { cycleInterval 44 loop TRUE enabled FALSE startTime -1 stopTime 0 } DEF FinalOrbit_PI PositionInterpolator { key [ 0 0.25 0.5 0.75 1 ] keyValue [ 0 400 1000 -1000 0 0 0 -400 -1000 1000 0 0 0 400 1000 ] } DEF FinalOrbit_OI OrientationInterpolator { key [ 0 0.25 0.5 0.75 1 ] keyValue [ 1 0 0 -0.38051 0 1 0 -1.5708 # 0 1 0 -3.14159 0 0.98196 -0.18911 3.14159 0 1 0 -4.71239 1 0 0 -0.38051 ] } ROUTE SetStart.startAudio TO TestSound.startTime ROUTE SetStart.endAudio TO TestSound.stopTime ROUTE SetStart.finalOrbit TO FinalOrbit_TS.startTime ROUTE TestSound.isActive TO doneHere.trigger ROUTE SetStart.addedTime TO Zoom_TmS.stopTime ROUTE SetStart.theTime TO Zoom_TmS.startTime ROUTE SetStart.startIt TO Zoom_TmS.enabled ROUTE Zoom_TmS.fraction_changed TO Zoom_PI.set_fraction ROUTE Zoom_PI.value_changed TO ZoomView.set_translation ROUTE Zoom_TmS.fraction_changed TO Zoom_OI.set_fraction ROUTE Zoom_OI.value_changed TO ZoomView.set_rotation ROUTE Zoom_TmS.fraction_changed TO TriggerCrash.fromTimer #ROUTE TriggerCrash.trigger TO SwitchItOn.trigger #ROUTE SwitchItOn.animationEnable TO CrashView.set_bind #ROUTE SwitchItOn.animationEnable TO StartFalling.set_theTime #ROUTE SwitchItOn.viewpointDisable TO Zoom_TmS.enabled ROUTE TriggerCrash.animationEnable TO CrashView.set_bind ROUTE TriggerCrash.animationEnable TO StartFalling.set_theTime ROUTE TriggerCrash.viewpointDisable TO Zoom_TmS.enabled ROUTE Falling_TmS.fraction_changed TO CheckTrigger.fromTimer ROUTE Earth_OI.value_changed TO CheckTrigger.earthRotation ROUTE CheckTrigger.trigger TO BillTime.enabled ROUTE CheckTrigger.trigger2 TO HazeTime.enabled ROUTE CheckTrigger.trigger2 TO FinalOrbit_TS.enabled #ROUTE CheckTrigger.imageNumber TO WhichImage.set_whichChoice #ROUTE Falling_TmS.time TO BillTime.startTime ROUTE CheckTrigger.startIt TO BillTime.startTime ROUTE StartFalling.theTime_changed TO Falling_TmS.startTime ROUTE HazeTime.fraction_changed TO HazeDensity.fromTimer ROUTE HazeDensity.valueChanged TO HazeT.transparency #ROUTE Falling_TmS.time TO HazeTime.startTime #ROUTE Falling_TmS.time TO SetStop.current ROUTE CheckTrigger.startIt TO HazeTime.startTime ROUTE CheckTrigger.startIt TO SetStop.current ROUTE SetStop.StopIt TO HazeTime.stopTime ROUTE FinalOrbit_TS.fraction_changed TO FinalOrbit_PI.set_fraction ROUTE FinalOrbit_TS.fraction_changed TO FinalOrbit_OI.set_fraction ROUTE FinalOrbit_PI.value_changed TO CrashView.position ROUTE FinalOrbit_OI.value_changed TO CrashView.orientation ROUTE TitleTimer.fraction_changed TO Title_PI.set_fraction ROUTE Title_PI.value_changed TO Title.set_translation ROUTE TitleTimer.fraction_changed TO TitleOff.fromTimer ROUTE TitleOff.timeIt TO SetStart.current #ROUTE TitleTouch.touchTime TO TitleTimer.startTime #ROUTE TitleTouch.touchTime TO ErasePrompt.timeIn #DEF removeWait Script { # eventIn SFTime triggerTime # field MFString textURL "../blanktxt.html" # field MFString textFrame "target=HTMLTEXT" # url ["javascript: # function triggerTime( value, timestamp ) { # if ( value > 0 ) { # Browser.loadURL( textURL, textFrame ); # } # }" # ] #} ROUTE ErasePrompt.startNow TO TitleTimer.startTime ROUTE TestSound.duration_changed TO ErasePrompt.timeIn xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ To (un)subscribe, mailto:majordomo@i... the following message; (un)subscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|