計算機(jī)圖形學(xué)_第1頁
計算機(jī)圖形學(xué)_第2頁
計算機(jī)圖形學(xué)_第3頁
計算機(jī)圖形學(xué)_第4頁
計算機(jī)圖形學(xué)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計算機(jī)圖形學(xué)計算機(jī)圖形學(xué)長春師范大學(xué)-數(shù)學(xué)學(xué)院 nenu_ZhangK.of4121. 直線光柵化總結(jié)直線光柵化總結(jié)畫線方法畫線方法直線方程直線方程計算方法計算方法決策參數(shù)決策參數(shù)數(shù)值微分法(數(shù)值微分法(DDA)y=kx+b增量算法“四舍五入法”中點法中點法ax+by+c=0增量算法中點坐標(biāo)Bresenham算法算法y=kx+b增量算法誤差項of413(1) 數(shù)值微分?jǐn)?shù)值微分(DDA)法法例:畫直線段x y+0.5 int(y+0.5) (x, y)00 0 (0,0)10.4+0.5 0 (1,0)20.8+0.5 1 (2,1)31.2+0.5 1 (3,1)41.6+0.5 2 (4,2

2、)52.0+0.5 2 (5,2)0 1 2 3 4 5321Line: P0(0, 0)- P1(5, 2)2 , 5()0 , 0(10PP當(dāng)當(dāng)x每遞增每遞增1,y遞增遞增k(即直線斜率即直線斜率)of414(2) 中點畫線法中點畫線法例:用中點畫線法 x y d 0 0 1 1 0 -3 2 1 3 3 1 -1 4 2 5 5 2 30 1 2 3 4 5321)2, 5()0 ,0(10PP5, 20110 xxbyya, 6)( 2, 42, 12210badadbadP=(xp,yp)QP2P1of415(3) Bresenham算法算法例:Line: P0(0, 0), P1(

3、5,2) k=dy/dx=0.4 x y e 0 0 -0.5 1 0 -0.1 2 1 0.3 3 1 -0.3 4 2 0.1 5 2 -0.5 大于零,大于零,y加加1,小于零,不變,小于零,不變0 1 2 3 4 5321ddddof4162. 中點畫圓算法步驟中點畫圓算法步驟 1.輸入圓半徑r和圓心(xc , yc),并得到圓周(圓心在原點)上的第一點: (x0, y0)=(0,r) 2.計算決策參數(shù)初始值:P0=1.25-r 3.在每個xi位置(從i=0)開始,完成下列測試: 假如Pk0,下一個點在( xi+1 , yk ),且 否則,下一個點在( xi+1 , yk-1 ),且

4、4.確定在其他七個八分圓中的對稱點 5.若原始圓圓心不在原點,則將每個計算出的像素位置(x,y)移動到圓心(xc , yc)的圓路徑上,并畫坐標(biāo)值x=x + xc,y=y + yc 6.重復(fù)步驟3-5,直至xy32kkixPP5)(2kkiiyxPPP=(xp,yp)P1P2Mof417 例題: 給定圓的圓心在坐標(biāo)原點,半徑r=10,使用中點畫圓算法畫圖初始點:(x0 , y0)=(0,10)決策參數(shù)初始值:P0=1-r=-9決策參數(shù)初始增量:若P00,下一個點在( xi+1 , yk ),且P =2 x0 +3=3 若P0 0下一個點在(xi+1 , yk-1),且 P=2(x0 - y0)

5、+5=-15iPk(xi+1,yi+1)2xi+12yi+1P0-9(1,10)22031-6(2,10)523456of418關(guān)于y=x對稱關(guān)于y軸對稱關(guān)于x軸對稱of4193. 掃描線區(qū)域填充算法掃描線區(qū)域填充算法 活性邊表(AET): 2 0 7 3.5 -1.5 7P6P1P5P6AB 7 2 8 11 0 8P4P5P3P4CDx ymaxx ymaxx ymaxx ymax0112233445566778891011P2(5,1)EP3(11,3)DP4(11,8)GFCBP5(5,5)P6(2,7)AP1(2,2)of4110 新邊表(NET):上圖所示各條掃描線的新邊表NET

6、7 6P4P5 P5P6 5 4 3 2 1 0P1P2 P2P3 8 5 -3 2 5 3 3 2 0 7 11 0 8 5 2 8 5 -1.5 7P6P1P3P4of414. 區(qū)域填充算法區(qū)域填充算法11開始像素位置 4向連通區(qū)域向連通區(qū)域 8向連通區(qū)域向連通區(qū)域of41120 1 2 3 4 5 6 7 8 9987654321 初始化:種子點初始化:種子點(5,4) 出棧:掃描線出棧:掃描線y=4 填充:區(qū)域填充:區(qū)域2,5 確定新的種子點確定新的種子點of415. Cohen-Sutherland裁剪裁剪 編碼方法:otheryyCotheryyCbt0101minmaxother

7、xxCotherxxClr0101minmaxlrbtCCCCof41 如圖所示,采用Cohen-Sutherland算法對線段進(jìn)行裁剪時 將平面區(qū)域按照剪裁空間寫出CS編碼,并寫出線段端點P點和Q點的編碼各是多少? 此時是否需要與窗口的邊界進(jìn)行求交運算,為什么(利用點的編碼解釋)? 如需要,可以與窗口的哪些邊界求交,為什么?1) c1 = 1001、c2 = 01102) 需要,因為需要,因為c1|c2 != 0000 且且c1&c2 = 00003) 與與R,B和和T邊界進(jìn)行求交,邊界進(jìn)行求交, 因為因為c1&0100 != 0000, c2&1000!= 0000

