首页 > 其他 > 详细

OpenGL绘制五角星

时间:2015-09-24 16:18:52      阅读:607      评论:0      收藏:0      [点我收藏+]

设五角星5个顶点分别为ABCDE,顶点到坐标轴原点距离为r,ABCDE各点用r表示,分别为

A(0,r);

B(-r*sin(2/5*Pi),r*cos(2/5*Pi));

C(-r*sin(Pi/5),-r*cos(Pi/5));

 

DE和CB关于Y轴对称。

技术分享

 

 

确定5个顶点的坐标后,使用GL_LINE_LOOP函数,将5个点连接起来,顺序依次为ACEBD。

主要代码为:

 1 void Star(void)
 2 {
 3 
 4     GLfloat r = 0.8f;
 5     GLfloat PointA[2] = { 0, r };
 6     GLfloat PointB[2] = { -r*sin(0.4*Pi), r*cos(0.4*Pi) };
 7     GLfloat PointC[2] = { -r*sin(Pi / 5), -r*cos(Pi / 5) };
 8     GLfloat PointD[2] = { r*sin(Pi / 5), -r*cos(Pi / 5) };
 9     GLfloat PointE[2] = { r*sin(0.4*Pi), r*cos(0.4*Pi) };
10 
11     glClear(GL_COLOR_BUFFER_BIT);
12 
13     glBegin(GL_LINE_LOOP);
14     glVertex2fv(PointA);
15     glVertex2fv(PointC);
16     glVertex2fv(PointE);
17     glVertex2fv(PointB);
18     glVertex2fv(PointD);
19 
20     glEnd();
21 
22     glFinish();
23 }

绘制成果如下:

技术分享

 

OpenGL绘制五角星

原文:http://www.cnblogs.com/SeekHit/p/4835462.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!