media @ VU
[] readme course(s) preface I 1 2 II 3 4 III 5 6 7 IV 8 9 10 V 11 12 afterthought(s) appendix reference(s) example(s) resource(s) _

talk show tell print

web3d-willem-catalog.vr

web3d-willem-catalog.vr (wrl ) [ flux / bitmanagement / cortona / octaga ]


  #V2.0 utf8
  
  EXTERNPROTO        product [
      exposedField SFVec3f translation
      exposedField MFString coverPic
  ]
  ["@vr-web3d-willem-product.wrl#product"]
  
  EXTERNPROTO Logo [
      exposedField SFVec3f translation
      exposedField SFVec3f scale
  ]
  ["@vr-web3d-willem-logo.wrl#Logo"]
  
  Transform {
      children [
            DEF REMOVEINIT PositionInterpolator {
                  key [0, 1]
                  keyValue [0 0 0, 0 -5 0]
            }
            DEF INIT Transform {
                  scale 0.3 0.3 0.3
                  
                  children [
                      Shape {
                            geometry Text {
                                  string ["Welcome to the iPod showroom!","Click above on an iPod model", "to see it!"]
                                  fontStyle FontStyle {
                                      justify "MIDDLE"
                                  }
                            }
                      }
                  ]
            }
      ]
  }
  
  Transform {
      children[
            
            DEF CALLWHITE PositionInterpolator {
                  key [0, 1]
                  keyValue [-10 0 0, -1.5 0 0]
            }
            DEF REMOVEWHITE PositionInterpolator {
                  key [0, 1]
                  keyValue [-1.5 0 0, -10 0 0]
            }
            DEF WHITEIPOD Transform {
                  translation -10 0 0
                  children [
                      
                      product {
                            ##translation -1.5 0 0
                      }
                  ]
            }
      ]
  }
  
  Transform {
      children [
            DEF CALLBLACK PositionInterpolator {
                  key [0, 1]
                  keyValue [7 0 0, -1.5 0 0]
            }
            DEF REMOVEBLACK PositionInterpolator {
                  key [0, 1]
                  keyValue [-1.5 0 0, 7 0 0]
            }
            DEF BLACKIPOD Transform {
                  translation 7 0 0
                  children [
                      product {
                            ##translation 7 0 0
                            coverPic "ipodBlackFront.png"
                      }
                  ]
            }
      ]
  }
  
  Transform {
      children [
            DEF CALLU2 PositionInterpolator {
                  key [0, 1]
                  keyValue [-1.5 5 0, -1.5 0 0]
            }
            DEF REMOVEU2 PositionInterpolator {
                  key [0, 1]
                  keyValue [-1.5 0 0, -1.5 5 0]
            }
            DEF U2IPOD Transform {
                  translation -1.5 5 0
                  children [
                      product {
                            ##translation -1.5 5 0
                            coverPic "ipodu2front.png"
                      }
                  ]
            }
      ]
  }
  
  Transform {
      scale 0.5 0.5 0.5
      translation 0 1.5 0
      children [
            Transform {
                  translation 0 0 0
                  children [
                      DEF WHITETOUCH TouchSensor {
                      }
                      
                      
                      Shape {
                            geometry Text {
                                  string "white"
                            }
                      }
                  ]
            }
            Transform {
                  translation 3 0 0
                  children [
                      DEF BLACKTOUCH TouchSensor {
                      }
                      
                      Shape {
                            geometry Text {
                                  string "black"
                            }
                      }
                  ]
            }
            Transform {
                  translation -2 0 0
                  children [
                      DEF U2TOUCH TouchSensor {
                      }
                      
                      Shape {
                            geometry Text {
                                  string "U2"
                            }
                      }
                  ]
            }
      ]
  }
  
  DEF CALLBLACKTIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF CALLWHITETIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF CALLU2TIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF REMOVEBLACKTIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF REMOVEWHITETIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF REMOVEU2TIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF REMOVEINITTIMER TimeSensor {
      cycleInterval 3
  }
  
  DEF WHICHSCRIPT Script {
      eventIn SFTime setWhite
      eventIn SFTime setBlack
      eventIn SFTime setU2
      field SFString currentIpod "none"
      
      eventOut SFTime goWhite
      eventOut SFTime goBlack
      eventOut SFTime goU2
      
      eventOut SFTime goBlack2White
      eventOut SFTime goBlack2U2
      eventOut SFTime goU22White
      eventOut SFTime goU22Black
      eventOut SFTime goWhite2Black
      eventOut SFTime goWhite2U2
      
      url "javascript:
      function setWhite(value, time) {
            if(currentIpod == 'none') {
                  currentIpod = 'white';
                  goWhite = value;
            } else
            if(currentIpod != 'white') {
                  if(currentIpod == 'black') {
                      currentIpod = 'white';
                      goBlack2White = value;
                  } else {
                      currentIpod = 'white';
                      goU22White = value;
                  }
            }
      }
      function setBlack(value, time) {
            if(currentIpod == 'none') {
                  currentIpod = 'black';
                  goBlack = value;
            } else
            if(currentIpod != 'black') {
                  if(currentIpod == 'white') {
                      currentIpod = 'black';
                      goWhite2Black = value;
                  } else {
                      currentIpod = 'black';
                      goU22Black = value;
                  }
            }
      }
      function setU2(value, time) {
            if(currentIpod == 'none') {
                  currentIpod = 'u2';
                  goU2 = value;
            } else
            if(currentIpod != 'u2') {
                  if(currentIpod == 'white') {
                      currentIpod = 'u2';
                      goWhite2U2 = value;
                  } else {
                      currentIpod = 'u2';
                      goBlack2U2 = value;
                  }
            }
      }
      "
      
      
      
  }
  
  
  
  ROUTE WHICHSCRIPT.goWhite TO CALLWHITETIMER.startTime
  ROUTE WHICHSCRIPT.goBlack TO CALLBLACKTIMER.startTime
  ROUTE WHICHSCRIPT.goU2 TO CALLU2TIMER.startTime
  
  ROUTE WHICHSCRIPT.goWhite TO REMOVEINITTIMER.startTime
  ROUTE WHICHSCRIPT.goBlack TO REMOVEINITTIMER.startTime
  ROUTE WHICHSCRIPT.goU2 TO REMOVEINITTIMER.startTime
  
  ROUTE REMOVEINITTIMER.fraction_changed TO REMOVEINIT.set_fraction
  ROUTE REMOVEINIT.value_changed TO INIT.set_translation
  
  
  
  ROUTE BLACKTOUCH.touchTime TO WHICHSCRIPT.setBlack
  ROUTE WHICHSCRIPT.goWhite2Black TO CALLBLACKTIMER.startTime
  ROUTE WHICHSCRIPT.goU22Black TO CALLBLACKTIMER.startTime
  
  ROUTE WHICHSCRIPT.goWhite2Black TO REMOVEWHITETIMER.startTime
  ROUTE WHICHSCRIPT.goU22Black TO REMOVEU2TIMER.startTime
  
  ROUTE CALLBLACKTIMER.fraction_changed TO CALLBLACK.set_fraction
  ROUTE CALLBLACK.value_changed TO BLACKIPOD.set_translation
  
  
  
  ROUTE WHITETOUCH.touchTime TO WHICHSCRIPT.setWhite
  ROUTE WHICHSCRIPT.goBlack2White TO CALLWHITETIMER.startTime
  ROUTE WHICHSCRIPT.goU22White TO CALLWHITETIMER.startTime
  
  ROUTE WHICHSCRIPT.goBlack2White TO REMOVEBLACKTIMER.startTime
  ROUTE WHICHSCRIPT.goU22White TO REMOVEU2TIMER.startTime
  
  ROUTE CALLWHITETIMER.fraction_changed TO CALLWHITE.set_fraction
  ROUTE CALLWHITE.value_changed TO WHITEIPOD.set_translation
  
  
  
  ROUTE U2TOUCH.touchTime TO WHICHSCRIPT.setU2
  ROUTE WHICHSCRIPT.goWhite2U2 TO CALLU2TIMER.startTime
  ROUTE WHICHSCRIPT.goBlack2U2 TO CALLU2TIMER.startTime
  
  ROUTE WHICHSCRIPT.goWhite2U2 TO REMOVEWHITETIMER.startTime
  ROUTE WHICHSCRIPT.goBlack2U2 TO REMOVEBLACKTIMER.startTime
  
  ROUTE CALLU2TIMER.fraction_changed TO CALLU2.set_fraction
  ROUTE CALLU2.value_changed TO U2IPOD.set_translation
  
  #remove routes
  
  ROUTE REMOVEWHITETIMER.fraction_changed TO REMOVEWHITE.set_fraction
  ROUTE REMOVEWHITE.value_changed TO WHITEIPOD.set_translation
  
  ROUTE REMOVEU2TIMER.fraction_changed TO REMOVEU2.set_fraction
  ROUTE REMOVEU2.value_changed TO U2IPOD.set_translation
  
  ROUTE REMOVEBLACKTIMER.fraction_changed TO REMOVEBLACK.set_fraction
  ROUTE REMOVEBLACK.value_changed TO BLACKIPOD.set_translation
  
  ##
  
  
  
  Logo{ 
      translation 2 -1.5 0 
      scale 0.5 0.5 0.5
  }
  
  Viewpoint {
      position 0 0 5
  }
  
  NavigationInfo {
      ##type "NONE"
  }
    
  
    
  

(C) A. Eliëns 2/9/2007

You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.