一、齊次坐標

在3D世界中表示一個點的方式是:(x, y, z);然而在3D世界中表示一個向量的方式也是:(x, y, z);如果我們只給一個三元組(x, y, z)鬼知道這是向量還是點,畢竟點與向量還是有很大區(qū)別的,點只表示位置,向量沒有位置只有大小和方向。為了區(qū)分點和向量我們給它加上一維,用(x, y, z, w)這種四元組的方式來表達坐標,我們規(guī)定(x, y, z, 0)表示一個向量,(x, y, z, 1)或(x', y', z', 2)等w不為0時來表示點。這種用n+1維坐標表示n維坐標的方式稱為齊次坐標。

齊次坐標除了能夠區(qū)分點和向量,在3D圖形學(xué)中還有重要的意義。齊次坐標系使得我們可以在一中特殊的方程組中求出解,這個方程組中每一個方程都表示一個與系統(tǒng)中其他直線平行的直線。我們知道在歐幾里得空間中,對這種方程組是無解的,因為他們沒有交點。然而在現(xiàn)實世界中我們是可以看到兩條平行線相交的。

兩條平行的鐵路最終相較于無窮遠處。這就說明人眼看到的世界并不是歐幾里得空間,而是在一個名為透視空間中的世界。所以要在2D屏幕上表示3D世界,我們需要一個數(shù)學(xué)工具來承擔(dān)這項任務(wù),而齊次坐標很完美的承擔(dān)了這項任務(wù)。

如果我們知道一個三維點的齊次坐標為(X, Y, Z, w),那么它的3D空間坐標為:

x = X / w

y = Y / w

z = Z / w

網(wǎng)友評論