10、曲線曲面表示_第1頁(yè)
10、曲線曲面表示_第2頁(yè)
10、曲線曲面表示_第3頁(yè)
10、曲線曲面表示_第4頁(yè)
10、曲線曲面表示_第5頁(yè)
已閱讀5頁(yè),還剩43頁(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、第九章 曲線曲面表示曲線曲面的表示是計(jì)算機(jī)圖形學(xué)的重要內(nèi)容。它是描述物體外形、建立物體數(shù)學(xué)模型的有力工具。在計(jì)算機(jī)圖形學(xué)中,曲線曲面都是采用分段或分片參數(shù)多項(xiàng)式的形式。采用分段參數(shù)方式有很多好處:曲線曲面形狀不依賴坐標(biāo)系的選取;有直觀簡(jiǎn)便的人機(jī)交互手段;容易離散生成;造型靈活、易于拼接。本章介紹一些常用曲線曲面的算法和性質(zhì)。 1顯式、隱式和參數(shù)表示曲線(面)的顯式表示:y=f(x)曲線(面)的隱式表示:f(x,y)=0曲線(面)的參數(shù)表示:x=x(t),y=y(t)顯式表示特點(diǎn):每一個(gè)x值只能對(duì)應(yīng)一個(gè)y值;不能表示封閉或多值曲線,例如圓。隱式表示特點(diǎn):可以表示封閉或多值曲線。非參數(shù)表示(顯、隱

2、)特點(diǎn):與坐標(biāo)軸相關(guān);會(huì)出現(xiàn)斜率無(wú)窮大情況;非平面曲線(面)難以常系數(shù)函數(shù)表示;不便于計(jì)算和編程。2參數(shù)表示點(diǎn)的每一個(gè)坐標(biāo)都表示成參數(shù)變量的函數(shù)參數(shù)整個(gè)變化范圍對(duì)應(yīng)整條曲線,但往往只對(duì)某一部分感興趣,通過(guò)規(guī)格化使參數(shù)的變化范圍限制在0,1中。3參數(shù)方程的優(yōu)越性有更大的自由度來(lái)控制曲線(面)的形狀。如一條二維三次曲線顯性表示:y=ax3+bx2+cx+d,只有四個(gè)系數(shù)可用來(lái)控制曲線(面)形狀,非參數(shù)方程表示的曲線(面)變換時(shí)必須對(duì)每個(gè)型值點(diǎn)進(jìn)行變換;參數(shù)方程表示的曲線(面)變換時(shí)可直接對(duì)參數(shù)方程進(jìn)行幾何變換,節(jié)省計(jì)算量便于處理斜率為無(wú)窮大的問(wèn)題,不會(huì)因此中斷計(jì)算規(guī)格化參數(shù)變量變化范圍為0,1,不

3、必為參數(shù)定義邊界易于用矢量和矩陣表達(dá),簡(jiǎn)化了計(jì)算4參數(shù)曲線定義一條三維曲線的參數(shù)形式:x=x(t),y=y(t),z=z(t),0t 1曲線上任意一點(diǎn)可用矢量p(t)=x(t),y(t),z(t)表示。起始點(diǎn)在t=0處,即p(0),終點(diǎn)p(1)在t=1處曲線上任意一點(diǎn)切矢量表示了曲線上該點(diǎn)的切線方向,可以表示曲線在該點(diǎn)處的走向。切矢量表示為:p(t)=x(t),y(t),z(t) 。起始點(diǎn)t=0處切矢量,為p(0),p(1)表示在終點(diǎn)t=1處切矢量。5Bezier曲線在空間給定n+1個(gè)點(diǎn)P0,P1,Pn,稱下列參數(shù)曲線為n次Bezier曲線:其中,Ji,n(t)是Bernstein基函數(shù):稱折

4、線為P0P1Pn為P(t)的控制多邊形;稱點(diǎn)P0, P1,Pn為P(t)的控制頂點(diǎn)??刂贫噙呅蜳0P1Pn為P(t)的大致形狀的勾畫, P(t)是對(duì)P0P1Pn的逼近。(9-1)(9-2)6Bezier曲線的性質(zhì)(1)端點(diǎn)的位置P0和Pn是曲線P(t)的兩個(gè)端點(diǎn)。由式(9-1),(9-2)可得:p(0)=P0, p(1)= Pn端點(diǎn)的切線P(t)在起點(diǎn)處與P0P1相切,在終點(diǎn)處與Pn-1Pn相切P0PnP1Pn-1由式(9-1),(9-2)可得:P(0)=n(P1-P0), p(1)=n(Pn-Pn-1)7Bezier曲線的性質(zhì)(2)凸包性 P(t)位于控制頂點(diǎn)P0, P1,Pn的凸包內(nèi)幾何不

5、變性曲線的形狀僅由控制點(diǎn)的位置決定,與所選用的坐標(biāo)系無(wú)關(guān)。交互能力控制點(diǎn)的位置決定了曲線的形狀,變換控制點(diǎn)位置,就可以改變曲線的形狀。為人機(jī)交互確定曲線形狀提供了手段。P0PnP1Pn-18Bezier曲線的拼接(1)一段Bezier曲線常常不足以表現(xiàn)復(fù)雜的曲線。為了構(gòu)造復(fù)雜的曲線,常用曲線拼接的方法,即用一段段的曲線首尾相連起來(lái)。不同的問(wèn)題在連接點(diǎn)對(duì)曲線連續(xù)性有不同的要求:零階幾何連續(xù):首位連在一起即可。不光滑。一階幾何連續(xù):在連接點(diǎn)處曲線方向相同。光滑,但變化趨勢(shì)不同二階幾何連續(xù):兩段曲線在連接處,不僅光滑連接,曲率也相同。零階幾何連續(xù)一階幾何連續(xù)二階幾何連續(xù)9Bezier曲線的拼接(2)

6、設(shè)兩段Bezier曲線P(t), Q(t)首尾相接零階幾何連續(xù)就是要求:P(1)=Q(0)。 由Bezier曲線的Q(0)=Q0, P(1)= Pn , 所以要使兩段兩段Bezier實(shí)現(xiàn)零階幾何連續(xù)拼接,就要求Pn = Q0, 即前一段曲線的最后一個(gè)控制點(diǎn)和后一段曲線的第一個(gè)控制點(diǎn)重合。10Bezier曲線的拼接(3)一階幾何連續(xù)就是要求:P(1)=Q(0)。由式(9-1),(9-2)可得:P(1)=n(Pn-Pn-1) , Q(0)=m(Q1-Q0)Pn-1Pn (Q0) Q1Pn-Pn-1Q1-Qn幾何意義就是要求:Pn-1 , Pn (Q0) ,Q1點(diǎn)在同一條直線上,且Pn-1 , Q1

7、分別在Pn (Q0) 兩邊11Bezier曲線的拼接(4)二階幾何連續(xù)就是要求:P”(1)=Q”(0)。由式(9-1),(9-2)可得:P”(1)=n(n-1)(Pn-2Pn-1+Pn-2) =n(n-1)(Pn-Pn-1 + Pn-2 -Pn-1 ) Q”(0)=m(m-1)(Q2- 2Q1+Q0)= m(m-1)(Q2-Q1+Q0 -Q1)Pn-Pn-1Pn-2 -Pn-1Q0 -Q1Q2-Q1幾何意義:除了對(duì)Pn-1 , Pn (Q0) , Q1控制點(diǎn)的位置有要求外,還對(duì)Pn-2 , Q2控制點(diǎn)的位置有要求。它們的位置必須使兩個(gè)紅色的矢量相等12Bezier曲線的生成(1)在實(shí)際應(yīng)用Be

8、zier曲線段繪制曲線時(shí),常運(yùn)用3次曲線,即n=3。這是因?yàn)椋阂淮吻€是直線,二次曲線是拋物線,它們表現(xiàn)復(fù)雜曲線的變化能力稍差;而三次曲線在一個(gè)小的局部,足夠了。次數(shù)太大,數(shù)學(xué)計(jì)算量大,且容易產(chǎn)生累積誤差,影響精度。次數(shù)太大,一段曲線的控制點(diǎn)太多,不利于人機(jī)交互調(diào)整曲線形狀。13Bezier曲線的生成(2)下面來(lái)推導(dǎo)3次Bezier曲線的計(jì)算公式n=3 由式(9-1),(9-2)可得:用矩陣表示如下:(9-3)(9-4)14Bezier曲線的生成(3)P(t)是空間點(diǎn),用坐標(biāo)形式表示為x(t),y(t),z(t)由式(9-3)可知,實(shí)際坐標(biāo)值可用下式分別計(jì)算:只要在0,1計(jì)算若干個(gè)t值,如t=

