#VRML V2.0 utf8 # on s'éloigne, pour profiter de l'animation Viewpoint { position 0 0 20 } # un transform pour faire bouger un cube # C'est bien sur ce noeud que sera appliquer le PositionInterpolator DEF Cube Transform { children [ # le cube qui va bouger Shape { appearance Appearance { material Material { diffuseColor 1 0 0 } } geometry Box {} } # Le TimeSensor qui va rythmer l'animation DEF TimeSource TimeSensor { cycleInterval 4.0 # l'animation va dure en tout 4 seondes startTime 1 loop TRUE } # Voila le PositionInterpolator DEF Animation PositionInterpolator { # Vous verrez que le cube est plus ou moins rapide en fonction de l'interval des key key [ 0, 0.2, 0.6, 0.8, 1 ] # La liste des positions du cube keyValue [ 0 0 0 , 4 0 0 , 4 4 0 , 0 4 0, 0 0 0 ] # il revient à sa position de départ, pour faire une boucle } ] } # on copie la fraction du TimeSensor sur la fraction de l'animation ROUTE TimeSource.fraction_changed TO Animation.set_fraction # On copie la valeur calculée sur la position du cube ROUTE Animation.value_changed TO Cube.translation