Inscription / Connexion Nouveau Sujet
Niveau IUT/DUT
Partager :

Projection et rotation dans R3

Posté par
yaduor
12-03-14 à 14:08

Bonjour,

Je viens chercher de l'aide car je perds pas mal de temps sur des calculs de géométrie, et la géométrie, c'est loin derrière moi.

Mon problème se passe dans l'espace et non dans le plan.

J'ai 2 points E(xE,yE,zE) et F(xF,yF,zF) qui forment un segment dans l'espace. Ce segment n'est pas horizontal ou vertical et n'est pas centré sur l'origine.

J'ai un point H à une distance d du segment EF et le point H' qui est une rotation du point H autour de l'axe EF.

Ma question est la suivante : comment déterminer l'angle de rotation qui permet de passer de H à H'.

Je sais calculer la distance d du point H à l'axe EF.

Je pensais calculer les coordonnées du point M, projeté orthogonal de H sur EF. A partir de là, j'aurais 2 segments MH et MH' dont il serait facile de calculer l'angle entre les 2. Mais comment calculer les coordonnées (xM,yM,zM) de ce projeté ?

Qu'en pensez vous ? Pouvez vous m'aider svp.
Merci

Posté par Profil Dlzlogicre : Projection et rotation dans R3 12-03-14 à 15:47

Bonjour,
Un problème du même type a été posé sur un autre forum et a provoqué beaucoup de remous.
Allez jeter un coup d'oeil sur les angles d'Euler (Wiki), je pense que vous aurez votre solution.

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 15:52

Merci de votre réponse mais ca ne m'avance guère dans ma démarche.
quel était le forum  sur lequel ce genre de question avait été posée svp ?
Ca doit pas etre hyper compliqué tout de même de trouver ces coordonnées.

Posté par Profil Dlzlogicre : Projection et rotation dans R3 12-03-14 à 16:08

Lorsque deux droites sont perpendiculaires, le produit scalaire de leurs vecteurs directeur est nul.
Il suffit donc d'écrire que le produit scalaire de EF et MH est nul, et que M appartient à la droite EF.
En fait, à mon avis, c'est le calcul de l'angle qui peut prêter à discussion, voire à confusion.
Peut-être d'autres membres vous donneront plus de précisions.  

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 16:13

ok d'accord merci.
sinon, je pensais déterminer l'équation d'1er plan passant par E,F et H.
Puis d'un 2nd passant par E,F et H'.
A partir des équations de ces 2 plans, on peut retrouver l'angle entre les 2.
Je vais essayer ça. Vive le cartésien !

Posté par Profil amethystere : Projection et rotation dans R3 12-03-14 à 16:28

bonjour Yaduor

je désire bien vous aider simplement mais ceci dit pourriez vous m'éclairer sur trois choses (et surtout les points 2) et 3) afin de pouvoir mieux vous aider

1)

Citation :
Ce segment n'est pas horizontal ou vertical et n'est pas centré sur l'origine.

cette phrase est inutile et n'a pas vraiment de sens je suppose donc qu'il ne s'agit pas d'un travail de cours?
mais bien d'un problème concret issue d'un travail personnel ou assimilé?

pourrait-on savoir l'objet de votre demande? il ne s'agit pas d'une question indiscrète  

merci!

2)
Citation :
J'ai 2 points E et F qui forment un segment dans l'espace.
J'ai un point H à une distance d du segment EF et le point H' qui est une rotation du point H autour de l'axe EF.

Ma question est la suivante : comment déterminer l'angle de rotation qui permet de passer de H à H'.


si je comprend bien vous disposez des quatre point E,F,H et H'

3)
Citation :
Je sais calculer la distance d du point H à l'axe EF.


quel est donc cette distance ?
il est important de montrer ce que l'on sait faire et non pas de le dire
(cependant si ce dernier point pose problème je vous aiderai quand même mais soyez franc )

ces trois points une fois résolus permettent de gagner du temps  

Posté par
Camélia Correcteur
re : Projection et rotation dans R3 12-03-14 à 16:37

Bonjour

Si tu as les coordonnées de tous les points dont tu parles, il me semble que le plus simple est décrire l'équation du plan qui contient H et H' et qui est orthogonal au segment. L'intersection de ce plan avec la droite qui supporte le segment est le point M que tu cherches.

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 16:48

1) ce que je veux dire, c'est que l'axe de rotation n'est pas trivial et ne se réduit pas à une rotation d'axe y ou z. Il s'agit d'un projet personnel sur des déplacements de pièces de robots.
J'ai besoin de connaitre ce fameux angle car il va influer sur le déplacement de plusieurs organes et constitue l'étape finale de mes calculs.

2) Il y a exactement 4 points dans l'étude E,F,H et H'. Le point E a pour coordonnées (-63,347;-715,31;0) et le point F (7,092;-583,062;661,659),
le point H (63,569;-690,462;84,85) et le point H'(59.126;-730.271;93.28).
D'après un logiciel de CAO, cet angle vaut 20.09°...

