- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 재능이의 돈버는 일기
- StresslessLife
- K_JIN2SM
- 소소한 일상
- My Life Style & Memory a Box
- Blog's generation
- 공감 스토리
- 취객의 프로그래밍 연구실
- Love Me
- Dream Archive
- 세상에 발자취를 남기다 by kongmingu
- hanglesoul
- 카마의 IT 초행길
- 느리게.
- 미친듯이 즐겨보자..
- Joo studio
- Gonna be insane
- 악 다 날아갔어!! 갇대밋! 왓더...
- xopowo05
- 맑은공기희망운동
- 엔지니어 독립운동
- 혁준 블로그
- Simple in Complex with Simple
- 무의식이 의식을 지배한다
목록행렬 (4)
드럼치는 프로그래머
변환 행렬 이동변환 이동변환은 점 p = ( p(x), p(y), p(z) )를 ( t(x), t(y), t(z) )만큼 이동하는 변환이다. 즉 점 p가 p' = ( p(x) + t(x) , p(y) + t(y) , p(z) + t(z) )로 변환된다. 이 변환에 대한 행렬을 아래의 코드로 얻을 수 있다. D3DXMatrixTranslation(&T, tx, ty, tz); 이동변환 행렬은 다음과 같은 형식의 행렬이 된다. T ( t(x), t(y), t(z) ) = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 이동변환 행렬의 특성으로 T ( t(x), t(y), t(z) ) 의 역행렬이 T ( -t(x), -t(y), -t(z) )이다. 회전변환 회전변환을 위한 행렬을 쉽게 구할 수 있도록..
행렬의 표현 Direct3D에서는 4 X 4 크기의 행렬만 지원한다. 4 X 4 행렬의 표현을 위해서 C++ 구조체 타입인 D3DXMATRIX를 제공한다. 행렬에 대한 연산자 겹지정(operator overloading)과 타입 변환(type casting)의 장점을 지원한다. D3DXMATRIX에서는 먼저 변수만 선언하고, 이후에 행렬을 채우는 식의 작업이 일반적이다. D3DXMATRIX mat; // Direct3D에서 4 X 4행렬의 표현을 위한 D3DXMATRIX타입 변수선언 ZeroMemory (&mat, sizeof(D3DXMATRIX)); // 0으로 초기화 위와같이 0으로 초기화 한후 아래와 같이 값을 대입할 수 있다. mat._11 = 0.64f; mat._22 = 0.48f; 겹지정 연..
행렬이란 행렬은 벡터를 변환하는 용도로 사용된다. 4 X 4 크기의 행렬 M은 16개의 스칼라 원소들이 4 X 4의 격차로 배치된다. i번째 열과 j번째 행에있는 원소를 m(ij)라고 표시하자. 항등행렬(Identity Maxrix(단위행렬)) : 대각선 값들만 1이고 나머지들은 모두 0인 행렬 0행렬 : 모든 원소들이 0인 행렬 전치행렬(M^T) : 행렬 M의 각 원소들의 위치를 m(ij)에서 m(ji)로 바꾼 행렬 역행렬 : 행렬 M에 대해 NM = MN = I(단위행렬)을 만족하는 행렬 N, (N = M^-1) 두 행렬을 곱하면 새로운 행렬이 되며 그 원소들은 한 행렬의 행과 다른 행렬의 열을 내적하여 구한다. 벡터의 변환 행렬의 가장 중요한 기능은 벡터의 변환이다. 행렬은 벡터를 다른 벡터로 변환..
백터 상등 D3DXVECTOR u(1.0f, 0.0f, 1.0f); D3DXVECTOR v(1.0f, 0.0f, 1.0f); if(u==v) return true; // 같은지 확인 if(u!=v) return true; // 다른지 확인 벡터의 크기 계산 FLOAT D3DVec3Length{ //크기를 리턴한다. CONST D3DXVECTOR3* pV // 길이를 계산하려는 벡터 ); D3DXVECTOR3 v(1.0f, 2.0f , 3.0f); float magnitude = D3DVec3Length( &v ); // = sqrt(14) 벡터의 정규화 D3DXVECTOR3 *D3DXVec3Normalize( D3DXVECTOR3* pOut, // 결과 CONST D3DXVECTOR3* pV // 정규화..