벡터

|

벡터의 해석


1. 위치

2. 속도와 가속도

3, 방향과 거리




(위치)                                                                 (속도)                                                ( 방향)                                      (거리)











스칼라

- 방향을 가지고 있지 않고 크기만 가지고 있는 물리량(온도,길이,속력)


벡터의 표현 방법


v = (x,y)


벡터의 덧셈


c = a + b = (a.x, a.y) + (b.x, b.y) = (a.x + b.x , a.y + b.y)


예) 벡터를 사용해 계산해보자

위치가 p = (3,2) 이고 여기에 속도 벡터 v = (-2,3)을 더해보면 다음과 같은 위치값을 얻을수 있다.

`p = (3 + -2, 2+3) = (1,5) 이때 p 오른족 위에 있는 어퍼스트로피는 단지 p 벡터를 구했음을 나타내는 표시이므로 신경쓸 필욘 없다.

물론 이 연산은 위치와 방향 벡터 단위가 서로 일치할때만 말이 된다. 여기서는 미터(m)이고 속도가 초당 미터(m/s)라고 가정할때 벡터단위가 일치한다.


벡터의 뺄셈


c = a -b = (a.x, , a.y) - (b.x, b.y) = (a.x - b.x, a.y - b.y)

  

 이때도 두 벡터의 요소를 서로 합치기만 하면 된다. 하지만 벡터의 뺄셈을 뺄때는 빼는 순서가 중요하다. 

예를 들어서 pg=(1,4) 에 있고 pr = (6,1) 에 있으면  pg에서 pr의 거리 벡터를 빼면 다음과 같다.


 d = pg - pr = (1,4) - (6,1) = (-5,3)


그런데 결과가 약간 이상합니다. 이 값은 pr에서 pg를 가리키는 벡터이기 때문입니다. 원하는 값을 구하려면 뺄셈의 순서를 반대로 해야된다.


 d = pr - pg = (6,1) -  (1,4) = (5,-3)


위치 a에서 위치 b로의 방향 벡터를 구하려면 다음과 같은 일반 공식을 사용해야 한다.


c = b - a


다시 말해서 항상 끝 위치에서 시작 위치를 빼야 하는 것이다. 


벡터는 스칼라만큼 곱할 수도있다.

a` = a * scalar = (a.x * scalar, a.y * scalar)

벡터가 d =(0, -1) 로 지정되면 이 벡터에 s= 2스칼라를 곱하면 벡터의 길이를 두배로 만들수있다. d * s = (0, -1 * 2) = (0, -2)
물론 1보다 작은 스칼라를 사용하면 길이를 더 줄일수도 있다 예를 들어 d에 0.5를 곱하면 d` = 0, -0.5) 가 된다.

벡터의 길이

|a| = sqrt(a.x * a.x + a.y * a.y)

이때 |a| 의 표기는 벡터의 길이를 나타낸다. (피타고라스의 정리)

벡터의 길이는 루트의 특성상 항상 양의 값이다.

위의 pr과 pg의 벡터의 길이는 다음 과 같다.
|pr - pg| = sqrt(5 * 5 + -3 * -3) = sqrt(25 +9) = sqrt(34) ~= 5.83m


단위벡터

길이가 1인 벡터를 단위 벡터라고 한다.

d` = (d.x/|d|, d.y/|d|)

|d|는 벡터의 길이입니다.

예를들어 정확히 북동쪽으로 향하는 방향 벡터 d (1,1) 이 필요하다고 가정하자 얼핏 보기에는 두 벡터 요소 모두 1이므로 이 벡터는 이미 단위 벡터 처럼 보인다. 하지만 이는 잘못된 생각이다.
|d| = sqrt(1*1, 1*1) = sqrt(2) ~= 1.44

이 벡터를 단위 벡터로 만들면 문제를 쉽게 해결할수있다.

|d| = (d.x/|d|, d.y|d|) = (1/|d|, 1/|d|) ~= (1/1.44, 1/1.44) = (0.69, 0.69)

이를 벡터 정규화라고 한다 벡터 정규화는 벡터의 길이 값을 1을 갖게 만듦을 뜻한다.





'유니티 > Note' 카테고리의 다른 글

유니티 개발 시작  (0) 2014.02.18
삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
메카닉 관련 유니티 제공 에셋  (0) 2014.02.14
유니티 2D 배경에 카메라 맞추기  (0) 2014.02.04
유니티 창 여러개 띄우기  (0) 2014.02.04
Trackback 0 And Comment 0