| 12
 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
 72
 73
 74
 75
 76
 77
 
 | private:
		void Redessine ( void )
		{
			// sélectionne la surface de rendu
			wglMakeCurrent(hDC, hglRC);
 
			// Couleur pour l'arrière-plan
			glClearColor( 0.0, 0.0, 0.0, 1.0f);	//Noir
 
			// Efface l'écran et le Z-buffer
			glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
			glMatrixMode(GL_MODELVIEW);
			glLoadIdentity();
 
			// début du dessin
			glColor3d(0.0, 1.0, 0.0);	//Vert
 
			glBegin(GL_LINES);	
				glColor3d(0.0, 0.5, 0.0);	//Vert sombre
				for (int i=1; i<10; i++) {
					glVertex2d(60.0*i, -100.0);	glVertex2d(60.0 * i, 100.0);
					glVertex2d(0,-100.0 + 20*i);glVertex2d(600,-100.0 + 20*i);
				}
				glColor3d(0.0, 1.0, 0.0);	//Vert clair
				glVertex2d(0.0, -100.0);	glVertex2d(0.0,100.0);
				glVertex2d(0.0, -100.0);	glVertex2d(600, -100.0);
				glVertex2d(600.0, -100.0);	glVertex2d(600, 100.0);
				glVertex2d(0.0, 100.0);		glVertex2d(600, 100.0);
				glVertex2d(300.0, -100.0);	glVertex2d(300, 100.0);
				glVertex2d(0.0, 0.0);		glVertex2d(600, 0.0);
			glEnd();
 
			if (voie1Active) {
				glColor3d(1.0, 0.0, 1.0);	// violet
				glBegin(GL_LINE_STRIP);
				for (int i=0; i<=600; i++) {
					if (voie1[i]) {	//Les points à 0 ne sont pas pris en compte.
						glVertex2d((float)i, voie1[i]);
					} 
				}
				glEnd();
			}
 
			if (voie2Active) {
				glColor3d(0.0, 0.0, 1.0);	//bleu
				glBegin(GL_LINE_STRIP);
				for (int i=0; i<=600; i++) {
					if (voie2[i]) { //Les points à 0 ne sont pas pris en compte.
						glVertex2d((float)i, voie2[i]);
					} 
				}
				glEnd();
			}
 
			if (xyActif) {
			glColor3d(1.0, 0.5, 0.0);	//orange
			glBegin(GL_LINE_STRIP);
			for (int j=0; j<=300; j++) {
					if (voie1[j] || voie2[j]) { //Les points à 0 ne sont pas pris en compte.
						glVertex2d(voie1[j]+300, voie2[j]);
			} 
				}
				glEnd();
			}
 
			// fin de dessin
 
			// échanges des tampons chromatiques
			// et recopie dans le contexte de périphérique
			SwapBuffers(hDC);
		}
		private : 
			void RappelTimer (Object^ sender, ElapsedEventArgs^e) {
			Redessine();
		}
	};
} | 
Partager