CAD第8章:三維形體顯示ppt課件_第1頁
CAD第8章:三維形體顯示ppt課件_第2頁
CAD第8章:三維形體顯示ppt課件_第3頁
CAD第8章:三維形體顯示ppt課件_第4頁
CAD第8章:三維形體顯示ppt課件_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第8章章 三維形體的顯示三維形體的顯示 8.1 8.1 三維形體輸出流程圖三維形體輸出流程圖 8.2 8.2 觀察坐標(biāo)系的建立觀察坐標(biāo)系的建立 8.3 8.3 觀察變換觀察變換 8.4 8.4 投影變換投影變換 8.5 8.5 觀察體與三維裁剪觀察體與三維裁剪 8.6 8.6 三維形體完整的輸出過程三維形體完整的輸出過程8.1 三維形體輸出流程圖三維形體輸出流程圖1. 三維形體顯示與二維物體顯示存在許多不同三維形體顯示與二維物體顯示存在許多不同的地方的地方:(1) 允許從任意空間位置觀察物體允許從任意空間位置觀察物體: 從前面、上從前面、上面和后面。面和后面。 也可以從一組物體的中間或一個物

2、體的內(nèi)部也可以從一組物體的中間或一個物體的內(nèi)部觀察物體,如建筑物。觀察物體,如建筑物。(2) 三維物體必須投影到二維的顯示輸出設(shè)三維物體必須投影到二維的顯示輸出設(shè)備上。備上。(3) 裁剪空間是體空間。裁剪空間是體空間。2. 觀察流水線觀察流水線用計算機模擬三維形體顯示的步驟與照相機用計算機模擬三維形體顯示的步驟與照相機拍照的過程有點相似,但更加靈活,選擇多拍照的過程有點相似,但更加靈活,選擇多樣。樣。下圖描述了將用戶坐標(biāo)系中描述的物體轉(zhuǎn)換下圖描述了將用戶坐標(biāo)系中描述的物體轉(zhuǎn)換成設(shè)備坐標(biāo)的過程。成設(shè)備坐標(biāo)的過程。造型坐標(biāo)造型坐標(biāo)造型變換造型變換用戶坐標(biāo)用戶坐標(biāo)觀察變換觀察變換觀察坐標(biāo)觀察坐標(biāo)投影

3、變換投影變換投影坐標(biāo)投影坐標(biāo)工作站變換工作站變換設(shè)備坐標(biāo)設(shè)備坐標(biāo)8.2 觀察坐標(biāo)系的建立觀察坐標(biāo)系的建立我們可以在任意地點、任意距離和任意角度我們可以在任意地點、任意距離和任意角度給物體拍照,并通過相機的孔徑大小選擇拍給物體拍照,并通過相機的孔徑大小選擇拍攝自己感興趣的部分。攝自己感興趣的部分。類似地,給定觀察位置、方向及類似地,給定觀察位置、方向及“相機的孔相機的孔徑大小,我們可以用圖形軟件包在二維平面徑大小,我們可以用圖形軟件包在二維平面上顯示三維物體?;舅悸肥墙⒁粋€滿足上顯示三維物體。基本思路是建立一個滿足左手坐標(biāo)系法則的觀察坐標(biāo)系。左手坐標(biāo)系法則的觀察坐標(biāo)系。xvzvyvuvn建立

4、觀察坐標(biāo)系的步驟:建立觀察坐標(biāo)系的步驟:1. 在用戶坐標(biāo)系中選取一點在用戶坐標(biāo)系中選取一點P0作為觀察坐標(biāo)系的作為觀察坐標(biāo)系的原點,該點稱為觀察參考點。原點,該點稱為觀察參考點。選取選取zv軸的正向軸的正向 在景物附近或景物上取一點在景物附近或景物上取一點P,將,將N=P0P (表表示矢量示矢量)選為選為zv軸的正向。這里,軸的正向。這里,N稱為觀察方稱為觀察方向。向。xwywzwP0PzvN3. 確定確定yv軸的正向。方法如下:軸的正向。方法如下: 選取一個觀察正向選取一個觀察正向V,將它投射到過,將它投射到過P0并與并與N垂直的垂直的平面上。留意:可任意選取不與平面上。留意:可任意選取不與

