計(jì)算機(jī)圖形學(xué)ppt課件 第七章真實(shí)感圖形顯示_第1頁(yè)
計(jì)算機(jī)圖形學(xué)ppt課件 第七章真實(shí)感圖形顯示_第2頁(yè)
計(jì)算機(jī)圖形學(xué)ppt課件 第七章真實(shí)感圖形顯示_第3頁(yè)
計(jì)算機(jī)圖形學(xué)ppt課件 第七章真實(shí)感圖形顯示_第4頁(yè)
計(jì)算機(jī)圖形學(xué)ppt課件 第七章真實(shí)感圖形顯示_第5頁(yè)
已閱讀5頁(yè),還剩140頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、投影變換失去了深度信息,往往導(dǎo)致圖形的二義性要消除二義性,就必須在繪制時(shí)消除被遮擋的不可見(jiàn)的線或面,習(xí)慣上稱作消除隱藏線和隱藏面,簡(jiǎn)稱為消隱。經(jīng)過(guò)消隱得到的投影圖稱為物體的真實(shí)圖形。長(zhǎng)方體線框投影圖的二義性消隱的對(duì)象是三維物體。三維體的表示主要有邊界表示和csg表示等。消隱結(jié)果與觀察物體有關(guān),也與視點(diǎn)有關(guān)。 線框圖 消隱圖 真實(shí)感圖形 求交運(yùn)算射線與直線求交運(yùn)算射線與直線求交運(yùn)算假定直線方程為射線方程為把射線方程代入直線方程得到 0cbyax0201ytdyxtdx0)(0021cbyaxtbdad當(dāng) 時(shí),直線與射線平行,若還有 ,則整條射線與直線重合。當(dāng) 時(shí),則021bdad000cbdad

2、021bdad)/()(21001bdadcbyaxt當(dāng) 時(shí),二者交點(diǎn)為 ,當(dāng) 時(shí),無(wú)交點(diǎn)01t),(012011ytdxtd01t射線與線段求交問(wèn)題射線與線段求交問(wèn)題假定射線方程如上一樣,線段的兩端點(diǎn)為 ,則線段的方程為),(),(222111yxpyxp) 10()()(112112sysyyyxsxxx射線方程代入上式得到1120211201)()(ysyyytdxsxxxtd令 ,當(dāng) 時(shí),射線與線段平行。這時(shí)若還有 ,則線段與射線(或其反向延長(zhǎng)線)重合。如果 ,則得到212211,yybxxb01221bdbd)/()(/01012121yyxxbbdd0/,/012011100110

3、11yydxxdsbyybxxt當(dāng) ,射線與線段有唯一交點(diǎn)。將 代入射線方程,或?qū)⒋刖€段方程求得。10011st并且1t1s射線與平面求交問(wèn)題射線與平面求交問(wèn)題假設(shè)一空間射線起點(diǎn)為 ,方向?yàn)閯t該射線方程為),(000zyx),(321ddd)0(030201tztdzytdyxtdx又假設(shè)一任意平面,其方程為 。將射線方程代入平面方程得0dczbyax0)()()(030201dztdcytdbxtda整理得0)()(000321dczbyaxtcdbdad顯然,當(dāng) ,射線與平面平行。此時(shí)若還有 ,則整條射線落在平面上。除了這種情況外,射線(或其反向延長(zhǎng)線)與平面交于一點(diǎn),參數(shù)為 0321c

4、dbdad0000dczbyax)/()(3210003cdbdaddczbyaxt當(dāng) 時(shí),交點(diǎn)在射線上,否則交點(diǎn)在射線得反向延長(zhǎng)線上(不算交點(diǎn))03t 相鄰事物的屬性之間有一定的連貫性,其屬性值通常是平緩過(guò)渡的,如顏色值、空間位置關(guān)系等。連貫性有:u物體連貫性u(píng)面的連貫性u(píng)區(qū)域連貫性u(píng)掃描線的連貫性u(píng)深度連貫性u(píng)物體連貫性:如果物體a與物體b是完全相互分離的,則在消隱時(shí),只需比較a、b兩物體之間的遮擋關(guān)系就可以了,無(wú)須對(duì)它們的表面多邊形逐一進(jìn)行測(cè)試。例如,若a距視點(diǎn)較b遠(yuǎn),則在測(cè)試b上的表面的可見(jiàn)性時(shí),無(wú)須考慮a的表面。u面的連貫性:一張面內(nèi)的各種屬性值一般都是緩慢變化的,允許采用增量形式對(duì)

5、其進(jìn)行計(jì)算。u區(qū)域連貫性:區(qū)域指屏幕上一組相鄰的像素,它們通常為同一個(gè)可見(jiàn)面所占據(jù),可見(jiàn)性相同。區(qū)域連貫性表現(xiàn)在一條掃描線上即為掃描線上的每個(gè)區(qū)間內(nèi)只有一個(gè)面可見(jiàn)。u掃描線的連貫性:相鄰兩條掃描線上,可見(jiàn)面的分布情況相似。u深度連貫性:同一表面上的相鄰部分深度是相近的,而占據(jù)屏幕上同一區(qū)域的不同表面的深度不同。這樣在判斷表面間的遮擋關(guān)系時(shí),只需取其上一點(diǎn)計(jì)算出深度值,比較該深度值即可得到結(jié)果。消隱與透視關(guān)系密切,體現(xiàn)在:1)消隱必須在投影之前完成;2)物體之間的遮擋關(guān)系與投影中心(視點(diǎn))的選取有關(guān);3)物體之間的遮擋關(guān)系與投影方式有關(guān)包圍盒概念:一個(gè)形體的包圍盒指的是包圍它的簡(jiǎn)單形體。一個(gè)好的

