計(jì)算機(jī)圖形學(xué)課件 第四章 圖形變換_第1頁(yè)
計(jì)算機(jī)圖形學(xué)課件 第四章 圖形變換_第2頁(yè)
計(jì)算機(jī)圖形學(xué)課件 第四章 圖形變換_第3頁(yè)
計(jì)算機(jī)圖形學(xué)課件 第四章 圖形變換_第4頁(yè)
計(jì)算機(jī)圖形學(xué)課件 第四章 圖形變換_第5頁(yè)
已閱讀5頁(yè),還剩133頁(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、第4章 圖形變換,圖形變換是計(jì)算機(jī)圖形學(xué)基礎(chǔ)內(nèi)容之一。 幾何變換 顯示變換(投影變換,視窗變換) 圖形變換的特點(diǎn):線性變換, 屬性不變,拓?fù)潢P(guān)系不變。,圖形變換的作用:,把用戶坐標(biāo)系與設(shè)備坐標(biāo)系聯(lián)系起來(lái); 可由簡(jiǎn)單圖形生成復(fù)雜圖形; 可用二維圖形表示三維形體; 動(dòng)態(tài)顯示。,4.1 基本幾何變換,圖形的幾何變換一般是指對(duì)圖形的幾何信息經(jīng)過(guò)變換后產(chǎn)生新的圖形,研究物體坐標(biāo)在直角坐標(biāo)系統(tǒng)內(nèi)的平移、旋轉(zhuǎn)和變比的規(guī)律。下圖表示了一個(gè)正方形經(jīng)過(guò)不同變換以后形成的不同結(jié)果。,平移變換 (Translation),旋轉(zhuǎn)變換,設(shè)P(x y)點(diǎn)繞坐標(biāo)原點(diǎn)逆時(shí)針旋轉(zhuǎn)角到達(dá)P (x y )點(diǎn),如圖所示,則: x =

2、R cos(+) = R cos cos - R sin sin = x cos - y sin y = R sin(+) = R cos sin + R sin cos = x sin + y cos 角的正負(fù)由旋轉(zhuǎn)方向決定,逆時(shí)針取正,順時(shí)針取負(fù)。 其變換矩陣:,比例變換(scaling),對(duì)稱(chēng)變換,設(shè)變換前的坐標(biāo)為P( x y),變換后的坐標(biāo)為P (x y ); 對(duì)x軸對(duì)稱(chēng):(x y ) =( x -y) 對(duì)y軸對(duì)稱(chēng): (x y ) =( -x y) 對(duì)坐標(biāo)原點(diǎn)對(duì)稱(chēng):(x y ) =( -x -y),變換的數(shù)學(xué)基礎(chǔ),矢量,矢量和,變換的數(shù)學(xué)基礎(chǔ),矢量的點(diǎn)積,矢量的數(shù)乘,變換的數(shù)學(xué)基礎(chǔ),矢

3、量的長(zhǎng)度,單位矢量 點(diǎn)積運(yùn)算的幾何解釋 矢量的夾角,矢量的叉積,變換的數(shù)學(xué)基礎(chǔ),矩陣 階矩陣 n階方陣 零矩陣 行向量與列向量 單位矩陣 矩陣的加法 矩陣的數(shù)乘 矩陣的乘法 矩陣的轉(zhuǎn)置 矩陣的逆,矩陣的含義 矩陣:由mn個(gè)數(shù)按一定位置排列的一個(gè) 整體,簡(jiǎn)稱(chēng)mn矩陣。,A=,其中,aij稱(chēng)為矩陣A的第i行第j列元素,變換的數(shù)學(xué)基礎(chǔ),矩陣運(yùn)算 加法 設(shè)A,B為兩個(gè)具有相同行和列元素的矩陣 A+B = 數(shù)乘 kA = k*aij|i=1.m, j=1,. n,變換的數(shù)學(xué)基礎(chǔ),乘法 設(shè)A為32矩陣,B為23矩陣 C = A B = C=Cmp = Am n Bnp cij = aik*bkj,k=1,

4、n,變換的數(shù)學(xué)基礎(chǔ),單位矩陣 在一矩陣中,其主對(duì)角線各元素aii=1,其余皆為0的矩陣稱(chēng)為單位矩陣。n階單位矩陣通常記作In 。 Am n = Am n In,變換的數(shù)學(xué)基礎(chǔ),逆矩陣 若矩陣A存在AA-1=A-1A=I,則稱(chēng)A-1為A的逆矩陣 矩陣的轉(zhuǎn)置 把矩陣A=(aij)mn的行和列互換而得到的nm矩陣稱(chēng)為A的轉(zhuǎn)置矩陣,記作AT 。 (AT) T = A (A+B)T = AT + BT (aA)T = aAT (AB)T = BT AT 當(dāng)A為n階矩陣,且A=AT ,則 A是對(duì)稱(chēng)矩陣。,變換的數(shù)學(xué)基礎(chǔ),矩陣運(yùn)算的基本性質(zhì) 交換律與結(jié)合律師 A+B=B+A; A+(B+C)=(A+B)+C

