728x90
1. 내적
- 점곱 ( dot product )이라고도 부르는 내적 ( inner product )은 스칼라값을 내는 벡터 곱셈의 일종이다.
- 결과가 스칼라라서 스칼라 곱 ( scalar product )이라고 부르기도 한다.
- 다른 말로 하면 내적은 대응되는 성분들의 곱들의 합이다.
- U = ( Ux, Uy, Uz ), V = ( Vx, Vy, Vz ), UV 내적 = Ux*Vx + Uy*Vy + Uz*Vz
- UV 내적 = ||U|| ||V|| cosA, A는 벡터 U와 V 사이의 0 <= A <= 180를 만족하는 각도이다.
- 특히 U와 V 둘 다 단위벡터인 경우 UV 내적값은 두 벡터 사이의 각도의 코사인이다 ( UV내적 = cosA )
- UV 내적 = 0 이면, cosA = 0인경우 A = 90도 UㅗV이다. ( 두 벡터는 직교이다. )
- UV 내적 > 0 이면, 두 벡터 사이의 각도 A는 90도 보다 작다. ( 두 벡터는 예각을 이룬다. )
1.1 내적을 이용한 두 벡터 사이의 각도
- U = ( 1, 2, 3 ), V = ( -4, 0, -1 )
- UV내적 = ( 1*-4 + 2*0 + 3*-1 ) = -7
- ||U|| = 루트 ( 1^2 + 2^2 + 3^2 ) = 루트 ( 14 )
- ||V|| = 루트 ( -4^2 + 0^2 + -1^2 ) = 루트 ( 17 )
- UV내적 = ||U|| ||V|| cosA
- UV내적 / ||U|| ||V|| = cosA
- -7 / 루트( 14 ) 루트 (17 ) = cosA , A = 약 117도
2. 외적
- 가위곱 ( cross product )라고도 부르며 외적 ( outer product )는 결과가 스칼라인 내적과는 달리 외적의 결과는 벡터이다.
- 또한, 외적은 오직 3차원 벡터에 대해서 정의된다. ( 2차원 벡터들에 대해서는 외적이라는 것이 없다. )
- 두 차원 벡터 U와 V의 외적을 취하면 U와 V 모두에 직교인 또 다른 벡터 W가 나온다
- 즉, 벡터 W는 U와 직교이고, V와도 직교이다.
- U = ( Ux, Uy, Uz ), V = ( Vx, Vy, Vz ), UV 외적 = ( UyVz - UzVy, UzYx - Ux-Vz, UxYy - UyVx ) = W
- *오른손 좌표계를 기준으로 계산할 때에는 오른손 엄지 법칙을 따라야 한다. 즉 오른손을 펼쳐서 첫 벡터의 U의 방향을 가리킨 상태에서 손가락들을 굽혀서 V의 방향을 가리켰을 때 엄지손가락이 가리키는 방향이 바로 W = UxV의 방향이다.
2.1 외적을 이용한 두 벡터의 직교 벡터 W , Z
- U = ( 2, 1, 3 ), V = ( 2, 0, 0 )
- W = UxV
- W = ( UyVz - UzVy, UzVx - Ux-Vz, UxVy - UyVx )
- W = ( 2, 1, 3 ) x ( 2, 0, 0 )
- W = ( 1*0 - 3*0, 3*2 - 2*0, 2*0 - 1*2 ) = ( 0, 6, -2 )
- Z = VxU
- Z = ( Vy,Uz - VzUy, VzUx - Vx-Uz, VxUy - VyUx )
- Z = ( 2, 0, 0 ) x ( 2, 1, 3 )
- Z = ( 0*3 - 0*1, 0*2 - 2*3, 2*1 - 0*2 ) = ( 0, -6, 2 )
- 결과를 확인해보면 UxV != VxU 이므로, 외적에는 교환 법칙이 성립하지 않는다.
- UxV = -V x U 임을 증명하는 것 도 가능하다.
- 외적으로 얻은 벡터가 어떤 방향인지는 왼손 좌표계 법칙으로 알 수 있다.
2.2 외적의 결과가 직교인지 증명
- 외적의 결과가 직교인지 확인하는 방법은 내적에서 확인했듯이 UW 내적 값이 0인지 확인하면 된다.
- U = ( 2, 1, 3 ), W = ( 0, 6, -2 )
- UW 내적 = ( 2*0 + 1*6 + 3*-2 ) = 0 이므로 직교이다.
반응형
'DirectX12 > 게임 수학' 카테고리의 다른 글
[게임 수학] 벡터 대수 (0) | 2023.02.25 |
---|