6、包圍盒要具有兩個(gè)條件:包圍和充分緊密包圍著形體;對(duì)其的測(cè)試比較簡(jiǎn)單。 應(yīng)用避免盲目求交例如:兩個(gè)空間多邊形a、b在投影平面上的投影分別為a,b ,因?yàn)閍 、b的矩形包圍盒不相交,則a、b不相交,無(wú)須進(jìn)行遮擋測(cè)試。右下圖:包圍盒相交,投影也相交;包圍盒相交,投影不相交。 外法向:規(guī)定每個(gè)多邊形的外法向都是指向物體外部的。前向面:若多邊形的外法向與投影方向(觀察方向)的夾角為鈍角,稱為前向面。后向面:若多邊形的外法向與投影方向(觀察方向)的夾角為銳角,稱為后向面(背面) 。剔除依據(jù):背面總是被前向面所遮擋,從而不可見(jiàn)。v vabcdefghijn nvnvn前向面后向面多面體的隱藏線消除圖中的je

7、af、hcbg和deabc所在的面均為后向面。 其它為前向面。依據(jù):場(chǎng)景中的物體,它們的投影在投影平面上是否有重疊部分?(是否存在相互遮擋的可能?)對(duì)于根本不存在相互遮擋關(guān)系的物體,應(yīng)避免這種不必要的測(cè)試。方法:將投影平面上的窗口分成若干小區(qū)域;為每個(gè)小區(qū)域建立相關(guān)物體表,表中物體的投影于該區(qū)域有相交部分;則在小區(qū)域中判斷那個(gè)物體可見(jiàn)時(shí),只要對(duì)該區(qū)域的相關(guān)物體表中的物體進(jìn)行比較即可。表示形式:模型變換中的樹(shù)形表示方式原理:減少場(chǎng)景中物體的個(gè)數(shù),從而降低算法復(fù)雜度。方法: 將父節(jié)點(diǎn)所代表的物體看成子節(jié)點(diǎn)所代表物體的包圍盒,當(dāng)兩個(gè)父節(jié)點(diǎn)之間不存在遮擋關(guān)系時(shí),就沒(méi)有必要對(duì)兩者的子節(jié)點(diǎn)做進(jìn)一步測(cè)試。父

8、節(jié)點(diǎn)之間的遮擋關(guān)系可以用它們之間的包圍盒進(jìn)行預(yù)測(cè)試。l由來(lái):畫(huà)家的作畫(huà)順序暗示出所畫(huà)物體之間的相互遮擋關(guān)系l算法基本思想: 1)先把屏幕置成背景色 2)先將場(chǎng)景中的物體按其距觀察點(diǎn)的遠(yuǎn)近進(jìn)行排序,結(jié)果放在一張線性表中;(線性表構(gòu)造:距觀察點(diǎn)遠(yuǎn)的稱優(yōu)先級(jí)低,放在表頭;距觀察點(diǎn)近的稱優(yōu)先級(jí)高,放在表尾。該表稱為深度優(yōu)先級(jí)表) 3)然后按照從遠(yuǎn)到近(從表頭到表尾)的順序逐個(gè)繪制物體。關(guān)鍵:如何對(duì)場(chǎng)景中的物體按深度(遠(yuǎn)近)排序,建立深度優(yōu)先級(jí)表?l一種針對(duì)多邊形的排序算法如下:step 1:將場(chǎng)景中所有多邊形存入一個(gè)線性表,記為l;step 2: 如果l中僅有一個(gè)多邊形,算法結(jié)束;否則根據(jù)每個(gè)多邊形的