5、N平行的平行的V。補充說明:補充說明:選定選定V后,建立后,建立yv和和xv軸的另一種方法是:由軸的另一種方法是:由N,V作作叉積求出第三個向量叉積求出第三個向量U,它垂直于,它垂直于N和和V,由此確定,由此確定xv軸軸 。然后由。然后由N和和U作叉積確定與它們垂直的向量作叉積確定與它們垂直的向量 v。zvzvP0VyvxvuvnzvP0VyvNP0 Vyvxvuvn系統(tǒng)系統(tǒng)觀察平面的選?。河^察平面的選?。?與與zv軸垂直即與軸垂直即與xvyv平面平面平行的平面。平行的平面。xvzvyv8.3 用戶坐標(biāo)系到觀察坐標(biāo)系的變換用戶坐標(biāo)系到觀察坐標(biāo)系的變換觀察變換觀察變換觀察坐標(biāo)系由用戶坐標(biāo)系中的觀

6、察參考點觀察坐標(biāo)系由用戶坐標(biāo)系中的觀察參考點P0、觀察、觀察方向方向N和觀察正向和觀察正向V定義。設(shè)定義。設(shè)0000,zyxP ),(nnnzyxN aaazyxV,記記N與與V的單位向量為的單位向量為zyxnnnn,zyxaaaa,那那么么VVaNNn,zyxzyxvvvnuvuuuanu,zvP0Vyvxvuvnauvn系統(tǒng)于是,根據(jù)第于是,根據(jù)第7 章坐標(biāo)變換公章坐標(biāo)變換公式,可得觀察變換為:式,可得觀察變換為:10000001010000100001,000000zzzyyyxxxnvunvunvuzyxRzyxTRzyxTzyxzyxwwweee),(1 ,1 ,000即即xwywz

7、wP0PzvNyvxv8.4 投影變換投影變換三維物體和二維顯示平面不匹配的問題可通過投影三維物體和二維顯示平面不匹配的問題可通過投影變換解決,也就是把三維物體先變換到二維投影平變換解決,也就是把三維物體先變換到二維投影平面,然后再變換到顯示屏表面。面,然后再變換到顯示屏表面。一旦將物體的用戶坐標(biāo)轉(zhuǎn)換成觀察坐標(biāo),我們就可一旦將物體的用戶坐標(biāo)轉(zhuǎn)換成觀察坐標(biāo),我們就可以將三維物體投射到二維觀察平面上。以將三維物體投射到二維觀察平面上。存在兩種基本的投射方法:存在兩種基本的投射方法: 透視投射和平行投射。透視投射和平行投射。P1P2P2P1觀察平面觀察平面(投影平面投影平面)投射參考點投射參考點(視

8、點視點)(投影中心投影中心)透視投影透視投影: 坐標(biāo)點沿著相交于一點坐標(biāo)點沿著相交于一點(稱為投射參考點稱為投射參考點 或投射中心或投射中心) 的直線被變換到觀察平面。的直線被變換到觀察平面。P1P2P2P1觀察平面觀察平面(投影平面投影平面)平行投射平行投射(影影) :坐標(biāo)點沿著平行線被變換到觀察平面。:坐標(biāo)點沿著平行線被變換到觀察平面。兩類投影的本質(zhì)區(qū)別在于:透視投影的投影中心到投影平面的兩類投影的本質(zhì)區(qū)別在于:透視投影的投影中心到投影平面的距離是有限的,而平行投影的投影中心到投影平面的距離是無距離是有限的,而平行投影的投影中心到投影平面的距離是無限的。限的。兩類投影的聯(lián)系在于:當(dāng)投影中心

9、在無窮遠處,投影線互相平兩類投影的聯(lián)系在于:當(dāng)投影中心在無窮遠處,投影線互相平行,這時透視投影變成平行投影。行,這時透視投影變成平行投影。定義平行投影時,給出投影方向定義平行投影時,給出投影方向(稱為投影向量稱為投影向量)就可以了,而定就可以了,而定義透視投影時,需要明確地指定投影中心的位置。義透視投影時,需要明確地指定投影中心的位置。8.4.1 平行投影平行投影根據(jù)投影向量與投影平面的夾角不同,平行投影可分根據(jù)投影向量與投影平面的夾角不同,平行投影可分為正交平行投影和斜平行投影。為正交平行投影和斜平行投影。當(dāng)投影向量與投影平面垂直時,稱為正交平行投影,當(dāng)投影向量與投影平面垂直時,稱為正交平行

10、投影,否則稱為斜平行投影。否則稱為斜平行投影。正交平行投影的變換方程很容易求出。假設(shè)觀察平面位于正交平行投影的變換方程很容易求出。假設(shè)觀察平面位于zv軸上的軸上的zvp處,投射方向與處,投射方向與zv軸平行軸平行(如下圖所示如下圖所示),則觀,則觀察坐標(biāo)系中的任意點察坐標(biāo)系中的任意點(x,y,z)被變換為觀察平面上的坐標(biāo)點被變換為觀察平面上的坐標(biāo)點(x,y,zvp),而原來的,而原來的z坐標(biāo)值保存起來,用作深度檢測和可坐標(biāo)值保存起來,用作深度檢測和可見面確定過程中的深度信息。見面確定過程中的深度信息。y yxxpp ,zvxvyv(x,y,z)(x,y)zvp當(dāng)當(dāng)zvp=0,即投影平面為,即投

11、影平面為xvyv坐標(biāo)平面時,坐標(biāo)平面時,zp=0。這時正交。這時正交平行投影的矩陣表達式為:平行投影的矩陣表達式為:10000000001000011 ,1 ,zyxzyxppp8.4.2 透視投影透視投影投影參考點用的是觀察坐標(biāo)系中的三維點。假設(shè)投影參投影參考點用的是觀察坐標(biāo)系中的三維點。假設(shè)投影參考點位于考點位于zv軸上的軸上的zprp處,則描述投影線的參數(shù)方程為:處,則描述投影線的參數(shù)方程為:觀察平面觀察平面zvzvpP(x,y,z)(xp,yp,zvp)zprp10uuzzzzyuyyxuxxprp其中其中(x,y,z)表示投影線段表示投影線段上的任意一點。上的任意一點。在觀察平面上,

12、在觀察平面上, z=zvp,這時,這時, 投影線與觀察平面的投影線與觀察平面的交點坐標(biāo)為:交點坐標(biāo)為:zzdyyzzdxxprpppprppp其中其中vpprppzzd表示投影中心與觀察平面表示投影中心與觀察平面之間的距離。之間的距離。投影變換的矩陣表達式投影變換的矩陣表達式:pprppprpvpppvphhhdzdzzddzzyxhzyx/00/1/00001000011 ,pprpdzzhhyyhxxhphp/ ,/特殊情況:特殊情況: zvp=0或或zprp=0更一般的情況這里不再討論。更一般的情況這里不再討論。造型坐標(biāo)造型坐標(biāo)造型變換造型變換用戶坐標(biāo)用戶坐標(biāo)觀察變換觀察變換觀察坐標(biāo)觀察

13、坐標(biāo)投影變換投影變換投影坐標(biāo)投影坐標(biāo)工作站變換工作站變換設(shè)備坐標(biāo)設(shè)備坐標(biāo)以上講解了我們開始提到的三維形體的如下輸出以上講解了我們開始提到的三維形體的如下輸出過程過程:8.5 觀察體與三維裁剪觀察體與三維裁剪8.5.1 觀察體的定義觀察體的定義在照相時,相機的鏡頭是決定所拍攝場景大在照相時,相機的鏡頭是決定所拍攝場景大小的一個因素。在三維顯示中,小的一個因素。在三維顯示中, 觀察平面上觀察平面上的矩形觀察窗口用于實現(xiàn)這個目標(biāo)。的矩形觀察窗口用于實現(xiàn)這個目標(biāo)。觀察窗口的邊觀察窗口的邊與與xvyv軸平行。軸平行。窗口邊界的位窗口邊界的位置是由觀察坐置是由觀察坐標(biāo)指定的,觀標(biāo)指定的,觀察窗口可以放察窗

14、口可以放在觀察平面上在觀察平面上的任何位置。的任何位置。觀察平面觀察平面(xwmax,ywmax)(xwmin,ywmin)投影窗口投影窗口zvxvyv給定觀察窗口后,我們可以利用窗口的給定觀察窗口后,我們可以利用窗口的4條邊界建立觀察條邊界建立觀察體。只有位于觀察體中的物體才會在輸出設(shè)備上顯示出體。只有位于觀察體中的物體才會在輸出設(shè)備上顯示出來,所有其他部分將被裁剪掉。來,所有其他部分將被裁剪掉。觀察體的大小與觀察窗口的大小有關(guān);而其形狀與用于觀察體的大小與觀察窗口的大小有關(guān);而其形狀與用于顯示的投影類型有關(guān)。在任何情況下,觀察體的四側(cè)都顯示的投影類型有關(guān)。在任何情況下,觀察體的四側(cè)都是穿過

15、窗口邊界的平面。留意:是穿過窗口邊界的平面。留意: 投影中心在觀察坐標(biāo)系投影中心在觀察坐標(biāo)系中定義。中定義。窗口窗口平行投影觀察體平行投影觀察體窗口窗口透視投影觀察體透視投影觀察體投影中心投影中心通過在通過在zv軸上限制觀察體的范圍可獲得有限觀察體。具體軸上限制觀察體的范圍可獲得有限觀察體。具體方法是:方法是:在在zv軸上指定與觀察平面平行的兩個附加邊界平面。軸上指定與觀察平面平行的兩個附加邊界平面。窗口窗口Front PlaneBack Planezv平行六面體平行六面體投影中心投影中心Back PlaneFront Planezv平截頭體平截頭體Frustum窗口后平面比前平面離投影中心遠

16、,且都在投影中心的同一側(cè)。后平面比前平面離投影中心遠,且都在投影中心的同一側(cè)。包括前后面在內(nèi)六個面界定出了觀察體。包括前后面在內(nèi)六個面界定出了觀察體。前后裁剪面的作用:前后裁剪面的作用:(1)裁剪掉不感興趣的部分;裁剪掉不感興趣的部分;(2)在透視投影中,裁剪掉離觀察面很近的大物體,這些物在透視投影中,裁剪掉離觀察面很近的大物體,這些物體投影到觀察窗口中模糊不清;后平面裁剪掉遠離投影中體投影到觀察窗口中模糊不清;后平面裁剪掉遠離投影中心的物體,這部分物體在輸出設(shè)備上是很小的點。心的物體,這部分物體在輸出設(shè)備上是很小的點。觀察平面、前后裁剪面的相對位置關(guān)系依賴于投影的類型觀察平面、前后裁剪面的相

17、對位置關(guān)系依賴于投影的類型以及圖形軟件包的限制。以及圖形軟件包的限制。8.5.2 三維裁剪三維裁剪就是確認(rèn)并存儲將在輸出設(shè)備上顯示的觀察體內(nèi)物體就是確認(rèn)并存儲將在輸出設(shè)備上顯示的觀察體內(nèi)物體部分,同時舍棄觀察體外物體的所有部分。部分,同時舍棄觀察體外物體的所有部分。三維裁剪與二維裁剪的不同之處:三維裁剪與二維裁剪的不同之處:在二維裁剪中,窗口是與在二維裁剪中,窗口是與x,y軸平行的,這大大簡化了軸平行的,這大大簡化了裁剪在二維裁剪中運算。但三維裁剪體的裁剪邊界是裁剪在二維裁剪中運算。但三維裁剪體的裁剪邊界是平面,平面的產(chǎn)生與投影的類型、投影的窗口及投影平面,平面的產(chǎn)生與投影的類型、投影的窗口及

18、投影中心的位置有關(guān)。中心的位置有關(guān)。 在透視投影中,觀察體的前后面與觀察平面平行,每在透視投影中,觀察體的前后面與觀察平面平行,每個面的個面的z 坐標(biāo)均為常數(shù),但其他四個側(cè)面可以具有任坐標(biāo)均為常數(shù),但其他四個側(cè)面可以具有任意的空間方向,這給求交運算帶來了麻煩。意的空間方向,這給求交運算帶來了麻煩。直接裁剪方法及其缺點直接裁剪方法及其缺點這種方法直接對觀察體進行裁剪。該方這種方法直接對觀察體進行裁剪。該方法主要涉及空間線段與裁剪面的求交運算。法主要涉及空間線段與裁剪面的求交運算。設(shè)空間線段設(shè)空間線段L的兩個端點分別為的兩個端點分別為P1(x1,y1,z1)和和P2(x2,y2,z2),空間中任一

19、,空間中任一平面平面Q的方程為:的方程為: ax+by+cz+d=0則則L與與Q之交點之交點(x,y,z)應(yīng)滿足:應(yīng)滿足: x=x1+pt y=y1+qt z=z1+rt ax+by+cz+d=0其中,其中,p=x2-x1,q=y2-y1, r=z2-z1, 0=t0,sign(x)=1; 否則,否則,sign(x)=0。(b)對于規(guī)范化透視觀察體,對于規(guī)范化透視觀察體,(3求線與邊界面的交點略)求線與邊界面的交點略)Above: bit 1=sign(y-z)Below: bit 2=sign(-z-y)Right: bit 3=sign(x-z) Left: bit 4=sign(-z-x

20、)Behind: bit 5=sign(z-1)Front: bit 6=sign(f-1) 1fy=z前截面前截面x=zx=-zy=-z投影中心投影中心xzy由此可確定線段的可見性:完全可見、完全不可見、由此可確定線段的可見性:完全可見、完全不可見、裁剪候選線段。特別地,用這種方法可確定點是否在裁剪候選線段。特別地,用這種方法可確定點是否在體內(nèi)或體外。體內(nèi)或體外。8.6 三維形體完整的輸出過程三維形體完整的輸出過程(不考慮消隱不考慮消隱)造型坐標(biāo)造型坐標(biāo)造型變換造型變換用戶坐標(biāo)用戶坐標(biāo)觀察變換觀察變換觀察坐標(biāo)觀察坐標(biāo)投影變換投影變換投影坐標(biāo)投影坐標(biāo)工作站變換工作站變換設(shè)備坐標(biāo)設(shè)備坐標(biāo)規(guī)范化觀察坐標(biāo)規(guī)范化觀察坐標(biāo)三維裁剪三維裁剪裁剪空間到規(guī)范化裁剪空間到規(guī)范化投影空間的變換投影空間的變換規(guī)范化觀察坐標(biāo)規(guī)范化觀察坐標(biāo) 在不考慮隱藏面消隱時,完整的三維觀察過程可由以下在不考慮隱藏面消隱時,完整的三維觀察過程可由以下步驟實現(xiàn):步驟實現(xiàn):應(yīng)用變換應(yīng)用變換Npar或

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論