5、 數(shù)乘的分配律及結(jié)合律 a(A+B) = aA+aB; a(A B) = (aA) B=A (aB) (a+b)A = aA + bA a(bA) = (ab)A,變換的數(shù)學(xué)基礎(chǔ),矩陣乘法的結(jié)合律及分配律 A(B C) = (A B)C (A+B) C = A C+ B C C (A+B) = C A + C B 矩陣的乘法不適合交換律,變換的數(shù)學(xué)基礎(chǔ),齊次坐標(biāo)與二維變換的矩陣表示,為什么需要齊次坐標(biāo)?,多個(gè)變換作用于多個(gè)目標(biāo),變換合成,變換合成的問(wèn)題,引入齊次坐標(biāo),變換的表示法統(tǒng)一,齊次坐標(biāo)表示法: 用n+1維向量表示一個(gè)n維向量。 如n維向量(P1,P2, ,Pn)表示為(hP1,hP2,

6、hPn,h),其中h稱(chēng)為啞坐標(biāo)。,齊次坐標(biāo),h,1、h可以取不同的值,所以同一點(diǎn)的齊次坐標(biāo)不是唯一的。 如:普通坐標(biāo)系下的點(diǎn)(2,3)變換為齊次坐標(biāo)可以是(1,1.5,0.5)(4,6,2)(6,9,3)等等。 2、 普通坐標(biāo)與齊次坐標(biāo)的關(guān)系為“一對(duì)多” 由普通坐標(biāo)h齊次坐標(biāo) 由齊次坐標(biāo)h普通坐標(biāo) 3、 當(dāng)h=1時(shí)產(chǎn)生的齊次坐標(biāo)稱(chēng)為“規(guī)格化坐標(biāo)”,因?yàn)榍皀個(gè)坐標(biāo)就是普通坐標(biāo)系下的n維坐標(biāo)。,齊次坐標(biāo),(x,y)點(diǎn)對(duì)應(yīng)的齊次坐標(biāo)為 (x,y)點(diǎn)對(duì)應(yīng)的齊次坐標(biāo)為三維空間的一條直線,1. 將各種變換用階數(shù)統(tǒng)一的矩陣來(lái)表示。提供了用矩陣運(yùn)算把二維、三維甚至高維空間上的一個(gè)點(diǎn)從一個(gè)坐標(biāo)系變換到另一坐標(biāo)系

7、的有效方法。 2. 便于表示無(wú)窮遠(yuǎn)點(diǎn)。 例如:(x h, y h, h),令h等于0,齊次坐標(biāo)的作用,齊次坐標(biāo)的作用,3. 齊次坐標(biāo)可以計(jì)算機(jī)無(wú)法容納的數(shù)。 例如,當(dāng)計(jì)算機(jī)的字長(zhǎng)為16位時(shí),它能表示的最大整數(shù)為216-1= 32767,若點(diǎn)坐標(biāo)為80 000 40 000,則計(jì)算機(jī)無(wú)法表示。但用齊次坐標(biāo)可表示為 20 000 10 000 1/4,經(jīng)過(guò)處理后再將其正?;?,即用第三個(gè)坐標(biāo)去除前面兩個(gè)坐標(biāo),從而得到原來(lái)通常的坐標(biāo)。 4. 變換具有統(tǒng)一表示形式的優(yōu)點(diǎn) 便于變換合成 便于硬件實(shí)現(xiàn),齊次坐標(biāo)與二維變換的矩陣表示,二維圖形幾何變換 矩陣可用下式表示:,是對(duì)圖形的縮放、旋轉(zhuǎn)、對(duì)稱(chēng)、錯(cuò)切等變換

