Vector Projection

Vector Projection

\(\vec{u}\)를 \(\vec{v}\)에 projection한 \(\vec{p}\)를 어떻게 구할 수 있을까?

어떤 적절한 수 k를 \(\vec{v}\)에 곱해서 길이를 조절하면 될 것이다.
결국 k 를 알아내면 되는 것이다.

우선, \(\vec{u}\)에서 \(\vec{p}\)를 뺀 \(\vec{w}\)를 생각해 볼 수 있다.
위에서 \(\vec{p} = k\vec{v}\) 였으므로, \(\vec{w} = \vec{u} – k\vec{v}\) 가 된다.

그리고, \(\vec{w}\) 와 \(\vec{v}\) 는 수직이므로, \(\vec{w} \cdot \vec{v} = 0\) 이 된다.

위에서 \(\vec{w} = \vec{u} – k\vec{v}\)였으므로, 위 식에서 \(\vec{w}\)를 치환하면, \((\vec{u} – k\vec{v}) \cdot \vec{v} = 0\) 이 된다.

이제 식을 k에 대해서 정리해 보자.

분배법칙에 의해 \(\vec{u} \cdot \vec{v} – (k\vec{v}) \cdot \vec{v} = 0\) 이 되고, 양 변에 \((k\vec{v}) \cdot \vec{v} \)를 더해주면 \(\vec{u} \cdot \vec{v} = (k\vec{v}) \cdot \vec{v}\) 가 된다.

그리고, 결합법칙에 의해 \(\vec{u} \cdot \vec{v} = k(\vec{v} \cdot \vec{v})\) 가 되고, 양변을 \(\vec{v} \cdot \vec{v}\)로 나눠주면 \(\large k=\frac{\vec{u} \cdot \vec{v}}{\vec{v} \cdot \vec{v}}\) 가 된다.

결국, \(\huge \vec{p} = (\frac{\vec{u} \cdot \vec{v}}{\vec{v} \cdot \vec{v}}) \vec{v}\) 인 것이다.

만약, \(\vec{v}\)를 normalize 해서 길이를 1로 만든다면, \(\hat{v} \cdot \hat{v} = 1\) 이 되기 때문에 \(\huge \vec{p} = (\vec{u} \cdot \hat{v})\hat{v}\) 로 식이 간단해 진다.