#include<GL/glut.h>
#include<math.h>
float Pi=3.14159265f;
void myDisplay(void)
{
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0f,1.0f,1.0f);
glRectf(-1.0f,-1.0f,1.0f,1.0f);
glBegin(GL_TRIANGLES);
glColor3f(1.0f,0.0f,0.0f);glVertex2f(0.0f,-1.0f);
glColor3f(0.0f,1.0f,0.0f);glVertex2f(-1.0f,1.0f);
glColor3f(0.0f,0.0f,1.0f);glVertex2f(1.0f,1.0f);
glEnd();
glPointSize(10);
glBegin(GL_POINTS);
glColor3f(1.0f,0.0f,0.0f);glVertex2f(-0.4f,-0.4f);
glColor3f(0.0f,1.0f,0.0f);glVertex2f(-0.0f,0.0f);
glColor3f(0.0f,0.0f,1.0f);glVertex2f(0.4f,0.4f);
glEnd();
void Circle();
Circle();
void Star();
Star();
glFlush();
}
void Circle()
{
int i,n;
n=100;
double R=0.6f;
glBegin(GL_POLYGON);
for(i=0;i<n;++i)
glColor3f(0.0f,0.0f,1.0f),glVertex2f(R*cos(2*Pi/n*i),R*sin(2*Pi/n*i));
glEnd();
}
void Star()
{
int i;
double R=0.8f;
glBegin(GL_LINE_LOOP);//表示画线的首尾相连接
for(i=0;i<5;++i)
glColor3f(1.0f,0.0f,1.0f),glVertex2f(R*cos(Pi/2+(2*2*Pi/5)*i),R*sin(Pi/2+(2*2*Pi/5)*i));
//2点之间的角度为4*Pi/5
//循环5次
glEnd();
}
int main(int argc,char *argv[])
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB|GLUT_SINGLE);
glutInitWindowPosition(100,100);
glutInitWindowSize(400,400);
glutCreateWindow("Hellow World");
glutDisplayFunc(&myDisplay);
//glutReshapeFunc(Reshape);
glutMainLoop();//
return 0;
}
结果如下: