#VRML V2.0 utf8 BIFSConfig { nodeIDbits 15 routeIDbits 10 PROTOIDbits 10 pixelMetric TRUE hasSize TRUE pixelWidth 200 pixelHeight 200 use3DMeshCoding FALSE usePredictiveMFFields FALSE } Update { action "SCENEREPLACE" absoluteTime TRUE timeStamp 0 node OrderedGroup { children [ Transform2D { # tlo translation 0 0 children [ Shape { geometry Rectangle {size 200 200} appearance Appearance { material Material2D { emissiveColor 1 1 0 transparency 0 filled TRUE } } } ] } DEF BTN1 Transform2D { translation 80 80 children[ Transform2D { translation 0 0 children [ TouchSensor{} Shape { geometry Bitmap {} appearance Appearance { material Material2D { emissiveColor 0 0 0 transparency 0 filled TRUE } texture DEF MOVIE1 MovieTexture { startTime 0 stopTime 0 #loop TRUE loop FALSE url ["od:8"] } } } ] } DEF BTN1a Transform2D { translation 5 5 children [ Shape { geometry Rectangle {size 10 10} appearance Appearance { material Material2D { emissiveColor 0.3 0.6 0.6 transparency 0 filled TRUE } } } ] } DEF BTN1b Transform2D { translation -20 -20 children [ Shape { geometry Rectangle {size 10 10} appearance Appearance { material Material2D { emissiveColor 0.8 0.8 0.8 transparency 0 filled TRUE } } } ] } ] } DEF TR_VIDEO_TRANSFORM Transform2D { translation 0 0 scale 0.15 0.15 children [ DEF TR_VIDEO Inline { url [ "test.mp4" ] } ] } DEF BTN2 Transform2D { translation -40 -40 children[ DEF PLAY2 TouchSensor{} Shape { geometry Rectangle {size 40 40} appearance Appearance { material Material2D { emissiveColor 1 0.1 0.4 transparency 0 filled TRUE } } } ] } DEF SOUND Sound2D { intensity 0.5 spatialize FALSE source DEF AUDIO AudioClip { startTime 0 stopTime 0 #loop TRUE loop FALSE url ["od:9"] } } DEF SOUND2 Sound2D { intensity 1 spatialize FALSE source DEF AUDIO2 AudioClip { startTime 10 stopTime 0 #loop TRUE loop FALSE url ["od:10"] } } DEF TIMER1 TimeSensor{ startTime 0 cycleInterval 2 loop TRUE } DEF PI1 PositionInterpolator2D{ key[0 1 2 3 4 5 6 7] keyValue[50 50, 0 50, -50 50, -50 0, -50 -50, 0 -50, 50 -50, 50 0] } DEF VAL1 Valuator{ factor1 0.5 offset1 0 } DEF CONTROL MediaControl { url ["od:8"] mediaStartTime -1 mediaStopTime -1 } DEF SENSOR MediaSensor{ url"od:8" } DEF ROTATE1 Script { eventIn SFTime rotate field SFNode timer1 USE TIMER1 field SFNode obj1 USE PI1 url "javascript: function rotate (value, time){ if (value){ obj1.set_fraction = value%8; } } " } DEF PLAY1 Script { eventIn SFBool restart field SFNode movie1 USE MOVIE1 field SFNode btn USE PLAY2 url "javascript: function restart (value, time){ if (value) { movie1.startTime = 0; } else { //movie1.startTime = -1; } } " } DEF PLAY11 Script { eventIn SFBool restart field SFNode movie1 USE MOVIE1 field SFNode btn USE PLAY2 field SFNode control USE CONTROL url "javascript: function restart (value, time){ if (value){ movie1.stopTime=time; control.mediaStartTime = 0; } if (!value){ movie1.startTime=time; control.mediaStartTime = 0; } } " } ] } value " ROUTE TIMER1.cycleTime TO ROTATE1.rotate ROUTE PI1.value_changed TO BTN1.translation ROUTE PLAY2.isActive TO PLAY11.restart " } Update { action "SCENEREPLACE" absoluteTime TRUE timeStamp 15 node OrderedGroup { children [ Transform2D { # tlo translation 0 0 children [ Shape { geometry Rectangle {size 200 200} appearance Appearance { material Material2D { emissiveColor 1 1 0 transparency 0 filled TRUE } } } ] } Transform2D { translation 0 0 scale 0.5 0.5 children [ Shape { geometry Bitmap {} appearance Appearance { material Material2D { emissiveColor 0 0 0 transparency 0 filled TRUE } texture ImageTexture { url ["od:11"] } } } ] } ] } }