《線上線下混合式計算機圖形學基礎(chǔ)實驗教程》課件-第5章_第1頁
《線上線下混合式計算機圖形學基礎(chǔ)實驗教程》課件-第5章_第2頁
《線上線下混合式計算機圖形學基礎(chǔ)實驗教程》課件-第5章_第3頁
《線上線下混合式計算機圖形學基礎(chǔ)實驗教程》課件-第5章_第4頁
《線上線下混合式計算機圖形學基礎(chǔ)實驗教程》課件-第5章_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第5章三維幾何變換5.1實驗內(nèi)容簡述和實驗目標5.2三維基本幾何變換5.3三維復合幾何變換5.4三維幾何變換綜合示例5.5課外拓展性實驗

5.1實驗內(nèi)容簡述和實驗目標

基本實驗內(nèi)容包括:三維基本幾何變換(三維平移變換、三維旋轉(zhuǎn)變換、三維縮放變換、三維錯切變換、三維對稱變換)、三維復合幾何變換(三維圖形繞空間任意軸旋轉(zhuǎn)、三維圖形相對任意點縮放)和三維幾何變換綜合示例。同時,配備了一個課外拓展性實驗。

(1)推導和熟記齊次坐標系下三維圖形幾何變換對應的代數(shù)表示方式(布魯姆知識模型:記憶和理解);

(2)推導和寫出三維圖形繞空間任意軸旋轉(zhuǎn)的變換矩陣(布魯姆知識模型:理解和應用);

(3)判斷給定矩陣復合對三維圖形產(chǎn)生的幾何變換(布魯姆知識模型:應用、分析和評價);

(4)發(fā)現(xiàn)并排除三維圖形幾何變換后三維圖形無法在窗口顯示的原因——與視點和投影變換緊密關(guān)聯(lián)(布魯姆知識模型:應用和分析);

(5)結(jié)合OpenGL編程實現(xiàn)——通過鼠標、鍵盤交互,展現(xiàn)給定三維圖形的基本幾何變換、任意復合幾何變換、視點變換和投影變換(布魯姆知識模型:應用)。

5.2三維基本幾何變換

5.2.1三維平移變換三維圖形平移變換的參數(shù)化表達式如下:

(5.1)

其中,tx、ty、tz分別表示三維圖形在x、y、z軸方向上的平移量。

對應的齊次平移變換的矩陣乘積形式如下:

(5.2)

1.關(guān)鍵數(shù)據(jù)結(jié)構(gòu)

自定義如下數(shù)據(jù)結(jié)構(gòu)用以表示三維齊次坐標下的頂點和向量。該數(shù)據(jù)結(jié)構(gòu)應用于本章所有齊次三維幾何變換實驗。

2.變換函數(shù)代碼實現(xiàn)

3.案例效果

應用式(5.2)對如圖5-1(a)所示的頂點在原點的長方體向x軸正方向移動30個單位,最終效果如圖5-1(b)所示。

圖5-1三維平移變換示意圖

5.2.2三維旋轉(zhuǎn)變換

1.繞x軸旋轉(zhuǎn)

三維空間中的任意三維圖形,繞x軸的逆時針方向旋轉(zhuǎn)θ,對應的參數(shù)化表達式如下:

(5.3)

對應的齊次旋轉(zhuǎn)變換的矩陣乘積形式如下:

(5.4)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.4)對如圖5-2(a)所示的頂點在原點的長方體繞x軸逆時針旋轉(zhuǎn)60°,最終效果如圖5-2(b)所示。

圖5-2繞x軸的三維旋轉(zhuǎn)變換示意圖

2.繞y軸旋轉(zhuǎn)

三維空間中的任意三維圖形,繞y軸的逆時針方向旋轉(zhuǎn)θ,對應的參數(shù)化表達式如下:

(5.5)

對應的齊次旋轉(zhuǎn)變換的矩陣乘積形式如下:

(5.6)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.6)對如圖5-3(a)所示的頂點在原點的長方體繞y軸逆時針旋轉(zhuǎn)60°,最終效果如圖5-3(b)所示。

圖5-3繞y軸的三維旋轉(zhuǎn)變換示意圖

3.繞z軸旋轉(zhuǎn)

三維圖形繞z軸逆時針方向旋轉(zhuǎn)θ,對應的參數(shù)化表達式如下:

(5.7)

對應的齊次旋轉(zhuǎn)變換的矩陣乘積形式如下:

