2009-12-21 51 views
0

所以我做了很多的數學運算,我遇到了不同的事情,座標平面 從零開始在底部,在Y軸上向上。處理不同的座標系

但是在我的程序中是相反的。零位在屏幕的頂部,並且沿着y軸向上。

我一直在處理這個問題,通過更新我的數學方程來補償。

有沒有更簡單的方法?

回答

2

我看到你用openGL標記了它。我不完全相信你在這裏做什麼,但如果你不知道你可以在gluLookAt功能改變了方向,即

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軸用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

你可以只在重構的公式你轉換成一組變換矩陣中。

0

任何「更簡單的方法」完全取決於你在做什麼。你在做數學建模嗎? 3D渲染?簡單的GUI設置?如果您正在進行大量的矩陣變換,則可以通過-1將差值滾動到一個比例,然後轉換頁面的高度。如果你不是,那麼改變你的方程式可能是你最好的選擇。