8、,c f 是對(duì)圖形進(jìn)行平移變換;,是對(duì)圖形作投影變換,i 是對(duì)整個(gè)圖形做伸縮變換,齊次坐標(biāo)與二維變換的矩陣表示,1平移的矩陣運(yùn)算表示:,Tx 、Ty 分別表示X軸方向和Y軸方向的平移距離,齊次坐標(biāo)與二維變換的矩陣表示,2旋轉(zhuǎn)的矩陣運(yùn)算表示為:,逆時(shí)針時(shí)取正值, 順時(shí)針時(shí)取負(fù)值,齊次坐標(biāo)與二維變換的矩陣表示,3. 比例變換的矩陣運(yùn)算表示為:,對(duì)稱(chēng)變換其實(shí)只是a、b、d、e取 0、1等特殊值產(chǎn)生的一些特殊效果 示意圖,齊次坐標(biāo)與二維變換的矩陣表示,4. 錯(cuò)切變換的矩陣運(yùn)算表示為:,A. 當(dāng)d=0時(shí),x=x+by,y=y, 此時(shí),圖形的y坐標(biāo)不變,x坐標(biāo)隨初值 (x,y)及變換系數(shù)b作線性變化。 B

9、.當(dāng)b=0時(shí),x=x,y=dx+y, 此時(shí),圖形的x坐標(biāo)不變,y坐標(biāo)隨初值 (x,y)及變換系數(shù)d作線性變化。示意圖,二維變換的示意圖,復(fù)合變換,Composite Transformation,由基本變換構(gòu)成的連續(xù)變換序列稱(chēng)為復(fù)合變換 變換的矩陣形式使得復(fù)合變換的計(jì)算工作量大為減少,問(wèn)題:如何實(shí)現(xiàn)復(fù)雜變換?,變換分解,變換合成,復(fù)合變換,A復(fù)合平移,對(duì)同一圖形做兩次平移相當(dāng)于將兩次的平移兩加起來(lái),Composite Transformation,復(fù)合變換,Composite Transformation,關(guān)于任意參照點(diǎn) 的旋轉(zhuǎn)變換,關(guān)于任意參照點(diǎn)復(fù)合變換示意圖,關(guān)于復(fù)合變換一些結(jié)論,各種復(fù)雜

10、的變換無(wú)非是一些基本變換的組合, 而數(shù)學(xué)方法來(lái)表示也就是矩陣的乘法,解決 復(fù)合變換問(wèn)題,關(guān)鍵是將其分解為一定順序 的基本變換,然后逐一進(jìn)行這些基本變換, 從而復(fù)合變換問(wèn)題得到解決;或者求出這些 基本變換矩陣連乘積,即得復(fù)合變換矩陣, 進(jìn)而由矩陣作復(fù)合變換使得問(wèn)題被解決,關(guān)于復(fù)合變換一些結(jié)論,變換的結(jié)果與變換的順序有關(guān)(矩陣乘法不可交換),Translate2D(1,0); Rotate2D(45); House();,Rotate2D(45); Translate2D(1,0); House();,二維幾何變換的函數(shù),1建立變換矩陣的函數(shù)為: creat_transformation_matr

11、ix(xf, yf, sx, sy, xr, yr, ,tx, ty, matrix);,相當(dāng)于實(shí)現(xiàn):matrix (xf,yf)S(sx,sy)T(xf,yf)T(xr,yr) R() T(xr,yr)T(tx,ty),2組合變換的函數(shù)為: accumulate_transformation_matrix(matrix1,matrix2,matrix); 函數(shù)完成如下功能: matrixmatrix1matrix2,實(shí)現(xiàn)比例、對(duì) 稱(chēng)、旋轉(zhuǎn)、錯(cuò)切 四種基本變換,把H=1平面上 的齊次點(diǎn)變換為 H=px+qy+rz+1 平面上的點(diǎn),使圖形產(chǎn)生 全比例變換,實(shí)現(xiàn)平移變換,4.2 三維圖形幾何變換,

12、4.2 三維圖形幾何變換,齊次坐標(biāo)表示,三維幾何變換的矩陣是一個(gè)4階方陣, 其形式如下:,三維圖形幾何變換,其中,產(chǎn)生縮放、旋轉(zhuǎn)、錯(cuò)切等變換;,產(chǎn)生平移變,產(chǎn)生投影變換,產(chǎn)生整體的縮放變換,三維圖形的基本變換,1平移變換,若三維立體沿x,y,z三個(gè)方向上移動(dòng)一個(gè)位置,而立體的大小與形狀不變,則稱(chēng)為平移變換。,三維圖形的基本變換,其中sx, sy, sz分別為x, y, z三個(gè)方向的比例因子; x y z 1 = x y z 1 T = sxx syy szz 1 若sx=sy=sz ,則各向縮放比例相同; 若sx sy sz ,則各向縮放比例不同,立體產(chǎn)生畸變; 若sx=sy=sz=1,則立體