(5.8)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.8)對如圖5-4(a)所示的頂點在原點的長方體繞z軸逆時針旋轉(zhuǎn)60°,最終效果如圖5-4(b)所示。

圖5-4繞z軸的三維旋轉(zhuǎn)變換示意圖

5.2.3三維縮放變換

三維圖形相對原點縮放的參數(shù)化表達式如下:

(5.9)

其中,sx、sy、sz分別表示三維圖形在x軸、y軸和z軸上的縮放系數(shù)。

對應的齊次縮放變換的矩陣乘積形式如下:

(5.10)

1.變換函數(shù)代碼實現(xiàn)

2.案例效果

應用式(5.10)對如圖5-5(a)所示的一個頂點在原點的長方體進行錯切變換,設置其在x、y、z軸方向上分別縮放1.5倍、1.2倍、1.5倍,最終效果如圖5-5(b)所示。

圖5-5應用式(5.10)進行錯切變換示意圖

5.2.4三維錯切變換

1.依賴于x軸的齊次錯切變換

三維圖形以x軸為依賴軸的錯切變換的參數(shù)化表達式如下:

(5.11)

保持三維圖形上各頂點x坐標不變,y、z坐標依x坐標,分別以shxy、shxz切變程度呈線性變換。

對應的齊次錯切變換的矩陣乘積形式如下:

(5.12)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.12)對如圖5-6(a)所示的一個頂點在原點的長方體進行錯切變換,設置其在y、z軸方向的切變程度分別為0.3、0.6,最終效果如圖5-6(b)所示。

圖5-6依賴于x軸的齊次錯切變換示意圖

2.依賴于y軸的齊次錯切變換

三維圖形以y軸為依賴軸的錯切變換的參數(shù)化表達式如下:

(5.13)

保持三維圖形上各頂點y坐標不變,x、z坐標依y坐標分別以shyx、shyz切變程度呈線性變換。

對應的齊次錯切變換的矩陣乘積形式如下:

(5.14)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.14)對如圖5-7(a)所示的一個頂點在原點的長方體進行錯切變換,設置其在x、z軸方向的切變程度分別為0.4、1.2,最終效果如圖5-7(b)所示。

圖5-7依賴于y軸的齊次錯切變換示意圖

3.依賴于z軸的齊次錯切變換

三維圖形以z軸為依賴軸的錯切變換的參數(shù)化表達式如下:

(5.15)

保持三維圖形上各頂點z坐標不變,x、y坐標依z坐標分別以shzx、shzy切變程度呈線性變換。

對應的齊次錯切變換的矩陣乘積形式如下:

(5.16)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.16)對如圖5-8(a)所示的一個頂點在原點的長方體進行錯切變換,設置其在x、z軸方向的切變程度分別為1.2、1.5,最終效果如圖5-8(b)所示。

圖5-8依賴于z軸的齊次錯切變換示意圖

5.2.5三維對稱變換

1.關(guān)于x軸的齊次對稱變換

三維圖形關(guān)于x軸做對稱變換的參數(shù)化表達式如下:

(5.17)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.18)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.18)對如圖5-9(a)所示的一個頂點在原點的長方體關(guān)于x軸進行對稱變換,最終效果如圖5-9(b)所示。

圖5-9關(guān)于x軸的齊次對稱變換示意圖

2.關(guān)于y軸的齊次對稱變換

三維圖形關(guān)于y軸做對稱變換的參數(shù)化表達式如下:

(5.19)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.20)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.20)對如圖5-10(a)所示的一個頂點在原點的長方體關(guān)于y軸進行齊次對稱變換,最終效果如圖5-10(b)所示。

圖5-10關(guān)于y軸的齊次對稱變換示意圖

3.關(guān)于z軸的齊次對稱變換

三維圖形關(guān)于z軸做對稱變換的參數(shù)化表達式如下:

(5.21)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.22)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.22)對如圖5-11(a)所示的一個頂點在原點的長方體關(guān)于z軸進行齊次對稱變換,最終效果如圖5-11(b)所示。

圖5-11關(guān)于z軸的齊次對稱變換示意圖

4.關(guān)于xoz坐標軸平面的齊次對稱變換

三維圖形關(guān)于xoz坐標軸平面做對稱變換的參數(shù)化表達式如下:

(5.23)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.24)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.24)對如圖5-12(a)所示的一個頂點在原點的長方體關(guān)于xoz坐標軸平面進行齊次對稱變換,最終效果如圖5-12(b)所示。