9、zmin對(duì)它們預(yù)排序。不妨假定多邊形p落在表首,即zmin(p)為最小。再記q為l p(表中其余多邊形)中任意一個(gè);step 3: 判別p, q之間的關(guān)系,有如下二種:(1): 對(duì)所有的q,有zmax(p) zmin (q),需進(jìn)一步判別:例子: a)若p,q的投影p,q的包圍盒不相交(圖a),則p,q在表中的次序不重要,令l = l p, 返回step 2;否則進(jìn)行下一步。b)若p的所有頂點(diǎn)位于q所在平面的不可見(jiàn)的一側(cè)(圖b),則p,q關(guān)系正確,令l = l p, 返回step 2;否則進(jìn)行下一步。c)若q的所有頂點(diǎn)位于p所在平面的可見(jiàn)的一側(cè)(圖c),則p,q關(guān)系正確,令l = l p, 返

10、回step 2;否則進(jìn)行下一步。d)對(duì)p,q投影p,q求交,若p,q不相交(圖d),則p,q在表中的次序不重要,令l = l p, 返回step 2;否則在它們所相交的區(qū)域中任取一點(diǎn),計(jì)算p,q在該點(diǎn)的深度值,如果p的深度小,則p,q關(guān)系正確,令l = l p, 返回step 2;否則交換p,q,返回step 3.本算法不能處理的情況:多邊形循環(huán)遮擋多邊形相互穿透解決辦法:分割成兩個(gè)由來(lái): 幀緩沖器 保存各像素顏色值 z緩沖器 -保存各像素處物體深度值 z緩沖器中的單元與幀緩沖器中的單元一一對(duì)應(yīng)屏幕幀緩沖器z緩沖器每個(gè)單元存放對(duì)應(yīng)象素的顏色值每個(gè)單元存放對(duì)應(yīng)象素的深度值算法思想:先將z緩沖器中

11、個(gè)單元的初始值置為最小值。當(dāng)要改變某個(gè)像素的顏色值時(shí),首先檢查當(dāng)前多邊形的深度值是否大于該像素原來(lái)的深度值(保存在該像素所對(duì)應(yīng)的z緩沖器的單元中),如果大于,說(shuō)明當(dāng)前多邊形更靠近觀察點(diǎn),用它的顏色替換像素原來(lái)的顏色;否則說(shuō)明在當(dāng)前像素處,當(dāng)前多邊形被前面所繪制的多邊形遮擋了,是不可見(jiàn)的,像素的顏色值不改變。 幀緩存全置為背景色深度緩存全置為最小z值for(每一個(gè)多邊形) for(該多邊形所覆蓋的每個(gè)象素(x,y) ) 計(jì)算該多邊形在該象素的深度值z(mì)(x,y); if(z(x,y)大于z緩存在(x,y)的值) 把z(x,y)存入z緩存中(x,y)處 把多邊形在(x,y)處的顏色值存入幀緩存的(x

12、,y)處 需要計(jì)算的像素深度值次數(shù)需要計(jì)算的像素深度值次數(shù)=多邊形個(gè)數(shù)多邊形個(gè)數(shù)*多邊形平均占據(jù)的多邊形平均占據(jù)的像素個(gè)數(shù)像素個(gè)數(shù)z緩沖器算法是所有圖像空間算法中最簡(jiǎn)單的一種隱藏面消除算法。它在象素級(jí)上以近物取代遠(yuǎn)物,與形體在屏幕上的出現(xiàn)順序無(wú)關(guān)。優(yōu)點(diǎn):1)簡(jiǎn)單穩(wěn)定,利于硬件實(shí)現(xiàn) 2)不需要整個(gè)場(chǎng)景的幾何數(shù)據(jù)缺點(diǎn): 1)需要一個(gè)額外的z緩沖器 2)在每個(gè)多邊形占據(jù)的每個(gè)像素處都要計(jì)算深度值,計(jì)算量大 只用一個(gè)深度緩存變量zb的改進(jìn)算法。一般認(rèn)為,z-buffer算法需要開(kāi)一個(gè)與圖象大小相等的緩存數(shù)組zb,實(shí)際上,可以改進(jìn)算法,只用一個(gè)深度緩存變量zb。 幀緩存全置為背景色幀緩存全置為背景色fo

