Introduction à POV-Ray


précédentsommairesuivant

V. Les transformations

V-A. Les transformations géométriques

V-A-1. La translation

Elle permet de déplacer un objet d'un vecteur donné. Exemple

 
Sélectionnez
 sphere
 {
     // centre et rayon
     <4,0,0>,1 
     // translation du vecteur (1,2,3)
     translate <1,2,3>
 }

V-A-2. La rotation

Elle permet de faire tourner un objet autour d'un axe, d'un angle donné en degrés. La rotation s'effectue autour de l'axe passant par O et dirigé selon le vecteur passé en argument. Exemple :

 
Sélectionnez
 sphere
 {
     // centre et rayon
	 <4,0,0>,1 
	 // rotation de 50° autour de l'axe y
	 rotate y*50
 }

y est un mot réservé du langage, il correspond au vecteur <0,1,0>

L'axe de rotation passe toujours par O, ainsi, un objet peut se retrouver déplacé après une rotation.

V-A-3. L'homothétie

Elle permet d'agrandir / rapetisser un objet selon un facteur donné. Le centre d'homothétie est le centre du repère. Le facteur donné est un vecteur décrivant les homothéties à réaliser suivant x,y et z. Exemple :

 
Sélectionnez
 sphere
 {
     // centre et rayon
	 <4,0,0>,1 
     // agrandissement une fois suivant x, 2 fois suivant y et 3 fois suivant z
	 scale<1,2,3>
 }

Si l'une des composantes du vecteur est nulle, POV-Ray la remplace par 1 et vous averti via un Warning :

 
Sélectionnez
 Parse Warning : Illegal Value: Scale by 0.0. Changed to 1.0

Le centre d'homothétie est O, ainsi, un objet peut se retrouver déplacé après une homothétie.

V-B. Les opérations booléennes (CSG)

Ces opérations s'effectuent sur des objets, exemple :

 
Sélectionnez
 [opération booléenne]{
 objet1
 objet2
 objet3
 [attributs pour définir un aspect]
 [attributs pour définir les transformations géométriques à appliquer] 
 }

Les opérations booléennes nécessitent au moins 2 objets. Une opération booléenne sur un seul objet vous donnera comme résultat ce même objet, vous aurez juste un Warning lors de l'analyse du code :

 
Sélectionnez
 Parse Warning : should have at least two objects in csg

V-B-1. L'union

Image non disponible

Elle permet de regrouper plusieurs objets dans le but de leur appliquer des modifications communes. Cette opération correspond au OU logique.

V-B-2. L'intersection

Image non disponible

Elle permet créer l'intersection de plusieurs objets. Cette opération correspond au ET logique. Exemple :

 
Sélectionnez
 intersection{
    box{<0,0,-.2>,<1,1,1>}
    sphere{<0,0,0>,.6}   
    pigment{Red}
 }

V-B-3. La différence

Image non disponible

Elle permet créer une différence entre plusieurs objets. Cette opération créé un nouvel objet composé tous les points du premier objet qui ne sont pas dans les autres objets. Exemple :

 
Sélectionnez
 difference{
    box{<0,0,-.2>,<1,1,1>}
    sphere{<0,0,0>,.6}   
    pigment{Red}
 }

précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2005 Pierre Schwartz. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.