实验一 OpenGL初识

主题:实验1——OpenGL初识(计算机图形学(OpenGL版))

代码1:

 1 #include <GL/glut.h>
 2 
 3 void myDisplay(void){
 4 
 5 glClearColor(0.0,0.0,0.0,0.0);
 6 glClear(GL_COLOR_BUFFER_BIT);
 7 
 8 glColor3f(1.0f,1.0f,1.0f);
 9 glRectf(-0.5f,-0.5f,0.5f,0.5f);
10 
11 glBegin (GL_TRIANGLES);
12 glColor3f(1.0f,0.0f,0.0f);glVertex2f(0.0f,1.0f);
13 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.8f,-0.5f);
14 glColor3f(0.0f,0.0f,1.0f);glVertex2f(-0.8f,-0.5f);
15 glEnd();
16 
17 glPointSize(3);
18 
19 glBegin(GL_POINTS);
20 
21 glColor3f(1.0f,0.0f,0.0f);glVertex2f(-0.4f,-0.4f);
22 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.0f,0.0f);
23 glColor3f(0.0f,0.0f,1.0f);glVertex2f(0.4f,0.4f);
24 
25 glEnd();
26 
27 
28 glFlush();
29 
30 
31 }
32 
33 int main(int argc,char *argv[]){
34     glutInit(&argc,argv);
35     glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);
36     glutInitWindowPosition(100,100);
37     glutInitWindowSize(400,400);
38     glutCreateWindow("Hello World!");
39     glutDisplayFunc(&myDisplay);
40     glutMainLoop();
41     return 0;
42 
43 }

运行结果:

 

代码2:

 1 #include <GL/glut.h>
 2 
 3 void myDisplay(void){
 4 
 5 glClearColor(0.0,0.0,0.0,0.0);
 6 glClear(GL_COLOR_BUFFER_BIT);
 7 
 8 glColor3f(1.0f,1.0f,1.0f);
 9 glRectf(-0.5f,-0.5f,0.5f,0.5f);
10 
11 glBegin (GL_TRIANGLES);
12 glColor3f(1.0f,0.0f,0.0f);glVertex2f(0.0f,1.0f);
13 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.8f,-0.5f);
14 glColor3f(0.0f,0.0f,1.0f);glVertex2f(-0.8f,-0.5f);
15 glEnd();
16 
17 glPointSize(3);
18 
19 glBegin(GL_POINTS);
20 
21 glColor3f(1.0f,0.0f,0.0f);glVertex2f(-0.4f,-0.4f);
22 glColor3f(0.0f,1.0f,0.0f);glVertex2f(0.0f,0.0f);
23 glColor3f(0.0f,0.0f,1.0f);glVertex2f(0.4f,0.4f);
24 
25 glEnd();
26 
27 
28 glBegin(GL_LINE_LOOP);
29 
30 glColor3f(1.0f,1.0f,1.0f);glVertex2f(0.4f,0.25f);
31 glColor3f(1.0f,1.0f,1.0f);glVertex2f(0.0f,-0.5f);
32 glColor3f(1.0f,1.0f,1.0f);glVertex2f(-0.4f,0.25f);
33 
34 glEnd();
35 
36 glFlush();
37 
38 
39 }
40 
41 int main(int argc,char *argv[]){
42     glutInit(&argc,argv);
43     glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);
44     glutInitWindowPosition(100,100);
45     glutInitWindowSize(400,400);
46     glutCreateWindow("Hello World!");
47     glutDisplayFunc(&myDisplay);
48     glutMainLoop();
49     return 0;
50 
51 }

运行结果:

posted @ 2016-04-08 09:27  疯狂麦洛  阅读(701)  评论(0编辑  收藏  举报