Sommaire Préambule...3 Méthode générale...4 Coordonnées homogènes...5 Rotations dans R2...7 Rotations dans R3...9 Rotation d axe Ox... 10 Rotation d axe Oy... 11 Rotation d axe Oz... 12 Récapitulatif... 13 Symétries dans R2... 13 Symétrie d axe Ox... 13 Symétrie d axe Oy... 14 Symétrie d axe y = x... 15 Symétrie d axe quelconque... 15 Symétries dans R3... 15 Symétrie d axe Ox... 16 Symétrie d axe Oy... 17 Symétrie d axe Oz... 17 2
Préambule C est le mathématicien James Joseph Sylvester qui, en 1850, introduisit le terme de matrice. Ses recherches furent continuées par bon nombre de mathématiciens et de géomètres, et aujourd hui, on trouve des applications des matrices dans la plupart des sciences. On s intéresse ici à l utilisation de calculs matriciels en géométrie. On cherche à établir les matrices associées à la plupart des transformations géométriques : rotations, symétries, projections, homothéties, etc. Pour cela, on détaillera les calculs menant à chacune des matrices, d abord dans R 2 puis dans R 3. On évoquera les difficultés rencontrées, notamment avec les coordonnées cartésiennes. Pour chaque matrice, on calculera son déterminant, et, si possible, sa matrice inverse. Ensuite, on appliquera ces résultats à un programme, permettant d appliquer les différentes transformations à des points de l espace. 3
Méthode générale Pour chaque transformation géométrique, on partira de la définition, pour arriver à un système du type : x = ax + by + cz { y = a x + b y + c z z = a x + b y + c z Avec (x, y, z ) coordonnées de l image du point de coordonnées (x, y, z) par la transformation étudiée. Ce système pourra ensuite facilement être exprimé sous la forme d un produit matriciel : En effet, en développant : x ( y) z a b c ax + by + cz ( a b c ) ( a x + b y + c z ) a b c a x + b y + c z x a b c x ( y ) = ( a b c ) ( y) z a b c z On aura donc : a b c M = ( a b c ) a b c On dira que M est la matrice associée à la transformation géométrique étudiée. 4
Coordonnées homogènes On a donc vu que les coordonnées de l image pourront s exprimer sous la forme : x = ax + by + cz { y = a x + b y + c z z = a x + b y + c z Or en pratique, on remarquera que pour certaines transformations, il y aura des termes additifs : x = ax + by + cz + d { y = a x + b y + c z + d z = a x + b y + c z + d Dans ce cas, il sera clairement impossible de représenter la transformation géométrique sous forme d un pur produit matriciel, du moins en coordonnées cartésiennes. C est pourquoi, on introduit des coordonnées dites homogènes, (X, Y, Z, W), telles que : x = X W y = Y W { z = Z W W est communément appelé facteur d échelle. Dans notre cas, on choisira W = 1 de façon à avoir : X = x Y = y { Z = z W = 1 Les coordonnées (X, Y, Z ) pourront alors être obtenues par un produit matriciel de la forme : En effet, en développant : x a b c d x y a b c d y ( ) = ( ) ( ) z a b c d z 1 0 0 0 1 1 a b c d x y ( ) z 1 ax + by + cz + d ( a b c d ) ( a x + b y + c z + d ) a b c d a x + b y + c z + d 0 0 0 1 5
On aura donc : a b c d M = ( a b c d ) a b c d 0 0 0 1 On dira que M est la matrice associée à la transformation géométrique étudiée, cette fois-ci en coordonnées homogènes. Dans un souci d homogénéité des matrices, et dans le but de les réutiliser dans un programme informatique, on les exprimera toujours en coordonnées homogènes, même lorsque la transformation géométrique étudiée ne le requiert pas. 6
Rotations Rotations dans R 2 Soient : Ω = (u, v) θ R La rotation de centre Ω et d angle θ est la transformation qui associe à tout point M(x, y) du plan, distinct de Ω, associe le point M (x, y ) tel que : ΩM = ΩM { (ΩM, ΩM ) = θ En se plaçant dans le triangle ΩYM, on trouve que la deuxième équation est équivalente à : On arrive donc au système : D où : Or : cos(θ + φ) = x u { ΩM sin(θ + φ) = y v ΩM { x u = cos(θ + φ) ΩM y v = sin(θ + φ)ωm { x = cos(θ + φ) ΩM + u y = sin(θ + φ)ωm + v ΩM = ΩM { x = cos(θ + φ) ΩM + u y = sin(θ + φ)ωm + v { x = cos(θ + φ) ΩM + u y = sin(θ + φ)ωm + v cos(θ + φ) = cos(θ) cos(φ) sin(θ) sin (φ) sin(θ + φ) = sin(θ) cos(φ) + cos(θ) sin (φ) 7
Donc : Or, en se plaçant dans le triangle ΩZM : D où, en remplaçant dans le système : { x = u + cos(θ) cos(φ) ΩM sin(θ) sin (φ)ωm y = v + sin(θ) cos(φ) ΩM + cos(θ) sin (φ)ωm cos(φ) = sin(φ) = x u ΩM y v ΩM { x = u + cos(θ) (x u) sin (θ)(y v) y = v + sin(θ) (x u) + cos(θ) (y v) Dans le cas particulier où le centre de rotation est l origine du repère, on aura { u = 0 v = 0 Donc : { x = cos(θ) x sin(θ) y y = sin(θ) x + cos(θ) y Ce qu on peut facilement exprimer sous la forme d un produit matriciel : ( x y ) = (cos (θ) sin (θ) sin (θ) cos (θ) ) (x y ) Les termes additifs ayant été éliminés, il n y a même pas besoin d utiliser des coordonnées homogènes : les coordonnées cartésiennes suffisent. Par contre, dans le cas général, il est nécessaire d utiliser des coordonnées homogènes : { x = u + cos(θ) (x u) sin(θ) (y v) y = v + sin(θ) (x u) + cos(θ) (y v) { x = cos(θ) x sin(θ) y + u(1 cos(θ)) + sin(θ) v y = sin(θ) x + cos(θ) y + v(1 + cos(θ)) sin(θ) u D où, sous forme matricielle, et en utilisant des coordonnées homogènes : 8
x cos (θ) sin (θ) u(1 cos(θ)) + sin(θ) v x ( y ) = ( sin (θ) cos (θ) v(1 + cos(θ)) sin(θ) u) ( y) 1 0 0 1 1 On peut donc définir la matrice de rotation dans le plan : cos (θ) sin (θ) u(1 cos(θ)) + sin(θ) v A = ( sin (θ) cos (θ) v(1 + cos(θ)) sin(θ) u) 0 0 1 Calculons maintenant le déterminant δ de A : cos (θ) sin (θ) u(1 cos(θ)) + sin(θ) v δ = sin (θ) cos (θ) v(1 + cos(θ)) sin(θ) u 0 0 1 δ = ( 1) 3+3 cos (θ) sin (θ) sin (θ) cos (θ) δ = cos 2 (θ) + sin 2 (θ) δ = 1 δ 0 donc la matrice est inversible. Rotations dans R 3 On se place dans le repère orthonormé (O, i, j, k ). Soient : Δ une droite de l espace θ R P le plan normal à Δ passant par M H l intersection de Δ et de P La rotation d axe Δ et d angle θ est la transformation qui associe à tout point M(x, y, z), distinct de Δ, associe le point M (x, y, z ) tel que : M appartient au plan P Dans le plan P, M est l'image de M par la rotation plane de centre H et d'angle θ 9
Il existe trois cas particuliers : Rotation d axe Ox : Δ et Ox sont confondus Rotation d axe Oy : Δ et Oy sont confondus Rotation d axe Oz : Δ et Oz sont confondus Rotation d axe Ox Dans R 3, la rotation d axe Ox et d angle θ est donc une rotation plane d axe O et d angle θ dans R 2. On a alors : x = x { y = cos(θ) y sin(θ) z z = sin(θ) y + cos(θ) z On a simplement appliqué la rotation de centre O et d angle θ au point M(y, z) dans le repère (O, j, k ). Ce que l on peut exprimer aisément sous forme matricielle : Et en coordonnées homogènes : Calculons maintenant son déterminant δ : 1 0 0 0 0 cos(θ) sin(θ) 0 δ = 0 sin(θ) cos(θ) 0 0 0 0 1 1 0 0 δ = ( 1) 4+4 0 cos(θ) sin(θ) 0 sin(θ) cos(θ) x 1 0 0 x ( y ) = ( 0 cos(θ) sin(θ) ) ( y) z 0 sin(θ) cos(θ) z x 1 0 0 0 x y 0 cos(θ) sin(θ) 0 y ( ) = ( ) ( ) z 0 sin(θ) cos(θ) 0 z 1 0 0 0 1 1 10
δ = ( 1) 4+4 ( 1) 1+1 cos(θ) sin(θ) sin(θ) cos(θ) δ = cos(θ) sin(θ) sin(θ) cos(θ) δ = cos 2 (θ) + sin 2 (θ) δ = 1 δ 0 donc la matrice est inversible. En fait, on remarquera que les déterminants des matrices associées aux rotations sont toujours égaux à 1. En effet, on arrive toujours à δ = cos(θ) sin(θ), en utilisant la sin(θ) cos(θ) méthode des cofacteurs. Les 1 sont toujours placés sur la diagonale, donc ( 1) a toujours une puissance paire. Rotation d axe Oy Dans R 3, la rotation d axe Oy et d angle θ est une rotation plane d axe O et d angle θ dans R 2. On a alors : x = cos(θ) x sin(θ)z { y = y z = sin(θ) x + cos(θ) z On a simplement appliqué la rotation de centre O et d angle θ au point M(x, z) dans le repère (O, i, k ). Ce que l on peut exprimer aisément sous forme matricielle : x cos(θ) 0 sin(θ) x ( y ) = ( 0 1 0 ) ( y) z sin(θ) 0 cos(θ) z Et en coordonnées homogènes : 11
x cos(θ) 0 sin(θ) 0 x y ( z ) = ( 0 1 0 0 y ) ( ) sin(θ) 0 cos(θ) 0 z 1 0 0 0 1 1 Rotation d axe Oz Dans R 3, la rotation d axe Oz et d angle θ est une rotation plane d axe O et d angle θ dans R 2. On a alors : x = cos(θ) x sin(θ)y { y = sin(θ) x + cos(θ) y z = z On a simplement appliqué la rotation de centre O et d angle au point M(x, y ) dans le repère (O, i, j ). Ce que l on peut exprimer aisément sous forme matricielle : Et en coordonnées homogènes : x cos(θ) sin(θ) 0 x ( y ) = ( sin(θ) cos(θ) 0) ( y) z 0 0 1 z x cos(θ) sin(θ) 0 0 x y ( ) = ( sin(θ) cos(θ) 0 0 y ) ( ) z 0 0 1 0 z 1 0 0 0 1 1 12
Récapitulatif Rotations Rotation plane d axe Ω(u, v) et d angle θ Rotation d axe Ox et d angle θ Rotation d axe Oy et d angle θ Rotation d axe Oz et d angle θ cos (θ) sin (θ) u(1 cos(θ)) + sin(θ) v ( sin (θ) cos (θ) v(1 + cos(θ)) sin(θ) u) 0 1 0 0 0 1 0 0 cos(θ) sin(θ) 0 ( ) 0 sin(θ) cos(θ) 0 0 0 0 1 cos(θ) 0 sin(θ) 0 ( 0 1 0 0 ) sin(θ) 0 cos(θ) 0 0 cos(θ) 0 0 sin(θ) 0 1 0 ( sin(θ) cos(θ) 0 0 ) 0 0 1 0 0 0 0 1 Symétries Symétries dans R 2 Note : Une figure géométrique subissant une symétrie n est pas déformée, mais son orientation est inversée. Symétrie d axe Ox Cela revient à une symétrie par rapport à l axe des abscisses. Cette transformation est une application linéaire donnée par la matrice suivante : M Ox = ( 1 0 0 1 ). On sait que dans un repère orthonormé, le symétrique d un point de coordonnées (x, y) a pour symétrique le point de coordonnées (x, y ) avec x = x et y = y. Par le produit matriciel, on obtient : ( 1 0 M = (x y) 0 1 ) (x 1+y 0 x 0+y ( 1)) = (x y) 13
Calculons donc le déterminant δ de cette matrice : Nous sommes dans le cas d une matrice 2x2, donc : δ = 1 ( 1) 0 0 = 1 Nous pouvons donc calculer la matrice inverse car le déterminant n est pas nul : M 1 Ox = ( 1 0 1 0 1 ) 1 = 1 ( 1) 0 ( 1 0 0 1 ) En infographie, on utilise souvent des matrices dont la première colonne correspond aux coordonnées sur l axe des abscisses, et la seconde sur l axe des ordonnées (pour une représentation linéaire en 2 dimensions). Symétrie d axe Oy De même que précédemment, dans un repère orthonormé, le symétrique d un point de coordonnées (x, y) par l axe des ordonnées est le point qui a pour coordonnées (x, y ) avec x = x et y = y. En mettant en parallèle les 4 équations on peut obtenir deux systèmes : x =x { y = y x = x pour une symétrie d axe Ox et { y =y pour une symétrie d axe Oy. On en déduit que l on passe d un système à l autre en multipliant par -1. D où la matrice associée à la symétrie d axe Oy dans R 2 : 1 ( 1 0 0 ) = ( 1 0 1 0 1 ) On peut noter que le résultat est logique d après le calcule de la matrice inverse. Soit : ( 1 0 M = (x y) 0 1 ) (x ( 1)+y 0 x 0+y 1) = ( x y) Calculons donc le déterminant δ de cette matrice : Nous sommes dans le cas d une matrice 2x2, donc : δ = 1 1 0 0 = 1 14
Nous pouvons donc calculer la matrice inverse car le déterminant n est pas nul : On retombe sur les résultats précédents. M 1 Ox = ( 1 0 1 0 1 ) 1 = 1 (1) 0 (1 0 0 1 ) Symétrie d axe y = x Cette transformation est une application linéaire donnée par la matrice suivant : Soit par la matrice = (x y), on obtient alors : M x=y = ( 0 1 1 0 ) ( 0 1 1 0 = (x y) ) (x 0+y 1 x 1+y 0) = (y x) Encore une fois, calculons le discriminant de cette matrice : On peut donc calculer la matrice inverse. δ = 0 0 1 1 = 1 M y=x ( 0 1 1 0 ) 1 = 1 0 0 1 1 ( 0 1 1 0 ) Symétrie d axe quelconque L idéal est d effectuer une translation d un point connu de l axe de symétrie vers l origine. On peut donc à présent considérer cette transformation comme la composée d une rotation d angle θ (l axe de symétrie est confondu avec l axe Ox), puis d opérer avec une symétrie d axe Ox comme vu précédemment. Et finalement d une nouvelle rotation d angle θ pour ramener l axe à son «origine». cos θ sin θ 0 θ sin θ 2θ sin 2θ M qc = ( ). (1 ). (cos ) = (cos sin θ cos θ 0 1 sin θ cos θ sin 2θ cos 2θ ) Il ne reste plus qu a effectuer la translation inverse pour obtenir notre matrice finale. Symétries dans R 3 15
Symétrie d axe Ox Comme nous l avons vu précédemment, la symétrie est un cas particulier de rotation. C est pourquoi, dans R 3 il est plus aisé de se ramener à une rotation. Pour cela, on prend ω centre de rotation et point d intersection avec la droite perpendiculaire à l axe passant par le point d étude. A partir de ω, on effectue une rotation d angle 180. Nous pouvons représenter cette transformation sous forme matricielle. 1 0 0 0 0 cos(θ) sin(θ) 0 ( ) 0 sin(θ) cos(θ) 0 0 0 0 1 Cette matrice est une rotation d axe Ox et d angle θ. En remplaçant on obtient la matrice suivant (en coordonnées homogènes) : 1 0 0 0 1 0 0 0 0 cos(180) sin(180) 0 0 1 0 0 ( ) = ( ) 0 sin(180) cos(180) 0 0 0 1 0 0 0 0 1 0 0 0 1 Calcul du déterminant de cette matrice : 1 0 0 = ( 0 1 0 ) 0 0 1 1 0 0 δ = [ 0 1 0 ] = 1 [ 1 0 0 1 ] = 1 0 0 1 Le déterminant n étant pas nul, la matrice est inversible : 1 0 0 M 1 = ( 0 1 0 ) = 1 1 0 0 1 ( 0 1 0 ) 0 0 1 0 0 1 t 1 0 0 = 1. ( 0 1 0 ) = ( 0 0 1 1 0 0 0 1 0) 0 0 1 16
Symétrie d axe Oy Pour une symétrie d axe Oy dans R 3, le principe est le même. La matrice associée à une rotation d axe Oy et d angle θ est (en coordonnées homogènes) : 1 0 0 0 1 0 0 0 1 0 0 Soit ( ) ou ( 0 1 0). 0 0 1 0 0 0 1 0 0 0 1 Calcul du déterminant de cette matrice : cos(θ) 0 sin(θ) 0 ( 0 1 0 0 ) sin(θ) 0 cos(θ) 0 0 0 0 1 1 0 0 δ = [ 0 1 0] = 1 [ 1 0 0 1 ] = 1 0 0 1 Le déterminant n étant pas nul, la matrice est inversible : t 1 0 0 M 1 = ( 0 1 0) = 1 1 0 0 1 0 0 1 0 0 1 ( 0 1 0) = 1. ( 0 1 0) = ( 0 1 0 ) 0 0 1 0 0 1 0 0 1 0 0 1 Symétrie d axe Oz Idem, on se base sur la matrice associée à la rotation d axe Oz (en coordonnées homogènes): cos(θ) sin(θ) 0 0 1 0 0 0 ( sin(θ) cos(θ) 0 0 0 1 0 0 ) soit ( ) 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 Ou ( 0 1 0). 0 0 1 Calculons à présent le déterminant : 17
1 0 0 δ = [ 0 1 0] = 1 [ 1 0 0 1 ] = 1 0 0 1 Le déterminant n étant pas nul, la matrice est inversible : t 1 0 0 M 1 = ( 0 1 0) = 1 1 0 0 1 0 0 1 0 0 1 ( 0 1 0) = 1. ( 0 1 0) = ( 0 1 0 ) 0 0 1 0 0 1 0 0 1 0 0 1 18