8、, c2&0010!= 0000of416 多邊形裁剪多邊形裁剪 多邊形的各條邊的兩端點S、P。它們與裁剪線的位置關(guān)系只有四種可見一側(cè)可見一側(cè)可見一側(cè)可見一側(cè)SpSSSppp(1)(2)(3)(4)對于情況(1)僅輸出頂點P情況(2)輸出0個頂點情況(3)輸出線段SP與裁剪線的交點I情況(4)輸出線段SP與裁剪線的交點I和終點Pof41 如下圖所示,裁減窗口為正方形,采用逐邊裁件算法,依次按左、上、右、下的順序,用四條窗口邊界裁減多邊形123.每條框口邊界裁減后輸出的新的多邊形的頂點序列312of417 7 反走樣(反走樣(區(qū)域采樣方法區(qū)域采樣方法) 有寬度的線條輪廓 象素相交的五種情

9、況及用于計算面積的量0112233445567891011DD/mDm(1)(2)(3)(4)(5)intint( (面積面積* *像素最大灰度值)像素最大灰度值)n情況(情況(5)5)陰影面積為:陰影面積為:D D2 2/2m/2m;n情況(情況(4)4)陰影面積為:陰影面積為:D - m/2D - m/2;n情況陰影面積為:情況陰影面積為:1 - D1 - D2 2/m/mof41 離散的方法 n首先將屏幕象素均分成n個子象素,n然后計算中心點落在直線段內(nèi)的子象素的個數(shù)k。n將屏幕該象素的亮度置為相交區(qū)域面積的近似值可k/n。n=9,k=3近似面積為1/3of418. 對場景中的物體按深度

10、排序?qū)鼍爸械奈矬w按深度排序n深度重疊測試. Zmin(P)Zmin(Q),若Zmax(P)Zmin(Q),則P肯定不能遮擋Q。n投影重疊判斷 P和Q在xoy平面上投影的包圍盒在x方向上不相交 P和Q在xoy平面上投影的包圍盒在y方向上不相交 P和Q在xoy平面上的投影不相交 P在Q之后。P的各頂點均在Q的遠(yuǎn)離視點的一側(cè) Q在P之前。Q的各頂點均在P的靠近視點的一側(cè)of419. Bzier曲線曲線 (1) 設(shè)有控制頂點為P0(0,0),P1(48,96),P2(120,120),P3(216,72)的三次Bzier曲線P(t),試計算P(0.4)的(x,y)坐標(biāo),并寫出(x(t),y(t)的多

11、項式表示。64.8012.69 72216064.0120120288.09648432.000216.0 )4 .0()4 .0(8 .1)6 .0(2 .1)6 .0()4 .0()1 (3)1 (3)1 ()()1 (3)1 (3)1 ()()1 (3)1 (3)1 ()()(332212033322120333221203332212033,30PPPPPytyttyttyttyxtxttxttxttxPtPttPttPttBPtPiii則:of41 (2) 計算以(30,0),(60,10),(80,30),(90,60),(90,90)為控制頂點的4次Bzier曲線在t=1/2處的

12、值,并畫出de Casteljau三角形。of41)90,90(4P)75,90(13P)60, 5 .87(22P)25.46, 5 .82(31P)375.34,75(40P)0 ,30(0P)10,60(1P)30,80(2P)60,90(3P)45,85(12P)20,70(11P) 5 ,45(10P) 5 .32, 5 .77(21P) 5 .12, 5 .57(20P) 5 .22, 5 .67(30Pof41 (3) 設(shè)一條三次Bzier曲線的控制頂點為P0,P1,P2,P3。對曲線上一點P(0.5),及一個給定的目標(biāo)點T,給出一種調(diào)整Bzier曲線形狀的方法,使得P(0.5)

13、精確通過點T。30P0P1P2P3P10P11P12P20P21PTof41 (4) 給定三次Beizer曲線的控制頂點(0,0),(0,100),(100,0), (100,100),t=3/4時計算升階一次后的控制頂點,并給出新的特征多邊形。24*00PP 1P2P*43PP *1P*2P*3P圖3.14 Bezier曲線升階of4110. B樣條曲線樣條曲線 B樣條曲線中,按照節(jié)點矢量T的不同可以將B樣條分為均勻B樣條,準(zhǔn)均勻B樣條和非均勻B樣條,以下選項中屬于準(zhǔn)均勻B樣條節(jié)點矢量的是 ( ). A、T(0,1,2,3,4,5,6) B、T(1,1,1,2,3,4,4,4) C、T(0,

14、0,1,1,2,2,3,3) D、T(0,0.1,0.2,0.2,0.5,1)25of41 用de Boor算法,求以(30,0),(60,10),(80,30),( 9 0 , 6 0 ) , ( 9 0 , 9 0 ) 為 控 制 頂 點 , 以T=0,0,0,0,0.5,1,1,1,1為節(jié)點向量的三次B樣條曲線在t=1/4處的值。of41由de Boor遞推公式及T=0,0,0,0,0.5,1,1,1,1,可得: jrkjrkjikrtPtttttPttttjkjkjirPtPriirkirkiriirkiiiri,2, 1; 1,2, 1),()(,2, 1,0,)(111of41)41()3125.15,1875.62( 2121)21(22)625.20,375.69( 4341)1 ()10,55(2121)21(22)5 .37, 5 .82(4341)1 ()15,65(4341)1 ()5 ,45(2121)21(22222

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論