版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第6章圖形變換之一——一般變換2006年7月5日1上海交通大學(xué)計算機系何援軍1.圖形變換的基本描述2.圖形變換的幾何化表示3.投影與投影變換6.透視變換5.投射變換6.總結(jié)26.1圖形變換的基本描述1.概述2.齊次坐標3.齊次坐標變換距陣4.矩陣級聯(lián)5.圖形變換的現(xiàn)狀36.1.1概述所有的變換均基于點的變換。例如,一條線段的變換只要考慮它的兩個端點的變換就行了采用向量、矩陣和齊次坐標的形式來描述圖形的變換十分方便。一個變換是一個單一的數(shù)學(xué)實體,能夠用一個單一的名或符號標識。兩個變換能夠被結(jié)合而產(chǎn)生一個具有二者功效的單一變換。例如變換T是平移,而變換R是旋轉(zhuǎn),則變換的結(jié)合允許決定一個變換A=TR,其功效是先平移然后旋轉(zhuǎn)變換。5為了能用矩陣的形式統(tǒng)一描述圖形變換,在計算機圖形學(xué)中常采用齊次坐標的形式來描述空間的點。在n維空間中的一個問題,在n+1維空間中相應(yīng)地也有一個問題,而在n+1維空間中卻常常比n維空間中較易獲得結(jié)果。二維點(x,y)的齊次表示是(hx,hy,h),這里h是任何一個非零因子,有時叫做比例因子。齊次點(a,b,c)被投射回復(fù)到二維時簡單地就是(a/c,b/c),由比例因子c去除。6.1.2齊次坐標6在計算機中處理一個三維空間的“無窮遠點”是困難的,但是可以容易地處理一個四維齊次空間的解析點,例如可以用向量:(1000) 表示x軸方向無窮遠點(0100) 表示y軸方向無窮遠點(0010) 表示z軸方向無窮遠點(0001) 表示坐標原點這4個向量將構(gòu)成四維齊次空間的單位矩陣6.1.2齊次坐標76.1.3齊次坐標變換距陣透視變換比例變換旋轉(zhuǎn)、錯切等平移變換齊次變換矩陣提供一個三維空間中包括平移、旋轉(zhuǎn)、透視、投影、反射、錯切和比例等變換在內(nèi)的統(tǒng)一表達式,使得物體的變換可在統(tǒng)一的矩陣形式下進行。86.1.4矩陣級聯(lián)一個變換是一個單一的數(shù)學(xué)實體——矩陣描述和標識。兩個變換的結(jié)合用矩陣的級聯(lián)而產(chǎn)生一個具有兩者功效的單一變換。例如變換T是平移,而變換R是旋轉(zhuǎn),則變換的結(jié)合允許決定一個變換A=TR,其功效是先平移然后旋轉(zhuǎn)變換。96.1.5圖形變換的現(xiàn)狀106.2圖形變換的幾何化表示
1.幾何化表示的基本理論2.圖形變換的幾何表示3.圖形變換幾何表示的實施4.圖形變換幾何表示的應(yīng)用5.圖形變換幾何表示與基本幾何116.2.1基本理論——仿射變換仿射變換(Affinetransformation),一種線性變換“線性”(linearity)。線性是仿射變換下的不變性(直線變換后還是直線)?!瓣P(guān)聯(lián)性(incidence)是不變性)。(共線三點間的距離的分比不變,共線三點間距離的分比是不變量,平行線還是平行線)。仿射變換可以通過一系列原子變換的復(fù)合來實現(xiàn):
平移(Translation)、縮放(Scale)翻轉(zhuǎn)(Flip)、旋轉(zhuǎn)(Rotation)剪切(Shear)等。126.2.1基本理論——仿射變換仿射變換(二維線性變換)的最一般形式為:
u=a1x+b1y+c1 v=a2x+b2y+c2
令 u=0和 v=0即可得到兩條直線
L1:a1x+b1y+c1=0 L2:a2x+b2y+c2=0136.2.1基本理論——基本幾何直線(直線段/向量)由其規(guī)范化的標準式方程:ax+by+c=0定義,其中a2+b2=1直線的方向選取這樣一個方向:當人沿著這個方向行走時,他的左手方向為負區(qū)域(內(nèi)部),右手方向為正區(qū)域(外部)。146.2.2圖形變換的幾何化表示由于平面上任兩條相交有向直線均可構(gòu)成新的坐標系統(tǒng)UV,這樣u=a1x+b1y+c1v=a2x+b2y+c2
又可視為將坐標軸UV上的點全部相應(yīng)地變換到坐標軸X和Y上156.2.2圖形變換的幾何化表示這兩個坐標系間的坐標變換公式可由直線方程系數(shù)構(gòu)成的齊次變換矩陣形式表出:于是,可將直線L1設(shè)為V軸直線L2設(shè)為U軸構(gòu)成新的坐標系。166.2.2圖形變換的幾何化表示——三維若將上述結(jié)果推廣到三維形式,則有:
x*=a1x+b1y+c1z+d1 y*=a2x+b2y+c2z+d2
z*=a3x+b3y+c3z+d3它將在原坐標系下的三個平面:
P1:a1x+b1y+c1z+d1=0
P2:a2x+b2y+c2z+d2=0 P3:a3x+b3y+c3z+d3=0變換到原坐標系所在的3個平面上。這3個平面構(gòu)成的新坐標系。176.2.2圖形變換的幾何化表示——三維矩陣形式為:當且僅當: a1a2+b1b2+c1c2=0 a1a3+b1b3+c1c3=0 a2a3+b2b3+c2c3=0時,新坐標系統(tǒng)仍為直角坐標系。186.2.2圖形變換的幾何化表示——結(jié)論平面上任意2條相交(不共線)的向量構(gòu)成一個新坐標系,新舊坐標系的坐標變換可由兩條相交向量在原坐標系下的直線方程系數(shù)標出。幾何變換它統(tǒng)一描述平移、旋轉(zhuǎn)、剪切、對稱和比例等變換??臻g3個任意相交的(不共面)平面構(gòu)成一個新坐標系,兩者的坐標變換可由3個相交平面在原坐標系下的平面方程系數(shù)標出。196.2.3圖形變換幾何化表示的實施直線L1(設(shè)為V軸)的方向按正常的直線方向選?。寒斎搜刂@個方向行走時,他的左手方向為負區(qū)域。直線L2(設(shè)為U軸)的方向由直線L1繞原點(兩條直線的交點)順時針方向旋轉(zhuǎn)得到(一般情況下旋轉(zhuǎn)角度≤90o)。206.2.3實施——直線方程建立建立直線程序:過兩個已知點P1P2建立直線,使直線的右側(cè)為正,左側(cè)為負。intlpp(x1,y1,x2,y2,*a,*b,*c) 輸入:floatx1,y1,x2,y2//直線起點,終點坐標 輸出:float
*a,*b,*c
//所求直線的法線式方程系數(shù)
(a2+b2=1) 返回值:1正確返回
0P1=P2,(a,b,c)值無效216.2.3實施——直線方程建立原理過P1和P2兩點的直線方程是:
(y2-y1)(x-x1)-(x2-x1)(y-y1)=0令:
a=(y2-y1)/D b=-(x2-x1)/D c=-(ax1+by1)若兩點連線與X軸的夾角為α,則有:
a=sinα,b=-cosα,且a2+b2=1過P1P2兩點的直線方程可記為:
ax+by+c=0
或
-(ax+by+c)=0為保證向量P1P2的左側(cè)為負區(qū)域,需要在上述兩式中選取一式。
226.2.3實施——直線方程建立原理構(gòu)造一點位于向量P1P2左側(cè)的點P(xp,yp):由P2繞P1逆時針旋轉(zhuǎn)90°得到,有
xp=x1+Dcos(α+90)=x1-Dsinα=x1-D·a
yp=y(tǒng)1+Dsin(α+90)=y(tǒng)1+Dcosα=y1-D·b 點P(xp,yp)到直線的距離dp分別為:
dp=a(x1-D·a)+b(y1-D·b)+c=(ax1+by1+c)-D(a2+b2) =0-D·1=-D<0
dp=-a(x1-D·a)-b(y1-D·b)-c=-(ax1+by1+c)+D(a2+b2) =0+D·1=+D>0顯然,為了保證直線的左側(cè)為負,直線方程必須選?。篴x+by+c=0236.2.3實施——定義另一種直線建立點斜式直線方程:過一給定點P(xp,yp)且與X軸的夾角為α的直線,它的左側(cè)為負區(qū)域。 intlpax(floatxp,floatyp,floatalpha,
float*a, float*b, float*c)246.2.4應(yīng)用之一——坐標系的旋轉(zhuǎn)變換設(shè)通過坐標原點的兩條正交直線與X軸的夾角分別為α和(α+90°),以前一條為X*軸,后一條為Y*軸(注意X*的角度):lpax(0.0,0.0,alpha+HalfPI,&a1,&b1,&c1); //Y*lpax(0.0,0.0,alpha+PI,&a2,&b2,&c2); //X*
256.2.4應(yīng)用之二——一向量為U軸,其中垂線為V軸以向量P1P2為U軸,它的中垂線為V軸的右手坐標系變換矩陣由點P2向P1作直線L1為U軸; lpp(x2,y2,x1,y1,&a2,&b2,&c2);過點P1,P2的中點作直線L1的垂直線L2為V軸: a1=b2;b1=-a2;c1=-(a1(x1+x2)+b1(y1+y2))/2.0;266.2.4應(yīng)用之三——剪切變換變換矩陣y:lpax(0.0,0.0,HalfPI+alphaY,&a1,&b1,&c1);x:lpax(0.0,0.0,PI+alphaX,&a2,&b2,&c2);276.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換繞Y軸旋轉(zhuǎn)α角的標準旋轉(zhuǎn)變換矩陣為: Ry=三維空間中繞任意軸的旋轉(zhuǎn)變換可由下列三步達到:先平移、再2次繞新坐標軸旋轉(zhuǎn)等3步建立以該任意軸為Y軸的新坐標系;在新坐標系下執(zhí)行繞Y軸旋轉(zhuǎn)α角的標準繞軸旋轉(zhuǎn)變換;將該結(jié)果經(jīng)過相對于第1步逆序的3次逆變換得到初始坐標軸下的變換結(jié)果。整個操作將由7個(不考慮平移時5個)矩陣相乘得到。286.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換Step1:將坐標系OXYZ平移(X0Y0Z0)形成新坐標系P0X1Y1Z1,其坐標系變換為:B01=296.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換Step2:將將坐標系P0X1Y1Z1繞Y1旋轉(zhuǎn)αy角形成新坐標系P0X2Y2Z2。其坐標系變陣為:
B12=306.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換Step3:將坐標系P0X2Y2Z2繞X2軸旋轉(zhuǎn)αX角,形成新坐標系P0X3Y3Z3,其坐標系變換陣為:
B23=316.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換326.2.4應(yīng)用之四——繞任意軸的三維旋轉(zhuǎn)變換336.2.4應(yīng)用之四——繞任意軸三維旋轉(zhuǎn)變換幾何化表示1)構(gòu)筑向量P1P2的單位向量(a1,b1,c1)
a1=(x2-x1)/D,b1=(y2-y1)/D,c1=(z2-z1)/D D=2)構(gòu)筑與P1P2垂直的單位向量(a2,b2,c2)
a2=,b2=,c2=03)構(gòu)筑第三個單位向量(a3,b3,c3) (a3,b3,c3)
=(a1,b1,c1)×(a2,b2,c2)34繞任意軸P1P2旋轉(zhuǎn)的線性變換矩陣
R=Txyz_x*y*z*RxT-1xyz_x*y*z* =其中: d1=-(a1x1+b1y+c1z1) D1=-(a1d1+a2d2+a3d3) d2=-(a2x1+b2y1+0·z2) D2=-(b1d1+b2d2+b3d3) d3=-(a3x1+b3y1+c3z1) D3=-(c1d1+c3d3)繞任意軸的旋轉(zhuǎn)變換由7個(不包含平移時則為5個)矩陣相乘減少到3個矩陣相乘。6.2.4應(yīng)用之四——繞任意軸三維旋轉(zhuǎn)變換幾何化表示356.2.5圖形變換幾何化表示與基本幾何用構(gòu)成坐標系的向量的方程系數(shù)統(tǒng)一表示兩坐標系間的齊次坐標交換矩陣元素,而不理會“旋轉(zhuǎn)變換的角度、平移變換的增量”等等變換參數(shù)的特別涵義。將圖形變換與基本幾何有機地聯(lián)系在一起,使圖形變換與基本幾何的定義與求解函數(shù)統(tǒng)一。便于記憶、便于教學(xué)、便于應(yīng)用、便于軟件系統(tǒng)的統(tǒng)一編制,提高系統(tǒng)的穩(wěn)定性。實際應(yīng)用中,只要用有向直線(平面)求解系列函數(shù)即可構(gòu)筑圖形變換齊次矩陣的元素。366.3投影與投影變換1.投影變換與深度坐標現(xiàn)狀討論建議2.投影示意圖的討論典型的正投影錯誤圖示錯誤的透視投影示意圖正確圖示圖示原理376.3.1投影變換與深度坐標——現(xiàn)狀T斜等測==前2個矩陣是三維空間內(nèi)的變換此變換必須有深度坐標。第3個矩陣用作投影變換系三維到二維的變換T斜等測定義為軸測投影變換矩陣386.3.1投影變換與深度坐標——現(xiàn)狀投影變換的目的是顯示圖形,可以不考慮第三維(深度)坐標,因此幾乎所有已出版的此類書籍均采用了以下投影變換矩陣。但投影變換往往和三維圖形處理(例如隱藏線消除等)聯(lián)系在一起,而這些圖形處理必須有完整的深度信息。396.3.1投影變換與深度坐標——討論三維觀測流水線的處理過程均須特別注意投影要放在隱藏線消除的處理之后,即深度信息必須在投影前利用完畢,投影后不能再用。其實際處理過程是:①先實行“三維空間到自身的變換”(這個變換必須有深度坐標)②圖形處理(例如隱藏線消除)③實行“從三維到二維的變換”,即無深度的“投影變換”④顯示。406.3.1投影變換與深度坐標——討論如果使用“軸測投影變換矩陣”或“透視投影變換矩陣”,則意味著將三維觀測流水線的次序變成:三維觀測流水線的處理過程:①三維空間變換②圖形處理③無深度的“投影變換”
④顯示①三維空間變換③無深度的“投影變換”
②圖形處理④顯示416.3.1投影變換與深度坐標——建議這種把第三維置為0的辦法在三維處理中就失去了深度坐標,損失了1/3的有效信息。因此,建議仍采用下列完整的變換公式:(UVWH)=(xyz1)=得到的(UVWH)齊次坐標信息可根據(jù)需要向某一方向作正投影,第三維信息也是完整的。426.3.1投影變換與深度坐標——建議取消所謂“軸測投影變換矩陣”“透視投影變換矩陣”等的提法。“投影變換”將只用于理論推導(dǎo)三維觀測流水線處理中不需要深度信息的場合
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年物流園區(qū)建設(shè)項目合作開發(fā)合同
- 2024年版銷售人員全面工作合同樣本
- 2024年研發(fā)合作合同范本:新產(chǎn)品研發(fā)與推廣
- 義務(wù)教育數(shù)學(xué)課程標準(2022年版)題庫答案
- 2024年跨境電商銷售合同英文版版B版
- 2024年土特產(chǎn)區(qū)域代理合作協(xié)議范本3篇
- 2024年電子支付系統(tǒng)技術(shù)許可合同
- 2025年度軟件園辦公場地使用權(quán)及廣告發(fā)布合同3篇
- 2025年度二零二五年度邊坡防護施工與地質(zhì)勘察合同2篇
- 2024年股東權(quán)益共享協(xié)議書
- 江蘇省南京市2025屆高三第一次調(diào)研考試(一模)英語試題含解析
- 企業(yè)供應(yīng)鏈管理軟件使用合同
- 全國英語等級考試三級閱讀真題
- 數(shù)據(jù)庫原理-期末考試復(fù)習(xí)題及答案
- 2024至2030年版四川省路燈行業(yè)分析報告
- 中考化學(xué)酸堿鹽知識點性質(zhì)歸納
- 新教科版四上科學(xué)3.5《運動與摩擦力》教案(新課標)
- DL∕T 2602-2023 電力直流電源系統(tǒng)保護電器選用與試驗導(dǎo)則
- DL∕T 1919-2018 發(fā)電企業(yè)應(yīng)急能力建設(shè)評估規(guī)范
- 小學(xué)二年級數(shù)學(xué)口算練習(xí)題1000道
- DBJ43-T 315-2016 現(xiàn)澆混凝土保溫免拆模板復(fù)合體系應(yīng)用技術(shù)規(guī)程
評論
0/150
提交評論