13、不發(fā)生變化,稱(chēng)為恒等變換。,(1)其相對(duì)于原點(diǎn)縮放變換矩陣:,2.縮放變換,三維圖形的基本變換,(2)相對(duì)于參考點(diǎn)(xf,yf,zf)的縮放變換,其步驟為: 1.將參考點(diǎn)平移到坐標(biāo)原點(diǎn)處; 2.進(jìn)行縮放變換; 3.將參考點(diǎn)(xf,yf,zf)移回原來(lái)位置,則變換矩陣為:,對(duì)稱(chēng)變換,對(duì)稱(chēng)變換有關(guān)于坐標(biāo)原點(diǎn)、坐標(biāo)軸、坐標(biāo)平面等對(duì)稱(chēng)變換。這三種對(duì)稱(chēng)變換的矩陣容易得到,只要把恒等變換矩陣主對(duì)角線上元素改變符號(hào)即為相應(yīng)的對(duì)稱(chēng)變換矩陣。,A. 關(guān)于坐標(biāo)平面的對(duì)稱(chēng)變換: (1) 關(guān)于xOy平面的對(duì)稱(chēng)變換 其變換矩陣為:,變換后的結(jié)果為: x y z 1 = x y z 1 Txy = x y -z 1,(2

14、) 關(guān)于yOz,zOx平面的對(duì)稱(chēng)變換 它們的變換矩陣分別為:,B. 對(duì)坐標(biāo)軸的對(duì)稱(chēng)變換:,(1) 關(guān)于x軸的對(duì)稱(chēng)變換 其變換矩陣為: 變換后的結(jié)果為: x y z 1 = x y z 1 Tx = x -y -z 1,(2) 關(guān)于y,z軸的對(duì)稱(chēng)變換 它們的變換矩陣分別為:,C. 對(duì)坐標(biāo)原點(diǎn)的對(duì)稱(chēng)變換:,其變換矩陣為: 變換后的結(jié)果為: x y z 1 = x y z 1 T = -x -y -z 1,3.旋轉(zhuǎn)變換,三維圖形的旋轉(zhuǎn)變換是指三維立體饒坐標(biāo)軸或任意軸旋轉(zhuǎn)角,其旋轉(zhuǎn)方向符合右手系,即大拇指指向旋轉(zhuǎn)軸的正向,其余四指的旋向?yàn)檗D(zhuǎn)角的正向。 三維圖形旋轉(zhuǎn)變換比二維圖形旋轉(zhuǎn)變換要復(fù)雜些,但也可

15、將二維圖形旋轉(zhuǎn)變換的基本方法作為三維圖形旋轉(zhuǎn)變換的基礎(chǔ)。,三維圖形的基本變換,三維立體繞x旋轉(zhuǎn)時(shí),立體上各點(diǎn)的x坐標(biāo)不變。只是y,z兩個(gè)坐標(biāo)有變化,其變換規(guī)律如同二維平面yOz平面上的旋轉(zhuǎn)變換規(guī)律一樣,即其變換矩陣為:,變換后的結(jié)果為: x y z 1 = x y z 1 Tx = x ycos+zsin zcos-ysin 1,1. 繞 x 軸旋轉(zhuǎn)角,2. 繞 y 軸旋轉(zhuǎn)角 三維立體繞x旋轉(zhuǎn)時(shí),立體上各點(diǎn)的y坐標(biāo)不變。只是x,z兩個(gè)坐標(biāo)有變化,其變換規(guī)律如同二維平面zOx平面上的旋轉(zhuǎn)變換規(guī)律一樣; 其變換矩陣為:,3. 繞 z 軸旋轉(zhuǎn)角: 其變換矩陣為:,三維幾何變換的函數(shù),和二維類(lèi)似,三維

16、幾何變換也有三條函數(shù),分別執(zhí)行建立變換矩陣,復(fù)合變換和坐標(biāo)變換的功能。,參數(shù)圖形幾何變換,前面介紹的二維、三維圖形的幾何變換均是基于點(diǎn)的幾何變換。對(duì)于可用參數(shù)表示的曲線、曲面圖形,若其幾何變換仍然基于點(diǎn),則計(jì)算工作量和存儲(chǔ)空間都很大,下面介紹幾種對(duì)參數(shù)表示的點(diǎn)、曲線及曲面直接進(jìn)行幾何變換的算法。,參數(shù)圖形幾何變換,圓錐曲線的幾何變換,圓錐曲線的二次方程是Ax2xyy2xy, 其相應(yīng)的矩陣表達(dá)式是 :,簡(jiǎn)記為XSXT,圓錐曲線的幾何變換,(1)平移變換,平移后圓錐曲線矩陣方程是XTrSTTrXT,(2)旋轉(zhuǎn)變換,旋轉(zhuǎn)后的圓錐曲線矩陣方程是XRSRTXT,對(duì)圓錐曲線相對(duì)(m,n)點(diǎn)作旋轉(zhuǎn)角變換,則

