검색어 입력폼

[그래픽스] OPENGL 도형그리기

저작시기 2010.01 |등록일 2010.01.06 한글파일한글 (hwp) | 10페이지 | 가격 500원

소개글

OPENGL을 이용해서 간단한 도형을 나타내었다.

목차

<<원그리기>>

<<사각형 그리기>>

<<90페이지에 있는 typle별로 하나씩 그리기>>

본문내용

<<사각형 그리기>>
#include <OpenGL.h>

void RenderScene(void) // 장면 랜더링 시작
{
glClear(GL_COLOR_BUFFER_BIT); // 선택된 색상으로 화면을 지움
glColor3f(1.0f, 0.0f, 0.0f); // 드로잉 색상을 적색으로 설정, 알파값을 필요없다.
glRectf(-25.0f, 25.0f, 25.0f, -25.0f);// 현재 드로잉 색상으로 사각형을 그림
/* (x1, y1, x2, y2) 즉 사각형의 좌측상단 xy좌표 두개, 우측하단 xy좌표 두개, 이 함수는 z=0인 평면에 사각형을 그린다.*/
glFlush(); // 드로잉 명령 실행
}

void SetupRC(void) // 랜더링 상태 설정
{
glClearColor(0.0f,0.0f,1.0f,1.0f); // 지우는 색상을 청색으로 설정
}

void ChangeSize(GLsizei w, GLsize h) // 창의 크기가 변할 때 GLUT에 의해 호출되는 부분
/* 창의 크기가 변하면 뷰포트와 클리핑 영역 역시 다시 설정되어야 한다.*/
/* ChangeSize 함수는 새로운 창의 너비와 높이를 받아 좌표계와 화면의 좌표의 맵핑에 사용, 이때 glViewport와 glOrtho라는 두개의 OpenGL함수가 쓰인다*/
{
GLfloat aspectRatio;

if(h==0) //0으로 나누지 않도록 함
h==1;

glViewport(0,0,w,h); //뷰포트를 창의 크기에 맞게 설정
/*(x,y,너비,높이), xy인자는 뷰포트의 좌측 하단 좌표, 대개 0으로 설정*/

glMatrixMode(GL_PROJECTION); // 좌표계 초기화, 투영을 위한 행렬변환
glLoadIdentity();
/* 행렬처리가 이루어지기 전에 좌표계를 초기화, glOrtho의 작동방식이 새로운 클리핑 영역을 만드는 것이 아니라 기존의 클리핑 영역과 행렬을 곱한값을 새로운 클리핑영역으로 지정하기때문*/
다운로드 맨위로