2. 내용 ¶
- 그래픽스가 이용되는 분야
- 인터페이스의 표시
- 과학, 의학
- 멀티미디어 분야
- 등 엄청 다양하게 사용된다.
- 인터페이스의 표시
- CRT의 구조
- CRT의 전자총에서 빔을 화면의 형광물질에 쏴서 빛을 내게 한다.
- Raster-Scan Display
- 화면 전체에 주사선을 쏜다.
- 픽셀 하나마다 메모리를 할당하여 픽셀을 켜고 끈다.
- 그림의 안쪽을 쉽게 채울 수 있으나, 계단현상이 발생한다.
- 메모리의 제약이 과거에는 있었으나, 현재는 무의미
- 화면 전체에 주사선을 쏜다.
- CRT의 전자총에서 빔을 화면의 형광물질에 쏴서 빛을 내게 한다.
- 선을 그리는 방법들
- DDA 알고리즘
- 직선의 기울기값을 살펴본 후 -1 ~ 1 사이일 경우에는 X값을 1씩 증가시키며 Y값의 점을 찍고, 그 이상이나 이하일 경우에는 Y값을 1씩 증가시키며 X값의 점을 찍는다.
- 기울기를 나누는 이유는 선을 더 잘 그리기 위해서다.
- 직선의 기울기값을 살펴본 후 -1 ~ 1 사이일 경우에는 X값을 1씩 증가시키며 Y값의 점을 찍고, 그 이상이나 이하일 경우에는 Y값을 1씩 증가시키며 X값의 점을 찍는다.
- Bresenham의 알고리즘
- 위의 방법과 비슷하지면 X값을 1씩 증가시킨후 Y값의 결정을 할때 Y값의 양 정수중에서 더 가까운 수를 취한다.
- 반대일 경우도 마찬가지
- 위의 방법과 비슷하지면 X값을 1씩 증가시킨후 Y값의 결정을 할때 Y값의 양 정수중에서 더 가까운 수를 취한다.
- DDA 알고리즘
- 선을 Clipping하는 방법
- 직접 선이 출력 영역과 교차하는지 비교한다.
- 비교하기전에 걸러내는 방법으로는 Cohen-Sutherland 알고리즘이 있다.
- 출력영역을 중심으로 화면을 9등분한다.
- 각각에 Outcode를 부여한다.
- 선의 시작점과 끝점이 들어있는 영역의 Outcode 2개를 AND 연산한다.
- Outcode가 0000 일 경우엔 Clipping 이 필요하다.
- 출력영역을 중심으로 화면을 9등분한다.
- 직접 선이 출력 영역과 교차하는지 비교한다.
3. 숙제 ¶
- OpenGL을 이용하여 삼각형 그려오기
이선호 | OpenGL01.zip API Ver. |
이선호 | OpenGLMFC_Sunho.zip MFC Ver. |
강인수 | OpenGL_Report1_Insu.zip API Ver. |
강인수 | GL_Report1_Insu_MFC.zip MFC Ver. |
류상민 | OpenGL01_NeoCoin_GLUT.zip |
경태 | OpenGLAPI01_Pkt.zip |
상규 | API Ver. |
김창성 | 파일 올리는 법을 모르겠다. -_-; |
남훈 | gl_triangle_znth.rar |
인철 | 파일 올리는 법-.-;; 저번에 나한테 가르쳐주었는데..도저히 모르겠다..-.- |
창섭 | MFCTriangle.zip MFC Ver. |
윤정수 | HW1_DrawTriangle.zip |
그래픽스세미나