计算机图形学实验-渐变六角星

#include <GL/glut.h>
void Display(void)
{
	glClearColor(0.0, 0.0, 0.0, 0.0);
	glClear(GL_COLOR_BUFFER_BIT);
	
	//六角星
	glBegin(GL_POLYGON);
	glColor3f(1,1,1);
	glVertex2f(0.0f,0.0f);
		 glColor3f(1,1,0);
		//先画凹点
		glVertex2f(-0.22f, 0.0f);
		
		
		
		
		glColor3f(1,0,0);
		glVertex2f(0.0f, 0.5f);
		glColor3f(1,0,0);
		glVertex2f(0.1f, 0.3f);

		glColor3f(1,0,1);
		glVertex2f(0.4f, 0.3f);
		glColor3f(1,0,1);
		glVertex2f(0.22f, 0.0f);

		glColor3f(0,0,1);
		glVertex2f(0.4f, -0.3f);
		glColor3f(0,0,1);
		glVertex2f(0.1f, -0.3f);

		glColor3f(0,1,1);
		glVertex2f(0.0f, -0.5f);
		glColor3f(0,1,1);
		glVertex2f(-0.1f, -0.3f);

		glColor3f(0,1,0);
		glVertex2f(-0.4f, -0.3f);
		glColor3f(0,1,0);
		glVertex2f(-0.22f, 0.0f);

		glColor3f(1,1,0);
		glVertex2f(-0.4f, 0.3f);
		glColor3f(1,1,0);
		glVertex2f(-0.1f, 0.3f);

		glColor3f(1,0,0);
		glVertex2f(0.0f, 0.5f);

	glEnd();

	glutSwapBuffers();
}

int main(int argc, char *argv[])
{
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
	glutInitWindowPosition(100, 100);

	glutInitWindowSize(400, 400);
	glutCreateWindow("Simple GLUT App");
	glutDisplayFunc(Display);
	glutMainLoop();
	return 0;

}
posted @ 2022-03-25 11:08  云鲸啊  阅读(114)  评论(0)    收藏  举报