Imaginez que les points E et F définissent un axe de rotation et que le point H' soit le résultat d'une rotation d'angle Alpha du point H autour de EF.

Je cherche à trouver cet angle Alpha). Cet angle va influer sur un grand nombre de points non mentionnés.
j'ai créé un programme pour calculer la distance mini entre le point H et le segment EF en m'aidant de http://fr.wikipedia.org/wiki/Distance_d%27un_point_%C3%A0_une_droite .
Mon programme calcule la distance d'après le lien cité

Citation :
function f = distanceToSegment(ps, pe, p)

if (ps(1)==pe(1) && ps(2)==pe(2) && ps(3)==pe(3))
       f=distanceSimple(ps,p);
       return;
    end

sx=pe(1)-ps(1);
sy=pe(2)-ps(2);
    sz=pe(3)-ps(3);

ux=p(1)-ps(1);
uy=p(2)-ps(2);
    uz=p(3)-ps(3);

dp=sx*ux+sy*uy+sz*uz;
if (dp<0)
        f=distanceSimple(ps,p);
        return;
    end
    
sn2 = sx*sx+sy*sy+sz*sz;
if (dp>sn2)
        f=distanceSimple(pe,p);
        return;
    end

ah2 = dp*dp / sn2;
un2=ux*ux+uy*uy+uz*uz;
f = sqrt(un2-ah2);
end



Citation :
function f = distanceSimple(p1,p2)
d2 = (p2(1)-p1(1))*(p2(1)-p1(1))+(p2(2)-p1(2))*(p2(2)-p1(2))+(p2(3)-p1(3))*(p2(3)-p1(3));
f = sqrt(d2);
end


Donc le calcul de distance ne pose pas problème.

Je veux juste calculer l'angle entre H et H' autour de EF. les logiciels de Cao le font facilement mais moi je ne sais pas quoi utiliser
Merci

Posté par Profil amethystere : Projection et rotation dans R3 12-03-14 à 17:38

Bonjour

sans logiciel tu risque d'avoir qq problèmes

mais bon

je n'ai pas encore verifié tous tes points E F H et H'

