Posts 게임 수학 - 세 점이 주어질 때 수선의 발 구하기
Post
Cancel

게임 수학 - 세 점이 주어질 때 수선의 발 구하기

수선의 발 구하기


image

공간 상의 세 점 A, B, C가 주어져 있다.

DC에서 직선 AB에 내린 수선의 발이다.

D는 간단히 다음과 같이 구할 수 있다.

\[D = A + AB * \frac{AB \cdot AC}{AB \cdot AB}\]


설명

AD 벡터를 구하고, A에서 AD를 더해 D를 계산하는 방식이다.

벡터 ABAC를 내적하면 AB의 크기와 ACAB에 사영한 벡터 AD의 크기를 곱한 값, 즉 |AB| * |AD|를 얻을 수 있고,

벡터 AB를 자기 자신에 대해 내적하면 |AB| * |AB|를 얻을 수 있다.

전자를 후자로 나누면 |AD| / |AB|를 얻을 수 있고,

여기에 벡터 AB를 곱하면 AB의 방향을 유지한채 크기는 |AD|인 벡터, 즉 AD를 얻을 수 있다.

그리고 A에 더해주면 D가 된다.

This post is licensed under CC BY 4.0 by the author.