圖5-12關(guān)于xoz坐標軸平面的齊次對稱變換示意圖

5.關(guān)于xoy坐標軸平面的齊次對稱變換

三維圖形關(guān)于xoy坐標軸平面做對稱變換的參數(shù)化表達式如下:

(5.25)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.26)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.26)對如圖5-13(a)所示的一個頂點在原點的長方體關(guān)于xoy坐標軸平面進行齊次對稱變換,最終效果如圖5-13(b)所示。

圖5-13關(guān)于xoy坐標軸平面的齊次對稱變換示意圖

6.關(guān)于yoz坐標軸平面齊次對稱變換

三維圖形關(guān)于yoz坐標軸平面做對稱變換的參數(shù)化表達式如下:

(5.27)

對應的齊次對稱變換的矩陣乘積形式如下:

(5.28)

1)變換函數(shù)代碼實現(xiàn)

2)案例效果

應用式(5.28)對如圖5-14(a)所示的一個頂點在原點的長方體關(guān)于yoz坐標軸平面進行齊次對稱變換,最終效果如圖5-14(b)所示。

圖5-14關(guān)于yoz坐標軸平面齊次對稱變換示意圖

5.3三維復合幾何變換

5.3.1三維圖形繞空間任意軸旋轉(zhuǎn)三維圖形繞任意軸旋轉(zhuǎn)的效果等價于多個三維基本幾何變換的有序復合。此處,假定要實現(xiàn)任一三維圖形繞過點P(x,y,z)且方向向量為n(nx,ny,nz)的軸逆時針旋轉(zhuǎn)θ,其復合變換公式如下:

(5.29)

其中:A為平移矩陣,對應式(5.2),使三維圖形及旋轉(zhuǎn)軸在x軸、y軸和z軸方向上平移(-x,-y,-z),達到P點與原點重合;B為旋轉(zhuǎn)矩陣,對應式(5.6),使三維圖形及旋轉(zhuǎn)軸繞y軸逆時針旋轉(zhuǎn)α,達到旋轉(zhuǎn)軸與xoy坐標軸平面重合;C為旋轉(zhuǎn)矩陣,對應式(5.8),使三維圖形及旋轉(zhuǎn)軸繞z軸逆時針旋轉(zhuǎn)β,達到旋轉(zhuǎn)軸與x軸重合;D為旋轉(zhuǎn)矩陣,對應式(5.4),使得三維圖形繞x軸逆時針旋轉(zhuǎn)θ;E為旋轉(zhuǎn)矩陣C的逆變換,對應式(5.8),使三維圖形及旋轉(zhuǎn)軸繞z軸順時針旋轉(zhuǎn)β,達到旋轉(zhuǎn)軸與xoy坐標軸平面再次重合;F為旋轉(zhuǎn)矩陣B的逆變換,對應式(5.6),使三維圖形及旋轉(zhuǎn)軸繞y軸順時針旋轉(zhuǎn)α,達到旋轉(zhuǎn)軸回到初始的姿態(tài);G為平移矩陣A的逆變換,對應式(5.2),使得三維圖形及旋轉(zhuǎn)軸在x軸、y軸和z軸方向上平移(x,y,z),達到P點與回到原來的位置。

1.變換函數(shù)代碼實現(xiàn)

2.案例效果

采用繞任意軸旋轉(zhuǎn)算法,對如圖5-15(a)所示的一頂點在原點的長方體,關(guān)于繞過點(20,20,20)且方向向量為(1,1,1)的軸逆時針旋轉(zhuǎn)60°,最終效果如圖5-15(b)所示。

圖5-15三維圖形繞空間任意軸旋轉(zhuǎn)示意圖

5.3.2三維圖形相對任意點縮放

三維圖形相對任意點縮放的效果等價于多個三維基本幾何變換的有序復合。此處,假定要實現(xiàn)任一三維圖形相對于點P(x,y,z)進行縮放,其復合變換公式如下:

(5.30)

其中:A為平移矩陣,對應式(5.2),使三維圖形及P在x軸、y軸和z軸方向上平移(-x,-y,-z),達到P點與原點重合;B為縮放矩陣,對應式(5.10),使三維圖形繞原點縮放;C為平移矩陣A的逆變換,對應式(5.2),使得三維圖形及P在x軸、y軸和z軸方向上平移(x,y,z),達到P點與回到原來的位置。

1.變換函數(shù)代碼實現(xiàn)

2.案例效果

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論