計算機圖形學課件 第四章 圖形變換_第1頁
計算機圖形學課件 第四章 圖形變換_第2頁
計算機圖形學課件 第四章 圖形變換_第3頁
計算機圖形學課件 第四章 圖形變換_第4頁
計算機圖形學課件 第四章 圖形變換_第5頁
已閱讀5頁,還剩133頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第4章 圖形變換,圖形變換是計算機圖形學基礎內(nèi)容之一。 幾何變換 顯示變換(投影變換,視窗變換) 圖形變換的特點:線性變換, 屬性不變,拓撲關(guān)系不變。,圖形變換的作用:,把用戶坐標系與設備坐標系聯(lián)系起來; 可由簡單圖形生成復雜圖形; 可用二維圖形表示三維形體; 動態(tài)顯示。,4.1 基本幾何變換,圖形的幾何變換一般是指對圖形的幾何信息經(jīng)過變換后產(chǎn)生新的圖形,研究物體坐標在直角坐標系統(tǒng)內(nèi)的平移、旋轉(zhuǎn)和變比的規(guī)律。下圖表示了一個正方形經(jīng)過不同變換以后形成的不同結(jié)果。,平移變換 (Translation),旋轉(zhuǎn)變換,設P(x y)點繞坐標原點逆時針旋轉(zhuǎn)角到達P (x y )點,如圖所示,則: 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 角的正負由旋轉(zhuǎn)方向決定,逆時針取正,順時針取負。 其變換矩陣:,比例變換(scaling),對稱變換,設變換前的坐標為P( x y),變換后的坐標為P (x y ); 對x軸對稱:(x y ) =( x -y) 對y軸對稱: (x y ) =( -x y) 對坐標原點對稱:(x y ) =( -x -y),變換的數(shù)學基礎,矢量,矢量和,變換的數(shù)學基礎,矢量的點積,矢量的數(shù)乘,變換的數(shù)學基礎,矢

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

4、n,變換的數(shù)學基礎,單位矩陣 在一矩陣中,其主對角線各元素aii=1,其余皆為0的矩陣稱為單位矩陣。n階單位矩陣通常記作In 。 Am n = Am n In,變換的數(shù)學基礎,逆矩陣 若矩陣A存在AA-1=A-1A=I,則稱A-1為A的逆矩陣 矩陣的轉(zhuǎn)置 把矩陣A=(aij)mn的行和列互換而得到的nm矩陣稱為A的轉(zhuǎn)置矩陣,記作AT 。 (AT) T = A (A+B)T = AT + BT (aA)T = aAT (AB)T = BT AT 當A為n階矩陣,且A=AT ,則 A是對稱矩陣。,變換的數(shù)學基礎,矩陣運算的基本性質(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ù)學基礎,矩陣乘法的結(jié)合律及分配律 A(B C) = (A B)C (A+B) C = A C+ B C C (A+B) = C A + C B 矩陣的乘法不適合交換律,變換的數(shù)學基礎,齊次坐標與二維變換的矩陣表示,為什么需要齊次坐標?,多個變換作用于多個目標,變換合成,變換合成的問題,引入齊次坐標,變換的表示法統(tǒng)一,齊次坐標表示法: 用n+1維向量表示一個n維向量。 如n維向量(P1,P2, ,Pn)表示為(hP1,hP2,

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

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

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

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

10、的變換無非是一些基本變換的組合, 而數(shù)學方法來表示也就是矩陣的乘法,解決 復合變換問題,關(guān)鍵是將其分解為一定順序 的基本變換,然后逐一進行這些基本變換, 從而復合變換問題得到解決;或者求出這些 基本變換矩陣連乘積,即得復合變換矩陣, 進而由矩陣作復合變換使得問題被解決,關(guān)于復合變換一些結(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);,相當于實現(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,實現(xiàn)比例、對 稱、旋轉(zhuǎn)、錯切 四種基本變換,把H=1平面上 的齊次點變換為 H=px+qy+rz+1 平面上的點,使圖形產(chǎn)生 全比例變換,實現(xiàn)平移變換,4.2 三維圖形幾何變換,

12、4.2 三維圖形幾何變換,齊次坐標表示,三維幾何變換的矩陣是一個4階方陣, 其形式如下:,三維圖形幾何變換,其中,產(chǎn)生縮放、旋轉(zhuǎn)、錯切等變換;,產(chǎn)生平移變,產(chǎn)生投影變換,產(chǎn)生整體的縮放變換,三維圖形的基本變換,1平移變換,若三維立體沿x,y,z三個方向上移動一個位置,而立體的大小與形狀不變,則稱為平移變換。,三維圖形的基本變換,其中sx, sy, sz分別為x, y, z三個方向的比例因子; 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ā)生變化,稱為恒等變換。,(1)其相對于原點縮放變換矩陣:,2.縮放變換,三維圖形的基本變換,(2)相對于參考點(xf,yf,zf)的縮放變換,其步驟為: 1.將參考點平移到坐標原點處; 2.進行縮放變換; 3.將參考點(xf,yf,zf)移回原來位置,則變換矩陣為:,對稱變換,對稱變換有關(guān)于坐標原點、坐標軸、坐標平面等對稱變換。這三種對稱變換的矩陣容易得到,只要把恒等變換矩陣主對角線上元素改變符號即為相應的對稱變換矩陣。,A. 關(guān)于坐標平面的對稱變換: (1) 關(guān)于xOy平面的對稱變換 其變換矩陣為:,變換后的結(jié)果為: x y z 1 = x y z 1 Txy = x y -z 1,(2

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

15、將二維圖形旋轉(zhuǎn)變換的基本方法作為三維圖形旋轉(zhuǎn)變換的基礎。,三維圖形的基本變換,三維立體繞x旋轉(zhuǎn)時,立體上各點的x坐標不變。只是y,z兩個坐標有變化,其變換規(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)時,立體上各點的y坐標不變。只是x,z兩個坐標有變化,其變換規(guī)律如同二維平面zOx平面上的旋轉(zhuǎn)變換規(guī)律一樣; 其變換矩陣為:,3. 繞 z 軸旋轉(zhuǎn)角: 其變換矩陣為:,三維幾何變換的函數(shù),和二維類似,三維

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

溫馨提示

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

評論

0/150

提交評論