Bonjour, j'ai un problème dans le traitement de mes rotations:
Je paramètre une rotation grâce à trois angles a1, a2, et a3 selon les axes x, y, et z lié à mon objet, en appliquant d'abord la rotation selon x, puis y, puis z.
Ce sont des rotation autour d'axe liés à l'objet, donc quand j'applique ma première rotation selon l'axe x, cela déplace les axes y et z. Donc quand j'applique la deuxième rotation, c'est autour du nouvelle axe y que je procede (puis de même pour la dernière).
Cela donne la belle formule suivante :
avec c1 = cos(a1) et s1 = sin(a1), de meme pour a2 et a3.
On a alors la matrice de rotation suivante:
c2c3 -c2s3 s2
s1s2c3+c1s3 -s1s2s3+c1c3 -s1c2
-c1s2c3+s1s3 c1s2s3+s1c3 c1c2
cf
Ma question est la suivante : Si j'ai la matrice de rotation comment puis-je calculer mes trois angles a1, a2, et a3 sans ambiguïtés sur le signe.
A priori, j'ai 9 équations pour 6 variables.
Evidemment le problème est triviale pour des angles compris entre -pi/2 et pi/2, mais je cherche une solution en -pi et pi.
Bref, si quelqu'un qui à l'habitude de ces problèmes de rotation et de calcul d'angle, je suis preneur pour un peu d'aide...
Partager