9、0,0.1,0.2,1,求出相應(yīng)的坐標(biāo),用直線將這些點(diǎn)連接起來(lái),就構(gòu)成了曲線。若要畫二維曲線,只要計(jì)算x(t),y(t)。(9-5)P(t)的三個(gè)分量15Bezier曲線的手工生成(1)Bezier曲線上的點(diǎn)可以根據(jù)控制點(diǎn)精確得到P0P1P2P3P0 P1 P2 P0 “P1 “P0 “P0P1P2P3P0 P1 P2 P0 “P1 “P0 “16Bezier曲線的手工生成(2)P0”是曲線上的點(diǎn)P(1/2)如果每次取得不是中點(diǎn),而是1/3點(diǎn),最終得到的點(diǎn)是P(1/3)如果每次取得不是中點(diǎn),而是1/n點(diǎn),最終得到的點(diǎn)是P(1/n)P0”將一段曲線分成兩段,每一段成為一段新的Bezier曲線,其

10、新的控制點(diǎn)如圖所示在新的Bezier曲線上可以繼續(xù)精確取點(diǎn)P0P1P2P3P0 P1 P2 P0 “P1 “P0 “17反算Bezier曲線控制點(diǎn)給定n+1個(gè)型值點(diǎn)Qi(i=0,1,n),要求構(gòu)成的Bezier曲線通過(guò)這些點(diǎn)。取參數(shù)ti=i/n與Qi相對(duì)應(yīng)根據(jù)式9-1,Bezier曲線方程為解n+1個(gè)方程,得到P0 ,P1 Pn曲線控制點(diǎn)18Bezier曲線升階增加控制點(diǎn),提高對(duì)曲線的靈活控制。升階前后,曲線形狀不發(fā)生變化。通過(guò)公式變換,找出升階前后控制點(diǎn)之間的關(guān)系。升階前:升階后:兩者曲線相同:左式乘以(t+(1-t):19Bezier曲線升階比較兩邊同類項(xiàng)的系數(shù)得:化簡(jiǎn)得:例:一段3次曲線

11、,控制點(diǎn)為P0,P1,P2,P3 ,升階為4次曲線控制點(diǎn)為Q0,Q1,Q2,Q3,Q4 ,兩者關(guān)系為Q0=P0,Q1=1/4P0+3/4P1 ,Q2=2/4P1+2/4P2Q3=3/4P2+1/4P3 , Q4=P3。20Bezier曲線升階新的控制點(diǎn)是對(duì)老的控制多邊形在參數(shù)i/(n+1)處進(jìn)行線性插值的結(jié)果升階后的新控制多邊形在老控制多邊形凸包中升階后的新控制多邊形比老控制多邊形更接近Bezier曲線21B樣條曲線B樣條曲線定義:設(shè)P1,P2,Pn(n=k)為給定空間的n個(gè)點(diǎn),稱下列參數(shù)曲線為k階或k-1次的樣條曲線。折線 P1,P2,Pn為P(t)的控制多邊形,這n個(gè)點(diǎn)為P(t)的控制頂點(diǎn)

12、。B樣條曲線定義式與Bezier曲線形式類似,不同之處在于,其基函數(shù)由Bernstein基函數(shù)變成了B樣條基函數(shù)Bi,k(t)(9-6)22B樣條基函數(shù)B樣條基函數(shù)是由參數(shù)k的遞推關(guān)系所定義的其中,T=ti, i=0, 1, 2,是對(duì)參數(shù)軸t的一個(gè)劃分。如果劃分是等距離的,即對(duì)于任意i, ti+1 - ti=(i+1)-i=1,形成的是均勻B樣條曲線。我們只討論均勻B樣條曲線0,其它ti-1 ti ti+123B樣條基函數(shù)分析B樣條基函數(shù)是遞推定義:B樣條基函數(shù)的次數(shù):k=1時(shí), Bi,k(t) 為常數(shù)1, 0次;k=2時(shí), Bi,k(t) 為1次; k=3時(shí), Bi,k(t) 為二次函數(shù);

13、k=4時(shí), Bi,k(t) 為三次函數(shù)。24B樣條基函數(shù)分析局部性 Bi,1(t) 的定義域?yàn)閠i,ti+1) Bi,2(t) 由兩段Bi,1(t), Bi+1,1(t)組成,定義域?yàn)閠i,ti+1) ti+1,ti+2) = ti,ti+2) Bi,3(t)的定義域?yàn)閠i,ti+3) Bi,4(t)的定義域?yàn)閠i,ti+4)這意味著一個(gè)控制點(diǎn)Pi對(duì)整個(gè)曲線的影響只局限在k個(gè)分割區(qū)域ti,ti+k)中25B樣條基函數(shù)分析反之,一段定義在區(qū)間ti,ti+1)上的B樣條曲線Pi(t)只由k個(gè)控制點(diǎn)決定Pi-k ,Pi-1 ,Pi ,。整個(gè)B樣條曲線就是這樣一段一段繪制完成的只要能解決一段定義在區(qū)間

