2012-01-09 76 views
1

这是我在屏幕上显示圆的代码部分,但不幸的圆不会出现在屏幕上。如何在opengles中画圆圈

glClearColor(0, 0, 0, 0); 
glClear(GL_COLOR_BUFFER_BIT); 
glPushMatrix(); 
glLoadIdentity(); 
glColor3f(0.0f,1.0f,0.0f); 
glBegin(GL_LINE_LOOP); 

const float DEG2RAD = 3.14159/180; 

for (int i=0; i < 360; i++) 
{ 
    float degInRad = i*DEG2RAD; 
    glVertex2f(cos(degInRad)*8,sin(degInRad)*8); 
} 

glEnd(); 
glFlush(); 

我不理解代码似乎看起来确定,但圆圈不是在屏幕上。

+0

嗨Ajay,试试这个链接 - 可能有助于回答你的问题:) http://iphonedevelopment.blogspot.com/2008/10/circles-and-ellipses-in-opengl-es.html – 2012-01-09 09:39:36

+1

附注:每个电话到'glPushMatrix()'应该通过调用'glPopMatrix()'来匹配。 – 2012-01-09 09:43:02

回答

1

你的圈子太大了。默认视口在[(-1 -1),(1 1)]范围内。

顺便说一句,你不需要360段。根据你想要的顺利程度,大约30个通常是足够的。

+0

我是新来的ES我编辑段达30,但仍然不可见。 – 2012-01-09 09:50:27

+0

你是否缩小了圈子? – 2012-01-09 09:51:30

+0

你说要修改哪里?通过循环? – 2012-01-09 09:53:33