版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六章曲線和曲面三維圖形的基本問題1.在二維屏幕上如何顯示三維物體?顯示器屏幕、繪圖紙等是二維的顯示對(duì)象是三維的解決方法----投影三維顯示設(shè)備正在研制中2.如何表示三維物體?二維形體的表示----直線段,折線,曲線段,多邊形區(qū)域三維形體的表示----空間直線段、折線、曲線段、多邊形、曲面片表示形體的兩種模型表示形體的兩種模型數(shù)據(jù)模型完全以數(shù)據(jù)描述例如用以8個(gè)頂點(diǎn)表示的立方體以中心點(diǎn)和半徑表示的球以數(shù)據(jù)文件的形式存在包括----特征表示、空間分割表示、推移表示、邊界表示、構(gòu)造實(shí)體幾何表示等進(jìn)一步分為線框模型表面模型實(shí)體模型線框模型線框模型:將形體表示成一組輪廓線的集合。一般地,畫出了形體的棱線與輪廓線就能唯一地表示出來(lái)。如圖,八個(gè)頂點(diǎn)可以定義一個(gè)長(zhǎng)方體,但還不足以識(shí)別它,如果定義了棱線,則無(wú)論如何放置長(zhǎng)方體都能唯一地表示了。對(duì)于多面體由于其輪廓線和棱線通常是一致的,所以多面體的線模型更便于識(shí)別,且簡(jiǎn)單。e12v4v8s3e2e4e6e8e2e7e11e10e9e3e1v2v3v1v7v5v6s2s6s5s1s4線框模型優(yōu)點(diǎn):簡(jiǎn)單、處理速度快缺點(diǎn):1、對(duì)于非平面多面體,如圓柱、球等形體,其輪廓線隨觀察方向的改變而改變,無(wú)法用一組固定的輪廓線來(lái)表示它們。2、線框模型與形體之間不存在一一對(duì)應(yīng)關(guān)系:它僅僅通過給定的輪廓線約束所表示形體的邊界面,而在輪廓線之間的地方,形體的表面可以任意變化。3、沒有形體的表面信息,不適于真實(shí)感顯示,由此導(dǎo)致表示的形體可能產(chǎn)生二義性。表面模型表面模型將形體表示成一組表面的集合如果把線框模型中的棱線包圍的部分定義為面,所形成的模型便是表面模型。其數(shù)據(jù)結(jié)構(gòu)是在線模型的基礎(chǔ)上附加一些指針,有序地連接棱線。下圖中表面編號(hào)表示第幾個(gè)表面,表面特征表面是平面還是曲面。形體與其表面一一對(duì)應(yīng),適合于真實(shí)感顯示4頂點(diǎn)個(gè)數(shù)1起始指針0表面特征5表面編接指針屬性頂點(diǎn)號(hào)14232341表面模型缺點(diǎn):不能有效的用來(lái)表示實(shí)體原因:1、表面模型中的所有面未必形成一個(gè)封閉的邊界2、各個(gè)面的側(cè)向沒有明確定義,即不知道實(shí)體位于面的哪一側(cè)實(shí)體模型實(shí)體模型用來(lái)描述實(shí)體,主要用于CAD/CAM包含了描述一個(gè)實(shí)體所需的較多信息,如幾何信息、拓?fù)湫畔?,可以支持多種運(yùn)算,如歐拉運(yùn)算等。表示形體的兩種模型過程模型以一個(gè)過程和相應(yīng)的控制參數(shù)描述例如用一些控制參數(shù)和一個(gè)生成規(guī)則描述的植物以一個(gè)數(shù)據(jù)文件和一段代碼的形式存在包括----粒子系統(tǒng)、L系統(tǒng)、迭代函數(shù)系統(tǒng)等三維對(duì)象兩類表示方法數(shù)據(jù)模型邊界表示Boundaryrepresentations空間區(qū)分Space-partitioningrepresentations過程模型L系統(tǒng)、分形…..RepresentationMethods邊界表示使用一組平面或曲面逼近表示3D對(duì)象(描述輪廓)曲面將物體分為內(nèi)外兩部分。典型例子:多邊形平面、樣條曲面RepresentationMethodsRepresentationMethods空間分區(qū)表示用來(lái)描述物體內(nèi)部性質(zhì)將包含一物體的空間區(qū)域劃分成一組較小的、非重疊的、鄰接的實(shí)體。如:八叉樹表示RepresentationMethods3DRepresentationmethods多邊形表面PolygonSurfaces二次曲面樣條表示:Bezier曲線立體構(gòu)造Solid-Modeling八叉樹Octrees分形FractalL系統(tǒng)…邊界表示方法(第6章)空間區(qū)分表示方法不行還有我們!第7章6.0多邊形表面三維圖形中運(yùn)用邊界表示的最普遍方式是使用一組包圍物體內(nèi)部的表面多邊形。很多圖形系統(tǒng)以一組表面多邊形來(lái)存儲(chǔ)物體的描述。由于所有表面以線性方程加以描述,因此會(huì)簡(jiǎn)化并加速物體的表面繪制和顯示。某些情況下,多邊形表示是惟一可用的,但很多圖形包也允許以其它方式對(duì)物體加以描述,如樣條曲面,它在轉(zhuǎn)換到多邊形表示后加以處理6.0多邊形表面多邊形表數(shù)據(jù)表分為兩組進(jìn)行組織幾何表:頂點(diǎn)坐標(biāo)和用來(lái)標(biāo)識(shí)多邊形表面空間方向的參數(shù)點(diǎn)表、邊表、面表屬性表:指明物體透明度及表面反射度的參數(shù)和紋理特征多邊形表面頂點(diǎn)表序號(hào)點(diǎn)坐標(biāo)1x1,y1,z12x2,y2,z23x3,y3,z34x4,y4,z45x5,y5,z5邊表序號(hào)頂點(diǎn)號(hào)1v1,v22v2,v33v3,v14v3,v45v4,v56v5,v1多邊形面表序號(hào)邊序號(hào)1E1,E2,E32E3,E4,E5,E6E1E2E4E5S1v2v1v3v4v5E3E6S2PolygonSurfaces多邊形網(wǎng)格圖形系統(tǒng)一般使用多邊形網(wǎng)格對(duì)3D物體進(jìn)行建模6.1曲線和曲面(第六章內(nèi)容)曲線曲面的生成方法給定一組數(shù)學(xué)函數(shù)給定的一組數(shù)據(jù)點(diǎn)一旦給定函數(shù),圖形包將指定曲線方程投影到顯示平面上,且沿著投影函數(shù)路徑繪制像素位置。由函數(shù)式描述而生成的顯示曲面的例子有二次曲面和超二次曲面
可以為簡(jiǎn)單的3D對(duì)象提供精確的描述6.2.1節(jié)球面三葉玫瑰線、圓柱螺線、圓錐螺線球面、橢球面、環(huán)面等6.1曲線和曲面二次曲面和超二次曲面不能表達(dá)復(fù)雜的曲線和曲面。例如飛機(jī)或汽車的流線表面…..使用樣條表示6.1曲線和曲面本章內(nèi)容曲線曲面基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.1曲線和曲面表示方法曲線曲面的表示要求1.唯一性;2.幾何不變性;3.易于定界;4.統(tǒng)一性5.易于實(shí)現(xiàn)光滑連接;6.幾何直觀曲線曲面表示方法顯式表示:y=f(x)隱式表示:f(x,y)=0參數(shù)表示:P(t)=[x(t),y(t),z(t)]顯式或隱式表示存在下述問題:(1)與坐標(biāo)軸相關(guān)的,不便于坐標(biāo)變換;(2)無(wú)法解決斜率為無(wú)窮大的情況;(3)對(duì)于空間復(fù)雜曲線曲面很難表示(4)不便于計(jì)算和編程參數(shù)表示:曲線上任一點(diǎn)的坐標(biāo)均表示成給定參數(shù)的函數(shù)。假定用t表示參數(shù),平面曲線上任一點(diǎn)P可表示為:
空間曲線上任一三維點(diǎn)P可表示為:參數(shù)表示例子:直線圓參數(shù)表示的優(yōu)點(diǎn):(1)滿足幾何不變性的要求;(2)有更大的自由度來(lái)控制曲線曲面的形狀;(3)便于坐標(biāo)變換;(4)便于處理斜率為無(wú)限大的問題,不會(huì)因此中斷計(jì)算;(5)代數(shù)、幾何相關(guān)和無(wú)關(guān)的變量是完全分離的,而且對(duì)變量個(gè)數(shù)不限,便于向高維空間擴(kuò)展。(6)t∈[0,1],直接定義了邊界。便于曲線和曲面的分段、分片描述。(7)易于用矢量和矩陣表示,從而簡(jiǎn)化了計(jì)算。參數(shù)曲線的代數(shù)形式和幾何形式一條三次參數(shù)曲線的代數(shù)形式:矢量形式:給定P(0),P(1),以及P’(0),P’(1)解四個(gè)方程,求得參數(shù)令參數(shù)曲線的幾何形式矩陣形式表示參數(shù)曲線:P=TA其中P=FBP=TMB表示一條參數(shù)曲線6.2位置矢量、切矢量、法矢量、曲率和撓率曲線上任一點(diǎn)的位置矢量可表示為:P(t)=[x(t),y(t),z(t)];切向量(切矢量)選擇弧長(zhǎng)s作為參數(shù),則是單位切矢量。根據(jù)弧長(zhǎng)微分公式有:于是有,即為單位矢量設(shè)曲線的參數(shù)方程是P=P(s),其上任一點(diǎn)的單位切矢量為T(s),稱矢量方向上的單位矢量N(s)為曲線在s處的主法矢量,稱過P(s)以N(s)為方向的直線為主法線。
T(s)為單位矢量,即,故得到:即主法矢量N(s)與切矢量T(s)垂直。
法矢量與平行的法矢量稱為曲線在該點(diǎn)的主法矢量N矢量積是第三個(gè)單位矢量,它垂直于T和N。把平行于矢量B的法矢稱為曲線的副法矢量我們可以推導(dǎo)出:T(切矢量)、N(主法矢量)和B(副法矢量)構(gòu)成了曲線上的活動(dòng)坐標(biāo)架。N、B構(gòu)成的平面稱為法平面,N、T構(gòu)成的平面稱為密切平面,B、T構(gòu)成的平面稱為從切平面。密切面從切面法平面TBN主法線曲線的法矢量
曲率和撓率即稱為曲率,其幾何意義是曲線的單位切矢量對(duì)弧長(zhǎng)的轉(zhuǎn)動(dòng)率。曲率k的倒數(shù)稱為曲率半徑。撓率的絕對(duì)值等于副法線方向(或密切平面)對(duì)于弧長(zhǎng)的轉(zhuǎn)動(dòng)率..對(duì)于一般參數(shù)t,我們可以推導(dǎo)出曲率和撓率的計(jì)算公式如下:)(ssTD+)(sTTDO曲率和撓率(a)(b)1N1B1T0N0B0T0B1BqDqD本章內(nèi)容曲線曲面基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條
(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算樣條的歷史很早的繪圖員利用“ducks”和有柔性的木條(樣條)來(lái)繪制曲線木質(zhì)的樣條具有二階連續(xù)并且通過所有的控制點(diǎn)ADuck(weight)Duckstraceoutcurve6.3插值和逼近樣條樣條:通過一組指定點(diǎn)集而生成平滑曲線的柔性帶。樣條曲線在計(jì)算機(jī)圖形學(xué)中的含義由多項(xiàng)式曲線段連接而成的曲線在每段的邊界處滿足特定的連續(xù)性條件樣條曲面使用兩組正交樣條曲線進(jìn)行描述樣條樣條在圖形學(xué)中的應(yīng)用設(shè)計(jì)曲線、曲面汽車車身設(shè)計(jì)、飛機(jī)和航天飛機(jī)表面的設(shè)計(jì)、船體設(shè)計(jì)以及家庭應(yīng)用。曲線的產(chǎn)生給定一組離散的坐標(biāo)點(diǎn),將數(shù)據(jù)集擬合成指定的曲線函數(shù)根據(jù)曲線函數(shù)得到曲線的圖形曲線的類型插值樣條曲線:選取的多項(xiàng)式使得曲線通過每個(gè)控制點(diǎn)逼近樣條曲線:選取的多項(xiàng)式不一定使曲線通過每個(gè)控制點(diǎn)給定一組有序的數(shù)據(jù)點(diǎn)Pi,i=0,1,…,n,構(gòu)造一條曲線順序通過這些數(shù)據(jù)點(diǎn),稱為對(duì)這些數(shù)據(jù)點(diǎn)進(jìn)行插值,所構(gòu)造的曲線稱為插值曲線。線性插值:假設(shè)給定函數(shù)f(x)在兩個(gè)不同點(diǎn)x1和x2的值,用一個(gè)線形函數(shù):y=ax+b,近似代替,稱為的線性插值函數(shù)。拋物線插值:已知在三個(gè)互異點(diǎn)的函數(shù)值為,要求構(gòu)造一個(gè)函數(shù)使拋物線在結(jié)點(diǎn)處與在處的值相等。插值xyo1y2y)(xfy=)(xyj=1x2xxyo1y2y)(xfy=)(xyj=1x2x3x3y(a)(b)線性插值和拋物插值逼近:構(gòu)造一條曲線使之在某種意義下最接近給定的數(shù)據(jù)點(diǎn)(但未必通過這些點(diǎn)),所構(gòu)造的曲線稱為逼近曲線。在計(jì)算數(shù)學(xué)中,逼近通常指用一些性質(zhì)較好的函數(shù)近似表示一些性質(zhì)不好的函數(shù)。曲線的逼近逼近求給定型值點(diǎn)之間曲線上的點(diǎn)稱為曲線的插值。將連接有一定次序控制點(diǎn)的直線序列稱為控制多邊形或特征多邊形。曲線的逼近凸殼凸殼的定義Convexhull包含一組控制點(diǎn)的凸多邊形邊界凸殼的作用提供了曲線或曲面與包圍控制點(diǎn)的區(qū)域之間的偏差的測(cè)量以凸殼為界的樣條保證了多項(xiàng)式沿控制點(diǎn)的平滑前進(jìn)凸殼光順(Firing)指曲線的拐點(diǎn)不能太多。對(duì)平面曲線而言,相對(duì)光順的條件是:a.具有二階幾何連續(xù)性(G2);b.不存在多余拐點(diǎn)和奇異點(diǎn);c.曲率變化較小。光順假定參數(shù)曲線段pi以參數(shù)形式進(jìn)行描述:參數(shù)連續(xù)性幾何連續(xù)性參數(shù)連續(xù)性與幾何連續(xù)性1.參數(shù)連續(xù)性0階參數(shù)連續(xù)性記作C0連續(xù)性,是指曲線的幾何位置連接,即1階參數(shù)連續(xù)性記作C1連續(xù)性,指代表兩個(gè)相鄰曲線段的方程在相交點(diǎn)處有相同的一階導(dǎo)數(shù):2階參數(shù)連續(xù)性,記作C2連續(xù)性,指兩個(gè)相鄰曲線段的方程在相交點(diǎn)處具有相同的一階和二階導(dǎo)數(shù)。
2.幾何連續(xù)性0階幾何連續(xù)性,記作G0連續(xù)性,與0階參數(shù)連續(xù)性的定義相同,滿足:1階幾何連續(xù)性,記作G1連續(xù)性,指一階導(dǎo)數(shù)在相鄰段的交點(diǎn)處成比例;2階幾何連續(xù)性,記作G2連續(xù)性,指相鄰曲線段在交點(diǎn)處其一階和二階導(dǎo)數(shù)均成比例。參數(shù)連續(xù)性條件兩個(gè)相鄰曲線段在相交處的參數(shù)導(dǎo)數(shù)相等零階連續(xù)(C0連續(xù)):簡(jiǎn)單地表示曲線連接一階連續(xù)(C1連續(xù)):說(shuō)明代表兩個(gè)相鄰曲線的方程在相交點(diǎn)處有相同的一階導(dǎo)數(shù)(切線)二階連續(xù)(C2連續(xù)):兩個(gè)曲線段在交點(diǎn)處有相同的一階和二階導(dǎo)數(shù),交點(diǎn)處的切向量變化率相等參數(shù)連續(xù)性條件曲線分段構(gòu)造時(shí)參數(shù)連續(xù)性條件零階連續(xù)一階連續(xù)二階連續(xù)F(u)f(u)F(1)=f(0)F'(1)=f'(0)F''(1)=f''(0)幾何連續(xù)性條件兩個(gè)相鄰曲線段在相交處的參數(shù)導(dǎo)數(shù)成比例零階連續(xù)(G0連續(xù)):與0階參數(shù)連續(xù)性相同,即兩個(gè)曲線必在公共點(diǎn)處有相同的坐標(biāo)一階連續(xù)(G1連續(xù)):表示一階導(dǎo)數(shù)在兩個(gè)相鄰曲線的交點(diǎn)處成比例二階連續(xù)(G2連續(xù)):表示兩個(gè)曲線段在相交處的一階和二階導(dǎo)數(shù)均成比例幾何連續(xù)性條件插值樣條曲線三次樣條插值自然三次樣條插值Hermite樣條插值Cardinal樣條插值Kochanek_Bartels樣條插值逼近樣條曲線Bezier曲線B_樣條曲線本章內(nèi)容曲線和曲面表示的基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.4.1樣條描述n次樣條參數(shù)多項(xiàng)式曲線的矩陣:6.4Himerte樣條 基矩陣 基函數(shù)(blengingfunction),或稱混合函數(shù)。6.4.2三次樣條給定n+1個(gè)點(diǎn),可得到通過每個(gè)點(diǎn)的分段三次多項(xiàng)式曲線:6.4.3自然三次樣條定義:給定n+1個(gè)型值點(diǎn),現(xiàn)通過這些點(diǎn)列構(gòu)造一條自然三次參數(shù)樣條曲線,要求在所有曲線段的公共連接處均具有位置、一階和二階導(dǎo)數(shù)的連續(xù)性,即自然三次樣條具有C2連續(xù)性。還需要兩個(gè)附加條件才能解出方程組.
特點(diǎn):1.只適用于型值點(diǎn)分布比較均勻的場(chǎng)合2.不能“局部控制”6.4.4三次Hermite樣條定義:假定型值點(diǎn)Pk和Pk+1之間的曲線段為p(t),t∈[0,1],給定矢量Pk、Pk+1、Rk和Rk+1,則滿足下列條件的三次參數(shù)曲線為三次Hermite樣條曲線:
推導(dǎo):幾何形式對(duì)三次參數(shù)曲線,若用其端點(diǎn)位矢P(0)、P(1)和切矢P¢(0)、P¢(1)描述。將P(0)、P(1)、P¢(0)和P¢(1)簡(jiǎn)記為P0、P1、P¢0和P¢1,代入得
Mh是Hermite矩陣。Gh是Hermite幾何矢量。三次Hermite樣條曲線的方程為:
通常將T?Mk稱為Hermite基函數(shù)(或混合函數(shù),調(diào)和函數(shù)):
H(t)t10.20.40.60.80.20.40.60.81`-0.2H0(t)H1(t)H2(t)H3(t)Hermite基函數(shù)特點(diǎn)分析:1.可以局部調(diào)整,因?yàn)槊總€(gè)曲線段僅依賴于端點(diǎn)約束。2.Hermite曲線具有幾何不變性本章內(nèi)容曲線和曲面表示的基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.5Bezier曲線6.5.1Bezier曲線的定義Bezier曲線的例子定義:其中,Pi構(gòu)成該Bezier曲線的特征多邊形Bernstein基函數(shù)具有如下形式:注意:當(dāng)k=0,t=0時(shí),tk=1,k!=1。
6.5.2Betnstein基函數(shù)的性質(zhì)(1)正性
(2)端點(diǎn)性質(zhì)
(3)權(quán)性
由二項(xiàng)式定理可知:(4)對(duì)稱性
因?yàn)?/p>
(5)遞推性。
即高一次的Bernstein基函數(shù)可由兩個(gè)低一次的Bernstein調(diào)和函數(shù)線性組合而成。因?yàn)?,?)導(dǎo)函數(shù)
(7)最大值。在處達(dá)到最大值。(8)升階公式
(9)積分1.一次Bezier曲線(n=1)
2.二次Bezier曲線(n=2)
3.三次Bezier曲線(n=3)
三次Bezier曲線四個(gè)Bezier基函數(shù)0tB0,3(t)B3,3(t)B1,3(t)B2,3(t)6.5.3Bezier曲線的性質(zhì)1.端點(diǎn)
2.一階導(dǎo)數(shù)
三次Bezier曲線段在起始點(diǎn)和終止點(diǎn)處的一階導(dǎo)數(shù)為:3.二階導(dǎo)數(shù)
三次Bezier曲線段在起始點(diǎn)和終止點(diǎn)處的二階導(dǎo)數(shù)為:當(dāng)t=0時(shí),當(dāng)t=1時(shí),上式表明:2階導(dǎo)矢只與相鄰的3個(gè)頂點(diǎn)有關(guān),事實(shí)上,r階導(dǎo)矢只與(r+1)個(gè)相鄰點(diǎn)有關(guān),與更遠(yuǎn)點(diǎn)無(wú)關(guān)。將、及、代入曲率公式,可以得到Bezier曲線在端點(diǎn)的曲率分別為:(4)對(duì)稱性。由控制頂點(diǎn)構(gòu)造出的新Bezier曲線,與原Bezier曲線形狀相同,走向相反。因?yàn)椋哼@個(gè)性質(zhì)說(shuō)明Bezier曲線在起點(diǎn)處有什么幾何性質(zhì),在終點(diǎn)處也有相同的性質(zhì)。(5)凸包性由于,且,這一結(jié)果說(shuō)明當(dāng)t在[0,1]區(qū)間變化時(shí),對(duì)某一個(gè)t值,P(t)是特征多邊形各頂點(diǎn)的加權(quán)平均,權(quán)因子依次是。在幾何圖形上,意味著Bezier曲線P(t)在中各點(diǎn)是控制點(diǎn)Pi的凸線性組合,即曲線落在Pi構(gòu)成的凸包之中,如下圖所示。Bezier曲線的凸包性凸包(6)幾何不變性。這是指某些幾何特性不隨坐標(biāo)變換而變化的特性。Bezier曲線位置與形狀與其特征多邊形頂點(diǎn)的位置有關(guān),它不依賴坐標(biāo)系的選擇。(7)變差縮減性。若Bezier曲線的特征多邊形是一個(gè)平面圖形,則平面內(nèi)任意直線與C(t)的交點(diǎn)個(gè)數(shù)不多于該直線與其特征多邊形的交點(diǎn)個(gè)數(shù),這一性質(zhì)叫變差縮減性質(zhì)。此性質(zhì)反映了Bezier曲線比其特征多邊形的波動(dòng)還小,也就是說(shuō)Bezier曲線比特征多邊形的折線更光順。(8)仿射不變性對(duì)于任意的仿射變換A:即在仿射變換下,的形式不變。6.5.4Bezier曲線的生成1.繪圖一段Bezier曲線①利用定義式Bezier曲線的繪制,可以利用其定義式,對(duì)參數(shù)t選取足夠多的值,計(jì)算曲線上的一些點(diǎn),然后用折線連接來(lái)近似畫出實(shí)際的曲線。隨著選取點(diǎn)增多,折線和曲線可以任意接近。假設(shè)給定的四個(gè)型值點(diǎn)是P0=(1,1),Pl=(2,3),P2=(4,3),P3=(3,1),則計(jì)算結(jié)果見下表。t(1-t)33t(1-t)23t2(1-t)t3P(t)01000(1,1)0.150.6140.3250.05740.0034(1.5058,1.765)0.350.2750.4440.2390.043(2.248,2.376)0.50.1250.3750.3750.125(2.75,2.5)0.650.0430.2390.4440.275(3.122,2.36)0.850.00340.05740.3250.614(3.248,1.75)10001(3,1)②利用曲線性質(zhì)(幾何作圖法和分裂法)a.幾何作圖法(deCasteljau算法)記點(diǎn)Pk,Pk+l,…,Pl可以生成的Bezier曲線為Pk,l(t),0≤t≤1,則成立下面的遞推關(guān)系上式改寫為:
幾何作圖法偽代碼語(yǔ)言實(shí)現(xiàn):voidbez_to_points(intn,doubleP[],intnpoints,doublepoints[])
//P為控制點(diǎn)坐標(biāo)
//控制點(diǎn)P的個(gè)數(shù)為n+1
//points存儲(chǔ)Bezier曲線上的離散點(diǎn)序列//離散點(diǎn)序列points的個(gè)數(shù)為npoints+1
{doublet,delt; delt=1.0/(double)npoints;//將參數(shù)tnpoints等分 t=0.0; for(inti=0;i<=npoints;i++) {
points[i]=decas(n,P,t);
//分別求出npoints+1個(gè)離散點(diǎn)points的坐標(biāo) t+=delt; }}doubledecas(intn,doubleP[],doublet){ intm,i; double*R,*Q,P0; R=newdouble[n+1];Q=newdouble[n+1]; for(i=0;i<=n;i++) R[i]=P[i];//將控制點(diǎn)坐標(biāo)P保存于R中//n次Bezier曲線在點(diǎn)t的值,可由兩條n-1次Bezier曲線在點(diǎn)t的值通過線性組合而求得。for(m=n;m>0;m--)
{for(i=0;i<=m-1;i++)Q[i]=R[i]+t*(R[i+1]-R[i]);for(i=0;i<=m-1;i++)R[i]=Q[i]; }P0=R[0];deleteR;deleteQ;return(P0);}
設(shè)給出四點(diǎn)的坐標(biāo)是(1,1),(2,3),(4,3),(3,1),求所確定三次Bezier曲線在t=1/3時(shí)的值P(1/3),算法的計(jì)算過程
Bezier幾何作圖算法計(jì)算過程
b.分裂法思想:將原控制點(diǎn)集分為兩個(gè)點(diǎn)數(shù)相同的新控制點(diǎn)集,分別對(duì)應(yīng)原曲線的前半段和后半段,新控制點(diǎn)集比原控制點(diǎn)集更接近直線,分裂過程繼續(xù)進(jìn)行,控制點(diǎn)集會(huì)迅速向曲線靠近,當(dāng)滿足某個(gè)允許的界限時(shí),可依次連接各點(diǎn)的折線來(lái)表示曲線
設(shè)控制點(diǎn)序列P0,P1,…,Pn確定的n次Bezier曲線是P(t),用如下遞歸方式計(jì)算另一組點(diǎn)集:
如果令Pa(s)和Pb(s)分別是以控制點(diǎn)序列和,確定的Bezier曲線,其中0≤s≤1,那么就有:己知四點(diǎn)P0,P1,P2,P3,確定了一條三次Bezier曲線P(t),可寫出下式,
分裂法中的遞歸計(jì)算分裂法的示意圖
驗(yàn)證Bezier曲線分成前后兩段的正確性,P0的系數(shù)為例,驗(yàn)證兩端它的系數(shù)是相等的。
設(shè)己知三次Bezier曲線P(t)的控制頂點(diǎn)是P0,P1,P2,P3,在P()處將曲線分為兩段,求出前半段的控制頂點(diǎn)Q0,Ql,Q2,Q3和后半段的控制頂點(diǎn)R0,R1,R2,R3,。有算法如下voidsplit_Bezier(PointP[]){ PointR[4],Q[4]; inti,j; for(i=0;i<=3;i++) R[i]=P[i];
for(i=0;i<=2;i++)
{Q[i]=R[0]; for(j=0;j<=2-i;j++) {R[j].x=(R[j].x+R[j+1].x)/2;//分別對(duì)相鄰兩控制點(diǎn)間的線段進(jìn)行分裂R[j].y=(R[j].y+R[j+1].y)/2;}} Q[3]=R[0];}分裂算法的計(jì)算分裂中止的條件:max(d(P1,P0P3),d(P2,P0P3))<εvoidnew_split_Bezier(PointP[]){PointR[4],Q[4]; inti,j; constdoubleepsilon=0.01; if(maxdistance(P)<epsilon)/*maxdistance(P)為求max(d(P1,P0P3),d(P2,P0P3))的函數(shù)*/{MoveTo(P[0].x,P[0].y); LineTo(P[3].x,P[3].y); }else {for(i=0;i<=3;i++)R[i]=P[i]; for(i=0;i<=2;i++) { Q[i]=R[0]; for(j=0;j<=2-i;j++) {R[j].x=(R[j].x+R[j+1].x)/2; R[j].y=(R[j].y+R[j+1].y)/2; }} Q[3]=R[0];new_split_Bezier(Q);new_split_Bezier(R); }}舉例:三次Bezier曲線光滑拼接的條件
P0P1P2P3和Q0QlQ2Q3,兩個(gè)bezier多邊形①曲線在連接點(diǎn)處C0連續(xù)的條件是P3=Q0②
曲線在連接點(diǎn)處G1連續(xù),Q‘0=aP’3 Q'0=3(Q1—Q0),P'3=3(P3—P2),Q1-Q0=a(P3-P2)
2.Bezier曲線的拼接由此得
③連接點(diǎn)處C2連續(xù)的條件對(duì)前面的公式求兩次導(dǎo)數(shù),可得,
于是知,要求,即注意到Q0=P3,由此得:6.5.5Bezier曲線的遞推(deCasteljau)算法
計(jì)算Bezier曲線上的點(diǎn),可用Bezier曲線方程,但使用deCasteljau提出的遞推算法則要簡(jiǎn)單的多。如下圖所示,設(shè)、、是一條拋物線上順序三個(gè)不同的點(diǎn)。過和點(diǎn)的兩切線交于點(diǎn),在點(diǎn)的切線交和于和,則如下比例成立:
這是所謂拋物線的三切線定理。(示意圖見下頁(yè))
0P1P2P11P10P20PBezier曲線上的點(diǎn)拋物線三切線定理當(dāng)P0,P2固定,引入?yún)?shù)t,令上述比值為t:(1-t),有:t從0變到1,第一、二式就分別表示控制二邊形的第一、二條邊,它們是兩條一次Bezier曲線。將一、二式代入第三式得:當(dāng)t從0變到1時(shí),它表示了由三頂點(diǎn)P0、P1、P2三點(diǎn)定義的一條二次Bezier曲線。并且表明:這二次Bezier曲線P20可以定義為分別由前兩個(gè)頂點(diǎn)(P0,P1)和后兩個(gè)頂點(diǎn)(P1,P2)決定的一次Bezier曲線的線性組合。依次類推,由四個(gè)控制點(diǎn)定P(t)=p0+(p1-p0)t義的三次Bezier曲線P30可被定義為分別由(P0,P1,P2)和(P1,P2,P3)確定的二條二次Bezier曲線的線性組合,由(n+1)個(gè)控制點(diǎn)Pi(i=0,1,...,n)定義的n次Bezier曲線Pn0可被定義為分別由前、后n個(gè)控制點(diǎn)定義的兩條(n-1)次Bezier曲線P0n-1與P1n-1的線性組合:由此得到Bezier曲線的遞推計(jì)算公式:這便是著名的deCasteljau算法。用這一遞推公式,在給定參數(shù)下,求Bezier曲線上一點(diǎn)P(t)非常有效。上式中:是定義Bezier曲線的控制點(diǎn),即為曲線上具有參數(shù)t的點(diǎn)。deCasteljau算法穩(wěn)定可靠,直觀簡(jiǎn)便,可以編出十分簡(jiǎn)捷的程序,是計(jì)算Bezier曲線的基本算法和標(biāo)準(zhǔn)算法。當(dāng)n=3時(shí),decasteljau算法遞推出的Pki呈直角三角形,對(duì)應(yīng)結(jié)果如下圖所示。從左向右遞推,最右邊點(diǎn)P30即為曲線上的點(diǎn)。
0P1P2P3P10P11P12P20P21P30Pn=3時(shí)niP的遞推關(guān)系這一算法可用簡(jiǎn)單的幾何作圖來(lái)實(shí)現(xiàn)。給定參數(shù),就把定義域分成長(zhǎng)度為的兩段。依次對(duì)原始控制多邊形每一邊執(zhí)行同樣的定比分割,所得分點(diǎn)就是由第一級(jí)遞推生成的中間頂點(diǎn),對(duì)這些中間頂點(diǎn)構(gòu)成的控制多邊形再執(zhí)行同樣的定比分割,得第二級(jí)中間頂點(diǎn)。重復(fù)進(jìn)行下去,直到n級(jí)遞推得到一個(gè)中間頂點(diǎn)即為所求曲線上的點(diǎn),如下圖所示。
)3/1(30PP=011/3幾何作圖法求Bezier曲線上一點(diǎn)(n=3,t=1/3)0P1P2P3P10P11P12P20P21P6.5.6Bezier曲線的升階與降階1.Bezier曲線的升階所謂升階是指保持Bezier曲線的形狀與定向不變,增加定義它的控制頂點(diǎn)數(shù),也即是提高該Bezier曲線的次數(shù)。增加了控制頂點(diǎn)數(shù),不僅能增加了對(duì)曲線進(jìn)行形狀控制的靈活性,還在構(gòu)造曲面方面有著重要的應(yīng)用。對(duì)于一些由曲線生成曲面的算法,要求那些曲線必須是同次的。應(yīng)用升階的方法,我們可以把低于最高次數(shù)的的曲線提升到最高次數(shù),而獲得同一的次數(shù)。曲線升階后,原控制頂點(diǎn)會(huì)發(fā)生變化。下面,我們來(lái)計(jì)算曲線提升一階后的新的控制頂點(diǎn)。設(shè)給定原始控制頂點(diǎn),定義了一條n次Bezier曲線:
增加一個(gè)頂點(diǎn)后,仍定義同一條曲線的新控制頂點(diǎn)為,則有:
對(duì)上式左邊乘以,得到:
比較等式兩邊項(xiàng)的系數(shù),得到:
化簡(jiǎn)即得:
其中。此式說(shuō)明:新的控制頂點(diǎn)是以參數(shù)值按分段線性插值從原始特征多邊形得出的。升階后的新的特征多邊形在原始特征多邊形的凸包內(nèi)特征多邊形更靠近曲線。三次Bezier曲線的升階實(shí)例如下圖所示。*00PP=1P2P*43PP=*1P*2P*3P
Bezier曲線升階2.Bezier曲線的降階降階是升階的逆過程。給定一條由原始控制頂點(diǎn)定義的n次Bezier曲線,要求找到一條由新控制頂點(diǎn)定義的n-1次Bezier曲線來(lái)逼近原始曲線。假定是由升階得到,則由升階公式有:從這個(gè)方程可以導(dǎo)出兩個(gè)遞推公式:
和
6.6Bezier曲面基于Bezier曲線的討論,我們可以方便地可以給出Bezier曲面的定義和性質(zhì),Bezier曲線的一些算法也可以很容易擴(kuò)展到Bezier曲面的情況。1.Bezier曲面定義:BENi,m(u)與BENj,n(v)是Bernstein基函數(shù):
依次用線段連接點(diǎn)列中相鄰兩點(diǎn)所形成的空間網(wǎng)格,稱之為特征網(wǎng)格。
1.雙線性Bezier曲面(m=n=1)
2.雙二次Bezier曲面(m=n=2)3.雙三次Bezier曲面(m=n=3)雙三次Bezier曲面及其控制網(wǎng)格P0,0P3,0P0,3P3,3P1,0P2,0P0,1P0,2P1,1P2,1P3,1P1,2P2,2P2,3P1,3P2,3Bezier曲面的矩陣表示式是:在一般實(shí)際應(yīng)用中,不大于4。
其中性質(zhì):1.控制網(wǎng)格的四個(gè)角點(diǎn)正好是Bezier曲面的四個(gè)角點(diǎn),2.控制網(wǎng)格最外一圈頂點(diǎn)定義Bezier曲面的四條邊界,這四條邊界均為Bezier曲線。3.幾何不變性4.移動(dòng)一個(gè)頂點(diǎn)Pi,j,將對(duì)曲面上參數(shù)為u=i/m,v=j/n的那點(diǎn)p(i/m,j/n)處發(fā)生最大的影響5.對(duì)稱性6.凸包性2.Bezier曲面的拼接0階連續(xù)性只要求相連接的曲面片具有公共的邊界曲線。1階連續(xù)性則要求在邊界曲線上的任何一點(diǎn),兩個(gè)曲面片跨越邊界的切線矢量應(yīng)該共線,而且兩切線矢量的長(zhǎng)度之比為常數(shù)。如右圖所示,設(shè)兩張m×n次Bezier曲面片
分別由控制頂點(diǎn)和定義。),(vuP),(vuQ)0,0(P)1,0(P)0,1(Q)1,1(Q)0,0()0,1(QP=)1,0()1,1(QP=uvBezier曲面片的拼接
Bezier曲面片的拼接邊界線P0,0Q3,0P3,3(Q0,3)P0,3Q3,3P3,1(Q0,1)P3,0(Q0,0)P3,2(Q0,2)實(shí)現(xiàn)G1連續(xù)性的條件為:(1)p1(1,v)=p2(0,v),即有P3,i=Q0,i,i=0,1,2,3(2)P3,i-P2,i=λ(Q1,i-Q0,i),i=0,1,2,3已知兩張雙三次Bezier曲面片:遞推(deCasteljau)算法Bezier曲線的遞推(deCasteljau)算法,可以推廣到Bezier曲面的情形。若給定Bezier曲面特征網(wǎng)格的控制頂點(diǎn)和一對(duì)參數(shù)值,則:
(6.6.1)其中(6.6.2)
或(6.6.3)
(6.6.2)與(6.6.3)中的下標(biāo)的變化范圍已在(6.6.1)式中給出。上面給出了確定曲面上一點(diǎn)的兩種方案。當(dāng)按(6.6.2)式方案執(zhí)行時(shí),先以u(píng)參數(shù)值對(duì)控制網(wǎng)格u向的n+1個(gè)多邊形執(zhí)行曲線deCasteljau算法,m級(jí)遞推后,得到沿v向由n+1個(gè)頂點(diǎn)構(gòu)成的中間多邊形。再以v參數(shù)值對(duì)它執(zhí)行曲線的deCasteljau算法,n級(jí)遞推以后,得到一個(gè),即所求曲面上的點(diǎn)也可以按(6.6.3)式方案執(zhí)行,先以v參數(shù)值對(duì)控制網(wǎng)格沿v向的m+1個(gè)多邊形執(zhí)行n級(jí)遞推,得沿u向由m+1個(gè)頂點(diǎn)構(gòu)成的中間多邊形。再以u(píng)參數(shù)值對(duì)它執(zhí)行n級(jí)遞推,得所求點(diǎn)。
之所以有這樣的算法,是因?yàn)楸菊聝?nèi)容曲線和曲面表示的基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.7B樣條曲線Bezier曲線和曲面的不足:Bezier曲線或曲面不能作局部修改;Bezier曲線或曲面的拼接比較復(fù)雜6.7.1B樣條曲線B樣條曲線(構(gòu)造具有局部性的調(diào)和函數(shù))給定n+1個(gè)控制點(diǎn)P0,P1,…,Pn,它們所確定的k階B樣條曲線是:
其中Ni,k(u)遞歸定義如下:
這里u0,u1,…,un+k,是一個(gè)非遞減的序列,稱為節(jié)點(diǎn),(u0,u1,…,un+k)稱為節(jié)點(diǎn)向量。定義中可能出現(xiàn),這時(shí)約定為0。
例一:選取,n=2,k=1,控制頂點(diǎn)是P0,P1,P2,這樣應(yīng)選擇參數(shù)節(jié)點(diǎn)n+k+1=4個(gè),設(shè)節(jié)點(diǎn)向量是(u0,u1,u2,u3),按式定義,可寫出三個(gè)基函數(shù):
由公式可知所定義的B樣條曲線是任意一階B樣條曲線是控制點(diǎn)本身,可以看作是0次多項(xiàng)式
例二.選取n=3,k=2,于是有四個(gè)控制頂點(diǎn)P0,P1,P2,P3,應(yīng)有參數(shù)節(jié)點(diǎn)n+k+1=6個(gè),設(shè)節(jié)點(diǎn)向量是(0,0,1,2,3,3),試畫出所確定的2階B樣條曲線。取u=0.5,進(jìn)行計(jì)算。因?yàn)?.5∈[0,1]=[u1,u2],因此N1,1(0.5)=1,而其它的Ni,1(0.5)=0,i≠1。再取u其它一些值進(jìn)行計(jì)算,結(jié)果如表所示。u00.511.522.53N0,2(u)10.500000N1,2(u)00.510.5000N2,2(u)0000.510.50N3,2(u)000000.51P(u)P00.5(P0+P1)P10.5(P1+P2)P20.5(P2+P3)P3二階B樣條曲線是連接各控制點(diǎn)的線段組成的折線,是一次多項(xiàng)式例三.選取n=3,k=4,平面上四個(gè)控制頂點(diǎn)P0,P1,P2,P3的坐標(biāo)依次是(1,1),(2,3),(4,3),(3,1),這時(shí)應(yīng)取參數(shù)節(jié)點(diǎn)n+k+1=8個(gè),設(shè)選取節(jié)點(diǎn)向量為(0,0,0,0,1,1,1,1),求所確定的4階B樣條曲線。計(jì)算N1,4(0.5),其中0.5∈[0,1]=[u3,u4]
N3,1(0.5)=1,而對(duì)i≠3,Ni,1(0.5)=0。
用類似的過程可計(jì)算求出:
曲線上對(duì)應(yīng)參數(shù)u=0.5的點(diǎn)是:
證明:四個(gè)控制點(diǎn)(n=3)所確定的四階(K=4)B樣條曲線(節(jié)點(diǎn)向量為(0,0,0,0,1,1,1,1))就是它們所確定的Bezier曲線B樣條曲線的定義B樣條曲線的數(shù)學(xué)表達(dá)式為:
在上式中,0≤
t≤1;i=0,1,2,…,m所以可以看出:B樣條曲線是分段定義的。如果給定m+n+1個(gè)頂點(diǎn)Pi(i=0,1,2,…,m+n),則可定義m+1段n次的參數(shù)曲線。在以上表達(dá)式中:Fk,n(t)為n次B樣條基函數(shù),也稱B樣條分段混合函數(shù)。其表達(dá)式為:
式中:0≤t≤1,k=0,1,2,…,n連接全部曲線段所組成的整條曲線稱為n次B樣條曲線。依次用線段連接點(diǎn)Pi+k(k=0,1,…,n)所組成的多邊折線稱為B樣條曲線在第i段的B特征多邊形。3.二次B樣條曲線在二次B樣條曲線中,n=2,k=0,1,2;故其基函數(shù)形式為有了基函數(shù),因此可寫出二次B樣條曲線的分段表達(dá)式為:
(i=0,1,2,…,m)m+1段寫成一般的矩陣形式為:
式中,Bk為分段曲線的特征多邊形的頂點(diǎn):B0,B1,B2。對(duì)于第i段曲線的Bk即為:Pi,Pi+1,Pi+2連續(xù)的三個(gè)頂點(diǎn)。(見下圖)
n=2,二次B樣條曲線m+n+1個(gè)頂點(diǎn),三點(diǎn)一段,共m+1段。i=0P0,2(t)i=1P1,2(t)
二次B樣條曲線的性質(zhì)先對(duì)P(t)求導(dǎo)得:
然后分別將t=0,t=0.5,t=1代入P(t)和P’(t),可得:P(0)=1/2(B0+B1),P(1)=1/2(B1+B2);P’(0)=B1-B0,P’(1)=B2-B1;P(1/2)=1/2{1/2[P(0)+P(1)]+B1}P’(1/2)=1/2(B2-B0)=P(1)-P(0)是什么曲線?與Bezier曲線有何差別?與以上這些式子所表達(dá)的性質(zhì)相符的曲線是何種形狀:(見下圖)結(jié)論:分段二次B樣條曲線是一條拋物線;有n個(gè)頂點(diǎn)定義的二次B樣條曲線,其實(shí)質(zhì)上是n-2段拋物線(相鄰三點(diǎn)定義)的連接,并在接點(diǎn)處達(dá)到一階連續(xù)。(見下圖)6.7.2B樣條曲線的性質(zhì)1.局部支柱性
B樣條的基函數(shù)是一個(gè)分段函數(shù),其重要特征是在參數(shù)變化范圍內(nèi),每個(gè)基函數(shù)在tk到tk+m的子區(qū)間內(nèi)函數(shù)值不為零,在其余區(qū)間內(nèi)均為零,通常也將該特征稱為局部支柱性。
B樣條曲線的局部支柱性P0P1P2P3P″4P5P6P7P4P′42.B樣條的凸組合性質(zhì)
B樣條的凸組合性和B樣條基函數(shù)的數(shù)值均大于或等于0保證了B樣條曲線的凸包性,即B樣條曲線必處在控制多邊形所形成的凸包之內(nèi)。
B樣條曲線與Bezier曲線的凸包性比較B樣條曲線Bezier曲線Bezier曲線B樣條曲線m=3m=4m=5(a)B樣條曲線和Bezier曲線的凸包比較(b)B樣條曲線和Bezier曲線的比較B樣條凸包Bezier凸包B樣條凸包B樣條凸包Bezier凸包Bezier凸包3.連續(xù)性若一節(jié)點(diǎn)矢量中節(jié)點(diǎn)均不相同,則m階(m-1次)B樣條曲線在節(jié)點(diǎn)處為m-2階連續(xù)。B樣條曲線基函數(shù)的次數(shù)與控制頂點(diǎn)個(gè)數(shù)無(wú)關(guān)。重節(jié)點(diǎn)問題
具有重節(jié)點(diǎn)的三次B樣條t0t1t2t3t44.導(dǎo)數(shù)
5.幾何不變性6.變差減少性節(jié)點(diǎn)矢量:節(jié)點(diǎn)矢量分為三種類型:均勻的,開放均勻(準(zhǔn)均勻)的和非均勻的。B樣條曲線分為四種:均勻B樣條曲線、非均勻B樣條曲線、開放均勻B樣條曲線和分段Bezier曲線當(dāng)節(jié)點(diǎn)沿參數(shù)軸均勻等距分布,即tk+1-tk=常數(shù)時(shí),表示均勻B樣條曲線。當(dāng)節(jié)點(diǎn)沿參數(shù)軸的分布不等距,即(tk+1-tk)≠常數(shù)時(shí),表示非均勻B樣條曲線。6.7.2B樣條曲線類型劃分開放均勻B樣條(準(zhǔn)均勻)與均勻B樣條曲線的差別在于兩端節(jié)點(diǎn)具有重復(fù)度k,這樣的節(jié)點(diǎn)矢量定義了準(zhǔn)均勻的B樣條基。均勻B樣條曲線沒有保留Bezier曲線端點(diǎn)的幾何性質(zhì),即樣條曲線的首末端點(diǎn)不再是控制多邊形的首末端點(diǎn)。采用準(zhǔn)均勻的B樣條曲線解決了這個(gè)問題準(zhǔn)均勻三次B樣條曲線分段Bezier曲線節(jié)點(diǎn)矢量中兩端節(jié)點(diǎn)具有重復(fù)度k,所有內(nèi)節(jié)點(diǎn)重復(fù)度為k-1,這樣的節(jié)點(diǎn)矢量定義了分段的Bernstein基。三次分段Bezier曲線1.均勻周期性B樣條曲線節(jié)點(diǎn)取值:T=(-2,-1.5,-1,-0.5,0,0.5,1,1.5,2)T=(0,1,2,3,4,5,6,7)均勻B樣條的基函數(shù)呈周期性:均勻二次(三階)B樣條曲線 取n=3,m=3,則n+m=6,不妨設(shè)節(jié)點(diǎn)矢量為:T=(0,1,2,3,4,5,6):基函數(shù)由遞推轉(zhuǎn)換到直接定義可以把不同段的時(shí)間進(jìn)行移動(dòng)例如:t在[2,3]設(shè)置為t=t-2;依次改為t=t-1;t=t注意順序顛倒。即t=t-2變?yōu)镕0,3。以下相同處理。
tBk,3(t)214351
四段二次(三階)均勻B樣條基函數(shù)N0,3(t)N1,3(t)N2,3(t)N3,3(t)曲線的起點(diǎn)和終點(diǎn)值:均勻二次B樣條曲線起點(diǎn)和終點(diǎn)處的導(dǎo)數(shù):
四個(gè)控制點(diǎn)的二次周期性B樣條曲線P0P1P2P3局部性。k階B樣條曲線上參數(shù)為的一點(diǎn)至多與k個(gè)控制頂點(diǎn)有關(guān),與其它控制頂點(diǎn)無(wú)關(guān);移動(dòng)該曲線的第i個(gè)控制頂點(diǎn)Pi至多影響到定義在區(qū)間上那部分曲線的形狀,對(duì)曲線的其余部分不發(fā)生影響。仿射不變性即在仿射變換下,的表達(dá)式具有形式不變性。直線保持性控制多邊形退化為一條直線時(shí),曲線也退化為一條直線。造型的靈活性。用B樣條曲線可以構(gòu)造直線段、尖點(diǎn)、切線等特殊情況.對(duì)于四階(三次)B樣條曲線.若要在其中得到一條直線段,只要四點(diǎn)位于一條直線上為了使P(t)能過P(i)點(diǎn),只要使重合尖點(diǎn)也可通過三重節(jié)點(diǎn)的方法得到為了使曲線和某一直線L相切,只要取位于L上及的重?cái)?shù)不大于2。結(jié)論:對(duì)于由任意數(shù)目的控制點(diǎn)構(gòu)造的二次周期性B樣條曲線來(lái)說(shuō),曲線的起始點(diǎn)位于頭兩個(gè)控制點(diǎn)之間,終止點(diǎn)位于最后兩個(gè)控制點(diǎn)之間。對(duì)于高次多項(xiàng)式,起點(diǎn)和終點(diǎn)是m-1個(gè)控制點(diǎn)的加權(quán)平均值點(diǎn)。若某一控制點(diǎn)出現(xiàn)多次,樣條曲線會(huì)更加接近該點(diǎn)。三次(四階)周期性B樣條取m=4,n=3,節(jié)點(diǎn)矢量為:T=(0,1,2,3,4,5,6,7):三次周期性B樣條的邊界條件為:P0P1P2P3
四個(gè)控制點(diǎn)的三次均勻B樣條曲線重點(diǎn)討論均勻B樣條曲線:參數(shù)節(jié)點(diǎn)中參數(shù)u的每一區(qū)間為等長(zhǎng)時(shí)所得到的B樣條函數(shù)稱為是等距的,或均勻B樣條曲線??杉俣╱i=i,i=0,1,…,n+k,設(shè)tj=u-ui+j,ui+j≤u≤ui+j+1與0≤tj≤1是等價(jià)的。
遞歸式,經(jīng)過計(jì)算,可以寫出:
如果固定在ui+3≤u≤ui+4區(qū)間,可以寫出:
令i=0,可寫出四個(gè)B樣條基函數(shù):設(shè)給出n+1個(gè)控制點(diǎn)P0,P1,…,Pn,則所確定的4階3次等距B樣條曲線是:4階3次等距B樣條曲線曲線的性質(zhì)
性質(zhì)一:曲線在拚接處是連續(xù)的,一階和二階導(dǎo)數(shù)也是連續(xù)的。因此4階3次等距B樣條曲線:雖然分段定義,但各段拚接處有直到二階導(dǎo)數(shù)的連續(xù)性,整條曲線是光滑的。
性質(zhì)2:4階3次等距B樣條曲線具有凸包性,這通過驗(yàn)證0≤Nj,4(u)≤1,0≤j≤3及
性質(zhì)3:B樣條曲線具有局部性當(dāng)移動(dòng)一個(gè)控制點(diǎn)時(shí),只對(duì)其中的一段曲線有影響,并不對(duì)整條曲線產(chǎn)生影響。如圖4.22所示是一條B樣條曲線。該圖表示控制點(diǎn)P5變化后曲線變化的情況。由圖可見P5變化只對(duì)其中一段曲線有影響。
性質(zhì)4:用B樣條曲線可構(gòu)造直線段、尖點(diǎn)、切線等特殊情況。靈活選擇控制點(diǎn)的位置和節(jié)點(diǎn)ui的重復(fù)數(shù),可形成許多特殊情況的B樣條曲線
2.開放均勻B樣條曲線節(jié)點(diǎn)矢量可以這樣定義:令L=n-m,從0開始,按ti≤ti+1排列。
開放均勻的二次(三階)B樣條曲線假設(shè)m=3,n=4,節(jié)點(diǎn)矢量為:T=(t0,t1,,tn+m)=(t0,t1,t2,t3,t4,t5,t6,t7)=(0,0,0,1,2,3,3,3)。
開放均勻的二次B樣條基函數(shù)Bk,3(t)tB0,3(t)B1,3(t)B3,3(t)B2,3(t)B4,3(t)12313.非均勻B樣條曲線
非均勻B樣條曲線的基函數(shù)Bk,m(t)t12314.反求B樣條曲線控制點(diǎn)及其端點(diǎn)性質(zhì) 問題:所謂反求B樣條曲線控制點(diǎn)是指已知一組空間型值點(diǎn)Qi(i=1,2,,n),要找一條m次B樣條曲線過Qi點(diǎn),也即找一組與點(diǎn)列Qi對(duì)應(yīng)的B樣條控制頂點(diǎn)Pj(j=0,1,,n+1)。
用分段三次B樣條曲線pi來(lái)擬合,其上型值點(diǎn)和控制點(diǎn)的位置矢量之間有關(guān)系:假定需求首末兩點(diǎn)過Q1和Qn的非周期三次B樣條曲線,則有P1=Q1,Pn=Qn,于是求解控制點(diǎn)Pj(i=2,3,...,n-1)的線性方程組為:
補(bǔ)充兩個(gè)邊界條件為:P0=P-1=Q1Pn+1=Pn+2=Qn
6.7.3deBoor-Cox遞推定義參數(shù)說(shuō)明m是曲線的階數(shù),(m-1)為B樣條曲線的次數(shù),曲線在連接點(diǎn)處具有(m-2)階連續(xù)。tk是節(jié)點(diǎn)值:約定:6.8B樣條曲面定義:控制頂點(diǎn)、控制網(wǎng)格(特征網(wǎng)格)、B樣條基函數(shù)。B樣條曲面具有與B樣條曲線相同的局部支柱性、凸包性、連續(xù)性、幾何變換不變性等性質(zhì)。雙三次B樣條曲面本章內(nèi)容曲線和曲面表示的基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Bezier曲線曲面(3)B樣條曲線曲面(4)Hermite樣條曲線
(5)有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.9有理樣條曲線曲面:NURBSB樣條曲線包括其特例的Bezier曲線都不能精確表示出拋物線外的二次曲線,B樣條曲面包括其特例的Bezier曲面都不能精確表示出拋物面外的二次曲面,而只能給出近似表示。提出NURBS方法,即非均勻有理B樣條方法主要是為了找到與描述自由型曲線曲面的B樣條方法既相統(tǒng)一、又能精確表示二次曲線弧與二次曲面的數(shù)學(xué)方法。NURBS方法:非均勻有理B樣條(NonuniformRationalB-Spline)方法8.5.1NURBS曲線曲面的定義定義: 6.9.1NURBS曲線的定義NURBS曲線是由分段有理B樣條多項(xiàng)式基函數(shù)定義的Ri,k(t)具有k階B樣條基函數(shù)類似的性質(zhì):局部支承性:Ri,k(t)=0,t[ti,ti+k]權(quán)性:可微性:如果分母不為零,在節(jié)點(diǎn)區(qū)間內(nèi)是無(wú)限次連續(xù)可微的,在節(jié)點(diǎn)處(k-1-r)次連續(xù)可導(dǎo),r是該節(jié)點(diǎn)的重復(fù)度。若i=0,則Ri,k(t)=0;若i=+,則Ri,k(t)=1;NURBS曲線與B樣條曲線具有類似的幾何性質(zhì):局部性質(zhì)。變差減小性質(zhì)。凸包性。在仿射與透射變換下的不變性。在曲線定義域內(nèi)有與有理基函數(shù)同樣的可微性。如果某個(gè)權(quán)因子為零,那么相應(yīng)控制頂點(diǎn)對(duì)曲線沒有影響。若,則當(dāng)時(shí),Bezier曲線和非有理B樣條曲線是NURBS曲線的特殊情況齊次坐標(biāo)表示齊次坐標(biāo)系xyw中的控制頂點(diǎn)為k階非有理B樣條曲線可表示為:以坐標(biāo)原點(diǎn)為投影中心,則得到平面曲線yxw0P1P2P)(tPw0Pw1Pw2P)(tPw1=w平面NURBS曲線齊次坐標(biāo)表示三維空間的NURBS曲線可以類似地定義。非有理B樣條的算法可以推廣到NURBS曲線,只不過是在齊次坐標(biāo)下進(jìn)行。權(quán)因子的幾何意義如果固定曲線的參數(shù)t,而使變化,則NURBS曲線方程變成以為參數(shù)的直線方程,即NURBS曲線上t值相同的點(diǎn)都位于同一直線上。分別是對(duì)應(yīng)曲線上的點(diǎn),即N,Bi可表示為:(Pi,Bi,N,B)四點(diǎn)的交比(1)若i增大或減小,則也增大或減小,所以曲線被拉向或推離開Pi點(diǎn);(2)若j增大或減小,曲線被推離或拉向Pj(ji)。B0P1P2P3P4P5PiBNNURBS曲線中的權(quán)因子的作用圓錐曲線的NURBS表示取節(jié)點(diǎn)向量為則NURBS曲線退化為二次Bezier曲線,且可以證明,這是圓錐曲線弧方程。稱為形狀因子,
的值確定了圓錐曲線的類型。時(shí),上式是拋物線弧,
時(shí),上式是雙曲線弧,時(shí),上式是橢圓弧。時(shí),上式退化為一對(duì)直線段P0P1和P1P2,時(shí),上式退化為連接兩點(diǎn)P0P2的直線段1P2P0P橢圓拋物線雙曲線圓錐曲線的NURBS表示NURBS曲線的修改常用的方法有修改權(quán)因子、控制點(diǎn)和反插節(jié)點(diǎn)。修改權(quán)因子當(dāng)保持控制頂點(diǎn)和其它權(quán)因子不變,減少或增加某權(quán)因子時(shí),曲線被推離或拉向相應(yīng)頂點(diǎn)。N
修改權(quán)因子iPSBS*欲將曲線在該點(diǎn)S拉向或推離控制頂點(diǎn)Pi一個(gè)距離d,以得到新點(diǎn)S’,可由重新確定相應(yīng)的權(quán)因子使之改變?yōu)閬?lái)達(dá)到修改控制頂點(diǎn)修改控制頂點(diǎn)的位置,曲線隨之變形。 例:假定用定義在三個(gè)控制頂點(diǎn)和開放均勻的節(jié)點(diǎn)矢量上的二次(三階)B樣條函數(shù)來(lái)擬合,于是,T=(0,0,0,1,1,1),取權(quán)函數(shù)為:則有理B樣條的表達(dá)式為:然后取不同的r值得到各種二次曲線:
P1P0P2雙曲線拋物線直線橢圓由不同有理樣條權(quán)因子生成的二次曲線段由有理樣條函數(shù)生成的第一象限上的圓弧xyP1(1,1)P2(1,0)P0(0,1)aNURBS曲面可由下面的有理參數(shù)多項(xiàng)式函數(shù)表示:6.9.2有理基函數(shù)的性質(zhì)NURBS曲線也可用有理基函數(shù)的形式表示:
1.普遍性2.局部性3.凸包性4.可微性5.權(quán)因子本章內(nèi)容曲線和曲面表示的基礎(chǔ)知識(shí)曲線和曲面的表示(1)插值和逼近樣條(2)Hermite樣條曲線(3)Bezier曲線曲面(4)B樣條曲線曲面
(5)
有理樣條曲線曲面(6)曲線曲面的轉(zhuǎn)換和計(jì)算6.10曲線曲面的轉(zhuǎn)換和計(jì)算6.10.1樣條曲線曲面的轉(zhuǎn)換
例:
三次Hermite樣條矩陣:三次
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 旅游餐飲員工績(jī)效總結(jié)
- 木材銷售工作總結(jié)
- 服裝店衛(wèi)生衛(wèi)生規(guī)范標(biāo)準(zhǔn)
- 十年級(jí)化學(xué)學(xué)科的教學(xué)工作總結(jié)
- 制冷空調(diào)行業(yè)人力資源管理實(shí)踐
- 《疼痛治療》課件
- 《房地產(chǎn)市場(chǎng)簡(jiǎn)報(bào)》課件
- 2021年廣東省汕尾市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 2024年四川省德陽(yáng)市公開招聘警務(wù)輔助人員輔警筆試自考題2卷含答案
- 2021年內(nèi)蒙古自治區(qū)烏海市公開招聘警務(wù)輔助人員輔警筆試自考題1卷含答案
- 慢性病防治健康教育知識(shí)講座
- 骶尾部藏毛疾病診治中國(guó)專家共識(shí)(2023版)
- 【高新技術(shù)企業(yè)所得稅稅務(wù)籌劃探析案例:以科大訊飛為例13000字(論文)】
- 幽門螺旋桿菌
- 智慧農(nóng)業(yè)利用技術(shù)提高農(nóng)業(yè)可持續(xù)發(fā)展的方案
- 制冷壓縮機(jī)安全操作規(guī)程范文
- 初中歷史考試試題答題卡模版
- 《草圖大師建?!肥谡n計(jì)劃+教案
- 小學(xué)音樂-鈴兒響叮當(dāng)教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 《3-6歲兒童學(xué)習(xí)與發(fā)展指南》考試試題
- 核磁移機(jī)施工方案
評(píng)論
0/150
提交評(píng)論