GLUT에서는 몇가지의 물체를 간단히 모델링 할수 있게 함수를 지원 해주고 있다.
각 물체마다 2개의 함수를 지원하고 있으며, 함수명 중간에 Solid가 들어가면 물체의 면을 입히고 Wire이 들어가면 선만을 가지고 그린다.


정육면체
void glutSoildCube(GLdouble size)
void glutWireCube(GLdouble size)
size는 한 변의 길이 이다.

원(구)
void glutSolidSphere( GLdouble radius, GLint slices, GLint stacks);
void glutWireSphere( GLdouble radius, GLint slices, GLint stacks);
radius = 반지름, slices = 세로선의 수, stacks= 가로선의 수

원환체(도넛)
void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, GLint rings);
void glutWireTorus(GLdouble innerRadius, GLdouble outerRadius, GLint nsides, GLint rings);
원환체(도넛)는 똑같를 크기를 가진 여러개의 원과 가로 선을 이어서 원을 만든다. innerRadius는 원환체를 이루는 원의 반지름 이며, outerRaidus는 원환체 전체의 반지름 이다. nsides는 원환체를 가로단면의 수 이며, rings는 원환체에 들어간 원의 수(윤곽을 이루는 선분의 수) 이다. 

원뿔
void glutSolidCone( GLdouble base, GLdouble height, GLint slices, GLint stacks);
void glutWireCone( GLdouble base, GLdouble height, GLint slices, GLint stacks);
base = 밑면의 반지름, height = 원뿔의 높이, slices = 세로선의 수, stacks = 가로선의 수(단면의 수)

정 4면체
void glutSolidTetrahedron(void);
void glutWireTetrahedron();
모델 좌표계의 원점을 중심으로 반지름 1.0인 4면체를 그린다.

정 20면체
void glutSolidIcosahedron(void);
void glutWireIcosahedron(void);
모델 좌표계의 원점을 중심으로 반지름 1.0인 20면체를 그린다.

주전자
void glutSolidTeapot(GLdouble size);
void glutWireTeapot(GLdouble size);
size는 상대적 크기( 개인적인 생각으론 몸통중심원의 반지름 같다)


'라이브러리 > OpenGL' 카테고리의 다른 글

OpenGL의 모델변환 및 행렬스택  (0) 2009.03.22
기하 변환  (0) 2009.03.22
3차원 물체의 표현  (0) 2009.03.22
디스플레이 리스트  (0) 2009.03.22
정점배열  (0) 2009.03.22
OpenGL의 좌표계, 뷰포트  (0) 2009.03.21
파이프라인과 상태변수  (0) 2009.03.21
OpenGL의 설계원리  (0) 2009.03.21
채도, 명도  (0) 2009.03.21
GLUT의 콜백함수  (0) 2009.03.09
Posted by crownog
,