17、旋轉(zhuǎn)后的 圓錐曲線是上述Tr、R變換的復(fù)合變換 ,變換后的方程 請(qǐng)同學(xué)自行推導(dǎo),圓錐曲線的幾何變換,(3)比例變換。,二次曲面也有與上述類(lèi)似的矩陣表示和幾何變換表達(dá)式,4.4 坐標(biāo)系統(tǒng),1.常見(jiàn)的坐標(biāo)系系統(tǒng): (1)維度: 一維坐標(biāo)系統(tǒng) 二維坐標(biāo)系統(tǒng) 三維坐標(biāo)系統(tǒng) (2)坐標(biāo)軸之間的空間關(guān)系 直角坐標(biāo)系統(tǒng) 園柱坐標(biāo)系統(tǒng) 球坐標(biāo)系統(tǒng)等,2.用于顯示輸出的坐標(biāo)系統(tǒng),1)世界坐標(biāo)系(world coordinate Systems),2)局部坐標(biāo)系(Local Coordinate System),3)觀察坐標(biāo)系(Viewing coordinate systems),4)成像面坐標(biāo)系統(tǒng),5)屏幕坐

18、標(biāo)系統(tǒng),也稱(chēng)設(shè)備坐標(biāo)系統(tǒng),從建模坐標(biāo)到最后設(shè)備坐標(biāo)的三維變換流水線,模型坐標(biāo),模型坐標(biāo),世界坐標(biāo),觀察變換,觀察坐標(biāo),投影變換,投影坐標(biāo),工作站變換,設(shè)備坐標(biāo),三維空間創(chuàng)建和顯示一個(gè)(多個(gè))幾何物體的過(guò)程,1)建立世界坐標(biāo)系,)指定視點(diǎn)的方位、視線和成像面的方位,)各坐標(biāo)系之間視見(jiàn)變換之后,進(jìn)行投影變換,,)得到物體的成像,4.5 投影變換,1.基本概念,投影變換就是把三維立體投射到投影面上而得到的平面圖形。任何立體都需要經(jīng)過(guò)投影變換才能在平面上表現(xiàn)出來(lái)。,(1)右手系統(tǒng): 當(dāng)用右手握住z軸時(shí),大姆指指向z軸的正方向, 其余四個(gè)手指從x軸到y(tǒng)軸形成一個(gè)弧。,(2)左手系統(tǒng): 當(dāng)用左手握住z軸時(shí)

19、,大姆指指向z軸的正方向; 其余四個(gè)手指從x軸到y(tǒng)軸形成一個(gè)弧。,2.兩種三維直角坐標(biāo)系統(tǒng),兩種三維直角坐標(biāo)系統(tǒng),3.投影分類(lèi),投影中心與投影平面之間的距離為無(wú)限,投影中心與投影平面之間的距離為有限,根據(jù)投影方向與投影平面的夾角,根據(jù)投影平面與坐標(biāo)軸的夾角,透視投影,平行投影,平行投影,投影中心與投影平面之間的距離為無(wú)限 因此,只需給出投影方向即可 是透視投影的極限狀態(tài),平行投影,根據(jù)投影線方向與投影平面的夾角,平行投影分為兩類(lèi): 正平行投影與斜平行投影,正平行投影,斜平行投影,正平行投影包括:正投影(三視圖)和正軸側(cè)投影 三視圖:三個(gè)投影面和坐標(biāo)軸相互垂直。 正軸側(cè):投影面和坐標(biāo)軸呈一定的關(guān)

20、系。,正平行投影,三視圖,三視圖:正視圖、側(cè)視圖和俯視圖,在右手直角坐標(biāo)系中,將三維立體向xOz面(正面V)作正投影,得到主視圖。由投影變換前后三維立體上點(diǎn)到主視圖上點(diǎn)的關(guān)系,可知此投影變換的變換矩陣為:,(1) 正視圖,Tv:正視圖的投影變換矩陣,簡(jiǎn)稱(chēng)投影矩陣。 若已知三維立體上 n 個(gè)點(diǎn)(xi , yi , zi),則各點(diǎn)的齊次坐標(biāo)可寫(xiě)成 n4 階矩陣,主視圖的投影變換矩陣表示式為:,在繪圖時(shí),只要取x=xi , y=zi (i=1,2,n),就可在屏幕上繪出三維立體的主視圖。,三維立體向xOy面(水平面H)作正投影得到俯視圖。,為了使俯視圖與主視圖也畫(huà)在一個(gè)平面內(nèi),就要使H面繞x軸負(fù)方向

