Contenu

Bien avant: Introduction
Précédent: Construction d'objets simples
En cours: Transformations simples sur les objets Déplacer un objet: la translation
Faire pivoter un objet: la rotation
Déformer un objet: la mise à l’échelle - "scale"
Plusieurs transformations sur un objet
Définition et réutilisation des objets

Transformations simples sur les objets

Déplacer un objet: la translation

Jusqu'à maintenant, tous les objets que nous avons insérés dans nos fichiers se plaçaient par défaut au centre de notre scène, au point 0 0 0.

Nous allons donc apprendre à déplacer les objets dans l'espace; ce qu'on appelle une translation. Pour cela, nous appliquons une transformation à l'objet, à l'aide d'un bloc de code Transform { … }, qui entoure les blocs de code habituel.


Exercice: Quelle est la translation à effectuer pour que les axes XYZ se trouvent à l'intersection des deux cubes? (dans un ficher nommé "translation3.wrl")

Faire pivoter un objet: la rotation

Jusqu’à maintenant, tous les cônes et les cylindres que nous sommes capables de décrire sont pointés vers le haut. Nous nous rendons compte de la nécessité de savoir faire pivoter un objet sur lui-même, ce qu’on nomme en VRML la rotation.

La rotation est une transformation que l’on effectue de la même manière que la translation, à l’aide d’un bloc de code Transform { … }, qui entoure les blocs de code habituel.

Exercice: Décrire deux cônes selon l’illustration suivante…


Déformer un objet: la mise à l’échelle - "scale"

La dernière transformation que nous allons apprendre est la mise à l’échelle. Elle nous permettra d’aplatir les objets ou de les agrandir, proportionnellement ou non.

En bougeant les objets des exemples suivants, vous pourrez voir les effets de cette transformation que l’on nomme, en langage VRML, scale.

Le scale est une transformation que l’on effectue de la même manière que la translation et la rotation à l’aide d’un bloc de code Transform { … }, qui entoure les blocs de code habituel.

Exemples:
cylindreplat.wrlconeplat.wrl
sphereplate.wrlscaleformes.wrl

(tous les exemples subissent une rotation afin de rendre plus visible la mise à l'échelle)


Plusieurs transformations sur un objet

Nous avons vu jusqu’à maintenant les trois transformations séparément, mais il est possible de les effectuer dans le même bloc de code Transform { … }.

Les trois exemples précédents ont tous subi une rotation en même temps que la mise à l’échelle.


Définition et réutilisation des objets

Les programmeurs trouvent toujours un moyen pour se simplifier la vie. Ainsi, il leur semble absurde de décrire deux fois le même objet.

Pour cette raison, il existe la possibilité de définir un objet en lui donnant une étiquette (DEF). Plus tard, on pourra rappeler cet objet à l’aide de son étiquette. C’est le principe utilisé dans le fichier scaleformes.wrl, que nous allons examiner en détail.


Exercice: Décrire deux cônes selon l’illustration suivante…

Contenu

Bien avant: Introduction
Précédent: Construction d'objets simples
En cours: Transformations simples sur les objets

N.B.: Ce support est en cours de développement selon un rythme qui suit celui des élèves...

Dernière mise à jour: 4 mai 1999


Didier Strasser / Didier.Strasser@pse.unige.ch