Vector란?
- 방향과 크기를 가지는 직선. 기준점이 존재하지 않는다.
- Point와의 차이점 :
Point : 원점으로 존재. 위치와 관계 있음.
Vector : 원점의 존재가 의미 없음. 이동량과 관계 있음.
Vector의 크기.
- Vector의 정규화에 쓰인다.
벡터의 크기 V = sqrt(power(x,2)+power(y,2)+power(z,2))
기존에 2차원에서는 빗변이 크기가 되어서 크기 = sqrt(밋변제곱+높이제곱)이었다.
ex)
V = (1,2,3)
||V|| <,여기서 || || 이 표시는 벡터의 크기라는 표시이다.
||V|| = 루트(1제곱+2제곱+3제곱).
||V|| = 루트(1+4+9).
||V|| = 루트(14).
그러므로 벡터의 크기 ||V||는 루트14가 된다.
Vector의 정규화.(Nomalize)
- Vector의 크기를 1로 만들어 주는 것을 말한다. (Unit Vector라고도 한다.)
- 크기는 고려하지 않고, 방향만 알고 싶을 때 사용한다.
1) 축을 정의할 때.
2) 삼각형을 바라보는 방향만이 필요할 때.
3) Vector의 크기를 원하는 대로 바꾸고 싶을 때.
ex)
^
V = ( x / ||V||, y / ||V||, z / ||V||)
Vector의 내적.(Dot Product)
- Vector A = (a1, a2, a3)
- Vector B = (b1, b2, b3)
- A Dot B = (a1 * b1) + (a2 * b2) + (a3 * b3) (실수 값 하나가 나온다.)
- theta = Vector A와 Vector B의 사이각.
- A Dot B = ||A|| * ||B|| * cos(theta)
- 내적은 어디에 사용되는가?
1) 두 벡터의 사이 각을 구할 때.
2) 점과 선 사이의 거리를 구할 때.
3) 점과 평면 사이의 거리를 구할 때.
4) 빛을 어느정도 받는지 계산할 때. (Normal과 Light와의 Dot Product) - 램버트 Light
5) 하나의 Vector를 다른 벡터에 투영 시킬 때.
6) 물체가 특정 평면에 부딪힌 후의 팅겨오르는 것을 계산하기 위한 반사 Vector를 구할 때.
Vector의 외적.(Cross Product)
- Vector A = (a1, a2, a3)
- Vector B = (b1, b2, b3)
- A Cross B = ((a2 * b3 - a3 * b2), (a3 * b1 - a1 * b3), (a1 * b2 - a2 * a1)) (벡터가 나온다.)
- 외적은 어디에 사용되는가?
1) 두 벡터에 수직인 벡터를 만들어 낼 때.
2) 두 벡터로 둘러싸인 평행 사변형의 면적을 구할 때.
3) 어떤 점이 삼각형에 포함되어 있는가를 계산 할 때.