Software Development/Graphics

컴퓨터 그래픽스 이론 정리 - 벡터, 평면 표현

huiyu 2018. 6. 9. 00:15

벡터

(1) 정규화 벡터
 - 벡터의 크기 또는 절댓값은 벡터를 나타내는 선분의 길이를 말한다.

그림 (a)의 벡터 p의 길이는 밑변(6-2), 높이(4-1)인 삼각형의 빗변이므로, 아래와 같이 나타낸다.

*정규화 벡터(Normalized Vector)는 원래 벡터와 방향은 동일하지만 크기가 1이 되도록 변형한 것을 말한다.
위 벡터 p=(4,3)을 정규화하려면 각 성분을 벡터의 크기(5, 위 수식으로 계산)로 나눠주면 된다.


(2) 벡터의 내적과 외적

  벡터의 곱셈은 내적(Inner Product, Dot Product)과 외적(Outer Product, Cross Product)로 나뉜다.

두 벡터의 크기를 곱한 것에 두 벡터가 이루는 각의 코사인을 곱한 것이 내적이다.
 1) 위 그림에서 벡터 t의 끝점(3,4,2)로부터 벡터 s(7,0,2)로
수직선을 그었을 때 만들어지는 삼각형의 밑변 길이가 이다.
 2) 에 벡터 s의 크기를 곱한 것이 내적이 된다.

--> 벡터를 성분별로 표시할 수 있다면 벡터 내적은 두 벡터의 성분별 곱의 합이다.
  내적은  가 된다.


는 벡터 t의 s방향 크기이다. 
  다시 말하면 벡터 t가 벡터s에 끼치는 영향력, 또는 기여도라 할 수 있다.
  만약, 위 그림에서 벡터 t 위에서 빛을 내리쬐면 벡터 s방향으로는 길이의 그림자가 발생한다.
  

벡터의 내적이 스칼라인데 반해 벡터의 외적은 벡터다.

평면에 수직인 벡터를 법선 벡터(Normal Vector, Surface Normal Vector)라 한다.
위 식에서 벡터 n은 벡터 s와 벡터 t가 이루는 평면에 수직이고, 길이가 1인 단위 법선 벡터를 의미한다.

따라서, 벡터 외적은 두 벡터의 크기의 곱에 두 벡터가 이루는 각의 사인 값을 곱한 크기의 벡터로, 두 벡터가 이루는 평면에 수직이다.

위 그림은 벡터 s와 벡터 t의 외적이다.
외적 벡터의 크기는 벡터 t의 끝점을 벡터 s방향으로 수직으로 그었을 때형성되는 삼각형의 높이인 에 벡터 s의 크기를 곱한 양이다.
외적 벡터의 방향은 두 벡터가 이루는 평면에 수직인 방향으로, 오른손 법칙에 따른다. 즉, 첫 벡터인 s로부터 둘쨰 벡터인 t를 향해 오른손 주먹을 감싸쥐었을 때 엄지손가락의 방향이 외적 벡터의 방향이다.


(3) 평면 표현

위 그림에서 점 P, Q는 동일 평면 위에 존재, 이 평면에 수직인 법선 벡터 N이 점 Q에서 출발한다고 가정하면,

- (P-Q)는 점 Q에서 점 P로 향하는 벡터이다. P와 Q가 동일 평면에 존재하므로, (P-Q) 역시 동일 평면 위에 존재한다.
- 이 벡터에 법선벡터 N을 곱하면, 결과는 0이 된다. 서로 수직인 두 개의 벡터의 내적은 0이기 때문이다.
- 이 식을 전개한 뒤 이항하면, 두번째 식이 된다.
- 평면 위의 점 P는 어디에 있든지 위 식이 성립되고, 일반화하여 (x,y,z)로 표시하고, 법선 벡터 N을 (A,B,C)라 표시하면 아래와 같다.

-여기서 Q는 임의 원점에서 점Q를 향한 벡터이다.
- 이 벡터와 법선 벡터의 내적값인을 -D라고 표시하면, 아래와 같이 나타낼 수 있다.

-이 식이 바로 평면의 식이다.
- 이 식으로 표현되는 평면의 법선 벡터는 (A, B, C)이다.
ex) 어떤 평면이 2x+3y+4z+5=0이라는 수식으로 표현된다면, 이 평면에 수직인 벡터는 (2,3,4)이다.

위 그림과 같이 D값에 따라 여러 개의 나란한 평면이 존재하지만 이들 평면의 법선 벡터는 모두 동일하다.



728x90