![計算機(jī)圖形學(xué) 二維變換及二維課件_第1頁](http://file4.renrendoc.com/view/09f82f8fc8319cce23fbd145291985cb/09f82f8fc8319cce23fbd145291985cb1.gif)
![計算機(jī)圖形學(xué) 二維變換及二維課件_第2頁](http://file4.renrendoc.com/view/09f82f8fc8319cce23fbd145291985cb/09f82f8fc8319cce23fbd145291985cb2.gif)
![計算機(jī)圖形學(xué) 二維變換及二維課件_第3頁](http://file4.renrendoc.com/view/09f82f8fc8319cce23fbd145291985cb/09f82f8fc8319cce23fbd145291985cb3.gif)
![計算機(jī)圖形學(xué) 二維變換及二維課件_第4頁](http://file4.renrendoc.com/view/09f82f8fc8319cce23fbd145291985cb/09f82f8fc8319cce23fbd145291985cb4.gif)
![計算機(jī)圖形學(xué) 二維變換及二維課件_第5頁](http://file4.renrendoc.com/view/09f82f8fc8319cce23fbd145291985cb/09f82f8fc8319cce23fbd145291985cb5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第三章 二維變換及二維觀察本章主要內(nèi)容3.1二維圖形的基本變換3.2窗口視圖變換3.3復(fù)合變換3.4二維圖形裁剪3.5本章小結(jié)3.1 二維圖形的基本變換3.1.1 數(shù)學(xué)基礎(chǔ)回顧矢量 一條有向線段,具有大小和方向兩個參數(shù) 最廣義指線性空間中的元素,代表N維空間的一個點 矢量矢量和矢量數(shù)乘矢量點積性質(zhì)矩陣矩陣:由mn個數(shù)按一定位置排列的一個整體,簡稱mn矩陣。 A=aij稱為矩陣A的第i行第j列元素 加法 A+B=乘法:設(shè)A為23階矩陣,B為32階矩陣C=AB=矩陣運算性質(zhì) 交換律和結(jié)合律:A+B=B+A;A+(B+C)=(A+B)+C 數(shù)乘分配律和結(jié)合律:a(A+B) = aA+aB; a(A
2、B) = (aA) B=A (aB) (a+b)A = aA + bA a(bA) = (ab)A矩陣乘法的結(jié)合律及分配律 A(B C) = (A B)C (A+B) C = A C+ B C C (A+B) = C A + C B3.1.2 二維圖形基本變換基本概念 圖形變換:對圖形的幾何信息經(jīng)過幾何變換產(chǎn)生新的圖形二維變換方法:二維圖形是由點組成,對點進(jìn)行變換變換矩陣的確定運算,得到新點坐標(biāo) P=RP 五種基本變換:平移變換、旋轉(zhuǎn)變換、比例變換、對稱變換、錯切變換平移變換平移變換從原始位置P(x,y)平移到新位置P(x,y)有用矩陣的形式表示為即 平移變換矩陣旋轉(zhuǎn)變換旋轉(zhuǎn)變換P(x,y)繞
3、原點逆時針旋轉(zhuǎn)得到新點P(x,y)矩陣表示形式即旋轉(zhuǎn)變換矩陣 比例變換比例變換從原始位置P(x,y)平移到新位置P(x,y)有矩陣形式即比例變換矩陣對稱變換反射變換(鏡像變換):一個圖形繞某一軸旋轉(zhuǎn)180度形成新圖形的過程。原始位置P(x,y)關(guān)于對稱軸對稱得到新位置P(x,y)矩陣形式為 對稱變換矩陣 Tm 錯切變換 保持圖形上各點的某一坐標(biāo)值不變,而另一坐標(biāo)值關(guān)于該坐標(biāo)成線性變化。 坐標(biāo)保持不變的坐標(biāo)軸為依賴軸,其余稱為方向軸。以Y軸為依賴軸(沿X軸錯切)坐標(biāo)變換 矩陣形式即 錯切變換矩陣(C0沿正方向錯切,C0沿正方向錯切,b0沿負(fù)方向錯切) 討論 二維變換的矩陣表達(dá)能否找到一種統(tǒng)一的形
4、式? 找到一個通用的算子代表所有變換?齊次坐標(biāo) 變換矩陣的統(tǒng)一表示表示無窮遠(yuǎn)的點定義:用n+1維向量表示n維向量二維點(x,y)的齊次坐標(biāo)表示是(hx,hy,h),如(8,4,2)(4,2,1)都表示同一個坐標(biāo)(4,1)h=1為規(guī)范化齊次坐標(biāo)二維變換的齊次坐標(biāo)表達(dá)通常?。▁,y,1)表示二維平面未變換點P(x,y)的齊次坐標(biāo) 基本幾何變換矩陣變?yōu)?3的矩陣新點用齊次坐標(biāo)表示X,Y,H新點的二維坐標(biāo)P(x,y)表示為齊次坐標(biāo)表示 四個子矩陣的作用這些都是相對于原點的變換。本課小結(jié) 五種基本二維圖形變換 圖形變換的矩陣表示 為什么引入齊次坐標(biāo)? 圖形變換的齊次坐標(biāo)表示 五種變換矩陣及四個子矩陣3.
5、2 窗口到視區(qū)的變換基本概念用戶域和窗口區(qū)1 用戶域:程序員用來定義草圖的整個自然空間(WD) a 人們所要描述的圖形均在用戶域中定義。 b 用戶域是一個實數(shù)域,理論上是連續(xù)無限的。2 窗口區(qū):用戶指定的任一區(qū)域(W) a 窗口區(qū)W小于或等于用戶域WD b 小于用戶域的窗口區(qū)W叫做用戶域的子域。 c 窗口可以有多種類型,矩形窗口、圓形窗口、多邊形窗口等等 d 窗口可以嵌套,即在第一層窗口中可再定義第二層窗口,在第I層窗口中可再定義第I+1層窗口等等?;靖拍?屏幕域和視圖區(qū)1. 屏幕域(DC):設(shè)備輸出圖形的最大區(qū)域,是有限的整數(shù)域。如圖形顯示器分辨率為1024768DC0.10230.767
6、2視圖區(qū):任何小于或等于屏幕域的區(qū)域 a視圖區(qū)用設(shè)備坐標(biāo)定義在屏幕域中 b窗口區(qū)顯示在視圖區(qū),需做窗口區(qū)到視圖區(qū)的坐標(biāo)轉(zhuǎn)換。 c 視圖區(qū)可以有多種類型:圓形、矩形、多邊形等。 d 視圖區(qū)也可以嵌套。 二維圖形的顯示流程圖從應(yīng)用程序得到圖形的用戶坐標(biāo)對窗口區(qū)進(jìn)行裁剪窗口區(qū)到視圖區(qū)的規(guī)格化變換視圖區(qū)從規(guī)格化坐標(biāo)系到設(shè)備坐標(biāo)系的變換WCWCNDCDC在圖形設(shè)備上輸出坐標(biāo)變換設(shè)窗口的四條邊界WXL,WXR,WYB,WYT視圖的四條邊界VXL,VXR,VYB,VYT則用戶坐標(biāo)系下的點(即窗口內(nèi)的一點)(Xw,Yw)對應(yīng)屏幕視圖區(qū)中的點(Xs,Ys),其變換公式為坐標(biāo)變換簡化為:1) 當(dāng)ac時,即x 方向
7、的變化與y方向的變化不同時,視圖中的圖形會有伸縮變化,圖形變形。2)當(dāng)a=c=1,b=d=0則Xs=Xw,Ys=Yw,圖形完全相同。 3.3復(fù)合變換復(fù)合變換 復(fù)合變換又稱級聯(lián)變換,指對圖形做一次以上的幾何變換。注意:任何一個線性變換都可以分解為上述幾類變換。 例1:復(fù)合平移求點P(x,y)經(jīng)第一次平移變換(Tx1,Ty1),第二次平移變換(Tx2,Ty2)后的坐標(biāo)P*(x*, y*)解:設(shè)點P(x,y,1)經(jīng)第一次平移變換后的坐標(biāo)為P(x y 1),則經(jīng)第二次平移變換后的坐標(biāo)為P*(x* y* 1)變換矩陣為Tt=Tt1Tt2例2:多種復(fù)合組合例:對一線段先放大2倍(即Sx=Sy=2),再平移
8、Tx=10,Ty=0。解:設(shè)點(x,y)為線段上的任意一點,點(x,y)為點(x,y)放大后的坐標(biāo),點(x,y)為點(x,y)平移后的坐標(biāo),則: x,y,1= x,y,1S2(2,2) x,y,1= x,y,1T2(10,0) x,y,1=x,y,1T2(10,0)=x,y,1S2(2,2)T2(10,0) 令:M=S2(2,2)T2(10,0) ,則M即為組合變換yx(x,y)yx(x,y)yx(x,y)Tx例3:旋轉(zhuǎn)變換對參考點F(xf,yf)做旋轉(zhuǎn)變換。解:1、把旋轉(zhuǎn)中心F(xf,yf)平移至坐標(biāo)原點,即坐標(biāo)系平移(-xf,-yf),則2、進(jìn)行旋轉(zhuǎn)變換例3:旋轉(zhuǎn)變換3.將坐標(biāo)系平移回原來
9、的原點因此變換矩陣: 例4:任意反射軸的反射變換任一圖形關(guān)于任意反射軸y=a+bx的反射變換 解:1. 將坐標(biāo)原點平移到(0,a)處例4:任意的反射軸的反射變換2.將反射軸(已平移后的直線)按順時針方向旋轉(zhuǎn)角,使之與x軸重合 3.圖形關(guān)于x軸的反射變換 4.將反射軸逆時針旋轉(zhuǎn)角例4:任意的反射軸的反射變換5.恢復(fù)反射軸的原始位置因此 3.4 二維圖形裁剪裁剪裁剪:確定圖形中哪些部分落在顯示區(qū)之內(nèi),哪些落在顯示區(qū)之外,以便只顯示落在顯示區(qū)內(nèi)的那部分圖形。這個選擇過程稱為裁剪。裁剪的實質(zhì)就是決定圖形中哪些點、線段、文字以及多邊形在窗口之內(nèi)。 圖形裁剪算法,直接影響圖形系統(tǒng)的效率。3.4.1點的裁剪
10、圖形裁剪中最基本的問題。 假設(shè)窗口的左下角坐標(biāo)為(xL,yB),右上角坐標(biāo)為(xR,yT),對于給定點P(x,y),則P點在窗口內(nèi)的條件是要滿足下列不等式:xL = x = xR 并且yB = y = yT否則,P點就在窗口外。最簡單的圖形裁剪方法是判斷各點是否在窗口內(nèi)。(xL,yB )(xR,yT )3.3.2直線段裁剪直線段裁剪算法是復(fù)雜圖形裁剪的基礎(chǔ)。復(fù)雜的曲線可以通過折線段來近似,從而裁剪問題也可以化為直線段的裁剪問題。直線裁剪算法:Cohen-Sutherland算法 中點分割算法3.4.2直線段裁剪裁剪線段與窗口的關(guān)系:(1)直線兩個端點都在窗口內(nèi);(2)兩個端點都在窗口外,且在窗
11、口的某邊框線的同一側(cè);(3)其它 直線的一個端點在窗口內(nèi),另一個在窗口外 兩個均在窗口外,橫跨窗口 整條線在窗口外,兩交點不在窗口某邊線的同一側(cè)提高裁剪效率:快速判斷情形(1)(2),對于情形(3),設(shè)法減少求交次數(shù)和每次求交時所需的計算量。Cohen-Sutherland裁剪1.基本思想:對于每條線段P1P2分為三種情況處理:(1)若P1P2完全在窗口內(nèi),則顯示該線段P1P2。(2)若P1P2明顯在窗口外,則丟棄該線段。(3)若線段不滿足(1)或(2)的條件,則在交點處把線段分為兩段。其中一段完全在窗口外,可棄之。然后對另一段重復(fù)上述處理。2.為快速判斷,采用如下編碼方法: 實現(xiàn)方法: 將窗
12、口邊線兩邊延長,得到九個區(qū)域,每一個區(qū)域都用一個四位二進(jìn)制數(shù)標(biāo)識,直線的端點都按其所處區(qū)域賦予相應(yīng)的區(qū)域碼,用來標(biāo)識出端點相對于裁剪矩形邊界的位置。0101Cohen-Sutherland裁剪100100010101100000000100101000100110ABCDCohen-Sutherland算法將區(qū)域碼的各位從右到左編號,則坐標(biāo)區(qū)域與各位的關(guān)系為: 上 下 右 左 X X X X任何位賦值為1,代表端點落在相應(yīng)的位置上,否則該位為0。若端點在剪取矩形內(nèi),區(qū)域碼為0000。如果端點落在矩形的左下角,則區(qū)域碼為0101。Cohen-Sutherland算法3.判斷依據(jù)一旦給定所有的線段
13、端點的區(qū)域碼,就可以快速判斷哪條直線完全在剪取窗口內(nèi),哪條直線完全在窗口外。所以得到一個規(guī)律:Cohen-Sutherland裁剪若P1P2完全在窗口內(nèi):code1=0,且code2=0,則“取”若P1P2明顯在窗口外:code1&code20,則“棄” 在交點處把線段分為兩段。其中一段完全在窗口外,可棄之。然后對另一段重復(fù)上述處理。 編碼 線段裁剪 Cohen-Sutherland直線裁剪算法小結(jié)本算法的優(yōu)點在于簡單,易于實現(xiàn)。可以簡單的描述為將直線在窗口外邊的部分刪去,處理之后,剩余部分就是可見的了。在這個算法中求交點是很重要的,決定了算法的速度。特點:用編碼方法可快速判斷線段的完全可見和
14、顯然不可見。中點分割裁剪算法基本思想:從P0點出發(fā)找出離P0最近的可見點,和從P1點出發(fā)找出離P1最近的可見點。這兩個可見點的連線就是原線段的可見部分。與Cohen-Sutherland算法一樣首先對線段端點進(jìn)行編碼,并把線段與窗口的關(guān)系分為三種情況,對前兩種情況,進(jìn)行一樣的處理;對于第三種情況,用中點分割的方法求出線段與窗口的交點。A、B分別為距P0 、 P1最近的可見點,Pm為P0P1中點。 中點分割算法-求線段與窗口的交點從P0出發(fā)找距離P0最近可見點采用中點分割方法先求出P0P1的中點Pm,若P0Pm不是顯然不可見的,并且P0P1在窗口中有可見部分,則距P0最近的可見點一定落在P0Pm
15、上,所以用P0Pm代替P0P1;否則取PmP1代替P0P1。再對新的P0P1求中點Pm。重復(fù)上述過程,直到PmP1長度小于給定的控制常數(shù)為止,此時Pm收斂于交點。從P1出發(fā)找距離P1最近可見點采用上面類似方法。中點分割裁剪算法對分辯率為2N*2N的顯示器,上述二分過程至多進(jìn)行N次。主要過程只用到加法和除法運算,適合硬件實現(xiàn),它可以用左右移位來代替乘除法,這樣就大大加快了速度。中點分割裁剪算法小結(jié) 5.1點的裁剪 5.2直線段裁剪 3.4.3多邊形裁剪 3.4.3多邊形裁剪錯覺:直線段裁剪的組合?新的問題:1)邊界不再封閉,需要用窗口邊界的恰當(dāng)部分來封閉它,如何確定其邊界?2)一個凹多邊形可能被
16、裁剪成幾個小的多邊形,如何確定這些小多邊形的邊界?Sutherland-Hodgman算法分割處理策略:將多邊形關(guān)于矩形窗口的裁剪分解為多邊形關(guān)于窗口四邊所在直線的裁剪。流水線過程(左上右下):前邊的結(jié)果是后邊的輸入。亦稱逐邊裁剪算法Sutherland-Hodgman算法基本思想是一次用窗口的一條邊裁剪多邊形??紤]窗口的一條邊以及延長線構(gòu)成的裁剪線該線把平面分成兩個部分:可見一側(cè);不可見一側(cè)多邊形的各條邊的兩端點S、P。它們與裁剪線的位置關(guān)系只有四種Sutherland-Hodgman算法情況(1)僅輸出頂點P;情況(2)輸出0個頂點;情況(3)輸出線段SP與裁剪線的交點I;情況(4)輸出線段SP與裁剪線的交點I和終點PSutherland-Hodgman算法框圖 處理線段SP過程子框圖Sutherland-Hodgman算法上述算法僅用一條裁剪邊對多邊形進(jìn)行裁剪,得到一個頂點序列,作為下一條裁剪邊處理過程的輸入。對于每一條裁剪邊,算法框圖同上。Sutherland-Hodgeman算法小結(jié)對凸
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- SOTS-1-technical-grade-生命科學(xué)試劑-MCE-9410
- N-Propionitrile-Chlorphine-hydrochloride-生命科學(xué)試劑-MCE-1679
- Cy3-PEG-Amine-生命科學(xué)試劑-MCE-8875
- AH-8529-生命科學(xué)試劑-MCE-1699
- 1-2-3-Tri-10-Z-undecenoyl-glycerol-生命科學(xué)試劑-MCE-6075
- 2025年度藥品推廣與醫(yī)藥行業(yè)協(xié)會合作推廣協(xié)議
- 二零二五年度智能制造產(chǎn)業(yè)股權(quán)轉(zhuǎn)移合同終止書
- 2025年度工業(yè)機(jī)器人維護(hù)保養(yǎng)與故障排除維修合同
- 二零二五年度房地產(chǎn)項目終止及賠償協(xié)議書
- 2025年度股權(quán)分配協(xié)議書范本:XX創(chuàng)業(yè)團(tuán)隊股權(quán)分配及退出補償實施協(xié)議
- 煤場用車輛倒運煤的方案
- 《預(yù)防犯罪》課件
- 【企業(yè)作業(yè)成本在上海汽車集團(tuán)中的應(yīng)用研究案例7300字(論文)】
- 《民航服務(wù)溝通技巧》教案第6課巧妙化解沖突
- 化學(xué)用語專項訓(xùn)練
- 《了凡四訓(xùn)》課件
- 醫(yī)院住院病人健康教育表
- 風(fēng)險矩陣法(詳細(xì))
- 實驗室供應(yīng)商評價的5個基本步驟
- 電力公司工程勘察設(shè)計管理辦法
評論
0/150
提交評論