이글루스 | 로그인  


3차원 입체에 대한 정보를 2차원 배열로 처리

3차원 입체에 대한 정보를 2차원 배열로 처리

'C언어 펀더멘탈' 425쪽에 다음과 같은 글이 있다

'심지어 3차원 입체에 대한 정보조차 2차원 배열로 처리하는데 아무런 문제가 없다.'

이 글을 보고 나서 이해를 할 수 없었다.

내가 C 프로그래밍을 배울 때 2차원 정보 즉, 그림이나 음악은 2차원 배열을 쓰고,

3차원 정보 즉, 3D 관련은 3차원 배열을 쓴다고 들었기 때문이다.

그런데 아무런 문제가 없다니 어떻게 된 것일까?

곰곰이 생각해보았지만, 답을 얻지 못했다.

 

그러다 오늘 세수를 하면서 문제에 대해서 생각해보았고,

가설을 하나 얻을 수 있었다.

'2차원 배열로 만든 행렬이면 가능하지 않을까?'

그래서 한 번 만들어 보았다.

 

간단히 각 좌표벡터를 열벡터로 가지는 행렬을 만들었다.

좌표 벡터

이 행렬로 크기 증감, 축 반사, 사영, 회전등을 할 수 있다.

그럼 행렬을 어떻게 2차원 배열로 만들까?

이런식으로 만들 수 있지 않을까?

C 코드

(위의 코드는 단순히 행렬을 2차원 배열로 표시한다는 것만 보여준다. 내 의도는 다음 행렬을 표시하기 위한 것이다.)

행렬 예

아무튼 행렬을 이용하면 되고, 행렬은 2차원 배열로 표시한다는 것을 알고 있음에도,

그걸 바로 알아채지 못하고 다음 날 떠오르다니....

문제를 빨리 풀었음에도 별로 기쁘지 않은 하루다.

 

참조

C언어 펀더멘탈

현대선형대수학

by NoSyu | 2006/02/16 16:23 | in Programming | 트랙백 | 덧글(4)

트랙백 주소 : http://NoSyu.egloos.com/tb/1448142
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by mark at 2006/02/17 15:12
곰곰 생각해보면 당연한 말인데, 그 두줄 가지고 한참 생각을 하시다니 저 같으면 그냥 그런가 보다 그러고 잊어먹었을듯-_-;; 학자의 길로 가시길^^
Commented by NoSyu at 2006/02/17 16:36
곰곰이 생각해보면 당연하다고 바로 나와야 하는데 한참을 생각했으니 바보 아닐까요?^^;;
OTL....ㅜㅜ
Commented by 파인 at 2006/02/18 03:57
와하하... 하나도 모르겠어요..[...]
Commented by NoSyu at 2006/02/18 10:38
저도 CSS 전혀 모르고, 페인트샵, 포토샵 등은 전혀 모릅니다.^^

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