laisse moi un peu de temps (demain je commence tôt mais à partir de demain soir je serai plus opérationnel pour t'aider)

en attendant parlons un peu du point que je vais appeler O (et que l'on doit rechercher) situé sur la droite passant par les deux points E et F

tel que

d= distance (HO) = distance (H'O)\neq 0  

(je te demandais donc l'ecriture math de d et non pas en utilisant un logiciel mais bon on verra demain)

et selon si O\neq E on doit verifier \overrightarrow {OH}.\overrightarrow {OE}=0

et on doit aussi vérifier \overrightarrow {OH^{\prime}}.\overrightarrow {OE}=0

ou selon si O\neq F on doit verifier \overrightarrow {OH}.\overrightarrow {OF}=0

et on doit aussi vérifier \overrightarrow {OH^{\prime}}.\overrightarrow {OF}=0

une fois trouvé

l'angle que tu recherche dans l'intervalle [0°;180°] est tout simplement l'angle entre les deux vecteurs

\overrightarrow {OH} et \overrightarrow {OH^{\prime}}

cet angle est donné par

\alpha = arccos  \begin {pmatrix} \frac {\overrightarrow {OH}.\overrightarrow {OH^{\prime}}}{\sqrt {\overrightarrow {OH}^2.\overrightarrow {OH^{\prime}}^2}}  \end {pmatrix}

donc si tu n'est pas trop pressé je reviens demain soir

Posté par Profil amethystere : Projection et rotation dans R3 12-03-14 à 17:55

juste avant de partir(ceci dit si je dort pas je reviens cette nuit)

ATTENTION: le point O on ne connait pas ses coordonnées on doit les rechercher

je reviens donc pour les donner en ecriture maths

puis enfin verifier tes points(mais c'est pas important car on ne doit jamais faire confiance à un logiciel)

(voir un marché  a Sarayevo pendant la guerre)

@+Camarade

Posté par
leon1789
re : Projection et rotation dans R3 12-03-14 à 18:10

Citation :
2) Il y a exactement 4 points dans l'étude E,F,H et H'. Le point E a pour coordonnées (-63,347;-715,31;0) et le point F (7,092;-583,062;661,659),
le point H (63,569;-690,462;84,85) et le point H'(59.126;-730.271;93.28).
D'après un logiciel de CAO, cet angle vaut 20.09°...


En effet, c'est bien 20.09°

D'abord, votre angle est défini au signe près, car aucun sens de l'axe de rotation (EF) n'a été précisé.

Par ailleurs, je relis la page wiki
On parle d'un vecteur unitaire u proportionnel au vecteur EF, soit
u = [- 0.1038291263,- 0.1949373827,- 0.9753045316]
Ensuite, on voit la formule
R = I + sin(t)Q + (1-cos(t))Q^2
où
Q = \left[ \begin {array}{ccc} 0& 0.9753045316&- 0.1949373827\\\noalign{\medskip}- 0.9753045316&0& 0.1038291263\\\noalign{\medskip}
 \\  0.1949373827&- 0.1038291263&0\end {array} \right] 
 \\
R désigne la matrice de la rotation et I l'identité, et t l'angle de la rotation
Ainsi, en multipliant par H, on obtient
H' = H + sin(t)Q.H + (1-cos(t))Q^2.H
ce qui donne ces trois équations
7.69393008\,\sin \left( t \right) - 112.0095191+ 116.4525191\,\cos \left( t \right) = 0
- 114.9718485\,\sin \left( t \right) + 34.60600402+ 5.20299598\,\cos \left( t \right) =0
22.16072673\,\sin \left( t \right) + 5.00726118- 13.43726118\,\cos \left( t \right) = 0
Chacune de ces trois équations possède comme solution l'angle t recherché.
On trouve trois fois t = 20.09°

Posté par
leon1789
re : Projection et rotation dans R3 12-03-14 à 18:14

Ah, j'ai oublié de précisé dès le début :
j'ai fait une translation sur tous les points pour faire revenir E en (0,0,0).
En effet, votre axe de rotation (EF) initial ne passe pas par l'origine et cela est très gênant pour faire de l'algèbre linéaire.
Donc tous les points que j'ai utilisé sont
E = [0,0,0]
F (= E-F) = [70.439, 132.248, 661.659]
H (= E-H) = [126.916, 24.848, 84.85]
H' (=E -H') = [122.473, -14.961, 93.28]

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 18:57

Merci à vous tous !
J'essaie d'assimiler toutes ces infos.

J'ai 2 questions pour vous Leon1789:
1) d'ou connaissez vous la formule R = I +sin(t)Q+(1-cos(t))Q^2H ?

2)Comment calculez vous les nouvelles coordonnées des points après translation vers l'origine (0,0,0) ?
Merci de votre aide

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 19:03

enfin j'ai compris mais je n'avais pas penser à me rapporter à l'origine pour simplifier les calculs.
Mais l'expression de Q m'échappe un peu , si vous pouviez juste m'en dire plus pour info merci !

Posté par
leon1789
re : Projection et rotation dans R3 12-03-14 à 19:08

La formule est sur wikipédia (lien signalé) : sur wikipédia, c'est moi qui l'ai écrite il y a quelques mois de cela, quand j'ai participé à une autre discussion sur les rotations dans l'espace.

Pour réaliser la translation qui envoie E sur (0,0,0,), il suffit de soustraire les coordonnées de E à celle de F, H et H'.
F-E = [70.439, 132.248, 661.659] ce qui donne le translaté de F
H-E = [126.916, 24.848, 84.85] ce qui donne le translaté de H
H'-E = [122.473, -14.961, 93.28] ce qui donne le translaté de H'

Posté par
leon1789
re : Projection et rotation dans R3 12-03-14 à 19:11

La matrice Q est la représentation de l'application linéaire \overrightarrow v\mapsto\overrightarrow u\wedge\overrightarrow v
où u est un vecteur unitaire dirigeant l'axe de rotation.
Voir le lien sur wiki

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 19:16

ok, super je ne connaissais vraiment pas du tout ! merci du coup de pouce.
J'avais vu le lien sur wiki mais je m'y perdais tellement je ne suis pas familier à la géométrie dans l'espace.
Je suis en train de voir si les équations en fonction de t sont faciles à résoudre à la main sans passer par un logiciel de calcul formel.
En tout cas merci du grand coup de pouce !
Je reviendrai poster si je bloque

Posté par
leon1789
re : Projection et rotation dans R3 12-03-14 à 19:17

La discussion à laquelle je faisais référence est ici http://www.maths-forum.com/matrices-rotations-intermediaires-148165_3.php
message du  07/12/2013 à 19h39

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 20:01

merci pour le lien. J'ai fait très peu d'algèbre et il est vrai que certaines des notions me dépassent.

Une dernière question plus calculatoire, comment isole t-on t dans les 3 équations obtenues ? en fait, il y a du sin(t), cos(t) et cos(t)^2
Quelle méthode utiliser pour résoudre ce genre d'équation trigo ?
Merci beaucoup

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 20:03

Erreur de frappe, il n'y pas de cos(t)².
Je vais substituer une équation a une autre pour simplifier et résoudre. Je reviens si je ne trouve pas.

Posté par
yaduor
re : Projection et rotation dans R3 12-03-14 à 21:25

Je me suis fait un petit tableur pour ne pas m'y perdre.
La résolution marche sans problème, merci encore de votre aide ! Je n'aurai jamais trouvé sans vous !
bonne soirée !



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 1769 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 !