Menu principal bas de page


3) Les diverses transformations :

a) La translation :

Le déplacement du point A au point B selon le vecteur est appelé translation de vecteur . Elle se traduit mathématiquement par la somme des coordonnées du point et de la matrice des coordonnées du vecteur. Par exemple :

+ =

La transformation inverse est la transformation de vecteur , c'est à dire une translation de matrice contenant les coordonnées du vecteur :



La translation n'étant pas une transformation linéaire, on ne pourra pas la représenter dans une matrice carrée, 2*2 dans le plan, 3*3 dans l'espace.

b) l'homothétie :

Une homothetie de centre O et de rapport K, associe au point A un point B tel que OB = k* OA : le point B se trouve sur la droite (OA) et la distance OB = k * OA. Le signe de k détermine la position de B par rapport à O.

Remarque : Une homothétie est aussi appelée "changement d'échelle".

1er cas : 0 confondu avec l'origine du repère
a:={8,10}
b:={10,6}
c:={9,4}
t:={{.5,0},{0,.5}}
Triangle1:=Line[{a,b,c,a }]
Triangle2:=Line[{a.t,b.t,c.t,a.t}]
origine:={0,0}
f:=Graphics [{ Triangle1,
       Triangle2 , 
       Point[origine]}, 
       AxesOrigin->origine, 
       Axes->True]
g:=Graphics [{CMYKColor[0.5,0,1,0],
       Line[{origine,a}], 
       Line[{origine,b}], 
       Line[{origine,c}]}]
Show[f,g]
réalisé sous Mathématica

OB = k * OA = k * on peut remplacer k par une matrice 3*3.

= * = =

donc b = c = d = f = g = h = 0
d'où la forme matricielle suivante de k :

Cette matrice est appelée : Matrice de transformation par homothétie de centre O (origine du repère) et de rapport k.

Remarque :
Dans le cas présent, l'homothétie conserve les formes : on utilise en effet le même facteur k pour tous les axes.
Ainsi, on pourrait utiliser la matrice suivante :
Elle déforme l'objet selon un facteur différent pour chaque axe

Transformation inverse :
Il s'agit de l'homothétie de centre O et de rapport 1/k soit en matrice :

2ème cas : O différent de l'origine du repère (H) :
La procédure de calcul des coordonnées du point image est très simple. Il faut :
-Réaliser une translation pour faire correspondre le centre de l'homothétie avec l'origine du repère et appliquer cette translation à tous les points en jeu (translation de vecteur ).
Réaliser l'homothétie proprement dite comme décrit précédemment (le centre est l'origine du repère).
Réaliser la translation inverse pour ramener le centre et l'image à sa place.
On obtient ainsi :
= * +

c) rotations :

1er cas : O confondu avec l'origine du repère :
A' : image de A par la rotation de centre O et d'angle .

On a, dans la plan, x = r* cos() x' = r* cos()
y = r* sin() y' = r* sin()
or = + d'où x' = r* cos( + )
y' = r* sin( + )
x' = r* cos()* cos() - r* sin() * sin()
x' = r* sin()* cos() + r* cos() * sin()
x' = x* cos() - y * sin()
y' = y * cos() + x * sin()
x' = x* cos() - y * sin()
y' = x * sin() + y * cos()

d'où = *

La matrice de rotation autour de l'origine du repère d'angle est donc :

Exemple : Faisons subir une rotation à un triangle.

a := {8, 7}
b := {10, 4}
c := {9, 1}
q := Pi/4
t :={ {Cos[q], Sin[q]}, {-Sin[q], Cos[q]} }
	Triangle1 := Line[{a,b,c,a}]
	Triangle2 := N[Line[{a.t, b.t, c.t, a.t}]]
origine := {0,0}
f := Graphics [{Triangle1, Triangle2}
	AxesOrigin -> origine, Axes -> True]
g := Graphics [{CMYKColor[.5, 0, 1, 0],
	Line[{origine, b}], Line[{origine, b.t}]
Show[f,g]
  
réalisé sous Mathématica.

Transformation inverse :
Il s'agit simplement de la rotation de centre O (le même qu'auparavant) et d'angle -. Cela correspond à la matrice :

Rotation autour d'un point quelconque :
Tout comme pour l'homothétie, il convient de réaliser une translation de vecteur (H : origine du repère) pour faire confondre O et H, puis de réaliser la rotation simple autour de H, et enfin de ramener O (confondu alors avec H) à son point de départ.

4) Composition de rotations et de changements d'échelle :

On cherche à réaliser la composition d’une rotation par un changement d’échelle : H * R.
La matrice de transformation est donc : [ R ] * [ H ].
Attention : la multiplication de 2 matrices n’est pas commutative (A*B B*A).

On obtient donc une matrice 3*3, qu’il suffit de multiplier aux coordonnées du point pour obtenir son image :
* =

Exemple :Faisons subir un triangle la composition " homothétie-rotation "

a := {8, 7}
b := {10, 4}
c := {9, 1}
q := Pi/4
rotation :={ {Cos[q], Sin[q]}, {-Sin[q], Cos[q]} }
homothetie :={ {.5,0}, {0,.5} }
t := rotation.homothetie
	Triangle1 := Line[{a,b,c,a}]
	Triangle2 := N[Line[{a.t, b.t, c.t, a.t}]]
origine := {0,0}
f := Graphics [{Triangle1, Triangle2}
	AxesOrigin -> origine, Axes -> True]
g := Graphics [{CMYKColor[.5, 0, 1, 0],
	Line[{origine, b}], Line[{origine, b.t}]
  
réalisé sous Mathématica.

De cette façon, il est aisée d’obtenir une matrice générale de composition de transformation. Cependant, cela ne s’applique qu’aux transformations linéaires, qui seules peuvent être représentées sous forme d’une matrice 3*3. Et la translation n’en est pas une...
Il devient donc nécessaire d’adopter une autre représentation matricielle : la notation homogène.



Page
précédente
Page
suivante