1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| glBegin(GL_POLYGON);/*En mode GL_POLYGON, chaque sommet est relié à son prédecesseur,
et pour fermer le polygone, le dernier point est relié au premier*/
//Spécification de la première face du cube
glNormal3f(0.0,0.0,1.0);//Coordonnées du vecteur normal de la face
glVertex3f(-0.5*a, 0.5*a, 0.5*a);//Coordonnées d'un sommet de la face, avec un coefficient d'agrandissement a
glVertex3f(-0.5*a,-0.5*a, 0.5*a);
glVertex3f( 0.5*a,-0.5*a, 0.5*a);
glVertex3f( 0.5*a, 0.5*a, 0.5*a);
glEnd();//Fin de la spécification de la première face
//Spécification de la deuxième face
glBegin(GL_POLYGON);
glNormal3f(1.0,0.0,0.0);
glVertex3f( 0.5*a, 0.5*a, 0.5*a);
glVertex3f( 0.5*a,-0.5*a, 0.5*a);
glVertex3f( 0.5*a,-0.5*a,-0.5*a);
glVertex3f( 0.5*a, 0.5*a,-0.5*a);
glEnd();
//Spécification de la troisième face
glBegin(GL_POLYGON);
glNormal3f(0.0,0.0,-1.0);
glVertex3f( 0.5*a, 0.5*a,-0.5*a);
glVertex3f( 0.5*a,-0.5*a,-0.5*a);
glVertex3f(-0.5*a,-0.5*a,-0.5*a);
glVertex3f(-0.5*a, 0.5*a,-0.5*a);
glEnd();
//Spécification de la quatrième face
glBegin(GL_POLYGON);
glNormal3f(-1.0,0.0,0.0);
glVertex3f(-0.5*a, 0.5*a,-0.5*a);
glVertex3f(-0.5*a,-0.5*a,-0.5*a);
glVertex3f(-0.5*a,-0.5*a, 0.5*a);
glVertex3f(-0.5*a, 0.5*a, 0.5*a);
glEnd();
//Spécification de la cinquième face
glBegin(GL_POLYGON);
glNormal3f(0.0,1.0,0.0);
glVertex3f(-0.5*a, 0.5*a,-0.5*a);
glVertex3f(-0.5*a, 0.5*a, 0.5*a);
glVertex3f( 0.5*a, 0.5*a, 0.5*a);
glVertex3f( 0.5*a, 0.5*a,-0.5*a);
glEnd();
//Spécification de la sixième face
glBegin(GL_POLYGON);
glNormal3f(0.0,-1.0,0.0);
glVertex3f(-0.5*a,-0.5*a,-0.5*a);
glVertex3f(-0.5*a,-0.5*a, 0.5*a);
glVertex3f( 0.5*a,-0.5*a, 0.5*a);
glVertex3f( 0.5*a,-0.5*a,-0.5*a);
glEnd();
} |
Partager