라벨이 Bresenham인 게시물 표시

Pharos University ME 253 Fluid Mechanics II - ppt video online download

Pharos University ME 253 Fluid Mechanics II - ppt video online download : External External Flows Bodies in motion, experience fluid forces and moments. Examples include: aircraft, automobiles, buildings, ships, submarines, turbo machines. Fuel economy, speed, acceleration, stability, and control are related to the forces and moments. Airplane in level steady flight: drag = thrust & lift = weight.

원의 수학적 표현, Bresenham Circle

이미지
--- --- 이전 포스팅 에서 직선인 경우 Bresenham Algorithm 을 다루었다. 이는 래스터화 시키는 알고리즘이다. 원에서도 해당 알고리즘이 적용 가능하다. 하지만, 해상도의 문제점을 가지고 있다. Bresenham Algorithm 직선의 경우 우측 이동(E), 우상측 이동 (NE)이동을 통해 묘사하였다. 원의 경우는 우측이동 (E) 와 우하측 이동(SE) 이동을 통해 해당 알고리즘을 적용해볼 수 있다. NE와 SE이동은 직선과 곡선의 차이점이 아니라, 기울기에 따라 달라지는 것이다. 원의 경우 8 대칭을 가지고 있다. 이 중 2번째 파이에(y,x) 해당하는 것을 묘사하는 것이 좋다. 만약 1번째 파이(x,y)에 해당하는 경우를 사용한다면, 기울기가 큰 경우가 있어 알고리즘 구현이 애매하다는 것을 알 수 있다. 원의 방정식은 다음과 같이 표현한다. Implict F ( x , y ) = x 2 + y 2 − r 2 F ( x , y ) > 0 → ( x , y )  Outside F ( x , y ) < 0 → ( x , y )  Inside F(x,y)= x^2+y^2-r^2 \\ F(x,y) >0 \to (x,y) \text{ Outside} \\ F(x,y) <0 \to (x,y) \text{ Inside} F ( x , y ) = x 2 + y 2 − r 2 F ( x , y ) > 0 → ( x , y )  Outside F ( x , y ) < 0 → ( x , y )  Inside 여기에서 마찬가지로, Outside에 해당하는 경우 Inside로 들어오기 위하여 SE 방향으로 이동, Inside인 경우 outside 방향인 E 방향으로 이동하면 된다. { F ( M ) ≥ 0 → S E F ( M ) < 0 → E \begin{cases} F(M) \ge 0 \to SE \\ F(M) <0 \to E \end{cases}...

직선의 수학적 표현 및 Bresenham Algorithm with Python 코드

이미지
 Line characterizations 직선은 1차원으로 일정한 기울기를 가진다는 특성이 있다. 직선의 수학적 표현 방법으로는 Explicit 하게 또는 Implicit 하게 표현할 수 있다.  2차원인 경우 다음과 같이 나타낸다. Explicit $$ y= mx+B$$ impicit $$ F(x,y)=ax+by+c=0$$ 두 개의 표현 방법은 실질적으로 같은 식이 된다. 수학적으로는 차이는 있지만, 방정식을 세우고 푸는데 있어서는 동일하다. $$ \\dy= y_1-y_0 \\ dx= x_1-x0 \\ y=\frac{dy}{dx}x+B$$ 우리는 Computing 하기 편하게 하기 위해서 위의 관계들을 조금 더 여러가지 관계식으로 알아두는 것이 좋다. $$ (dy)x+(-dx)y+(dx)B =0 \\ \therefore F(x,y)=(dy)x+(-dx)y+(dx)B \\ where, \, A=dy, B=-dx , C=Bdx $$  만약 2개의 점이 주어진다고 보았을 때, 2 점 사이에 존재하는 점은 다음과 같이 표현한다.  $$ P(t)=(1-t)P_0 + tP_1 $$  이러한 관계를 가지는 것을 Affine Set에 있다고 본다. <출처 : Lecture 2 - Convex set (oopy.io) > 대략적인 파이썬 코드를 가지고 그려보면, 다음과 같이 P0와 P1 사이에 점들이 존재하는 것을 알 수 있다. 여기서 P0는 1,1에 존재하고 P1은 2,2로 설정하였다.  Bresenham Algorithm Bresenham Algorithm은 Line Rasterization 시켜서 그리는 알고리즘이다. 쉽게 말하면, 선을 Pixel 처럼 나타낸다. 이는 앞으로 이미지를 픽셀처럼 나타내기 위한 기초적인 알고리즘 이다. 출처 :  Bresenham's line algorithm - Wikipedia Pixel의 좌표계는 정수만 허용하므로, 정수에 해당하는 값만 잘 맞추어 가져...