14、ti,ti+1)上的B樣條曲線Pi(t)的繪制就能繪制整段曲線。Piti-1 ti ti+1Pi-1Pi-226B樣條曲線段的繪制以最簡(jiǎn)單的k=2情況為例,說(shuō)明如何由定義式推出曲線段的計(jì)算公式:k=2,一段曲線Pi,2(t)只有兩個(gè)控制點(diǎn)。由式(9-6)可得:其中因?yàn)?7B樣條曲線段的繪制所以同理在t2tt3中因?yàn)椋簍i=i令t=t-t20t1在定義域范圍內(nèi)28B樣條曲線段的繪制參數(shù)仍用t表示,可得k=2時(shí):同樣,k=3、4時(shí)可以得到第i段曲線的矩陣表示:(9-7)(9-8)(9-9)29B樣條曲線段的繪制對(duì)于n個(gè)控制點(diǎn)的構(gòu)成的整個(gè)k階曲線,整個(gè)曲線表示如下:整個(gè)曲線共由n-k+1個(gè)曲線段組成

15、;第一個(gè)曲線段為 ,最后一個(gè)曲線段為曲線段 其形狀由k個(gè)控制點(diǎn)Pi-k+1,Pi-k+2,Pi 的位置確定。只要繪制出每一個(gè)曲線段,就能繪制出整個(gè)階曲線。30B樣條曲線的性質(zhì)以一段3次曲線(k=4)為例,說(shuō)明B樣條曲線的性質(zhì)。P(t)的控制點(diǎn)為P1,P2,P3,P4 。1、端點(diǎn):P(t)的起點(diǎn)為P(0) ,終點(diǎn)為P(1) 。由式(9-9)P(0) =1/6(P1+4P2+P3) ,P(1) =1/6(P2+4P3+P4)先看起點(diǎn), P(0) =P2+1/3 (1/2( P1+P3 ) -P2) 一個(gè)空間點(diǎn)可以看成是一個(gè)空間矢量。以平面上的點(diǎn)和平面矢量為例,回顧矢量加減法31B樣條曲線的性質(zhì)OP

