지난 포스팅에선 Point가 존재하는 화면을 Clipping 하는 방법에 대해서 확인하였습니다. 이번 포스팅은 2차원 평면에서 Line을 Clipping 하는 방법에 관련한 포스팅 입니다. 방법론 으론는 -. Cliping window를 기준으로 영역을 나눠서 판단하는 Cohen-Sutherland 선분 Clipping -. 걱 선분마다 선분의 방정식을 매개변수로 표현하여 판단하는 Liang-Barsky 선분 Clipping 이 있습니다. 1. Cohen-Sutherland 선분 Clipping 해당 방법론은 Clipping Wnd를 중심에 두고, 좌우상하 와 대각선, 총 8개의 구역으로 나누게 됩니다. 이때 선분의 시작점과 끝점을 이어서 선분이 어떠한 영역에 위치하는지 확인하여 선분을 Clipping하..
지난번 포스팅까지 해서 어떻게 선을 그리는지, 어떻게 색을 구성, 채우는지 확인하였습니다. 이번 포스팅은 이렇게 결정된 도형을 2차원 화면에 Rendering 할 영역을 설정하는 내용입니다. 아래 예시를 보시죠 파란색 삼각형과 초록색 원 모두 계산완료 하였지만, 실제 화면에 보여질 영역은 빨간 사각형 입니다. 이런 빨간영역 만 남길때, 기존에 포스팅했던 기하변환을 사용합니다. 보시는것 처럼, 크기변환 과 점의이동 두가지 기하변환을 순서대로 적용합니다. 1. (X_min, Y_min)을 기준으로 Size를 크기를 2로 바꾸는 크기변환 행렬을 구한다. └1_1. 1을 진행하기 위해서 (X_min, Y_min)을 (0, 0)으로 이동시킨다. 2. (X_min, Y_min)을 (-1,-1) 로 이동시키는 점의 ..
지난번 포스팅으로 컴퓨터에서 어떻게 공간을 채색하는지 알아보았습니다. 이번 포스팅은 이 채색을 무슨 Color로 하는지에 대한 포스팅입니다. 1. Color의 표현 컴퓨터 상에서 한 Pixel마다 Color를 정의할 때 보통 4개의 Element를 이용하며, 대표적으로 1_1. RGB Color Model 현실에서 Red, Green, Blue 3개의 원소를 가지고 표현한 색좌표입니다. 1_2. CMYK Color Model RGB와 반대로 Cyan, Majenta, Yellow 3가지 색상을 이용하며, RGB Color Model의 값에 Not을 취한 결과와 같습니다. 하지만 이때 CMY 에 추가로 K(key)가 있습니다. Grey의 농도를 조절하는 부분이 추가되어 있습니다. 1_3. HSV Color..
지난 포스팅까지 점과 선의 구성, 변환에 대해서 포스팅하였습니다. 그럼 이제 선과 선 사이에 어떻게 색을 채워넣는지 알아보도록 하겠습니다. 다각형이 있다고 할때, 이 다각형에 수평으로 선을 그으면 대략적인 채색의 윤곽이 보이게됩니다. 보면 알 수 있듯, 수평이 아닌 선분에서 다각형을 그리면 위처럼 접점의 회수가 존재합니다. 이때, 주황색은 색이 칠해질 부분이고, 파란색은 색이 칠해지지 않을 부분이 됩니다. 즉, 접점이 짝수인 부분은 비채색, 접점이 홀수인 부분만 채색을 하게됩니다. 아지만 위 방법만 으로는, 아래와 같은 경우의 채색을 결정하지 못합니다. 수평선분 또는 꼭지점과 만날 경우, 처음에 말씀드린 법칙 만으로는 어느 부분에 채색을 해야할지 알기 어렵습니다. 이 문제를 해결하기 위해서 3가지 법칙이..
지난 포스팅에서 동차좌표계를 활용해서 기하변환을 모두 행렬의 곱으로 바꿨습니다. 이제, 이러한 기하변환은 여러번 취하는 복합기하변환에 대해서 알아봅니다. 1. 복합기하변환 한 점을 점의 이동 + 크기변환을 진행한다고 가정합니다. 지난번 포스팅에서 기하변환을 모두 행렬의 곱으로 나타냈기 때문에, 이 변환들 모두 행렬의 곱으로 표현됩니다. 그럼, P1-> P2로 가고, P2->P3로 갈 때 기하변환 Matrix끼리 곱해도 행렬의 형태가 유지되며 최종적으로 P1->P3로 이동한 결과를 얻을 수 있습니다! (이때 행렬 곱의 순서는 바뀌면 안됩니다) 이러한 연산은 회전변환과 점의이동의 복합기하변환에서도 마찬가지입니다. 아래 예시를 보겠습니다. 위 경우 원점이 아닌 특정한 점(x1, y1)을 기준으로 회전할려고 합..
이전 포스팅에서 N차원까지 확장이 가능한 점의이동, 크기변환, 회전이동 기하변환에 대해서 다뤘습니다. 이때, N차원은 N개의 Element를 갖는 데카르트 좌표계를 사용했습니다. 기억하실지 모르겠지만, 기하변환에 사용되는 "동차 좌표"가 있다고 과거 포스팅에서 언급했습니다. teus-kiwiee.tistory.com/42 1. 점과 선 컴퓨터의 화면은 점과 선 으로 이뤄져 있다고 할 수 있습니다. (결국 선도 점으로 이뤄져 있죠) 이때, 컴퓨터는 어떻게 점과 선을 표현할까요? 이번 포스트는 컴퓨터가 점과 선을 표현하는 방법 teus-kiwiee.tistory.com 지난번 포스트에서 3개의 기하변환을 다뤘고, 점의 이동은 Vector(Matrix)의 덧셈을 통해서 구했습니다. 이때 동차좌표계를 사용하면서..
- Total
- Today
- Yesterday
- Sort알고리즘
- 프로그래머스
- 이분탐색
- hash
- GDC
- AVX
- 컴퓨터그래픽스
- 자료구조
- heap
- 동적계획법
- C++
- 사칙연산
- stack
- 알고리즘
- git
- prime number
- Greedy알고리즘
- Search알고리즘
- 완전탐색 알고리즘
- SIMD
- 병렬처리
- 코딩테스트
- Python
- 분할정복
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |