CircleGL.cpp Code
#include <vgl.h>
#include <math.h>
void display() {
glClear(GL_COLOR_BUFFER_BIT); // 디스플레이 초기화
int div = rand() % 300 + 100;
float ang = 360.0f / div * 3.141592 / 180.0f;
glBegin(GL_TRIANGLES); // Vertex 생성 시작
// 원 Vertex 생성
for (int i = 0; i < div; i++) {
glColor3f(float(i) / div, 0, 1 - float(i) / div);
glVertex2f(0, 0);
glVertex2f(cos(ang * i), sin(ang * i));
glVertex2f(cos(ang * (i+1)), sin(ang * (i+1)));
}
glEnd(); // Vertex 생성 종료
glFlush(); // 화면에 Vertex를 그림 (Vertex 정보를 GPU에 보내 그림)
}
int main(int argc, char** argv)
{
glutInit(&argc, argv); // GLUT 초기화
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); // 디스플레이 모드 설정
glutInitWindowSize(512, 512); // 윈도우 크기 설정
glutCreateWindow("Hello GL"); // 윈도우 생성, 윈도우 이름 설정
glutDisplayFunc(display); // 디스플레이 콜백 등록
glutMainLoop(); // 이벤트 루프 시작
return 0;
}
Result