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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
void GL_MAILLAGE::Dessine(wxPaintEvent &event) {
wxPaintDC dc(this);
SetCurrent();
if (!m_init) InitGL();
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
GLint viewport[4];
glGetIntegerv(GL_VIEWPORT, viewport);
const float aspectRatio = (float)(viewport[2]) / (float)(viewport[3]);
gluPerspective(45, aspectRatio, 0.1, 100);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glEnable (GL_DEPTH_TEST);
gluLookAt(5,5,10,0,0,0,0,1,0);
glBegin (GL_QUADS);
glColor3d(1,0,0);
glVertex3i (-1,-1,1); // premiere face
glVertex3i (-1,1,1);
glVertex3i (1,1,1);
glVertex3i (1,-1,1);
glColor3d(0,0,1);
glVertex3i (-1,-1,-1); // deuxieme face
glVertex3i (-1,1,-1);
glVertex3i (1,1,-1);
glVertex3i (1,-1,-1);
glColor3d(0,1,0);
glVertex3i (-1,1,-1); // troisieme face
glVertex3i (1,1,-1);
glVertex3i (1,1,1);
glVertex3i (-1,1,1);
glColor3d(1,1,0);
glVertex3i (-1,-1,-1); // quatrieme face
glVertex3i (1,-1,-1);
glVertex3i (1,-1,1);
glVertex3i (-1,-1,1);
glColor3d(0,1,1);
glVertex3i (-1,-1,-1); // cinquieme face
glVertex3i (-1,-1,1);
glVertex3i (-1,1,1);
glVertex3i (-1,1,-1);
glColor3d(1,0,1); // sixieme face
glVertex3i (1,-1,-1);
glVertex3i (1,-1,1);
glVertex3i (1,1,1);
glVertex3i (1,1,-1);
glEnd();
glFlush();
SwapBuffers();
}
void GL_MAILLAGE::InitGL() {
glViewport(0, 0, (GLint)700, (GLint)477);
glClearColor(0.0f,0.0f,0.0f,0.0f);
m_init = true;
} |
Partager