home *** CD-ROM | disk | FTP | other *** search
/ Late Night VRML 2.0 with Java CD-ROM / code.zip / Ch10 / 5041116.wrl < prev    next >
Text File  |  1996-12-17  |  2KB  |  78 lines

  1. #VRML V2.0 utf8
  2. #Example 11.16 - Animated Texture Example
  3. NavigationInfo {
  4.   type "NONE"
  5. }
  6. Viewpoint {
  7.   position   0 0 5
  8.   fieldOfView      0.785
  9. }
  10. Group {
  11.   children   [
  12.     DEF Square Shape {
  13.       appearance   Appearance {
  14.         material   Material {
  15.           ambientIntensity      0.25
  16.           diffuseColor    0.8 0.8 0.8
  17.         }
  18.         texture    ImageTexture {
  19.           url      "mandrill.jpg"
  20.         }
  21.         textureTransform  DEF Trans TextureTransform {
  22.           translation     0 0
  23.         }
  24.       }
  25.       geometry     IndexedFaceSet {
  26.         coord      Coordinate {
  27.           point    [ -1 1 0, -1 -1 0, 1 1 0, 1 -1 0 ]
  28.         }
  29.         coordIndex [ 0, 1, 3, 2, -1 ]
  30.         texCoord   TextureCoordinate {
  31.           point    [ 0 1, 0 0, 1 1, 1 0 ]
  32.         }
  33.         texCoordIndex     [ 0, 1, 3, 2, -1 ]
  34.       }
  35.     }
  36.     DEF Touch TouchSensor {
  37.     }
  38.     DEF Time TimeSensor {
  39.       cycleInterval    1.5
  40.       loop   TRUE
  41.       startTime    0
  42.     }
  43.     DEF XInterp ScalarInterpolator {
  44.       key    [ 0, 1 ]
  45.       keyValue     [ 0, 1 ]
  46.     }
  47.     DEF YInterp ScalarInterpolator {
  48.       key    [ 0, 1 ]
  49.       keyValue     [ 0, 1 ]
  50.     }
  51.     DEF Move_it Script {
  52.       eventOut     SFVec2f      vec
  53.       eventIn      SFFloat      xIn
  54.       eventIn      SFFloat      yIn
  55.       field        SFFloat      xBuf  0
  56.       field        SFFloat      yBuf  0
  57.       url   "javascript:
  58.       function xIn(value) {
  59.         xBuf = value;
  60.         vec[0] = xBuf;
  61.         vec[1] = yBuf;
  62.       }
  63.       function yIn(value) {
  64.         yBuf = value;
  65.         vec[0] = xBuf;
  66.         vec[1] = yBuf;
  67.       }"
  68.     }
  69.   ]
  70. }
  71. ROUTE Touch.touchTime TO Time.set_startTime
  72. ROUTE Time.fraction_changed TO XInterp.set_fraction
  73. ROUTE Time.fraction_changed TO YInterp.set_fraction
  74. ROUTE XInterp.value_changed TO Move_it.xIn
  75. ROUTE YInterp.value_changed TO Move_it.yIn
  76. ROUTE Move_it.vec TO Trans.set_translation
  77. #EOF
  78.