21、轉(zhuǎn)90o,此旋轉(zhuǎn)變換矩陣為:,(2) 俯視圖,其投影變換矩陣:,為了使俯視圖與主視圖間有一定的間距,還要使H面沿負(fù)z方向平移一段距離z0。其變換矩陣為:,因此俯視圖的投影變換矩陣為上面三個(gè)變換矩陣的連乘積,即:,俯視圖的投影變換矩陣表示為:,由此得到三維立體的俯視圖上n個(gè)點(diǎn)(xi , -yi-z0) (i=1,2,n),取x=xi , y=-yi-z0(i=1,2,n),便可繪出三維立體的俯視圖。,將三維立體向yOz面(側(cè)面W)作正投影得到俯視圖。,為了使俯視圖與主視圖都畫(huà)在一個(gè)平面內(nèi),就要使W面繞z軸轉(zhuǎn)90o,此旋轉(zhuǎn)變換矩陣為:,(3) 側(cè)視圖,其投影變換矩陣:,為了使側(cè)視圖與主視圖間有一定

22、的間距,還要使W面沿負(fù)x方向平移一段距離x0。其變換矩陣為:,因此側(cè)視圖的投影變換矩陣為上面三個(gè)變換矩陣的連乘積,即:,其中TW矩陣的第二列為零說(shuō)明W面繞z軸轉(zhuǎn)90o后,yOz上的投影變成了xOz面上的投影。,側(cè)視圖的投影變換矩陣表示為:,由此得到三維立體的側(cè)視圖上n個(gè)點(diǎn)(-yi-x0 , zi) (i=1,2,n),取x= -yi-x0, y=-zi(i=1,2,n),便可繪出三維立體的側(cè)視圖。 先讓三維立體作投影面,然后旋轉(zhuǎn)投影面得到平攤在同一個(gè)平面上的三個(gè)視圖。也可以先把三維立體作旋轉(zhuǎn),然后再向投影面作正投影得到同樣的三視圖。,正軸測(cè)投影,當(dāng)投影方向不取坐標(biāo)軸方向,投影平面不垂直于坐標(biāo)軸

23、時(shí),產(chǎn)生的正投影稱(chēng)為正軸測(cè)投影。,正軸測(cè)投影分類(lèi): 正等測(cè) 正二測(cè) 正三測(cè),正等測(cè):投影平面與三個(gè)坐標(biāo)軸的交點(diǎn)到坐標(biāo)原點(diǎn)的距離都相等。沿三個(gè)軸線具有相同的變形系數(shù)。,正二測(cè):投影平面與兩個(gè)坐標(biāo)軸的交點(diǎn)到坐標(biāo)原點(diǎn)的距離都相等。沿兩個(gè)軸線具有相同的變形系數(shù)。,正三測(cè):投影平面與三個(gè)坐標(biāo)軸的交點(diǎn)到坐標(biāo)原點(diǎn)的距離都不相等。沿三個(gè)軸線具有各不相同的變形系數(shù)。,正軸測(cè)投影的形成過(guò)程如下: 將空間一立體繞繞y軸旋轉(zhuǎn)y角 然后再繞x軸旋轉(zhuǎn)x 最后向z=0平面做正投影,由于這種投影的投影平面不與立體的軸線垂直,同時(shí)可見(jiàn)到物體的多個(gè)面,因而可產(chǎn)生立體效果。經(jīng)過(guò)正軸測(cè)投影變換后,物體線間的平行性不變,但角度有變化。

