본문 바로가기
Study/프로그래밍 수학

DirectX 3D - 전치행렬, 정방행렬, 역행렬, 가우스소거법, 아핀변환 -

by 황금표정 2012. 2. 8.
1. 역행렬 ( Inverse Matrix )

역행렬이란?
두 행렬을 곱하여 단위행렬이 되는 두 정사각행렬을 부르는 말이다.
역행렬에 대해서 알아두어야 할 사항
1. 역행렬은 정방행렬일때만 존재한다. ( 2x2, 3x3, 4x4 같은 행과 열이 같은)
2. 역행렬을 구하고자하는 행렬과 단위행렬만 알면 역행렬을 구해낼 수 있다.
( 고등학교 수학에서 나오는 2차원 행렬 구하는 방법, 3차원 행렬에서만 가능한 크래머, 3차원 행렬이상에서 가우스 소거법)
3. 역행렬은 교환법칙이 성립한다.
4. 모든 정사각행렬에 역행렬이 존재하는것은 아니다.

직교 좌표계에서는 전치행렬과 역행렬이 같다.



2. 정방행렬 ( square matrix )

정방행렬이란?
행과 열의 수가 같은 정방형의 행렬. 예를들면, 2x2, 3x3, 4x4행렬

D3D에서는 무조건 정방행렬만 사용한다.




3. 전치행렬 ( Transposed Matrix )

전치행렬이란?
전치행렬은 행렬A가 있을때 행렬A의 행과 열을 뒤바꾸는 것을 말한다.
전치행렬은 T를 붙여서 표현한다.

*법선벡터변환
법선벡터는 기하 구조 변환에 사용된 특정 행렬의 역행렬의 전치행렬에 의해서 변환되어야한다.

월드 행렬의 직교행렬 = 직교행렬의 역행렬



4. 가우스 소거법 ( Gaussian elimination )

가우스 소거법이란?
연립 일차 방정식의 해법의 하나로 보통 의미의 소거법을 조직적으로 정리한 것이다.

가우스 소거법은 역행렬을 구할때 사용된다.



5. 아핀변환 ( affine transformation )

아핀변환이란?
아핀변환은 한 벡터공간을 다른 벡터공간으로 대응시키는 변환이다.
D3D에선 이동과 회전만 하는 변환을 아핀변환이라고 한다.

아핀변환의 역변환이 존재할 조건은 행렬A의 역행렬이 존재할 조건과 같다.

이동행렬, 회전행렬, 크기변환행렬을 사용한다.

이 행렬을 이용해서 3차원 공간상에 원하는 곳에 배치할 수 있다.





6. 행렬의 곱

행렬의 곱으로 변환식을 만들어낸다.

로컬좌표계를 월드좌표계로 바꾸는 행렬을 월드행렬이라고 한다.

 - 행렬이 곱의 사용 -
로컬좌표 * 월드행렬 = 월드 좌표

처음점좌표(벡터) * 이동행렬(행렬) = 이동된점좌표(벡터)





참조 사이트 :
위키 백과
http://blog.naver.com/seiyouchyan/60078660437
http://skmagic.tistory.com/entry/%EB%B3%80%ED%99%981
 http://blog.naver.com/weesoul/60053614340
반응형

'Study > 프로그래밍 수학' 카테고리의 다른 글

라디안 (호도법에 의한 각도의 단위)  (0) 2012.06.10
(기본) 삼각함수  (0) 2012.06.10
벡터의 내적과 외적  (0) 2012.02.01
벡터의 내적(dot-product)  (0) 2012.02.01