Atelier VRML : Création d'une porte (1)

Pré requis : Utilisation de DEF et USE, ROUTE, TimeSensor, PositionIinterpolator

Cet atelier vous propose de créer une porte qui s'ouvre et qui se ferme à partir du clique d'un utilisateur. 

La porte s'ouvre et se ferme par translation, c'est à dire qu'elle se déplace (comme une porte d'ascenseur), à l'inverse d'une porte de réfrigérateur, qui s'ouvre grâce à une rotation autour d'un axe.

Normalement, une porte possède deux états : Ouvert et Fermé. Pour simplifier la programmation, on ne va pas gérer ces deux états (ils feront l'objet d'un autre atelier).

A partir d'un clique de l'utilisation sur la porte (géré par un TouchSensor), une animation va être déclenchée. Elle possède trois étape :

  • Elle déplace la porte de sa position initiale vers le haut. La porte s'ouvre

  • Elle reste un certain temps en haut, afin de laisser passer l'utilisateur

  • Elle repart du haut vers sa position initiale, elle se referme.

L'animation est gérée par un PositionInterpolator.

L'astuce réside dans le fait que la porte s'ouvre puis se ferme dans la même animation. Ceci simplifie énormément la gestion de cette porte.

Tester votre porte :

Voir le résultat - Voir la source

Pour bien vous montrer que la porte ne fait que se déplacer, voici le même exemple, avec les murs transparents.

Voir le résultat

Exercice

Afin de vérifier que vous avez bien compris le principe, à partir de l'exemple, créez une porte qui s'ouvre en se déplaçant sur la gauche (plutôt que vers le haut).

Voila le résultat :

Voir le résultat - Voir la source

Retour aux ateliers VRML.


 
19 internaute(s) sur Web3d-fr
Copyright Web3d-fr 2001-2004