24、,正軸測(cè)投影變換矩陣的一般形式:,正二測(cè)和正等測(cè),下面主要討論正二測(cè)和正等測(cè)的投影變換矩陣,即確定變換矩陣中的x角和y角。 如何度量沿三個(gè)軸線方向的變形系數(shù)呢?,正二測(cè)和正等測(cè),正二側(cè)投影需滿足: 假定Z軸上的單位矢量經(jīng)變換后長(zhǎng)度變?yōu)?/2;即取Z軸的變形系數(shù)恒為1/2: 可得:x=20。42, y =19。28。 變換矩陣為,正二測(cè)和正等測(cè),正等側(cè)投影需滿足: 求得: 正等測(cè)圖的變換矩陣為,斜平行投影,投影線與投影平面不垂直 斜等測(cè)投影 投影平面與一坐標(biāo)軸垂直 投影線與投影平面成45角 與投影平面垂直的線投影后長(zhǎng)度不變 斜二測(cè)投影 投影平面與一坐標(biāo)軸垂直 投影線與該軸夾角成 arcctg(1

25、/2)角 該軸軸向變形系數(shù)為 。即與投影平面垂直的線投影后長(zhǎng)度變?yōu)樵瓉?lái)的一半。,斜平行投影,斜等測(cè)投影和斜二測(cè)投影,4.5.3 透視投影變換,透視圖和軸測(cè)圖都是單面投影圖,所不同的是軸測(cè)圖是用平行投影原理形成的,透視圖是用中心投影原理形成的。 兩者雖然都是立體圖,但透視圖的效果更接近人們用肉眼觀察的實(shí)際效果,因而它的立體感和真實(shí)感均優(yōu)于軸測(cè)圖。,透視圖的形成,假設(shè)在觀察者與物體之間放置一透明的畫(huà)面M,透視投影中心稱(chēng)為視點(diǎn),視點(diǎn)與物體上各點(diǎn)的連線稱(chēng)為視線,各視線與畫(huà)面的交點(diǎn)a,b,稱(chēng)為A,B,各點(diǎn)的透視,將物體各點(diǎn)的透視連接起來(lái)便得到立體的透視投影圖。,滅點(diǎn):不平行于投影平面的平行線,經(jīng)過(guò)透視投

26、影之后收斂于一點(diǎn),稱(chēng)為滅點(diǎn). 主滅點(diǎn):平行于坐標(biāo)軸的平行線產(chǎn)生的滅點(diǎn)。 主滅點(diǎn)數(shù):和投影平面切割坐標(biāo)軸的數(shù)量相對(duì)應(yīng)的,即由坐標(biāo)軸與投影平面交點(diǎn)的數(shù)量來(lái)決定的。 如:投影平面僅切割z軸,則z軸是投影平面的法線,因而只在z軸上有一個(gè)滅點(diǎn),平行于x軸或y軸的直線也平行于投影平面,因而沒(méi)有滅點(diǎn)。,透視投影圖,透視變換矩陣 一點(diǎn)透視 兩點(diǎn)透視 三點(diǎn)透視,特點(diǎn):產(chǎn)生近大遠(yuǎn)小的視覺(jué)效果,由它產(chǎn)生的圖形深度感強(qiáng),看起來(lái)更加真實(shí)。,一點(diǎn)透視,先假設(shè)q 0,p=r=0。然后對(duì)點(diǎn)(x,y,z)進(jìn)行變換,結(jié)果如下:,一點(diǎn)透視,齊次化得:,當(dāng)y=0時(shí): (x* , y*, z*) = (x, 0 , z) 即處于y=0

27、平面上的點(diǎn),經(jīng)過(guò)透視變換后沒(méi)有變化。 當(dāng)y時(shí):(x* , y*, z*) = ( 0, 1/q , 0) ( 0, 1/q , 0)就是滅點(diǎn),象這樣形成一個(gè)滅點(diǎn)的透視變換稱(chēng)為“一點(diǎn)透視”,一點(diǎn)透視效果圖,q0,同理,當(dāng)p0,q=r=0時(shí),將會(huì)在x軸上的1/p處產(chǎn)生一個(gè)滅點(diǎn),其坐標(biāo)值為(1/p, 0, 0),此時(shí)所有平行于x軸的直線將延伸交于該點(diǎn)。 當(dāng)r 0,p=q=0時(shí),將會(huì)在z軸上的1/r處產(chǎn)生一個(gè)滅點(diǎn),其坐標(biāo)值為(0, 0 ,1/r),此時(shí)所有平行于z軸的直線將延伸交于該點(diǎn)。,兩點(diǎn)透視,p,q,r中有兩個(gè)為非零數(shù),將會(huì)生成兩個(gè)滅點(diǎn),因此得到兩點(diǎn)透視。 當(dāng)p 0,r 0時(shí),結(jié)果為:,齊次化得

28、: x* = x/(px+rz+1) y* = y/(px+rz+1) z* = z/(px+rz+1),當(dāng)x時(shí):一個(gè)滅點(diǎn)在x軸的1/p處 當(dāng)z時(shí):一個(gè)滅點(diǎn)在z軸的1/r處,三點(diǎn)透視,當(dāng)p,q,r都不為0時(shí),結(jié)果將會(huì)產(chǎn)生三個(gè)滅點(diǎn),從而形成三點(diǎn)透視。產(chǎn)生的三個(gè)滅點(diǎn)分別在x軸的1/p處、 y軸的1/q處、 z軸的1/r處。,由上式可看出: 當(dāng)x-時(shí),在X軸上1/p處有一個(gè)滅點(diǎn); 當(dāng)y-時(shí),在Y軸上1/q處有一個(gè)滅點(diǎn); 當(dāng)z-時(shí),在Z軸上1/r處有一個(gè)滅點(diǎn);,生成透視投影圖的方法:,先是對(duì)立體進(jìn)行透視變換,然后是將其投影到正面投影面上,形成正投影圖。 透視投影矩陣:,一點(diǎn)透視投影圖的生成,為了獲得較

