본문 바로가기
코딩/알고리즘

내적

by 남대현 2022. 1. 5.
반응형

내적

점곱(점들의 곱)이라고 불리기도 하는 내적은 스칼라값을 내는 벡터 곱셈의 일종이다.
결과가 스칼라 값이라 스칼라 곱이라고 부르기도 한다.

벡터 A = (Ax, Ay, Az)일때, 두 벡터의 곱은 AxBx+AyBy+AzBz이다.
이는 A*B = ||A|| ||B|| cosC 가 되며 C를 통하여 AB사이의 각도를 구할 수 있다.
(||A|| = A벡터의 크기 = √(x^+y^+^)))

그 증명은 A = (1, 2, 3)이고 B = (-4,0, -1)이라고 할 때,
A*B = (1,2,3) * (-4,0,-1) = -4-3 = -7
||A|| = √(1^+2^+3^) = √14
||B||  = √17
cosC = A*B/||A||||B|| = -7/√14√17
C = acos(-7/√14√17) = 약117 이 되며 즉, 두 벡터 AB사이의 각도는 117도가 된다.

이로부터 다양한 특징들을 알 수 있는데,
1. A*B = 0 이라면 두 벡터는 직교한다.
2. A*B > 0 이라면 두 벡터 사이의 각도는 예각이다.
3. A*B < 0 이라면 두 벡터 사이의 각도는 둔각이다.

게임에서의 활용으로는
1. 물체가 나를 기준으로 어느 방향에 있는지 확인 (전/후/좌/우)
2. 충돌처리
등에 사용된다.

 

반응형

댓글