Transformations géométriques de base, 3 …kelt-informatique.fr/ESGI 12-02-2013/ESGI...
Transcript of Transformations géométriques de base, 3 …kelt-informatique.fr/ESGI 12-02-2013/ESGI...
Transformations géométriques de base, .....3
Introduction 3Transfomlations géométriques 2D 4Translation 4
Notation Matricielle 4Remarque 4Exemple 5Remarque 5
Mise à l'échelle (Scaling) 6Notation matricielle 6Remarque 6Exemple 6
Rotation 7Exemple : Rotation d'un objet.. 7
Coordonnées homogènes 9Pourquoi ajouter une nouvelle coordonnée ? : 9Intérêt 9Solution : Coordonnées homogènes 9Interprétation géométrique 10Exemple 10Exemple 11Remarque 11
Transfomlations en coordonnées homogènes 12Translation en coordonnées homogènes 12Mise à l'échelle en coordonnées homogènes 13Rotation en coordonnées homogènes 14
Matrices orthogonales 15Matrice de rotation 15
Autres transformations 18Transformations euclidiennes (rigides) 18Symétries (Réflexions ou miroir) 20Glissement (shearing) 22
Composition de transformations 2D 23Avantage 23Problème 1 ....23Problème 2 25Problèmes 27
Commutativité des transformations : 28Exemple 28
Décomposition de la transformation Window - ViewPort 29Problème 30Solution... ...30
Transformation 3D en coordonnées homogène 32Système de coordonnées utilisé est direct : 32Translation 3D 33Mise à l'échelle 33Rotation .....34Propriétés des matrices de rotation 35Glissement en 3D 36
Transformation inverse 37Intérêt 37Inverse des transformations 37Exemple : Inverse de la composition d'une transformation : 38
Transformation d'un plan 39Rappel 39Problème 39Solution 40
Composition des transformations 3D 42Problème... ....42
Transformations géométriques de base
Introduction
Les transformations géométriques du plan constituent des fonctions de
base du graphisme au même titre que le traçage et le remplissage.
Les transformations usuelles du graphisme :
• Translation.
• Rotation.
• Changement d'échelle.
À cela s'ajoute les modèles affines et projectifs permettant de modéliser un
éventail plus large de transformation, en particulier pour les
transformations d'images (texture mapping).
Transformations géométriques 2D
Translation
On peut translater un point M(x, y) du plan vers une nouvelle position en
ajoutant une valeur de translation à ses coordonnées.
Chaque point M(x, y) est translater vers une nouvelle position M'(x', y')
deàx unités le long de l'axe des X, et dedy imités le long de l'axe des Y :
x' = x + dx
y' = y + dy
Notation Matricielle
dy
y iM(x,y)
•x-t•ax-
Remarque
En infographie, pour déplacer un objet constitué de lignes, de sommets, de
faces, il suffira de translater tous les sommets puis de retracer les lignes et
les faces.
/
Exemple
Pour un objet plan, on applique la transformation T à chaque point de
l'objet.
(3.8)
(3,5) (5.5)
(7.6)
(7.3) (9,3)
O
Remarque
Cette méthode est également vraie pour les autres types de transformations
(rotations, zoom, etc).
(Mise à l'échelle (Scaling)
On peut mettre à l'échelle un ensemble de points M(x, y) avec un facteur
de grossissement Sx le long de l'axe des X et Sy le long de l'axe des Y :
X' = 8x * x
Y' = 5y * y
Notation matricielle
Remarque
* Si ôx=ôy: le scaling est dit uniforme ,
* Si 8x7% : le scaling est dit différentiel (les proportion? changent)
Exemple ; - <yj
?J/3 0|Ho ml
o
Pour un objet plan, on applique la transformation S à chaque point de
l'objet.
(Rotation
Pour faire tourner un point d'angle a autour de l'origine
x = Rcosj3l
x'=R.cosa.cosfî-Rsmasmf!=x.cosa - y.sinay'=R.cosasmfî+Rsina.cosp=xsma + y.cosa
Notation matricielle :
Exemple : Rotation d'un objet
P'= R * P *^>
Pour un objet plan, on applique la transformation R à chaque point de
l'objet.
Rappels :
Quelques conventions trigonométriques :
Un angle est positif quand on tourne de la gauche de l'axe des X vers l'axe
des Yi '
cos(-oc)=cos(a) et sin(-a)=-sin(a)
Attention :
ici, on tourne autour de l'origine, pour tourner autour d'un point
quelconque, on utilise la "Composition de transformations 2-D".
Coordonnées homogènes
Pourquoi ajouter une nouvelle coordonnée ?
Les représentations matricielles pour la translation, la rotation et la mise à
l'échelle sont les suivantes :
M' = T + M Translation
M' = S * M Scalmg
M' = R * M Rotation
Où M représente un point et M' son transformé
On remarque que la translation (est une addition ) est traitée différemment
de la rotation et de la mise à l'échelle (Multiplication).
Nous souhaitons traiter ces trois transformations de manière homogène, en
appliquant dans tous les cas la même opération (c'est à dire écrire la
translation sous la forme M'=T*M où T n'est plus un vecteur mais une
matrice carrée).
.Intérêt
Combiner plus facilement les différentes transformations.
Les 3 transformations peuvent être combinées à l'aide de l'opération
multiplication (produit matricielle).
Solution : Coordonnées homogènes
Effectuer les calculs dans un espace supérieur à l'espace de départ. En 2D,
les calculs sont effectués sur des vecteurs 3D.
Interprétation géométrique
Zao
observateur
Interprétation géométrique des coordonnées homogènes
On suppose que le plan XOY est situé en W=l tel que (X Y W)=( x y 1)
Donc en 2D chaque point, au lieu d'être représenté par une paire (x, y) est
représenté par un triplet (x, y, w)
On dit que deux triplets de coordonnées homogènes (x, y, w) et (x', y', w')
représentent le même point s'ils sont multiples, c'est à dire il existe un
scalaire A. tel que : x' = A,x, y'=^y w'=Àw
Exemple
Le point (2, 3, 6) et le point (4, 6, 12) représentent le même point ! ! !
10
Ainsi, un point peut avoir plusieurs représentations en coordonnée
homogènes.
• si w^Q, alors (x, y, w) représente le même point que (x/w, y/w, 1 ) x/w et
y/w sont appelés les coordonnées cartésiennes du point homogène.
• si w=0, les points (x, y, 0) sont appelés « points à l'infini », ils serviront
à décrire des directions.
• Représentation usuelle : (x, y, 1 )
• Les transformations sont effectuées dans le plan Z=w pour lequel les
vecteurs s'écrivent (X Y W) = (wx wy w) et ou l'on a des matrices T, R
et S telles que :
M' = T * M M ' = R * M M' = S*M
Exemple
fl 0 tx\fW) (w'x1} {w'x'=wx+wtx=w(x+tx)M-\ 1 ty H wy = w'y' -> <w'y'=wy+wty-w(y+ty)
(0 0 1 )(w) (w' J w'=wv lx'=X+tx* (y'=y+ty
Remarque
'
Chaque fois que l'on obtient un vecteur résultat de la forme (X, Y, .., W)
avec W*l, les coordonnées cherchées (x, y, ..) sont obtenus en divisant par
W soit :
x = X/W y=Y/W, ...
i l
• lTransformations en coordonnées homogènes
Translation en coordonnées homogènes
(x'} f i o txY^y M o i ty : y \U loolAU"
M' = T * M
Problème
La composée de deux translations est bien égale à la somme des
translations.
Solution
M est translaté de T'(txi, tyl) en M', puis translaté par T2(tx2, ty2) en M"
f l O txiV10 txO (10 txi+te01 tyl M 0 1 ty2 = 0 1 tyl+tv2
^00 i j ipo 1 J\00 1 ', tyl+ty2)
la composée de 2 translations est bien égale à la somme des translations.
12
Mise à l'échelle en coordonnées homogènes
'/l (& o oYVy H o & o vv i H O oih
M' = S(8x, 8y )* M
Problème
La composée de deux mise à l'échelle est bien égale au produit des mises à
l'échelle.
Solution
M est mise à l'échelle de S'(SX|, 8yO en M', puis mise à l'échelle par
S'(5x2, 5y2)enM"
&i 0 OV&2 0 0") (&i*&2 0 O0 Sy\ H 0 <5y2 0 H 0 Sy\*Sy2 0 hO O l J I ^ O O l J ^ O 0 1 J
la composition des mises à l'échelle est multiplicative.
13
Rotation en coordonnées homogènes
x'\0\v1 = sinor cosa 0 yJA « o iK
M' = R(oc)* M
Problème
Composition des rotations est additive
Solution
Rappel :
cos(cc+p)=cos(<x)*cos(P) - sin(cc)*sin(p)
sin(°c+p)=cos(oc)*sin(p) + sin(oc)*cos(p)
(cosp -sin/? O -sincc 0] (cosjx+fij-sinfo+jty 0siny? cos/? 0 H sincr cosa 0 H sinp+/^co^r+y^ 0 \=R(a+fi)
la composition des rotations est additive.
14
Matrices orthogonales
Une matrice est dite orthogonale si ses éléments sont réels et si elle obéit
- t A A -1à A = A
ce qui se traduit par
Les vecteurs colonnes de la matrice rotation sont donc normes à l'unité et
orthogonaux entre eux.
Matrice de rotation
(cosa -sina (Asina cosa 0
l 0 0 ij
'
15
A) On considère les deux vecteurs lignes de la matrice :
Fl=[cosa -sinaj V2=[sin# cosaj
VI et V2 possèdent les propriétés suivantes :
• ce sont des vecteurs unitaires (leur nonne est égal a l )
• chacun est perpendiculaire à l'autre (leur produit scalaire est égal à 0)
le déterminant de la sous matrice r •??" ll̂ J? est égal à 1 : chacun desLS 1 1 M -t UUoGt J
vecteurs doit être tourné (dans le sens trigonométrique) de ce pour se
retrouver aligné sur les axes X et Y.
COSGC '
-sinot
1 Tsni« cosotl
sinaa Tcosa1
X
F* - r • ir'" 1 COSOC — SlllGÇj
Les vecteurs lignes de la matrice foniient un repère orthonormé. Si on
tourne ce repère de l'angle de la rotation <x, ces vecteurs se confondent
avec les axes.
16
B) On considère les deux vecteurs colonnes de la matrice
™\sina / \costf /
VI et V2 possèdent les propriétés suivantes :
• ce sont des vecteurs unitaires (leur norme est égal a i )
• VI et V2 orthogonaux
—•>V, -sin a cos a
stoa cos a
a
-sn ce
• Si on tourne de l'angle de la rotation les axes X et Y se confondent avec
les deux vecteurs colonnes de la matrice de rotation.
Une matrice ayant ces propriétés est appelé matrice orthogonal.
17
(Autres transformations
Transformations euclidiennes (rigides)
La matrice de transformation est du type :% r21 wlN
r21 r22 m2
0 0 1
par exemple
0 0
Où la sous matrice 2x2 est orthogonale
Exemplel
tx
sin 9 cos 6 ty
1(I)
Un carré de côté 1 sera toujours un
\é une fois transformé par une
matrice de ce type .
Caractéristiques :
• 3 degrés de liberté (1 rotation , 2 translation)
• Préserve les angles, surfaces et longueurs.
18
,
Exemple!
Transformation =
cosd -sin# tx
sin 9 cos0 ty
0 0 5
Caractéristiques
• 4 degrés de liberté ( Translation 2 , Rotation 1, Facteur d'échelle 1)
• Préserve les angles et rapports de longueurs.
-^On dit qu'il s'agit d'une transformation rigide, car la forme des
objets transformés n'est pas déformé après la transformation.
•î* Lorsque on décompose des translations, des rotations et des scaling, on
obtient une transformation affine de la forme :
mA m*
0 0 m7
Caractéristiques :
• 6 degrés de liberté ( Rotation 1, Translation 2, Mise à l'échelleJ2)
• conserve le parallélisme des lignes, les rapports de surface, les rapportsde longueurs mais elle ne conserve ni les longueurs ni les angles.
Exemple3
Symétries (Réflexions ou miroir)
Réflexion par rapport à l'axe des x
Y ?>' IX'=Xi
1
f V=*-y rVf x Ilyj l
» Cx. y)
/ \n coordonnée homog
Yûf, y")
A-'l
1 _
=
1
0
_0
0
-1
0
o'0
i
x
y
1
Réflexion par rapport à l'axe des yy
/lor. y> X
N
/!• ' i ','t»f
K,>0t y)
IX
f^~v M-v =?ry— y LyJ UL
en coordonnée homog
x'
y'i
=- 1 0 0
0 1 0
^ 0 0 1
X
yi
y
Réflexion par rapport à l'origine / $ H l^i i " < "̂ [reM>]l / /
V
VV. rt
Ç'=-j; M-[y'J=[()
V * rt en coordonnée homogè
. . . . . .j. o .— — , . — _ , , _ _ ,
x'
y'i
=- 1 0 0
0 - 1 0
L 0 0 1
X
yi
20
( •*
Exercice : Réflexion par rapport à une droite
9
Y
A
>•(~*|A
.n
)
1 0
y=ax+b
-^ X
| -Si
01Î ^P**nGlissement (shearing)
o o
-
-V -
Y
COJ)
(D-Q)
-
(1,1)
h y
V
(0.1)
^ <U> . . . . . . . .
/ ' d» • '/ ;/ • • •' • - '
œ-ct)
Glissement selon l'axe Y
ovoc Sh, - 2
Glissement est une transformation déformant les objets.
• ne conserve pas les angles, donc pas les aires des surfaces
• Le glissement est une transformation affine ; , ,
• Le glissement peut se décomposer en deux cas élémentaires :
Glissement le long des axes X et un glissement le long des axes Y.
y'=y
xSHx4o 1 0loo i
f 1 00SHy4s\\l 0
t o oi
' H O 1 0 vj t o o i|f'l f 1 0 OÏx' W s h y l 0 v
i t o o i io o ,4 -{,\ o 'fi j M'=SHy * M Correspond bien au point M auquel on a fait subir un
changement proportionnel de sa coordonnée y par rapport à sa coordonnée
21
Ocfet*» ' & )
-*ÏZ2x.
22
Composition de transformations 2D
Avantage
L'avantage principal de la composition des transformations est un gain en
efficacité, car on applique aux points d'un objet une seule transformation
au lieu de leur appliquer une série de transformations.
A l'aide des coordonnées homogènes, Les compositions s'écrivent
alors comme des succession de matrices de transformations.
Problème 1
Rotation d'un objet autour d'un point PI(XI, y!)
Solutionl,
Puisque nous savons comment faire tourner un objet autour de l'origine, il
suffit de transformer le problème de départ en 3 sous problèmes simples :
1) Translater PI à l'origine : T(-XI, -y,)
2) Effectuer la rotation : R(<x)
3) Translater PI vers son ancienne position : T(XI, yO
La transformation résultante est : M= T(XI, y^* R(oc)*T(-Xi, -yO
Calcul :
Soit M= T(x,, y,)* R(oc)*T(-x,, -y,)
f 1 0 xi i/cpsa -sina 0} \ 0 -xiM = 0 1 yi n sina cosa 0 n 0 1 -yi
l o o i ( o o ij 0 0 1
10 xiO l y i
,001
cosa -sina -xicosa+yisinasina cosa -xisina-yicosa
0 0 1
f cosa -sina -xicosa+yisina-K» ]= sina cosa-xisina-yicosa+>il 0 0 1 J
/^cosa-sina xi(l-cosa)+yisinaA|= sina cosa yi(l-cosa)~xisina( 0 0 1 J
Problème 2
Même approche pour mettre à l'échelle un objet par rapport à un point.
Solution
Puisque nous savons comment faire maître à l'échelle un objet par rapport
à l'origine, il suffit de transformer le problème de départ en 3 sous
problèmes simples :
1) Translater PI à l'origine : T(-XI, -yO
2) Effectuer le scaling : S(ôx, ôy)
3) Translater PI vers son ancienne position : T(xb y^
La transformation résultante est : M = T(XJ, yj)* S(8x, ôy)* T(-x,, -y^
17 y'-,?.
• ' ' ('
Calcul :
M = T(x,, y,)* S(ôx, ôy)* T(-Xl, -y,)
M = Oly i 'H O^oHôl-y i '
(\0xi}(âx ° -Xl&) - sl= 0 1 yi M 0 ôy -y\8y >'
(001 )(0 0 1 )
( Sx 0 xi-xi&^= 0 Ôy y\-y\ôy , /
[ 0 0 1 J
(Sx 0 xi-xi&: |= 0 Sy y\-yiôyl o o i J
= 0 ôy y\(\-Sy)( 0 0 1 ' J . . < ; ; • ,.-:',..
25 26
Problème 3
Scaler, tourner et positionner en P2 l'objet avec PI comme centre de
rotation.
Solution :
On décompose la transformation en une série de transformations
élémentaires :
1) Translater PI à l'origine : T(-XI, -yi)
2) Effectuer le scaling : S(Sx, ôy)
3) Effectuer la rotation : R(«0
4) Translater vers P2 nouvelle position : T(x2, JT)
La transformation résultante est :
Décomposition d'une transformation complexe en transformations élémentaires
Commutativité des transformations
Si Ml et M2 représentent une translation (T), une rotation (R ) ou un
scaling (S) quand a-t-on M1*M2 = M2*M1 ?
En général, la multiplication matricielle n'est pas commutative
M1*M2 = M2*M1 si
MlTSRS (avec ôx=5y)
M2TSRR
Exemple
L'ordre de transformations est important :
M- T(x2, y2)* R(oc)*S(ôx, ôy)*T(-xt, -y,)MST=
~âx 0 0"0 ^00 0 1
fl 0 tx"O l t y00 1
=Sx 0 (5k*tx0 <Sy<5y*ty0 0 1
„ ' Mxs=T(tx, ty).S(Sx, <5y)
ÊYi Yi Yi Yi'l " J l J l r-Tv MlS =
> . /\v \V>ffi | l/|\ ^Xx
•"- ) ) A A \ / ^v /i. -i—' 'V/ En gen
l O t xO l t y00 1 _
éral MST '
Se 0 00 âyO0 0 1
—Sx 0 tx0 âyty0 0 1
4
27 28
Décomposition de la transformation Window - ViewPort
En général, les objets de la scène sont exprimés dans le repère du monde
(World Coordinate System), qui possède ses propres unités de mesure
(mètres, centimètres, peu importe).
On utilise le ternie monde car le programme d'application représente un
monde virtuel crée par l'utilisateur.
Les primitives graphiques qui serviront à visualiser les objets
appartiennent au monde de l'écran qui possède son propre système de
coordonnées, exprimées en pixels.
En général, on est amené à définir deux fenêtres :
• window : exprimé dans le repère du monde, contient la partie des
objets que l'on souhaite visualiser
• viewport : définit la partie de l'écran dans laquelle on veut afficher
les objets contenus dans la fenêtre window. La taille et la position de
viewport sont exprimés en pixels.
Problème
Etant donné une window et un viewport, quelle est la matrice de
transformation qui permet de passer de l'un vers l'autre ?
Solution
Cette transformation peut s'effectuer en plusieurs étapes :T"(->^M/
1) translation de window à l'origine du repère du monde : T(umin, vmin)
2) mise à l'échelle de la fenêtre window pour quelle prenne la taille du
viewport. Passage du repère du monde vers le repère écran :
C/l/max —Z/miii Vmax—Vmin \ — Xmin _yniax —_Vmin
3) translation du viewport vers la position désirée dans le repère écran : T(-
in? "Ymin/ x , vmtuf ' max
WINDOW
WINDOW
X
WINDOW dans lerepère du monde
(1)
Window translatéeà l'origine
(2)
WINDOW
Taille deVIEWPORT
WINDOW scaléeà la taille du VIEWPORT,passage du repère du mondeau repère de l'écran
(3)
1
VIEWPORT
X U • Vmin' min
VIEWPORT translaté del'origine vers i'min,vmia
(4)
Décomposition de la transformation WINDOW-VIEWPORT eni étapes
.La transformation peut s'écrire sous forme d'un produit de 3
transformations :
Muv , Vmin)5("max~Mmin,—
,.\jnax — Xniin J^niax — J
(~Xmm, -ymin)
Développons maintenant le résultat précédent :
(\TMuv= 0 1 Vmin I*
00 1
Z/max ~Umin A A
.Xrnax —XminA Vmax — Vmiii A
0V
0 1
/
Muv =
Urna.x~Umm._ A
Xmax—Xmin
A Vmax ~~Vmin
:
1 0 -xmin]0 1 -ymin00 1 J
\
0_
0
Cmax —.Xmin
,, . I Mnax —Vfoiiu \_\_-., •— Vrain rrVTnm-^ -i » 11_
1
Donc finalement, si on a un point Pw=(x, y, 1)T appartenant à un objet dans
le repère du monde. Si Pw se trouve dans la WINDOW, il se trouve
représenté sur l'écran en :
Xy
, 1 .
\Xhiax — Xmin
~Vhlin +Vmin
31
Transformation 3D en coordonnées homogène
De la même manière que les transformations 2D sont représentés par des
matrices 3x3, en utilisant des coordonnées homogènes, les transformations
3D seront représentés à l'aide de matrice 4x4.
Au lieu de représenter un point par un triplet (x, y, z), on utilisera un
quadruplé homogène (x, y, z, w).
Système de coordonnées utilisé est direct :
32
Translation 3D Rotation
M=X'y7'l i >
=T*M=T*
,ty,tz)=
X
yz
11;(100 tx^ i010 ty
001 tzi G O O 1
X+txy+tyz+t-( 1 J
Mise à l'échelle
Remarque
Si ôx=ôy=8z=5 alors la matrice S est équivalente à'100 00 1 0 0001 0000
5)
> Rotation d'angle a autour de l'axe des Z: Rz(a)=|
Vérification :
*î* l'axe z ne change pas. , .
* Une rotation de n/2 doit changer x en y et y en -x
cpsa -sina 0 0sina cosa 0 0. 0 0 1 0
0 0 0 1
> Rotation d'angle a autour de l'axe des X : Rx(a)=|
Vérification :
Ȕ* l'axe X ne change pas.
1 0 00 cosa -sina 00 sina cosa 00 0 0 1
<* Une rotation de n/2 doit changer y en z et z en -y
f.
> Rotation d'angle a autour de l'axe des Y : Ry(a)=|
.Vérification :
«î» l'axe Y ne change pas.
cosa 0 -sina 00 1 0 0
sina 0 cosa , 00 0 0 1
•î» Une rotation de n/2 doit changer z en x et x en -z
33 34
Propriétés des matrices de rotation
• D e t R = l
R"' ='R
• Groupe des rotations non commutatifs
Les sous matrices 3x3 en pointillés sont des matrices orthogonales. Elles
possèdent les propriétés suivantes :
• Les 3 vecteurs et les vecteurs colonnes sont unitaires
• Les 3 vecteurs et les vecteurs colonnes sont orthogonaux
• La transfomiation R(a), appliquée aux trois vecteurs lignes, produit les
vecteurs unitaires des axes X, Y et Z.
• La transformation R(a), appliquée aux vecteurs unitaires des axes X, Y
et Z, produit les vecteurs colonnes.
Les matrices orthogonaux préservent les angles et les distances.
Glissement en 3D
On exprime un glissement 3D le long des axes X et Y à l'aide de la
matrice :
SHxy= Olshy 000 1 000 0 1
En effet :
SHxy*M= O l s h y 000 1 0
(,00 0 ij* y
Zluy+shy*z
Z( 1 J
36
Transformation inverse
Intérêt
Après avoir transformé un objet graphique, il arrive souvent que l'on
veuille le ramener à sa forme originale. On peut le faire avec le principe
des matrices inverses.
Inverse des transformations
Chacune des matrices de transformation R, S, et T possède un inverse.
• On obtient l'inverse d'une translation T(tx, ty, tz) en inversant les
signes de tx, ty et tz.
T\tx, ty, tz) = T(-tx, -ty, -tz)
• L'inverse d'une mise à l'échelle S(3x, 9y, dz) s'obtient en inversant les
facteurs d'échelles : <3x, ôy et <3z
Exemple : Inverse de la composition d'une transformation
MRST=R(o).S(<5x, <5y, <5z).T(tx, ty, tz)
, ty, tz)sVx, <5y,
, dy, dz)= S(l/9x, 1%, 1/âz)
• L'inverse d'une rotation R(oc) est la rotation :
R-'(a:)=T(R(<x))=R(-cx:) OC - -OC
L'inverse d'une matrice orthogonale M est TM.
Shx et Shy son inverse est -> -Shx et -Shy
La réflexion est son propre inverse.
37 38
Transformation d'un plan
Rappel
Pour déplacer, tourner, retailler un objet, on transforme juste des points de
l'objet (les sommets des arêtes des objets), puis on redessine les arêtes.
Problème
Pour transformer un plan défini par 3 points, on transformera les points
pour obtenir la nouvelle équation du plan.
Cependant, souvent les plans sont définis uniquement par leur équation :
> II est possible de recalculer les coefficients du plan en utilisant
directement la transformation
>• On peut aussi non pas transformer le plan lui même, mais son plan
normal.
. 39
• ( -Solution J r* s *
Equation du plan
Le plan est défini par tous les points M qui vérifient l'équation :
TN*M = 0 (a b c d
Supposons que l'on transforme les points M du,plana l'aide d'une matrice
H : M ' = H * M
Pour conserver 1N'*M'=0 avec les points transformés, on transforme N en
N'par une matrice Q (que l'on cherche) telle que l'équation suivante reste
vraie: N' = Q * N
.„••. - - • ' • : • ' • . ^ ' ';': : ' "T)-!'-'' •' ' ''(Q*N)*(H*M) = 0
(TN* TQ)*(H*M)=0 (I)
• T,
Or TN*M = 0
L'équation (I) reste vraie si 'Q*H= est un multiple de la matrice identité.
En particulier TQ*H=I
Dans ce cas TQ = H"1.
Ou encore Q = T(H"')
Ainsi le vecteur contenant les coefficients de l'équation du plan transformé
par est donné par :
N' = Q * N = T(H"') * N
40