[Graphics] Baycentric coordinate(무게 중심 좌표계)
1. Linear Interpolation(선형 보간법)
선형 보간법(Linear Interpolation)은 양 끝점의 위치가 주어졌을 때 그 사이의 한 위치를 계산하는 방법이다.
2차원 공간 상의 점 \(p1(x_1, y_1), p2(x_2, y_2)\) 사이에 있는 p의 위치를 알고 싶다고 하자.
p1과 p2 사이의 거리를 정규화하여 1로 놓으면,
\[d1 = α, d2 = 1 - α(0<=α<=1)\]라고 할 수 있다.
d1의 길이가 커질수록 p는 p2에 가까워지고, d2의 길이가 커질수록 p는 p1에 가까워진다. α를 가중치로 생각해 보면 다음과 같이 나타낼 수 있다.
\[p = (1 - α)p1 + αp2\]아래와 같이 벡터로 이해할 수도 있다.
가중치의 합이 1이 넘어버리면 직선보다 위에 p가 위치하게 된다.
2. Baycentric coordinate(무게 중심 좌표계)
이번엔 세 점으로 이루어진 삼각형 내의 점을 생각해 보자.
1차원 직선에서 두 점 사이에 있는 점의 좌표를 직선간의 비율로 구했듯이, 2차원 평면에서 세 점 사이의 좌표를 넓이의 비율로 구할 수 있다.
삼각형 전체의 넓이를 S(= s1 + s2 + s3)라고 하면 점 A, B, C로 이루어진 삼각형 내의 점 P의 좌표는 다음과 같다.
\[P = w_a*A + w_b * B + w_c * C\] \[(w_a = s_2 / S, w_b = s_3 / S, w_c = s_1 / S)\]마찬가지로 삼각형도 3개의 점을 벡터로 이어서 생각해볼 수 있다. 각 가중치가 1/3이면 벡터의 1/3씩 더해서 삼각형의 중앙에 p가 위치할 것이고, 가중치의 합이 1을 넘어가면 삼각형보다 위에 p가 위치할 것이다.
Leave a comment