Silverlight 電腦圖形學3 三維空間座標

來源:互聯網
上載者:User

第一:奇次座標

為什麼要引入齊次座標呢?這主要是由於以下兩方面的原因:
    首先,在物理學中, 向量用於表示力和速度等物理量, 通常用具有長度和方向的線段來表示,4.1表示。我們往往用數學符號 表示一個向量。它與空間位置無關。對於三維空間中位於(x, y, z)處的一個點P, 如果我們用一個列矩陣 來表示它, 這與向量的表示會引起混淆。
    其次,在二維或三維空間中,矩陣的乘積,例如Q=TP,只能表示旋轉、比例和剪下等等變換,而不能表示平移變換。

   
例如, 在圖4.2中,點P繞座標原點旋轉θ角後到達P′,其座標可以用下式計算:
(4-1-1)
  
其中
  

    對於比例、反射和剪下等變換,我們都可以得到類似(4-1-1)式的矩陣運算式。但是,如果我們將物體沿直線路徑從一個座標位置平移到另一個座標位置,即通過給原始座標位置(x,y,z)加上平移距離tx、ty和tz後,使它移到新的位置(x′, y′, z′)。令P=[x, y, z]T, Pt=[tx , ty , tz]T, P′=[x′, y′, z′]T, 則
。 (4-1-2)
上式的右邊就不能象(4-1-1)式的右邊那樣寫成兩個矩陣相乘的形式。
    為了避免這些困難,我們用4維列矩陣來表示三維空間中的點和向量。假定用(e1, e2, e3, P0)指定三維空間座標系的架構,其中,e1, e2和e3是座標軸向量,P0是座標原點。則空間中的任何一個點P都可以在該座標系架構下唯一地寫成

我們可以用矩陣乘積的形式把上式改寫成

嚴格地講,上式並不是一個點積或內積,因為其矩陣的元素是不同的。上式右邊的4維行矩陣就是P點在給定的座標系架構下的齊次座標表示。或者等價地說,P點的齊次座標可以用4維列矩陣表示為

在同一個座標系架構下,任何向量V都可以寫成


於是,V能夠用列矩陣表示為 。
應當指出,這個式子幾何上有不同的解釋,我們在後面還會介紹。


 
仿射變換

仿射變換是電腦圖形學中最常用的變換。下列形式的座標變換稱為三維仿射變換:
左(4-2-1)
即:Q的座標是P的座標的線性組合。它可以用齊次座標來表示:
左(4-2-2)
    仿射變換將向量變換成為向量。如上一節所述,如果空間向量V的座標是Vx, Vy和Vz,它的座標架構表示(即齊次座標表示)是一個第4個分量為0的列向量。它的仿射變換為:
左(4-2-3)
  可見,向量V被變換成為另外一個向量:它的齊次座標的第4個分量也是0。
(4―2―1)


(4―2―2)

(4―2―3)


三維幾何變換

    
利用齊次座標和仿射變換,可以實現所有的三維幾何變換。任何複雜的幾何變換都可以分解成為比例、剪下、反射、旋轉和平移等等簡單變換的組合。
4.3.1 比例
    在作比例和旋轉變換時,都應當指定一個參考點。在此,我們先假定參考點是原點,在4.3.6節中我們將介紹繞任意點的平移和旋轉變換。

比例變換是對物體按某種比例進行放大或縮小的一種幾何變換。以座標原點為參考點,沿x、y和z座標軸分別獨立地縮放αx 、αy 和αz 倍的比例變換可以用齊次座標表示如下(見圖4.3):
P′=SP
其中,P和P′分別是用齊次座標表示的變換前和變換後的點,P=[x y z 1]T, P′=[x′ y′ z′ 1]T; S是比例變換矩陣,
(4-3-1)

 圖4.3 比例變換

其逆變換的變換矩陣
(4-3-2)

    對於任何一個三維幾何變換,一旦知道了它的變換矩陣(如S),這個變換就唯一確定了。所以,下面我們重點介紹其它幾何變換的變換矩陣。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.