그래픽스에 대하여 공부를 진행 하다 특정한 물체를 회전 또는 특정한 축을 기준으로 회전을 해야하는 경우가 많았다.
그래서 선형대수학을 공부를 하다보면 배우게 되는 행렬과 삼각함수, 벡터를 통하여 이해하기 쉽게 설명을 해볼것이다.
회전 행렬은 처음에 수학만 나온다고 어려운것 처럼 보이겠지만 이해를 하면 의외로 쉬운 내용 이구나 하면서 넘어갈것이다.


여기서 하나의 XY 좌표계를 그렸는데.
X축을 (1, 0) 으로 Y축을 (0, 1)로 표현을 하였다. 이렇게 표현을 한 이유는
X축을 1칸을 우리들은 (1, 0) 칸을 이동 한다. 라고 말할수 있으며,
마찬가지로 (3, 4) 위치에 있는 점을 Y로 3칸, X로 -2칸을 이동 한다고 하면 (3, 4)의 위치는 (1, 7) 위치로 바뀌게 될것이다.
이건 나의 개인적인 생각이다만.
X 축의 값은 (inf, 0)의 위치 이지만 단위 벡터, 길이가 1인 벡터로 바꾸다 보니 (1,0) 된것이 아닌지 생각한다.
여기서 좌표계에서 여러개의 축의 값을 벡터로 표현을 하였는데. 여기서 좌표계의 단위를 표현하는 벡터를 “기저 벡터(Basis Vector)” 이라고 한다.
즉 우리들이 흔하 사용하던 XY 좌표계는 X축 벡터를 (1,0), Y축 벡터를 (0,1) 이라고 표현이 가능하다.

해당 논리로, X축 벡터의 값이 임의의 다른 값으로 변경이 된다면 그림에서는 같은 위치 이더라도,
다른 값을 가질수 있다.
여기서 살짝 뜬금 없이 회전 행렬의 증명이 궁금해서 왔는데 뜬금 없이 좌표계에 대해서 설명을 하고 있는지 의문 일것이다.
좌표계에 대해서 배우는 이유는, 회전 행렬이 특정 위치 기준으로 돌리는 것이 아니라 기저 벡터, 좌표계를 돌리기 때문이다.
즉, 점의 위치는 그대로 이고, 좌표계를 회전 시키게 된다면 그것 또한 회전이기 때문이다.
#2 내용에서는 본격적으로 삼각 함수와 벡터를 이용하여 (cos(x), sin(x)) 이 1사분면에 호의 모양이 그려지게 되는 이유에 대해서 설명할 것이다.
'차장님의 이야기' 카테고리의 다른 글
회전행렬 증명 #3 (0) | 2020.05.15 |
---|---|
회전 행렬 증명 #2 (0) | 2020.05.15 |
C++에서 OS 종류, 컴파일러 종류, 아키텍처 종류 알아 내는법. (0) | 2020.05.06 |
#5 기존까지 한 내용 요약 및 상태. (0) | 2020.05.02 |
Console Graphics Library #4, Namespace 어떻게 해야할까? (0) | 2020.05.01 |