16、3P1P2P2P2P3=P1+P2P1=P3-P2P4=1/2(P1+P2)P4P1P2P3P4點(diǎn):(P1+P3)紅色矢量:(P1+P3)- P2藍(lán)色矢量:1/3(P1+P3)- P2)點(diǎn):P2+ 1/3(P1+P3)- P2)P(0)P(1)32B樣條曲線的性質(zhì)2、端點(diǎn)的切線:P(0),P(1) 我們討論切線,只是想了解曲線的方向。由式(9-9)P(0)=1/2(P3-P1), P(1)=1/2(P4-P2),P(0)P(1)P1P2P3P433B樣條曲線的性質(zhì)3、凸包性:曲線段在控制點(diǎn)所圍成的凸包內(nèi)p1p2p3p44、連續(xù)性:第一個(gè)曲線段的控制點(diǎn)為P1,P2,P3,P4,第二個(gè)曲線段的控制

17、點(diǎn)為P2,P3,P4,P5,相鄰的兩個(gè)曲線段有三個(gè)共同的控制點(diǎn)。34B樣條曲線的性質(zhì)決定第一段終點(diǎn)的控制點(diǎn)與決定第二段起點(diǎn)的控制點(diǎn)完全一樣。那么,第一段終點(diǎn)的位置和方向與第二段起點(diǎn)的位置和方向完全一致,因此相鄰的曲線段自動(dòng)連接??梢宰C明,曲線在連接處具有k-1階連續(xù)。這是B樣條曲線優(yōu)于Bezier曲線的地方,即不必為了在連接處保持一定的平滑度,而處心積慮地安排、調(diào)整控制點(diǎn)位置。它能自動(dòng)地平滑連接。35三次Hermite曲線一條三次參數(shù)曲線的代數(shù)形式是:P(t)=a3t3+a2t2+a1t+a0, t0,1四個(gè)系數(shù)a3、a2 、a1、a0唯一地確定了曲線的形狀和位置。四個(gè)系數(shù)需要四個(gè)已知條件來(lái)確

