OpenGLProgrammation 3D avecOpenGLIUT informatique Johann Vandrommejohann.vandromme@lifl.frannée 2005-2006Cours 2• 1 – Les transformations• 2 – Le système de matrices• 3 – Les types de projection1 – Les transformations• Nous avons déjà abordé les transformations la fois dernière lorsdu TP (pour faire tourner le cube).• Il existe en 3D, trois fonctions de transformations :– La translation– La mise à l’échelle– La rotation1123Les transformations – la translation• Fonction :void glTranslatef (float transX, float transY, float transZ);• Déplace une forme de transX sur l’axe des x, de transY sur l’axedes y et de transZ sur l’axe des z.On ajoute à toutes les coordonnées x,9 y et z des points les valeurs de transX,transY et transZ7 xA + transXA’ = yA + transY3zA + transZ2 6 9 13Quels sont les paramètres du glTranslate dans cet exemple ?Quels sont les paramètres du glTranslate dans cet exemple ?Les transformations – la mise à l’échelle• Fonction :void glScalef (float factX, float factY, float factZ);• Agrandit la forme par les facteurs factX pour l’axe x, factY pourl’axe Y et factZ pour l’axe Z.2On multiplie chaque coordonnée x, y et1 z de points par les valeurs factX, factYet factZ.xA * factX11A’ = yA * factYzA * factZQuels sont les paramètres du glScale dans cet exemple ?Quels sont les paramètres du glScale dans cet exemple ?Les transformations – la rotation• Fonction :void glRotatef (float angle, float axeX, float axeY, ...
Voir