2012-01-09 2 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

Hi Ajay, попробуйте эту ссылку - может помочь ответить на ваш вопрос :) http://iphonedevelopment.blogspot.com/2008/10/circles-and-ellipses-in-opengl-es.html –

+1

Сторона примечания: каждый звонок to 'glPushMatrix()' должен быть согласован вызовом 'glPopMatrix()'. –

ответ

1

Ваш круг слишком большой. Окно просмотра по умолчанию находится в диапазоне [(-1 -1), (1 1)].

Кстати, вам не нужны 360 сегментов. Обычно около 30, как правило, адекватны, в зависимости от того, насколько вы этого хотите.

+0

Я новичок в ES Я отредактировал сегмент до 30, но все еще не видим. –

+0

Вы сжимали круг? –

+0

Где вы сказали изменить? в петле? –

Смежные вопросы