이번 포스트에서는 Antialiasing에 대해 다루도록 하겠습니다. Antialiasing : 컴퓨터 그래픽스는 디지털 단위로 이미지를 출력하기 때문에 어쩔 수 없이 Aliasing(계단 현상)이 발생합니다. Antialiasing은 이를 제거 또는 완화하기 위해 제작된 기술입니다. 대표적인 Antialiasing 기술로는 Unweighted Area Sampling과 Weighted Area Sampling이 있습니다. Unweighted Area Sampling (동일 가중치 샘플링) : 영역 내부 모든 곳에 동일한 가중치를 부여하는 방법 동일 가중치 샘플링은 다음과 같은 순서로 진행됩니다. 하나의 픽셀을 가로, 세로로 3등분 해서 9개의 서브 픽셀로 만든다. (Supersampling) 선분 스캔..
이번 포스트에서는 여러 Clipping Polygons Algorithm에 대해 다루겠습니다. Sutherland Hodgman Algorithm : 오른쪽, 아래쪽, 왼쪽, 위쪽 경계에 대해 차례대로 클리핑해주는 것입니다. 해당 알고리즘을 좀 더 상세하게 보자면 다음 그림과 같습니다. Case 1 : Inside -> Inside, p 꼭지점을 새로운 꼭지점으로 변경 Case 2 : Inside -> Outside, i 교차점을 새로운 꼭지점으로 변경 Case 3 : Outside -> Outside, 변화 없음 Case 4 : Outside -> Inside, i 교차점 및 p 꼭지점을 새로운 꼭지점으로 변경 그러나 Sutherland-Hodgman Algorithm을 사용하여 오목 다각형을 처리하면..
이번 포스트에서는 컴퓨터 그래픽스의 Parametric Line Clipping Algorithm(매개 변수 선분 알고리즘)에 대해 다루도록 하겠습니다. Parametric Line Clipping Algorithm 지난 포스트에서는 C-S 알고리즘에 대해 다루었습니다. C-S 알고리즘은 선분의 양 끝점이 어디에 위치하느냐에 따라 선분을 accepted, rejected, clipped로 나누어 반복 실행을 통해 구했습니다. Parametric Line Algorithm은 이것을 바탕으로 단 한 번만 자르는 C-S알고리즘보다 더 효율적인 알고리즘이다. 먼저 다음에 제시된 그림을 통해 그래픽스 상의 선분의 특징에 대해 알아보겠습니다. Line 1, 2, 3이 있습니다. 세 Line의 양 끝점이 각각 P0와..
이번 포스트에서는 Cohen-Sutherland(C-S) 알고리즘에 다뤄보겠습니다. 우선 C-S 알고리즘에 어디에서 쓰이는지, 왜 쓰이는지에 대해 소개하겠습니다. Cohen-Sutherland Algorithm C-S 알고리즘은 Clipping Algorithm 중의 하나며 2차원 공간을 9개의 영역으로 나누고 화면에서 사용자에게 보여주는 화면 부분을 정해주는 알고리즘입니다. C-S 알고리즘은 먼저 다음의 기준으로 영역을 나눕니다. 1 : Top (위쪽) 2 : Bottom (아래쪽) 3 : Right (오른쪽) 4 : Left (왼쪽) 이 기준을 4-Bit region outcodes이라고 하며, 실제 화면에서 적용하면 다음과 같은 결과를 얻어낼 수 있습니다. "1001"을 예시로 들자면, 현재 "00..
이번 포스트에서는 Filling Polygons Algorithm(다각형 내부 채우기 알고리즘)에 대해서 다루도록 하겠습니다. 먼저 다각형의 3가지 형태에 대해 소개하겠습니다. Simple Convex (단순 볼록형) Simple Concave (단순 오목형) Non-simple(self-intersection) (비단순-자기교차형) 다각형을 그릴 때 발생할 수 있는 대표적인 오류가 바로 "double-fill"입니다. double-fill란 무엇인가? double-fill은 말그대로 두 번 채웠다는 의미입니다. 즉, 인접하는 다각형을 채울 때 그 인접하는 변이 서로 겹쳐 색을 두번 칠하게 되는 상황을 말합니다. 이는 비효율적이면서도 만약 두 다각형의 색상이 다르다면 이상한 색이 색칠될 수도 있습니다. ..
이번 포스트에서는 컴퓨터 그래픽스의 Scan Conversion의 여러 기법에 대해 다루고자 합니다. Scan Conversion이란? Scan Conversion, 우리나라 말로 "주사 변환"은 연속적인 그래픽스 기본 객체를 픽셀의 모음으로 표현하는 프로세스입니다. 즉, 쉽게 말해 아날로그 형태의 어떠한 도형을 디지털 형태의 도형으로 바꿔주는 프로세스라고 생각하면 됩니다. 그러면 우리는 위와 같은 Scan Conversion을 어떻게 해야지 가능하게 할 수 있을까? 바로 Scan Conversion Algorithm을 통해서 할 수 있습니다. 오늘은 그중 "Scan Converting Lines"와 "Scan Converting Circles"의 알고리즘에 대해 다룰 예정입니다. 그러나 Scan Con..
이번 포스트에서는 컴퓨터 그래픽스(Computer Graphics) 중의 Random scan displays와 Raster scan displays 기술에 대해서 다뤄보겠습니다. Random scan displays 랜덤 스캔 디스플레이 (Random Scan Display)는 아날로그 방식으로 출력하는 방식입니다. 랜덤 스캔 디스플레이에서 전자 빔은 화면에 그림을 표시하거나 그려야하는 화면 영역만 향합니다. 한 번에 한 줄씩 그림을 표시하므로 벡터 표시(Vector Display)라고도 부릅니다. 또한 그림을 그리거나 화면에 표시하기 위해 시스템은 일련의 명령을 거쳐 차례대로로 그려나가는 특징이 있으며, 특별히 정해진 순서가 없으며 선을 새로 고칠 수가 있습니다. Raster Scan Displays..