29、好的效果,通常將立體平移到一個(gè)合適的位置,然后在進(jìn)行透視投影變換。 則生成一點(diǎn)透視投影的變換矩陣為:,取-1q0,可獲得效果較好的透視圖。,當(dāng)立體經(jīng)透視變換后,若直接投影到V面上,可能其立體效果并不理想,所以,在透視變換后,對(duì)變換結(jié)果繞Z軸旋轉(zhuǎn)后,以使物體軸線不與投影面垂直,再向V面上投影其效果會(huì)更好。 變換過(guò)程如下: 1)先對(duì)立體進(jìn)行二點(diǎn)透視變換; 2)再把變換結(jié)果繞Z軸旋轉(zhuǎn)一角度; 3)最后將上述變換結(jié)果投影到投影面上。,二點(diǎn)透視投影圖的生成,三點(diǎn)透視投影圖生成,與二點(diǎn)透視投影圖生成變換理由一樣,在透視變換后,先對(duì)變換結(jié)果作旋轉(zhuǎn)變換,以保證透視投影面與物體上的三個(gè)坐標(biāo)軸均不平行,從而獲得立

30、體效果更好的透視投影圖。變換過(guò)程如下: 1)首先對(duì)物體作三點(diǎn)透視變換; 2)將透視變換結(jié)果繞Z軸旋轉(zhuǎn)一角度 3)再繞X軸旋轉(zhuǎn)一角; 4)將上述結(jié)果投影到投影面。,4.6基于VC+的OpenGL坐標(biāo)變換,OpenGL通過(guò)相機(jī)模擬、可以實(shí)現(xiàn)計(jì)算機(jī)圖形學(xué)中最基本的三維 變換,即幾何變換、投影變換、裁剪變換、視圖變換等,同時(shí), OpenGL還實(shí)現(xiàn)了矩陣堆棧等。理解掌握了有關(guān)坐標(biāo)變換的內(nèi)容, 就算真正走進(jìn)了精彩地三維世界,三維物體到二維圖象,和用相機(jī)拍照一樣的過(guò)程,1、將相機(jī)置于三角架上,讓它對(duì)準(zhǔn)三維景物 相當(dāng)于OpenGL中調(diào)整視點(diǎn)的位置, 即視點(diǎn)變換(Viewing Transformation),

31、2、將三維物體放在場(chǎng)景中的適當(dāng)位置, 相當(dāng)于OpenGL中的模型變換(Modeling transformation), 即對(duì)模型進(jìn)行旋轉(zhuǎn)、平移和縮放。,3、選擇相機(jī)鏡頭并調(diào)焦,使三維物體投影在二維膠片上, 相當(dāng)于OpenGL中把三維模型投影到二維屏幕上的過(guò)程, 即OpenGL的投影變換(Projection Transformation),三維物體到二維圖象,三維物體的顯示過(guò)程如下:,4、沖洗底片,決定二維相片的大小, 相當(dāng)與OpenGL中的視圖變換(Viewport Transformation),相機(jī)模擬OpenGL中的各種坐標(biāo)變換,4.7 圖形裁剪,點(diǎn)的裁剪,圖形裁剪中最基本的問(wèn)題。 假設(shè)窗口的左下角坐標(biāo)為(xL,yB),右上角坐標(biāo)為(xR,yT),對(duì)于給定點(diǎn)P(x,y),則P點(diǎn)在窗口內(nèi)的條件是要滿足下列不等式:xL = x = xR 并且yB = y = yT否則,P點(diǎn)就在窗口外。 問(wèn)題:對(duì)于任何多邊形窗口,如何判別?,4.7.1 直線段的裁減算法,線段的裁剪(如何高效地裁剪線段) 線段與裁剪框的位置關(guān)系有三種情況: 內(nèi)(全顯) 外(全擦除) 內(nèi)-外(框內(nèi)顯外擦) 算法任務(wù):確定可見(jiàn)部分之兩端點(diǎn)。,直接求交算法,直線與窗口邊都 寫(xiě)成參數(shù)形式, 求參數(shù)值,編碼裁剪法,基本思想: 對(duì)于每條線段P1P2分為三種情況處理: (1)若P1P2完全在窗口內(nèi),則顯示該線段P1P2。

溫馨提示

  • 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)論