Sunteți pe pagina 1din 13

Graphisme 2D

Les transformations gomtriques du plan

Contenu
1 Les coordonnes homognes 2 Les transformations 2.1 Les transformations lmentaires 2.2 Les transformations Euclidiennes 2.3 Les similitudes du plan . . . . . 2.4 Les transformations afnes . . . 2.5 Les transformations projectives . 2 3 3 4 4 5 6 7 8 10

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

3 Composition des transformations de base 3.1 Changement de repre . . . . . . . . . . . . . . . . . . . . . . . 4 Transformation dimages

UFRIMA

Graphisme 2D Les transformations gomtriques du plan constituent des fonctions de base du graphisme au mme titre que le traage et le remplissage. Les transformations usuelles du graphisme : Translation. Rotation. Changement dchelle. cela sajoute les modles afnes et projectifs permettant de modliser un ventail plus large de transformation, en particulier pour les transformations dimages (texture mapping).

1 Les coordonnes homognes


On se place dans le plan projectif P 2 . Un point P de P 2 est reprsent par un vecteur 3x1 de coordonnes [x, y, w], dont une au moins est non nulle. x, y et w sont les coordonnes homognes (projectives) de P . Deux vecteurs de coordonnes [x, y, w] et [x , y , w ] reprsentent le mme point ssi il existe un scalaire tel que : x = x, y = y, w = w.  Permet de reprsenter sous forme matricielle lensemble des transformations, en particulier les translations.  La correspondance point <-> coordonnes nest pas bijective.  Lapplication de lalgbre linaire est un peu plus complexe dans le cas projectif.  Une droite est aussi dnie par un vecteur [a, b, c] de coordonnes non toutes nulles dnies un facteur multiplicatif prs.  Reprsentation usuelle : [x, y, 1].  Points linni : [x, y, 0].

UFRIMA

Graphisme 2D

2 Les transformations
2.1 Les transformations lmentaires
La reprsentation des transformations usuelles laide des coordonnes homognes X = [x, y, w]t et X = [x , y , w ]t : Translation de (tx , ty ) : X = T X avec : 1 0 tx T = 0 1 ty 0 0 1 Rotation dangle : X = R X avec : cos sin 0 R = sin cos 0 0 0 1 Symtries :

1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 1 0 0 1 0 0 1 axe des x axe des y origine Changements dchelle (sx , sy ) : sx 0 0 S = 0 sy 0 0 0 1


UFRIMA

Graphisme 2D

2.2 Les transformations Euclidiennes


Matrice :

cos sin tx cos ty sin 0 0 1

Types de transformations :

Caractristiques :  3 degrs de libert (translation 2, rotation 1).  Prserve les angles, surfaces et longueurs.

2.3 Les similitudes du plan


Matrice :

cos sin tx cos ty sin 0 0 s

Types de transformations :

Caractristiques :  4 degrs de libert (translation 2, rotation 1, facteur dechelle 1). UFRIMA 4

Graphisme 2D  Prserve les angles et rapports de longueurs. Exercices : 1. Dmontrez la prservation des angles et des rapports de longueurs.

2.4 Les transformations afnes


Matrice :

m1 m2 m3 m4 m5 m6 0 0 m7

Types de transformations :

Caractristiques :  6 degrs de libert.  Prserve le paralllisme, les rapports de surface, les rapports de longueurs sur une droite (ex : le point milieu), les coordonnes barycentriques.  Le groupe des transformations afnes du plan est le groupe des transformations qui laissent la droite linni globalement invariante.

Exercices : 1. Dmontrez la prservation du paralllisme. 2. Dmontrez la prservation du point milieu et des coordonnes barycentriques. UFRIMA 5

Graphisme 2D

2.5 Les transformations projectives


Matrice :

m1 m2 m3 m4 m5 m6 m7 m8 m9

Types de transformations :

Caractristiques :  8 degrs de libert.  Prserve : les droites concourantes, la colinarit, le birapport de 4 points colinaires :

ld D la A O lb B lc C

Le birapport de 4 points colinaires est dni comme : lc l a ld l a / lc l b ld l b o lx est la distance Euclidienne.

UFRIMA

Graphisme 2D Exercices : 1. Dmontrez la prservation de la colinarit. 2. Dmontrez que le point intersection de 2 droites de coordonnes homognes l1 et l2 a pour coordonnes homognes : l1 l2 . 3. Soit M la matrice de transformation projective des points du plan. Quelle est la matrice de transformation des droites ?

3 Composition des transformations de base


laide des coordonns homognes, les transformations du plan se composent par simple multiplication. Par exemple, pour la rotation autour dun point A de coordonnes (xa , ya ) : 1. Translation telle que A est lorigine. 2. Rotation. 3. Translation inverse.

(xa,ya)

X = M X, M = T (xa , ya ) R() T (xa , ya ). Dune manire gnrale : M = M1 ... Mn . Le produit est non commutatif dans le cas gnral. Les cas particuliers sont : 1. translations pures; 2. rotations pures; UFRIMA 7

Graphisme 2D 3. changements dchelle pures; 4. changements dchelle et rotation si : sx = sy ; = n.

3.1 Changement de repre


Une faon quivalente de transformer consiste effectuer des changements de systmes de coordonnes. Utile lorsque :  les objets manipuls sont dnis dans des repres locaux;  la modlisation des camras.

(xa,ya) 2 3 4

T (xa , ya )

R()

T (xb , yb )

Matrice de passage du repre 1 au repre 4 : 4 M , 1


4X 4 1M

= 4 M 1 X, 1

= T (xb , yb ) R() T (xa , ya ).

 Rgle :

UFRIMA

Graphisme 2D Soit i Q une matrice de transformation exprime dans un repre i, alors la matrice de la transformation exprime dans le repre j est j Q :
jQ

= i M i Q i M 1 . j j

UFRIMA

Graphisme 2D

4 Transformation dimages
Les transformations dnies prcdemment peuvent sappliquer des images. Cela est notamment utilise pour le texture mapping.

Translation dune image

Problme : une image est un tableau de valeurs discrtes : les pixels ; la position transforme dun pixel ne correspond pas forcment un pixel de limage transforme (valeurs non entires).

Les mthodes solutions consistent dterminer pour chaque pixel de limage destination la position dans limage source. Les algorithmes varient ensuite sur la manire de calculer lintensit du pixel de limage destination.

Soit A la transformation image envisage. Lalgorithme est : pour chaque pixel (i,j) de limage destination 1. calculer (w x , w y , w )t = A1 (i, j, 1)t 2. dterminer les valeurs dintensit la position (x , y ) de limage dorigine.

UFRIMA

10

Graphisme 2D
Image 1 Image 2

= A

-1

Pour dterminer les valeurs dintensits : 1. Prendre les valeurs du pixel le plus proche de la position (x , y ). 2. Interpoler les valeurs des 4 pixels voisins de la position (x , y ). 3. Moyenner les valeurs des 4 pixels voisins de la position (x , y ). Choix entre interpolation et moyennage ? Exemple dapplication : les Mip Maps (multum in parvo) Pr-calculs dimages diffrentes chelles pour le texture mapping. la mip map occupe 4/3 de lespace mmoire de limage dorigine.

UFRIMA

11

Graphisme 2D

V B B V B

R R

Interpolation

Moyennage

UFRIMA

12

Graphisme 2D

UFRIMA

13

S-ar putea să vă placă și