2009-12-21 2 views
0

그래서 나는 많은 수학을하고 있으며, 좌표 평면 이 바닥에서 0에서 시작하여 y 축에서 위로 올라가는 다른 것들을 실행하고 있습니다.다른 좌표계 다루기

그러나 내 프로그램에서는 그 반대입니다. 0은 화면 상단에 올라가고 y 축 아래로 내려갑니다.

저는 이것을 보상하기 위해 수학 방정식을 업데이트함으로써이 문제를 해결해 왔습니다.

더 쉬운 방법이 있습니까?

답변

2

openGL로 태그를 붙였습니다. 나는 당신이 무슨 일을하는지 정확히 모르겠지만 경우에 당신은 즉

gluLookAt(0.0,0.0,100.0, // Camera position 
    0.0,0.0,0.0,   // Camera direction 
    0.0,1.0,0.0);   // Camera up direction 

그래서 이것은 Z 축 카메라를 것, 당신이하는 gluLookAt 함수에서 위쪽 방향을 변경할 수 있습니다 몰랐어요 y를 화면 위로 올리면 원점을 보게됩니다.

0

음수 Y 스케일을 사용하여 스케일링 변환으로 처리하고 적용 할 다른 변환을 사용하여 롤링합니다. 3D 작업을하고 있고 4x4 행렬 변환을 많이해야한다고 가정합니다.

편집 : the Wikipedia article을 참조하면, 나는 변환 행렬은 다음과 같이 생각 : 당신은 그냥 행렬 변환의 집합으로 방정식에 변환을 리팩토링 할 수

1 0 0 0 
0 -1 0 0 
0 0 1 0 
0 0 0 0 
0

"쉬운 방법"은 정확히 무엇을하고 있는지에 달려 있습니다. 수학적 모델링을하고 있습니까? 3D 렌더링? 간단한 GUI 설정? 행렬 변환을 많이 수행하는 경우 -1을 사용하여 차이를 눈금으로 바꾸고 페이지 높이를 변환 할 수 있습니다. 그렇지 않다면 방정식을 변경하는 것이 최선의 방법 일 수 있습니다.