Bonjour, j'espère que vous allez bien.

Alors je souhaite effectuer la rotation de mon objet en utilisant le quaternion. Au début, j'ai défini un quaternion, je l'ai normalisé et ensuite j'ai calculé la matrice de rotation. Ensuite j'ai utilisé glMulMatrixf(matrice de rotation). Mon mainwindow comprend 4 widgets (spin boxs), w,x,y,z. Lorsque je les varie, l'objet effectue des rotations.
Maintenant, je voudrai utiliser directement les fonctions de la classe quaternion de Qt alors j'ai fait comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 QQuaternion quaternion;
 quaternion.setScalar(w);
 quaternion.setX(x);
 quaternion.setY(y);
 quaternion.setZ(z);
 QMatrix4x4 rot;
 rot.rotate(quaternion.normalized());
d'après la documentation void QMatrix4x4::rotate(const QQuaternion &quaternion) multiplie une matrice par la matrice de rotation. J'ai cru qu'elle remplace le glMultmatrixf de OpenGL.
Lorsque j'ai compilé, l'objet reste immobile. je me bloque donc et je n'ai aucune idée comment procéder.
Quelqu'un pourrait m'aider s'il vous plaît ?