4. 점(Point)과 아핀 공간(Affine Space)

2022. 8. 2. 06:16Mathematics for CG

지금까지 크기와 방향에 대한 정보를 가지고 있는 벡터(Vector)에 대해 다루었는데, 벡터는 벡터 공간에 존재하며, 벡터 공간은 벡터들에 대한 공리 및 성질들이 정의되어 있었다.

 

이제 점(Point)이 정의되는 공간인 아핀 공간(Affine Space)에 대해 알아보자.

 

아핀 공간

먼저, 아핀 공간은 다음과 같이 정의된다.

$V$를 체 $K$ 위에 벡터 공간, $A$를 비어 있지 않은 집합이라고 했을 때, 어떤 벡터 $a \in V$와 원소 $p \in A$에 대하여 $p + a \in A$를 만족하는 덧셈 연산이 정의되어 있다고 하자. 이 때, 벡터 공간 $V$와 연관된 아핀 공간 $A$는 다음 조건들을 만족한다.  

 

  1. $p + 0 = p$ (항등원)
  2. $(p + a) + b = p + (a + b)$ (결합 법칙)
  3. 어떤 $q \in A$에 대하여, $q = p + a$를 만족하는 고유한 벡터 $a \in V$가 존재한다.

말이 좀 어려운데, 아핀 공간은 점이 있는 집합이고 이 점에 더하여 다른 점들을 만들 수 있는 벡터들을 가진 벡터 공간과 함께 정의된다는 것을 기억하면 된다.

3번 식을 다시 보면, 점 $p$에 더하면 점 $q$를 만들 수 있는 고유한 벡터 $a$가 존재한다는 뜻이 된다.

$$ q = p + a \;\; (점 = 점 + 벡터)$$

이 식에서 점 $p$를 좌변으로 옮기면 점 $q$에서 점 $p$를 빼면 벡터 $a$를 만들 수 있다는 의미가 된다.

$$ q - p = a \;\; (벡터 = 점 - 점) $$

이와 같이, 우리가 사용해왔던 점과 벡터에 대한 연산들은 아핀 공간에 의해 정의된다. 점과 점의 덧셈 연산은 일반적으로 정의되지 않는다. (게임 내 두 캐릭터의 위치를 더해서 얻는 좌표는 아무 의미가 없다.)

 

이제 $q = p + a$ 식에서 점 $p$를 원점이라고 생각해보자.

집합 $A$에서 임의의 원점 $p$를 선택하면 벡터 공간 $V$의 기저 $v_i$들을 통해 점 $q$를 다음과 같이 나타낼 수 있다.

$$ q = p +  a_0v_0 + a_1v_1 + ··· + a_{n-1}v_{n-1} $$

여기서 원점 $p$와 기저 쌍 $(p, (v_0, v_1, ..., v_{n-1}))$을 좌표 프레임(Coordinate Frame)이라고 하며, 이 좌표 프레임을 기준으로 점 $q$의 고유한 좌표를 $(a_0, a_1, ..., a_{n-1})$로 나타낼 수 있다. 

원점에 따른 점들의 상대적인 위치

우리는 집합 $A$에서 원점으로 어떤 점이든 선택할 수 있지만, 위 그림과 같이 공간 상 점들의 좌표는 원점과 기저를 어떻게 설정하는지에 따라 달라질 수 있다.

 

이제 식 $q = p + a$에서 원점 $p$를 $0 \in A$로 놓아보자.

$$ q = 0 + a = a$$

점 $q$와 벡터 $a$가 같아진 것을 볼 수 있다. 즉, 벡터 공간을 점 집합으로 간주하면 항상 점 $0$를 포함하므로 벡터 공간의 모든 벡터들을 점으로도 볼 수 있게 되며, 벡터 공간은 아핀 공간이 된다! 이러한 이유로 우리가 $\mathbb{R^n}$ 벡터 공간에서 점과 벡터를 같은 좌표로 표기할 수 있었던 것이다.

 

이번 장을 정리하면 다음과 같다.

  • 벡터 공간에 벡터가 존재하는 것과 같이, 아핀 공간은 점이 존재하는 공간이다.
  • 점의 좌표는 원점$(O)$과 기저 쌍 $(O, (v_0, v_1, ..., v_{n-1}))$의 좌표 프레임을 기준으로 정의된다.
  • 벡터 공간은 아핀 공간으로 간주될 수 있으며, 이 공간에 있는 모든 요소들은 벡터 또는 점으로 볼 수 있다.

 

다음 글에서는 아핀 결합(Affine Combination)에 대해 알아보겠다.