18、定,這種根據(jù)四個(gè)已知條件來(lái)確定的一條三次參數(shù)曲線稱為三次Hermite曲線。(9-10)36三次Hermite曲線在實(shí)際應(yīng)用中,常用的條件是:兩個(gè)端點(diǎn)P(0)、P(1)和對(duì)應(yīng)的切矢量P(0)、P(1)。另一個(gè)常用的條件是:曲線上均勻分布的四個(gè)點(diǎn)P(0)、P(1/3) 、P(2/3) 、P(1)。這種情況是我們要介紹的。下面我們推導(dǎo)出由曲線上均勻分布的四個(gè)點(diǎn)P(0)、P(1/3) 、P(2/3) 、P(1)決定的曲線。37三次Hermite曲線由(9-10)知:P(0)=a0P(1/3)=1/27a3+1/9a2+1/3a1+a0P(2/3)=8/27a3+4/9a2+1/3a1+a0P(1)=

19、 a3 +a2+a1+a0解得:a3 = - 9/2P(0)+27/2P(1/3)-27/2P(2/3)+9/2P(1)a2 = 9P(0)-45/2P(1/3)+18P(2/3)-9/2P(1)a1 = -11/2P(0)+9P(1/3)-9/2P(2/3)+P(1)a0 = P(0)(9-11)38三次Hermite曲線由(9-10),(9-11)可得:(9-12)由(9-12)可以計(jì)算出一系列的曲線上的點(diǎn),進(jìn)而畫出曲線。39Hermite曲線的性質(zhì)Hermite曲線的控制點(diǎn)直接位于曲線之上,這種控制點(diǎn)稱為型值點(diǎn),對(duì)于確定曲線的位置十分有利。三次Hermite曲線的起點(diǎn)和終點(diǎn)分別位于第一和

20、第四個(gè)控制點(diǎn)上。對(duì)于一系列控制點(diǎn)所形成的三次Hermite曲線,控制點(diǎn)應(yīng)該分成每四個(gè)一組,每一組形成一段曲線。為了使每個(gè)曲線段連接起來(lái),相鄰兩組的控制點(diǎn)應(yīng)有一個(gè)控制點(diǎn)是重復(fù)的,即前一組的最后一個(gè)控制點(diǎn)同時(shí)也是后一組的第一個(gè)控制點(diǎn)。曲線段相接處可能不光滑,可以通過(guò)調(diào)整控制點(diǎn)位置,使曲線段相接處光滑起來(lái)。40曲面曲面和曲線一樣,也是用參數(shù)的形式表示。不同的是,曲面參數(shù)是二維的,用(u,v)表示曲面和曲線類似,是用分片表示的。整個(gè)曲面是由一系列的分片拼接而成的。P(u,v)41Bezier曲面一個(gè)三次Bezier曲面片的控制點(diǎn)有4x4個(gè)一個(gè)三次Bezier曲面片的代數(shù)形式是相應(yīng)的矩陣形式是42B樣條曲面一個(gè)三次B樣條曲面片的控制點(diǎn)有4x4個(gè)一個(gè)三次B樣條曲面片的代數(shù)形式是相應(yīng)的矩陣形式是43Hermite曲面一個(gè)三次Hermite曲面片的控制點(diǎn)有4x4個(gè)一個(gè)三次He

溫馨提示

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