13、r(屏幕上的每個(gè)象素屏幕上的每個(gè)象素(i,j) 深度緩存變量深度緩存變量zb置最小值置最小值minvalue for(多面體上的每個(gè)多邊形多面體上的每個(gè)多邊形pk) if(象素點(diǎn)象素點(diǎn)(i,j)在在pk的投影多邊形之內(nèi)的投影多邊形之內(nèi))計(jì)算計(jì)算pk在在(i,j)處的深度值處的深度值depth;if(depth大于大于zb)zb = depth;indexp = k; if(zb != minvalue) 在交點(diǎn)在交點(diǎn) (i,j) 處用多邊形處用多邊形pindexp的顏色顯示的顏色顯示 0dczbyax關(guān)鍵問(wèn)題:判斷象素點(diǎn)(i,j)是否在多邊形pk的投影多邊形之內(nèi)計(jì)算多邊形pk在點(diǎn)(i,j)處的

14、深度。設(shè)多邊形pk的平面方程為:cdbjaidepthfor ( v= 0;vvmax;v+) for (u= 0; u z緩沖器的第u單元的值) 置幀緩沖器的第(u,v)單元值為當(dāng)前多邊形顏色; 置z緩沖器的第u單元值為d; /處理下一條掃描線 z緩沖器的單元數(shù)只要等于一條掃描線內(nèi)像素的個(gè)數(shù)就可以了。yxp6p7p8p4p10p9p3p1p2p5yxp6p4p3p1p2p5p6多邊形多邊形窗口窗口窗口窗口多邊形多邊形8000niinii當(dāng)多邊形包圍窗口當(dāng)窗口與多邊形分離for ( v= 0;vvmax;v+) for (u= 0; uumax; u+) 形成通過(guò)像素(u,v)的投影線; fo

15、r (場(chǎng)景中每一個(gè)多邊形) 將投影線與多邊形求交; if (有交點(diǎn)) 以最近交點(diǎn)所屬多邊形的顏色顯示像素(u,v) else 以背景色顯示像素(u,v); for ( v= 0;vvmax;v+) for (u= 0; uumax; u+) 形成通過(guò)像素(u,v)的投影線; for (場(chǎng)景中每一個(gè)多邊形)將投影線與多邊形求交; if (有交點(diǎn)) 以最近交點(diǎn)所屬多邊形的顏色顯示像素(u,v)else 以背景色顯示像素(u,v); 物體的幾何形狀光源 位置、距離、顏色、數(shù)量、強(qiáng)度、種類環(huán)境 遮擋關(guān)系、光的反射與折射、陰影視點(diǎn)位置物性 材料、顏色、透明度 折射性表面光潔度 光源 法向量 入射光 反射

16、光 視線 12sinsin 入射光折射光21idstviiiii),(_bgriiilightcolor其中ir,ig,ib分別代表r、g、b的強(qiáng)度。光的強(qiáng)弱由r、g、b三色光的強(qiáng)弱決定,各自在總光強(qiáng)中的權(quán)值各不同??偣鈴?qiáng)i為bgriiii11. 059. 030. 0可見(jiàn)各色光對(duì)總光強(qiáng)貢獻(xiàn)權(quán)值大小依次為g、r、b漫反射系數(shù)記為rd ,表示光射向物體表面時(shí)向各方向漫反射光線能力??煞纸鉃閞d-r,rd-g,rd-b分別為紅綠藍(lán)各自的反射能力。其中rd介于01。鏡面反射系數(shù)記為w(i),表示物體表面沿鏡面方向(與光線入射角度相同、方向相反)反射光線能力。其中i為入射角。w(i)是i的函數(shù)。鏡面反

17、射光線色彩基本上是光源色彩。w(i)主要反映物體表面產(chǎn)生高光的現(xiàn)象。投射系數(shù)記為tp,描述物體投射光線能力,介于01,當(dāng)為1時(shí),物體全透明;為0時(shí),物體完全不透明。0 . 1ai4 . 0ak8 . 0ak2, 0cosdpdkii)(nlkikiiiidpaadenspskiicosnspsrvkii)(或)()(nsdpaasdervknlkikiiiii對(duì)所有的點(diǎn)總共只需計(jì)算一次h的值,節(jié)省了計(jì)算時(shí)間lravbh-l和v的角平分線nh) 1 ,1min()(2210dcdccdf)()()(nsdpaarvknlkidfkii前參考面后參考面)(00bbfbfbzzzzssssdcisi

18、si)1 (00特例:取sf=1,sb=0,idc=0,則當(dāng)物體位于參考面之前時(shí),s0= sf= 1,i=i,即亮度沒(méi)有被衰減。當(dāng)物體位于后參考面之后時(shí), s0 = sb =0, i=idc=0,即亮度衰減為0。而當(dāng)z0 zb,zf時(shí),i=s0i,亮度被部分衰減。由此可以產(chǎn)生較好的效果。dcisisi)1 (00)()()()()()()()()(nsbdbpbababbnsgdgpgagaggnsrdrprararrrvknlkidfkiirvknlkidfkiirvknlkidfkiidbdgdraabagarccckkkkdbdgdrddbdgdrccckkkksbsgsrssbsgsrccckkkk上述各等式中,右端的矢量用來(lái)控制表面的基本顏色,當(dāng)選定了物體表面的顏色之后,它們就固定不變了。用戶通過(guò)調(diào)節(jié)ka,kd,ks來(lái)改變表面的反射率。)()()()()()()()()(nsbsdbdpbabdbabnsgsdg

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論