Salut,
j'essaye de faire tourner un objet suivant les axes y (vert) et z (bleu) mais ça ne fonctionne pas comme prévu :
la première rotation suivant y est bonne :
mais pas suivant z :
l'objet tourne sur lui-même comme si l'axe z avait tourner lui aussi lors de la première rotation.
J'aimerais savoir comment m'y prendre.
Mon code :
Merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void GLWidget::cylindre(QVector3D & trans, QVector3D & rot, [...]) { glPushMatrix(); glTranslated(trans.x(), trans.y(), trans.z()); // Translation glRotated(rot.x(), 1.0, 0.0, 0.0); // Rotation suivant l'axe x glRotated(rot.y(), 0.0, 1.0, 0.0); // Rotation suivant l'axe y glRotated(rot.z(), 0.0, 0.0, 1.0); // Rotation suivant l'axe z // On dessine le cylindre. [...] glPopMatrix(); }
Partager