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

vrml-math-glade.vr

vrml-math-glade.vr (wrl ) [ flux / bitmanagement / cortona / octaga ]


  
  
  Viewpoint {
   description "start"
   position 0 1.7 23
   orientation 0 1 0 0
  }
  Viewpoint {
   description "top"
   position 0 100 0
   orientation 1 0 0 -1.57
  }
  
  Background{ skyColor .5 .8 .9}
  
  Transform{
   children[
   Shape{ appearance Appearance{
   texture ImageTexture { url "forest.jpg" } }
   geometry IndexedFaceSet{ solid FALSE
    coord Coordinate{ point[
  -30 0 -30, 30 0 -30, 30 0 30, -30 0 30
  -30 30 -30, 30 30 -30, 30 30 30, -30 30 30]}
   coordIndex[0 1 5 4 -1 1 2 6 5 -1 2 3 7 6 -1 3 0 4 7 -1]
   texCoord TextureCoordinate{ point [0 0, 1 0, 1 1, 0 1]}
   texCoordIndex [0 1 2 3 -1 0 1 2 3 -1 0 1 2 3 -1 0 1 2 3 -1] }}
  
   Shape{ appearance Appearance{
    material Material { emissiveColor .2 .5 .1 } }
   geometry IndexedFaceSet{ solid FALSE
    coord Coordinate{ point[-100 0 -100, 100 0 -100, 100 0 100, -100 0 100]}
    coordIndex[0 1 2 3 -1] }}
  
  DEF p1 Group{ children[
  DEF pul Transform{ translation -18.3 0 .1 children[
   Shape{ appearance Appearance{
   texture ImageTexture { url "pulmonaria.gif" } }
   geometry IndexedFaceSet{ solid FALSE
    coord Coordinate{ point[0 0 -.5, 0 0 .5, 0 1 .5, 0 1 -.5,
     -.5 0 0, .5 0 0, .5 1 0, -.5 1 0]}
    coordIndex[0 1 2 3 -1 4 5 6 7 -1]
    texCoord TextureCoordinate{ point [0 0, 1 0, 1 1, 0 1]}
    texCoordIndex [0 1 2 3 -1 0 1 2 3 -1] }}
  ]}
  Transform{ translation 1 0 1 children[ USE pul ]}
  Transform{ translation .5 0 -1 children[ USE pul ]}
  Transform{ translation -.5 0 .5 children[ USE pul ]}
  ]}
  DEF p2 Group{ children[
  Transform{ translation 2.1 0 2.3 children[ USE p1 ]}
  Transform{ translation 1.1 0 -2 children[ USE p1 ]}
  Transform{ translation -1 0 1.1 children[ USE p1 ]}
  ]}
  DEF p3 Group{ children[
  Transform{ translation 4.3 0 4.1 children[ USE p2 ]}
  Transform{ translation 2.1 0 -4.7 children[ USE p2 ]}
  Transform{ translation -2.2 0 2.1 children[ USE p2 ]}
  ]}
  DEF p4 Group{ children[
  Transform{ translation 8.7 0 8.1 children[ USE p3 ]}
  Transform{ translation 4.2 0 -8.7 children[ USE p3 ]}
  Transform{ translation -4.1 0 4.3 children[ USE p3 ]}
  ]}
  Group{ children[
  Transform{ translation 16.1 0 16.3 children[ USE p4 ]}
  Transform{ translation 8.3 0 -16.1 children[ USE p4 ]}
  Transform{ translation -8.5 0 8.7 children[ USE p4 ]}
  ]}
  
  DEF d1 Group{ children[
  DEF daisy Shape{ appearance Appearance{
   texture ImageTexture { url "daisy.gif" } }
   geometry IndexedFaceSet{ solid FALSE
    coord Coordinate{ point[-.3 0 -.3, .3 0 .3, .3 1.2 .3, -.3 1.2 -.3,
     -.3 0 .3, .3 0 -.3, .3 1.2 -.3, -.3 1.2 .3]}
    coordIndex[0 1 2 3 -1 4 5 6 7 -1]
    texCoord TextureCoordinate{ point [0 0, 1 0, 1 1, 0 1]}
    texCoordIndex [0 1 2 3 -1 0 1 2 3 -1] }}
  Transform{ translation 1 0 1 children[ USE daisy ]}
  Transform{ translation .5 0 -1 children[ USE daisy ]}
  Transform{ translation -.5 0 .5 children[ USE daisy ]}
  ]}
  DEF d2 Group{ children[
  Transform{ translation 2.1 0 2.03 children[ USE d1 ]}
  Transform{ translation 1.3 0 -2.13 children[ USE d1 ]}
  Transform{ translation -1.05 0 1.1 children[ USE d1 ]}
  ]}
  DEF d3 Group{ children[
  Transform{ translation 4.3 0 4.5 children[ USE d2 ]}
  Transform{ translation 2.1 0 -4.3 children[ USE d2 ]}
  Transform{ translation -2.3 0 2.1 children[ USE d2 ]}
  ]}
  DEF d4 Group{ children[
  Transform{ translation 8.7 0 8.1 children[ USE d3 ]}
  Transform{ translation 4.2 0 -8.5 children[ USE d3 ]}
  Transform{ translation -4.3 0 4.7 children[ USE d3 ]}
  ]}
  Group{ children[
  Transform{ translation 16.9 0 16.1 children[ USE d4 ]}
  Transform{ translation 8.3 0 -16.9 children[ USE d4 ]}
  Transform{ translation -8.1 0 8.7 children[ USE d4 ]}
  ]}
  
  DEF rotor Transform{ children[
  DEF bf Transform{ translation 0 4 -15 children[
  DEF wing1 Transform{ children[
   DEF wing Shape{ appearance Appearance{ 
    texture ImageTexture { url "Nymphalis_urticae.gif" } }
   geometry IndexedFaceSet{ solid FALSE coord Coordinate{
    point[-1 0 0, 1 0 0, 1 2 0, -1 2 0]}
    coordIndex[0 1 2 3 -1]
    texCoord TextureCoordinate{ point [0 0, 1 0, 1 1, 0 1]}
    texCoordIndex [3 0 1 2 -1] }}
  ]}
   DEF wing2 Transform{ children[ USE wing ]}
  ]} # end bf
  
  Transform{ translation 0 -2 0 rotation 0 1 0 1 children[ USE bf ]}
  ]} # end rotor
  
  ]}
  
  DEF TS1 TimeSensor{ cycleInterval 1 loop TRUE }
  DEF TS2 TimeSensor{ cycleInterval 20 loop TRUE }
  
  DEF OI1 OrientationInterpolator{ key [ 0 .5 1 ]
   keyValue[ 1 0 0 .1, 1 0 0 2, 1 0 0 .1] }
  DEF OI2 OrientationInterpolator{ key [ 0 .5 1 ]
   keyValue[ 1 0 0 -.1, 1 0 0 -2, 1 0 0 -.1] }
  
  DEF OI OrientationInterpolator{ key [ 0 .5 1 ]
   keyValue[ 0 1 .01 0, 0 1 .01 3.1415, 0 1 .1 6.283] }
  
  DEF PI PositionInterpolator{  key [ 0 .2 .6 .8 1 ]
   keyValue[ 0 4 0, 0 0 0, 0 0 0, 0 8 0, 0 4 0] }
  
  ROUTE TS1.fraction_changed TO OI1.set_fraction
  ROUTE OI1.value_changed TO wing1.set_rotation
  ROUTE TS1.fraction_changed TO OI2.set_fraction
  ROUTE OI2.value_changed TO wing2.set_rotation
  
  ROUTE TS2.fraction_changed TO OI.set_fraction
  ROUTE OI.value_changed TO rotor.set_rotation
  
  ROUTE TS2.fraction_changed TO PI.set_fraction
  ROUTE PI.value_changed TO rotor.set_translation


(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.