Bonjour je souhaiterais faire tourner un rectangle 2d à l'aide d'une matrice mais il se déforme (comme vous pouvez le voir ici). On dirait que la largeur se transforme en la hauteur et la hauteur en large plus on va vers les 90°, et les angles ne sont pas droit à 45°.
J'utilise la matrice ci-dessous. Il y a également dans la matrice dstRct qui représente la largeur/hauteur et scale pour gérer la taille.
Si Quelqu'un pouvait m'aider j'en serais reconnaissant. Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 (*projMat)[0] = (dstRct.w * scale / WINW)*GetCos(angle); (*projMat)[1] = (dstRct.w * scale / WINW) *GetSin(angle)*-1; (*projMat)[2] = 0; (*projMat)[3] = (dstRct.h * scale / WINH) *GetSin(angle); (*projMat)[4] = (dstRct.h * scale / WINH)*GetCos(angle); (*projMat)[5] = 0; (*projMat)[6] = 0; (*projMat)[7] = 0; (*projMat)[8] = 0;
edit: je précise que cela fonctionne correctement pour les carrés.
Partager