Inscription / Connexion Nouveau Sujet
Niveau autre
Partager :

Matrice de rotation entre deux plans

Posté par
azboul
24-09-10 à 15:42

Bonjour à tous,

Je dispose d'un plan d'origine P(a,b,c,d) et je voudrais appliquer une rotation dans l'espace pour obtenir un nouveau plan, parallèle à l'axe des Z : P'(0,0,1,d).

Mon problème revient à trouver M(4x4) tel que M.n=n' (n,n' les normales resp. des deux plans en coord homogènes) .
Comment calculer cette matrice ?

Ça fait 2-3ans que je n'ai plus touché au maths et je dois dire que je suis un peu rouillé :/

Merci par avance de m'éclairé.

Posté par
GaBuZoMeu
re : Matrice de rotation entre deux plans 24-09-10 à 16:10

Pas très clair : le premier plan, c'est le plan d'équation ax+by+cz+d=0 ? Et tu veux l'amener sur le plan z+d=0 par une rotation ?   Ce qui n'est pas clair non plus, c'est la matrice de rotation 4x4. Peux-tu préciser ton formalisme ?

Posté par
azboul
re : Matrice de rotation entre deux plans 24-09-10 à 16:32

Désolé si je ne suis pas clair, peut être que quelquechose m'échappe.

Voilà le contexte :

Je développe une application 3D qui (entre autre) demande à l'utilisateur d'orienté une forme : pour cela il doit donner 3 points sur cette forme, censés symboliser une coupe horizontale (ie. parallèle au plan Pxy).

Je calcule le plan P qui passe par ces trois points ce qui me donne P: ax+by+cz+d=0.
Du coup pour orienter la forme, je souhaite connaitre la rotation qui ramène P en P':z+d=0.

Une fois que j'aurais obtenu cette rotation, je pourrais l'appliquer sur ma forme.

Si mes souvenirs sont bons, une rotation dans l'espace se fait en coordonnées homogènes d'où une matrice 4x4.
(Là ou j'ai du me tromper c'est au niveau de M.n=n' je te l'accorde, j'ai été un peu vite dans le raisonnement).

J'espère avoir été plus clair.

Merci par avance

Posté par
GaBuZoMeu
re : Matrice de rotation entre deux plans 24-09-10 à 17:02

Je ne vois pas pourquoi tes souvenirs te disent qu'on calcule une rotation en coordonnées homogènes.

Trouver une rotation qui rend le plan ax+by+cz+d=0 horizontal, ce n'est pas trop dur. Il suffit de rendre le vecteur normal n de coordonnées (a,b,c) vertical. Je suppose qu'on a normalisé pour avoir a^2+b^2+c^2=1 (sinon, diviser l'équation par \sqrt{a^2+b^2+c^2}). Je suppose aussi qu'on n'a pas a=b=0 (si c'est le cas, ce n'est pas la peine de se fatiguer). Soit u le vecteur de coordonnées (b/\sqrt{a^2+b^2},-a/\sqrt{a^2+b^2},0) ; c'est un vecteur unitaire normal à n. On calcule le produit vectoriel v=n \wedge u. Alors (u,v,n) est une base orthogonale directe, et la matrice M dont les colonnes sont les coordonnées de u,v,n est une matrice de rotation qui amène le vecteur (0,0,1) sur n. La transposée de M (qui est l'inverse de M) est la matrice d'une rotation qui transforme le plan ax+by+cz+d=0 en le plan z+d=0. C'est une brave matrice 3x3.

Posté par
azboul
re : Matrice de rotation entre deux plans 24-09-10 à 20:18

Ok d'accord.

En fait, j'associais la rotation dans l'espace aux matrices 4x4 mais en fait ca concerne des transformation + complexes.
En fait comme tu me le fais remarquer les coordonnées homogènes ne servent à rien ici.

Merci bien pour tes précisions



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1722 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !