Question

J'écris une application iPhone où j'ai besoin de faire pivoter un cube. La rotation sur les axes vertical et horizontal fonctionne bien. De plus, faire pivoter un cube de bas en haut à gauche et de haut en bas à droite fonctionne correctement (j'utilise glrotateef (angle, 1.0, 1.0, 0.0) pour faire pivoter de haut en bas à droite).

Le problème ici est que je souhaite effectuer une rotation de bas en haut à droite et de haut en bas à gauche. Et je ne pouvais pas obtenir la solution. J'ai essayé différentes approches comme

glRotateef (angle, -1.0, -1.0, 0.0) glRotateef (angle, -1.0, -1.0, 0.0) etc.. Tous ne fonctionnent pas. Veuillez me guider à ce sujet (quelle est la rotation exacte que je dois utiliser). Merci d'avance.

Était-ce utile?

La solution

Avez-vous essayé glRotatef (angle, -1,0, 1,0, 0,0) ou glRotatef (angle, 1,0, -1,0, 0,0)?

Autres conseils

la rotation autour de chaque axe peut être effectuée comme suit:

 glRotatef(angle, 1.0, 0.0, 0.0)   //rotate around x axis
 glRotatef(angle, 0.0, 1.0, 0.0)   //rotate around y axis
 glRotatef(angle, 0.0, 0.0, 1.0)   //rotate around z axis

Faites attention à faire plus d’une rotation en même temps. (donc rien d'autre que les 3 ci-dessus, ou les combiner). L'ordre des rotations est vraiment important. Si elles ne le font pas correctement, elles peuvent produire 'verrouillage de la nacelle'

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top