Bonjour à tous
J'ai besoin, pour un programme en opengl, de faire redresser un vecteur OB (cf schéma) vers l'axe des Z, c'est-à-dire en OC, tel que alpha = Beta/2, sachant que je connais theta. Ceci se passe en trois dimensions, donc Ur est bien le vecteur projeté de OB sur le plan Oxy.
J'ai pensé utiliser une matrice A traduisant la "rotation" telle que
En effet si vous prenez la base (Ox, Oy, Oz), Ox devient , Oy devient et Oz ne varie pas, il est déjà redressé le plus possible.
Néanmoins cette matrice est fausse, car si on essaie de calculer l'image du vecteur (1,1,0), on a (1,1,2) ce qui est incorrect, car on obtien pas un angle de 45/2 (degrés).
Quelqu'un voit-il où est l'erreur de raisonnement ?
Merci
-----