![《計算機圖形學(xué)基礎(chǔ)》課件第6章_第1頁](http://file4.renrendoc.com/view12/M03/24/28/wKhkGWbFxqmAKQA7AACq7-CsAtU058.jpg)
![《計算機圖形學(xué)基礎(chǔ)》課件第6章_第2頁](http://file4.renrendoc.com/view12/M03/24/28/wKhkGWbFxqmAKQA7AACq7-CsAtU0582.jpg)
![《計算機圖形學(xué)基礎(chǔ)》課件第6章_第3頁](http://file4.renrendoc.com/view12/M03/24/28/wKhkGWbFxqmAKQA7AACq7-CsAtU0583.jpg)
![《計算機圖形學(xué)基礎(chǔ)》課件第6章_第4頁](http://file4.renrendoc.com/view12/M03/24/28/wKhkGWbFxqmAKQA7AACq7-CsAtU0584.jpg)
![《計算機圖形學(xué)基礎(chǔ)》課件第6章_第5頁](http://file4.renrendoc.com/view12/M03/24/28/wKhkGWbFxqmAKQA7AACq7-CsAtU0585.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第6章曲線、曲面的表示6.1基礎(chǔ)知識
6.2
Bezier曲線、曲面的表示
6.3
B樣條曲線、曲面的表示
習(xí)題6 6.1基礎(chǔ)知識
6.1.1顯式、隱式和參數(shù)表示
表示曲線和曲面的基本方法有兩種:參數(shù)法和非參數(shù)法。非參數(shù)表示又分為顯式表示和隱式表示。對于一個平面曲線,顯式表示的一般形式是:y=f(x)。在此方程中,一個x值與一個y值對應(yīng),所以顯式方程不能表示封閉或多值曲線。如果一個平面曲線方程表示成f(x,y)=0的形式,我們稱之為隱式表示。隱式表示的優(yōu)點是易于判斷函數(shù)f(x,y)是否大于、小于或等于零,也就易于判斷點是否落在所表示曲線上或在曲線的哪一側(cè)。非參數(shù)方程的缺點是:與坐標(biāo)軸相關(guān);會出現(xiàn)斜率為無窮大的情形(如垂線);對于非平面曲線、曲面,難以用常系數(shù)的非參數(shù)化函數(shù)表示;不便于計算機編程。由于參數(shù)表示的曲線、曲面具有幾何不變性等優(yōu)點,計算機圖形學(xué)中通常用參數(shù)形式描述曲線、曲面。在幾何造型系統(tǒng)中,曲線、曲面方程通常表示成參數(shù)的形式,即曲線上
任一點的坐標(biāo)均表示成給定參數(shù)的函數(shù)。假定用t表示參數(shù),平面曲線P可表示為
P=[x(t),y(t)]
空間三維曲線P可表示為
P=[x(t),y(t),z(t)]
參數(shù)t在一定區(qū)間變化,可以求得曲線上不同的坐標(biāo)點,連接這些坐標(biāo)點就能在屏幕上畫出曲線。t變化的間隔越小,曲線畫得越精細(xì)。最簡單的參數(shù)曲線是直線段。端點為P1、P2的直線段參數(shù)方程可表示為 x(t)=P1+(P2-P1)t,t∈[0,1]
y(t)=P1+(P2-P1)t,t∈[0,1]
在使用上述公式時,分別將端點P1、P2的x和y值代入進行計算。
圓在計算機圖形學(xué)中應(yīng)用得十分廣泛,其在第一象限內(nèi)的單位圓弧的非參數(shù)顯式表示為其參數(shù)形式可表示為
橢圓的參數(shù)方程可表示為
在曲線、曲面的表示上,參數(shù)方程比顯式、隱式方程有更多的優(yōu)越性,主要表現(xiàn)在:
(1)可以滿足幾何不變性的要求。
(2)有更大的自由度來控制曲線、曲面的形狀。
(3)對非參數(shù)方程表示的曲線、曲面進行變換,必須對曲線、曲面上的每個型值點進行幾何變換;而對參數(shù)表示的曲線、曲面,可對其參數(shù)方程直接進行幾何變換。
(4)便于處理斜率為無窮大的情形,不會因此而中斷計算。
(5)參數(shù)方程中,代數(shù)、幾何相關(guān)和無關(guān)的變量是完全分離的,而且對變量個數(shù)不限,從而便于用戶把低維空間中的曲線、曲面擴展到高維空間去。這種變量分離的特點使我們可以用數(shù)學(xué)公式處理幾何分量。
(6)規(guī)格化的參數(shù)變量t∈[0,1],使其相應(yīng)的幾何分量是有界的,不必用另外的參數(shù)去定義邊界。
(7)易于用矢量和矩陣表示幾何分量,簡化了計算。6.1.2插值
給定一組有序的數(shù)據(jù)點Pi(i=0,1,…,n),構(gòu)造一條曲線順序通過這些數(shù)據(jù)點,稱為對這些數(shù)據(jù)點進行插值,所構(gòu)造的曲線稱為插值曲線,如圖6-1所示。圖6-1插值曲線
1.線性插值
假設(shè)給定函數(shù)f(x)在兩個不同點x1和x2上的值,用一個線形函數(shù)y=φ(x)=ax+b近似代替,則稱φ(x)為f(x)的線性插值函數(shù)。其中線性函數(shù)的系數(shù)是a、b。通過條件
可將φ(x)表示為
2.拋物線插值
拋物線插值又稱為二次插值。設(shè)已知f(x)在三個互異點x1、x2、x3上的函數(shù)值為y1、y2、y3,要求構(gòu)造一個函數(shù)y=φ(x)=ax2+bx+c,使φ(x)在節(jié)點xi,i=1,2,3處與f(x)在xi處的值相等。由此可構(gòu)造φ(x)=f(xi)=yi,i=1,2,3的線性方程組,求得a、b、c,即構(gòu)造了φ(x)的插值函數(shù)。6.1.3逼近
當(dāng)用一組控制點來指定曲線、曲面的形狀時,求出的形狀不必通過控制點列,這稱為曲線的逼近。這時通常選擇一個次數(shù)較低的函數(shù),構(gòu)造一條曲線使之在某種意義下最接近給定的數(shù)據(jù)點,稱為對這些數(shù)據(jù)點進行逼近,所構(gòu)造的曲線為逼近曲線。插值和逼近統(tǒng)稱為擬合。如圖6-2所示為曲線的逼近。
在圖6-2中,將連接有一定次序控制點的直線序列稱為控制多邊形或特征多邊形。逼近的方法最常用的是最小二乘法。假設(shè)給定一組數(shù)據(jù)點(xi,yi)(i=1,2,…,n),要求構(gòu)造一個逼近函數(shù)y=f(x)。令f(x)是m次多項式:圖6-2曲線的逼近
逼近的程度可通過各點偏差的平方和來度量。最小二乘問題就是要求出各系數(shù)aj,使偏差的平方和最小,即求解以下函數(shù)的極值問題:
如要取到極值,則這里只有m+1個系數(shù)aj是未知量,可通過求解m+1個方程得出。將系數(shù)aj代入多項式函數(shù)f(x),即可得到所求的逼近函數(shù)。
6.1.4曲線的連續(xù)性
設(shè)計一條復(fù)雜曲線時,常常通過多段曲線組合而成,這需要解決曲線之間如何實現(xiàn)光滑連接的問題。對曲線間連接的光滑度的度量有兩種方法:一種是函數(shù)的可微性,即把組合參數(shù)曲線構(gòu)造成在連接處具有直到n階的連續(xù),即n階連續(xù)可微,這類光滑度稱為Cn或n階參數(shù)連續(xù)性;另一種稱為幾何連續(xù)性,即組合曲線在連接處滿足不同于Cn的某一組約束條件,稱為具有n階幾何連續(xù)性,簡記為Gn。曲線光滑度的兩種度量方法并不矛盾,Cn連續(xù)包含在Gn連續(xù)之中。對于兩條曲線P(t)和Q(t),參數(shù)t∈[0,1]。若要求在結(jié)合處達(dá)到G0連續(xù)或C0連續(xù),即兩曲線在結(jié)合處位置連續(xù),則有
P(1)=Q(0)
曲線的0階連續(xù)如圖6-3所示。
若要求在結(jié)合處達(dá)到G1連續(xù),就是說兩條曲線在結(jié)合處滿足G0連續(xù)的條件,并有公共的切線矢量,則有
P′(1)=a·Q′(0) (6-1)
當(dāng)a=1時,G1連續(xù)就成為C1連續(xù)。曲線的1階連續(xù)如圖6-4所示。圖6-3曲線的0階連續(xù)圖6-4曲線的1階連續(xù)若要求在結(jié)合處達(dá)到G2連續(xù)(如圖6-5所示),就是說兩條曲線在結(jié)合處滿足G1連續(xù)的條件,并有公共的曲率,則有
將式(6-1)和式(6-2)合并整理得
P′(1)×Q″(0)=a2P′(1)×P″(1)
這個關(guān)系為
Q″(0)=a2P″(1)+bP′(1)
其中,b為任意常數(shù)。當(dāng)a=1,b=0時,G2連續(xù)就成為C2連續(xù)。(6-2)圖6-5曲線的2階連續(xù)6.1.5曲線擬合
工程中除了用到前述的規(guī)則曲線外,還常常遇到這樣的情況:已知一些計算值或測試數(shù)據(jù),要構(gòu)造一條光滑曲線。通過或貼近這些離散點數(shù)據(jù)構(gòu)造出來的曲線稱為擬合曲線。采用模線樣板法表示和傳遞自由曲線、曲面的形狀稱為樣條。樣條曲線是指由多項式曲線段連接而成的曲線,在每段的邊界處滿足特定的連續(xù)條件。樣條曲面則可以用兩組正交樣條曲線來描述。
通常用下面的方程來描述n次樣條參數(shù)多項式曲線:
將上式寫成矩陣乘積的形式為
其中,C為(n+1)×3階的系數(shù)矩陣,T為n+1個冪形式的基函數(shù)組成的矢量。6.1.6三次Hermite樣條
三次多項式在靈活性和計算速度之間提供了一個合理的折中方案。與更高次的多項式相比,三次樣條只需要較少的計算與存儲且較穩(wěn)定;與低次的多項式相比,三次樣條又具有更多的靈活性。事實上,大多數(shù)的形狀表示與設(shè)計都是采用三次多項式來實現(xiàn)的。
一條三次曲線的代數(shù)形式是此方程組中的12個系數(shù)唯一地確定了一條三次參數(shù)曲線的位置與形狀。上述方程式寫成矢量式是
P(t)=a3t3+a2t2+a1t+a0,
t∈[0,1]
其中,a0、a1、a2、a3是代數(shù)系數(shù)矢量,P(t)是三次參數(shù)曲線上任一點的位置矢量。描述參數(shù)曲線的條件有端點位置矢量、端點切線矢量、曲率等。對三次參數(shù)曲線,用其端點矢量P(0)、P(1)和端點切線矢量P'(0)、P'(1)來描述,并將P(0)、P(1)、P'(0)、P'(1)簡記為P0、P1、P'0、P'1,則由上式得 P'(t)=3a3t2+2a2t+a1,
t∈[0,1]則
由上式可以解得將這些系數(shù)代回到原曲線方程,則曲線方程可表示為 P(t)=(2t3-3t2+1)P(0)+(-2t3+3t2)P(1)
+(t3-2t2+t)P'(0)+(t3-t2)P'(1),t∈[0,1]
則三次參數(shù)曲線為三次Hermite樣條曲線:
其中:Mh是Hermite矩陣,為常數(shù),它是邊界約束矩陣的逆陣;Gh是Hermite幾何矢量。三次Hermite樣條曲線的方程為P(t)=T·Mh·Gh,t∈[0,1]上式中只要給定Gh,就可以求出P(t)。對于不同的初始條件,Gh是不同的,但T、Mh都是相同的。將T·Mh稱為Hermite基函數(shù)(或稱混合函數(shù)、調(diào)和函數(shù))。其表達(dá)式為則Hermite基函數(shù)的各分量可寫為
H0(t)=2t3-3t2+1
H1(t)=-2t3+3t2
H2(t)=t3-2t2+t
H3(t)=t3-t2
利用基函數(shù)表達(dá)的三次Hermite樣條曲線的方程為
P(t)=P0H0(t)+P1H1(t)+P'0H2(t)+P'
1H3(t)其中,H0(t)和H1(t)專門控制端點的函數(shù)值對曲線的影響,而與同端點的導(dǎo)數(shù)值無關(guān);H2(t)和H3(t)則專門控制端點的一階導(dǎo)數(shù)值對曲線形狀的影響,而與同端點的函數(shù)值無關(guān)?;蛘?/p>
說,H0(t)和H2(t)控制左端點的影響,H1(t)和H3(t)控制右端點的影響。
三次Hermite樣條曲線的特點是可以局部調(diào)整,因為每個曲線段僅依賴于端點約束。基于Hermite樣條的變化形式為Cardinal樣條和Kochanek-Bartels樣條。Hermite曲線具有幾何不變性。
6.2
Bezier曲線、曲面的表示
Hermite曲線需要知道起點、終點的切矢量,這在實際工作中很難確定,如果將切矢量用位置矢量代替,問題就會迎刃而解。1962年,法國雷諾汽車公司的P.E.Bezier構(gòu)造了一種以逼近為基礎(chǔ)的參數(shù)曲線和曲面的設(shè)計方法,并用該方法完成了一種稱為UNISURF的曲線和曲面設(shè)計系統(tǒng)。Bezier將函數(shù)逼近同幾何表示結(jié)合起來,使得設(shè)計師在計算機上就像使用作圖工具一樣得心應(yīng)手。Bezier曲線和它的控制多邊形十分逼近,通常認(rèn)為控制多邊形是對Bezier曲線的大致勾畫,因此在設(shè)計中可以通過調(diào)整控制多邊形的形狀來控制Bezier曲線的形狀。6.2.1
Bezier曲線的定義
Bezier曲線是由多項式混合函數(shù)推導(dǎo)出來的。給定空間n+1個點的位置矢量Pi,i=0,1,2,…,n,定義一個n次Bezier參數(shù)曲線,其各點坐標(biāo)的插值公式是
其中,Pi構(gòu)成該Bezier曲線的特征多邊形,BENk,n(t)是n次Bernstein基函數(shù)。三次Bezier曲線如圖6-6所示。圖6-6三次Bezier曲線
Bernstein基函數(shù)具有如下形式:
這里規(guī)定:00=1,0?。剑?。當(dāng)t=0時,若k=0,則BENk,n(t)=1;若k≠0,則BENk,n(t)=0。當(dāng)t=1時,若k=n
,則BENk,n(t)=1;若k≠n,則BENk,n(t)=0。
1.一次Bezier曲線(n=1)
n=1時,有2個控制點P0和P1,Bezier多項式是一次多項式:
一次Bezier曲線是連接起點P0和終點P1的直線段。
2.二次Bezier曲線(n=2)
n=2時,有3個控制點P0、P1和P2,Bezier多項式是二次多項式:顯然,它是一條以P0為起點、以P2為終點的拋物線,如圖6-7所示。圖6-7二次Bezier曲線
3.三次Bezier曲線(n=3)
n=3時,有4個控制點P0、P1、P2和P3,Bezier多項式是三次多項式:其中:
它們是三次Bezier曲線的基函數(shù),它們均為三次曲線。任何三次Bezier曲線都是這4條曲線的線性組合。由于每個基函數(shù)的參數(shù)t在整個(0,1)的開區(qū)間內(nèi)不為零,使得Bezier
曲線不可能對曲線的形狀進行局部控制。如果改變?nèi)我豢刂泣c的位置,整個曲線將受到影響。將三次Bezier曲線表示為矩陣形式為
其中,Mbe是三次Bezier曲線的系數(shù)矩陣,為常數(shù),Gbe是4個控制點的位置矢量。三次Bezier曲線是一條以P0為起點、以P3為終點的自由曲線。6.2.2
Bezier曲線的性質(zhì)
1.端點位置
由Bernstein基函數(shù)的端點性質(zhì)可以推得
P(0)=P0,P(1)=Pn
由此可見,Bezier曲線的起點、終點與相應(yīng)的特征多邊形的起點、終點重合。
2.端點切線
Bezier曲線的起點和終點處的切線方向和特征多邊形的第一條邊及最后一條邊的走向一致,即
P'(0)=n(P1-P0),P'(1)=n(Pn-Pn-1)
則三次Bezier曲線段在起始點和終止點處的一階導(dǎo)數(shù)為
P'(0)=3(P1-P0)
P'(1)=3(P3-P2)
3.端點曲率
Bezier曲線在起點和終點處的曲率是該點的二階導(dǎo)數(shù): P''(0)=n(n-1)((P2-P1)-(P1-P0))
P''(1)=n(n-1)((Pn-2-Pn-1)-(Pn-1-Pn))
上式表明,二階導(dǎo)數(shù)只與相鄰的三個頂點有關(guān)。事實上,r階導(dǎo)數(shù)只與r+1個相鄰點有關(guān),與更遠(yuǎn)點無關(guān)。三次Bezier曲線段在起始點和終止點處的二階導(dǎo)數(shù)為
P''(0)=6(P0-2P1+P2),P''(1)=6(P1-2P2+P3)
曲率公式為
則Bezier曲線在端點的曲率分別為
4.對稱性
保持n次Bezier曲線控制頂點的位置不變,而把次序顛倒過來構(gòu)造出的新Bezier曲線,與原Bezier曲線形狀相同,走向相反。這個性質(zhì)說明Bezier曲線在起點處有什么幾何性
質(zhì),在終點處也有相同的性質(zhì)。
5.凸包性
這一結(jié)果說明當(dāng)t在[0,1]區(qū)間變化時,對某一個t值,P(t)是特征多邊形各頂點的加權(quán)平均。在幾何圖形上,意味著Bezier曲線P(t)在t∈[0,1]中的各點是控制點Pi的凸線性組合,即曲線落在Pi構(gòu)成的凸包之中,如圖6-8所示。圖6-8
Bezier曲線的凸包性
6.幾何不變性
這是指某些幾何特性不隨坐標(biāo)變換而變化的特性。Bezier曲線的位置與形狀與其特征多邊形頂點的位置有關(guān),它不依賴坐標(biāo)系的選擇。
7.交互能力
P(t)的控制多邊形{Pi}可作為曲線的輸入和人機交互的良好手段。
8.變差縮減性
若Bezier曲線的特征多邊形是一個平面圖形,則平面內(nèi)任意直線與P(t)的交點個數(shù)不多于該直線與其特征多邊形的交點個數(shù),這一性質(zhì)叫變差縮減性質(zhì)。此性質(zhì)反映了Bezier曲線比其特征多邊形的波動還小,也就是說Bezier曲線比特征多邊形的折線更光順。6.2.3
Bezier曲線的拼接
幾何設(shè)計中,一條Bezier曲線往往難以描述復(fù)雜的曲線形狀,這是由于增加特征多邊形的頂點數(shù),會引起B(yǎng)ezier曲線次數(shù)的提高,而高次多項式又會帶來計算上的困難。所以有時采用分段設(shè)計,然后將各段曲線相互連接起來,并在接合處保持一定的連續(xù)條件。下面討論兩段Bezier曲線達(dá)到不同階幾何連續(xù)的條件。
給定兩條Bezier曲線P(t)和Q(t),相應(yīng)控制點為Pi(i=0,1,…,n)和Qj(j=0,1,…,m),如圖6-9所示。圖6-9兩段三次Bezier曲線的連接
(1)要使它們達(dá)到G0連續(xù)的充要條件是
Pn=Q0
(2)要使它們達(dá)到G1連續(xù)的充要條件是Pn-1、Pn(Q0)、Q1三點共線,即可表示為
Q'(0)=a·P'(1)
Q1-Q0=a·(P3-P2)
(3)要使它們達(dá)到G2連續(xù)的充要條件是:在G1連續(xù)的條件下,Pn-Pn-1與Q1-Q0均不為零且同向,還要求在Pn處的曲率相等且主法線的方向一致。對于三次Bezier曲線,即要求滿足方程
Q''(0)=b·P''(1)
Q0-2Q1+Q2=b·(P1-2P2+P3)
且Pn-2、Pn-1、Pn(Q0)、Q1、Q2五點共面。Pn-2和Q2或者同在直線Pn-1Q1上,或者位于直線Pn-1Q1的同側(cè),并且
其中,d(Q2,Pn-1Pn)和d(Pn-2,Pn-1Pn)分別表示點Q2和Pn-2到直線Pn-1Pn的距離。通常要求達(dá)到二階幾何連續(xù)即可滿足要求。6.2.4
Bezier曲線的離散生成
要計算Bezier曲線上的點,可用Bezier曲線方程,但使用deCasteljau提出的遞推算法則要簡單得多。該算法把一個復(fù)雜的幾何計算問題轉(zhuǎn)化為一系列的線性運算,所以計算
穩(wěn)定可靠,具有通用性,易于在計算機上實現(xiàn)。
下面用幾何作圖的過程來對該算法進行說明,如圖6-10所示。圖6-10用幾何作圖法求Bezier曲線已知控制點Pi,稱為
,構(gòu)成n條邊的控制多邊形。首先依次對控制多邊形進行定比分割,分割比例為t∶(1-t),得到第一級遞推的中間頂點
。然后再對這些中間頂點構(gòu)成的控制多邊形進行同樣的定比分割,得到第二級遞推的中間頂點
。如此繼續(xù),直到n次分割得到中間頂點
,即為所求的Bezier曲線P(t)。以上的遞推過程可以用公式表示為
deCasteljau算法遞推出的
呈直角三角形,對應(yīng)結(jié)果如圖6-11所示。從左向右遞推,最右邊點
即為曲線上的點。圖6-11
Bezier曲線的遞推過程6.2.5
Bezier曲面的定義
Bezier曲線的一些算法也可以很容易地擴展到Bezier曲面的情況。
在空間給定(m+1)×(n+1)個點Pi,j(i=0,1,2,…,m,j=0,1,2,…,n)后,所有的控制點構(gòu)成的空間的一張網(wǎng)格稱為控制網(wǎng)格。則Bezier曲面的定義如下:式中,BENi,m(u)、BENj,n(v)分別為m及n次Bernstein基函數(shù):
在實際應(yīng)用中,次數(shù)m和n均不宜超過5,否則網(wǎng)格對于曲面的控制力將會減弱,這同Bezier曲線的情況是相似的。圖6-12是雙三次Bezier曲面及其控制網(wǎng)格。
類似于Bezier曲線,下面分別給出一次、二次及三次Bezier曲面的表達(dá)方式。圖6-12雙三次Bezier曲面及其控制網(wǎng)格
1.雙線性Bezier曲面(m=n=1)
2.雙二次Bezier曲面(m=n=2)
雙二次Bezier曲面的邊界曲線及參數(shù)坐標(biāo)曲線均為拋物線。
3.雙三次Bezier曲面(m=n=3)
令
則
其中,P是該曲面的控制網(wǎng)格16個控制頂點的幾何位置矩陣,其中4個角點在Bezier曲面上。P矩陣四周的12個控制點定義了4條Bezier曲線,是曲面的邊界曲線。P矩陣中央的4個控制點與邊界曲線無關(guān),但控制著邊界內(nèi)部的Bezier曲面形狀。
例6-1茶壺的壺嘴要用兩個Bezier曲面片來表示,其中一片控制點的坐標(biāo)如下所示:則采用MATLAB描述的壺嘴繪制程序如下:一片壺嘴的繪制結(jié)果如圖6-13。圖6-13茶壺的一片壺嘴6.2.6
Bezier曲面的性質(zhì)
1.端點位置
控制網(wǎng)格的四個角點正好是Bezier曲面的四個角點:
P(0,0)=P0,0,
P(1,0)=Pm,0
P(0,1)=P0,n,
P(1,1)=Pm,n
2.邊界線的位置
控制網(wǎng)格最外一圈的頂點定義Bezier曲面的四條邊界,P(u,v)的四條邊界線P(0,v),P(u,0),P(1,v),P(u,1)分別是以P0,0P0,1P0,2…P0,n、P0,0P1,0P2,0…Pm,0、Pm,0Pm,1Pm,2…Pm,n、P0,nP1,nP2,n…Pm,n為控制多邊形的Bezier曲線。
3.端點的切平面
由計算易知三角形P0,0P1,0P0,1、P0,nP1,nPm,n、Pm,nPm-1,nPm,n-1、Pm,0Pm-1,0Pm,1所在的平面分別在點P0,0、P0,n、Pm,n、Pm,0處與曲面P(u,v)相切。
4.端點的法向
由端點的切平面知P0,0P0,1×P0,0P1,0是P(u,v)在點P0,0的法向,其余各端點法向的情況也與此類似。
5.幾何不變性
這是指某些幾何特性不隨坐標(biāo)變換而變化的特性。Bezier曲面P(u,v)的位置和形狀與其特征多邊形頂點的位置有關(guān),它不依賴坐標(biāo)系的選擇。
6.凸包性
曲面P(u,v)位于其控制頂點Pi,j(i=0,1,2,…,n,j=0,1,2,…,m)的凸包內(nèi)。
7.交互能力
P(u,v)的控制網(wǎng)格{Pi,j}可作為曲面的輸入和人機交互的良好手段。6.2.7
Bezier曲面的拼接
兩塊曲面相連接時,若要達(dá)到GC0階連續(xù),則要求相連接的曲面片具有公共的邊界曲線。若要達(dá)到GC1階連續(xù),則要求對于邊界曲線上的任何一點,兩個曲面片跨越邊界的切線矢量應(yīng)該共線,而且兩切線矢量的長度之比為常數(shù)。
已知兩張雙三次Bezier曲面片(兩個曲面片的公式幾乎完全相同,區(qū)別僅在于控制點的坐標(biāo)不同,故只給出了一個曲面片的公式):
實現(xiàn)G1連續(xù)性的條件為(如圖6-14所示):
(1)P1(1,v)=Q2(0,v),即有P3,i=Q0,i,i=0,1,2,3。
(2)P3,i-P2,i=l(Q1,i-Q0,i),i=0,1,2,3。圖6-14雙三次Bezier曲面的拼接
6.3
B樣條曲線、曲面的表示
Bezier曲線是一段n次多項式曲線,它有兩點不足:一是控制多邊形的頂點個數(shù)決定了Bezier曲線的次數(shù);二是不能作局部修改。因此,采用分段的多項式曲線(又稱為多項式樣條曲線)是它的自然推廣。為了克服Bezier曲線存在的問題,Gordon等人拓展了Bezier曲線,從外形設(shè)計的需求出發(fā),希望新的曲線要易于進行局部修改,更逼近特征多邊形,是低階次曲線。當(dāng)用n次B樣條基函數(shù)替換了Bernstein基函數(shù)后,就構(gòu)造出了稱為B樣條曲線的新型曲線。B樣條方法在保留Bezier方法全部優(yōu)點的同時,克服了Bezier方法的缺點。6.3.1
B樣條曲線的定義
B樣條曲線的方程定義為
式中,頂點Pi(i=0,1,2,…,n)為控制頂點,又稱為德布爾點(deBoor)。稱折線P1P2…Pn為P(t)的控制多邊形,k為B樣條曲線的次數(shù)。Bi,k(t)為k次B樣條基函數(shù),該函數(shù)的計算可采用如下方法:
在上式中規(guī)定0/0=0。該遞推公式表明,欲確定第i個k次B樣條基函數(shù)Bi,k(t),需要用到ti,ti+1,…,ti+k+1共k+2個節(jié)點,稱區(qū)間[ti,ti+k+1]為Bi,k(t)的支撐區(qū)間。B樣條曲線方程中,n+1個控制頂點Pi(i=0,1,…,n)要用到n+1個k次B樣條基函數(shù)Bi,k(t)。它們的支撐區(qū)間的并集定義了這一組B樣條基函數(shù)的節(jié)點矢量T,T=[t0,…,tn+k+1]。
1.一次B樣條基函數(shù)
一次B樣條基函數(shù)Bi,1(t)是由兩個零次基函數(shù)Bi,0(t)和Bi+1,0(t)遞推得到的,即一次B樣條基函數(shù)是兩個零次基函數(shù)的凸線性組合:其中可表示為分段函數(shù):
2.二次B樣條基函數(shù)
二次B樣條基函數(shù)Bi,2(t)是相鄰兩個一次B樣條基函數(shù)Bi,1(t)的凸線性組合:類似地可以遞推出三次及更高次的B樣條基函數(shù)Bi,k(t)。通過以上的遞推定義可以看出,B樣條曲線基函數(shù)的次數(shù)與控制點的個數(shù)無關(guān),而Bezier曲線基函數(shù)的次數(shù)等于控制點的數(shù)目減1。Bezier曲線的基函數(shù)在整個定義區(qū)間內(nèi)都不為0,而B樣條曲線的基函數(shù)具有局部支撐性,即只在其支撐區(qū)間內(nèi)非零。6.3.2
B樣條曲線的分類
按照節(jié)點矢量中的節(jié)點分布情況的不同,可以將B樣條曲線分為三類:均勻B樣條曲線、開放均勻B樣條曲線和非均勻B樣條曲線。
1.均勻B樣條曲線
當(dāng)節(jié)點沿參數(shù)軸均勻等距分布,即tk+1-tk=常數(shù)時,表示均勻B樣條函數(shù)。例如節(jié)點矢量可取為:T=[-2,-1.5,-1,-0.5,0,0.5,1,1.5,2],T=[0,1,2,3,4,5,6,7]等。圖6-15是三次均勻B樣條基函數(shù)。圖6-15四段三次均勻B樣條基函數(shù)從圖6-15可以看出,均勻B樣條的基函數(shù)呈周期性,即基函數(shù)在定義域內(nèi)各個節(jié)點區(qū)間上都具有相同的形狀:
Bi,k(t)=Bi+1,k(t+Δt)=Bi+2,k(t+2Δt)
Bi,k(t)=B0,k(t-iΔt)
因此,可將定義在每個節(jié)點區(qū)間上用整體參數(shù)t表示的B樣條基函數(shù),換成用局部坐標(biāo)參數(shù)u∈[0,1]表示。作參數(shù)變換:
t=t(u)=ti+u
或者
u=u(t)=t-ti,
t∈[ti,ti+1],i=k,k+1,…,n
這樣變換后使得所有區(qū)間上的B樣條基函數(shù)都具有相同的數(shù)學(xué)表達(dá)形式。
1)二次均勻B樣條曲線
二次B樣條曲線的分段表達(dá)式為
Pi(t)=B0,2(t)·Pi+B1,2(t)·Pi+1+B2,2(t)·Pi+2
其中,t為參數(shù),t∈[0,1];Pi、Pi+1、Pi+2為對應(yīng)的控制頂點;B0,2(t)、B1,2(t)和B2,2(t)分別為將二次B樣條曲線的分段表達(dá)式表示為矩陣形式,即
其中,i=0,1,2,…,n,即共有n-k段分段曲線,Pi+k為分段曲線的特征多邊形的頂點,Pi、Pi+1、Pi+2為連續(xù)的三個頂點,如圖6-16所示。圖6-16二次均勻B樣條曲線曲線的起點和終點值分別為
均勻二次B樣條曲線起點和終點處的導(dǎo)數(shù)分別為對于由任意數(shù)目的控制點構(gòu)造的二次周期性B樣條曲線來說,曲線的起始點位于頭兩個控制點之間,終止點位于最后兩個控制點之間。對于高次多項式,起點和終點是k-1個控制點的加權(quán)平均值點。若某一控制點出現(xiàn)多次,樣條曲線會更加接近該點。
分段二次B樣條曲線是一條拋物線;由n個頂點定義的二次B樣條曲線,其實質(zhì)上是n-2段拋物線(相鄰三點定義)的連接,并在接點處達(dá)到一階連續(xù)。
2)三次均勻B樣條曲線
分段三次B樣條曲線由相鄰四個頂點定義,其表達(dá)式為
Pi(t)=B0,3(t)·Pi+B1,3(t)·Pi+1+B2,3(t)·Pi+2+B3,3(t)·Pi+3可見,由n個頂點定義的完整的三次B樣條曲線是由n-3段分段曲線連接而成的。很容易證明,三次B樣條曲線在連接處達(dá)到二階連續(xù)。其中
其中, 。表示為矩陣形式如下:有四個控制點的三次周期性B樣條的邊界條件為
四個控制點的三次均勻B樣條曲線如圖6-17所示。
由圖6-17可知,三次均勻B樣條曲線從靠近P1處開始,在靠近P2處結(jié)束,且每個曲線段的兩個端點處的導(dǎo)數(shù)平行于相鄰控制點的連線。圖6-17四個控制點的三次均勻B樣條曲線
2.開放均勻B樣條曲線
均勻B樣條沒有保留Bezier曲線端點的幾何性質(zhì),它的首末端點不與控制頂點的首末點重合。當(dāng)均勻B樣條的次數(shù)高于二次時,在端點處也不再與控制多邊形相切。開放均勻B樣條保留了Bezier曲線的端點幾何性質(zhì),可以更好地控制曲線的端點。
開放均勻B樣條與均勻B樣條的節(jié)點矢量的差別在于兩端節(jié)點。n次開放均勻B樣條的節(jié)點矢量中,兩端節(jié)點的重復(fù)度為n+1,所有內(nèi)節(jié)點均勻分布。因此除兩端的n-1個節(jié)
點區(qū)間外,n次開放均勻B樣條與均勻B樣條的基函數(shù)具有相同的圖形。以二次開放均勻B樣條曲線為例,設(shè)有五個控制點Pi(i=0,1,…,4),則節(jié)點數(shù)為7,且端節(jié)點的重復(fù)度為3,取T=[0,0,0,1,2,3,3,3]。每連續(xù)三個點定義一段B樣條曲線,則五個控制點共定義了三段B樣條曲線??刂泣c和三段B樣條曲線可表示為
二次開放均勻B樣條曲線的三個系數(shù)矩陣都各不相同,因而在計算和處理上就比均勻二次B樣條要復(fù)雜得多。
3.非均勻B樣條曲線
由均勻B樣條可以得到滿意的效果,且算法的效率高。但均勻B樣條曲線仍存在一些不足,如不能貼切地反映控制頂點的分布特征,當(dāng)型值點分布不均勻時,難以獲得理想的插值曲線等。而應(yīng)用非均勻B樣條曲線可以克服上述不足。但由于節(jié)點的分布不均勻,因此非均勻B樣條曲線的基函數(shù)不再具有平移性,且各不相同。因此,在生成曲線時,每個基函數(shù)都要單獨計算,其計算量比均勻B樣條曲線大得多。6.3.3
B樣條曲線的性質(zhì)
1.局部支撐性
B樣條的基函數(shù)是一個分段函數(shù),其重要特征是在參數(shù)變化范圍內(nèi),每個基函數(shù)在ti到ti+k+1的子區(qū)間內(nèi)函數(shù)值不為零,在其余區(qū)間內(nèi)均為零。通常也將該特征稱為局部支撐性,如圖6-18所示。
因此,k次B樣條曲線在參數(shù)t∈[ti,ti+1]的一段至多與k+1個控制點有關(guān),與其他控制點無關(guān)。圖6-18
B樣條的局部支撐性
2.B樣條的凸組合性質(zhì)
B樣條的凸組合性和B樣條基函數(shù)的數(shù)值均大于或等于0,保證了B樣條曲線的凸包性,即B樣條曲線必處在控制多邊形所形成的凸包之內(nèi)。B樣條曲線的凸包區(qū)域比同一組控制頂點定義的Bezier曲線的凸包區(qū)域要小,即B樣條曲線可以更加逼近特征多邊形。
3.連續(xù)性
若一節(jié)點矢量中各節(jié)點均不相同,則k次B樣條曲線在節(jié)點處為k-1次連續(xù)。B樣條曲線基函數(shù)的次數(shù)與控制頂點個數(shù)無關(guān)。若在連接點的重復(fù)度為r,則k次B樣條曲線在節(jié)點處為k-r次連續(xù)的。
B樣條曲線的導(dǎo)數(shù)曲線為
B樣條基函數(shù)的微分公式如下(它是一條k-1次的B樣條曲線):
4.幾何不變性
B樣條曲線的形狀和位置與坐標(biāo)系的選擇無關(guān)。
5.變差縮減性
設(shè)平面內(nèi)n+1個控制頂點P0P1…Pn構(gòu)成B樣條曲線P(t)的特征多邊形。在該平面內(nèi)的任意一條直線與P(t)的交點個數(shù)不多于該直線和特征多邊形的交點個數(shù)。6.3.4非均勻有理B樣條曲線
B樣條方法在表示與設(shè)計自由型曲線、曲面形狀時顯示了強大的威力,然而在表示與設(shè)計由二次曲面構(gòu)成的初等曲面時卻遇到了困難。B樣條曲線包括其特例的Bezier曲線都不能精確表示除拋物線和拋物面之外的二次曲線和曲面,而只能給出近似表示。因此,有必要將它們的表示方法進行推廣。有理形式是它們很自然的推廣。推廣后的形式保留了原來形式的許多特點,又將二次曲面、旋轉(zhuǎn)面等包含在其中。
1.有理B樣條曲線
有理B樣條曲線是對B樣條曲線的推廣。稱下列曲線是以P1P2…Pn為控制多邊形,以w1,w2,…,wn為權(quán)的m次有理B樣條曲線。
wk是與Pk對應(yīng)的權(quán)因子。一個特定控制點Pk的權(quán)因子wk越大,曲線越靠近該控制點。首末權(quán)因子w0,wn>0,其余wk≥0,使得P(t)的分母不為0。上式中,Bk,m(t)是m次B樣條基函數(shù)。由于B樣條曲線是分段多項式,因此經(jīng)過加權(quán)后,有理B樣條曲線是分段有理多項式。它具有與B樣條曲線相同的局部支撐性、幾何不變性、保凸性、變差縮減性、局部調(diào)整性、造型靈活性等性質(zhì)。而B樣條曲線是有理B樣條曲線的特例,即各權(quán)wk全相等的有理B樣條曲線。有理B樣條曲線可以表示圓、橢圓等曲線和更復(fù)雜的曲線。
2.非均勻有理B樣條曲線
在有理B樣條曲線中應(yīng)用最廣泛的是非均勻有理B樣條(NonUniformRationalB-Spline,NURBS)曲線。其節(jié)點矢量T=[t0,t1,…,ti,…,tn+m],節(jié)點個數(shù)是n+m+1(n為控制項的點數(shù),m為B樣條基函數(shù)的次數(shù))。對于非周期NURBS曲線,常取兩端節(jié)點的重復(fù)度為i,即下面說明如何以二次NURBS曲線表示二次曲線。定義二次開放均勻B樣條,取三個控制頂點,則均勻節(jié)點矢量T=(0,0,0,1,1,1),取權(quán)因子為
則有理B樣條的表達(dá)式為
然后取不同的r值得到各種二次曲線,如圖6-19所示。圖6-19取不同權(quán)因子生成的二次曲線段從圖6-19中可以看出:當(dāng)r>1/2時,w1>1得到雙曲線;當(dāng)r=1/2時,w1=1得到拋物線;當(dāng)r<1/2時,w1<1得到橢圓?。划?dāng)r=0時,w1=0得到直線段。
NURBS曲線也可用有理基函數(shù)的形式表示:
其中,Rk,m(t)稱為有理基函數(shù)。Rk,m(t)具有與m階B樣條基函數(shù)類似的性質(zhì),即:
(1)普遍性。若令全部權(quán)因子均為1,則Rk,m(t)退化為Bk,m(t)。而若節(jié)點矢量僅由兩端的m重節(jié)點構(gòu)成,則Rk,m(t)退化為Bernstein基函數(shù)。
(2)局部支撐性。Rk,m(t)在其支撐區(qū)間內(nèi)取正值,在其他區(qū)間內(nèi)為零。
(3)權(quán)性。如果某個權(quán)因子wk等于零,則Rk,m(t)=0,相應(yīng)的控制點對曲線根本沒有影響。若wk=+∞,則Rk,m(t)=1,說明權(quán)因子越大,曲線越靠近相應(yīng)的控制頂點。
(4)可微性。如果分母不為零,則在節(jié)點區(qū)間內(nèi)是無限次連續(xù)可微的,在節(jié)點處m
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年西師新版選修歷史下冊階段測試試卷
- 2025年人教版九年級歷史下冊月考試卷
- 月嫂的合同范本(2篇)
- 機器人技術(shù)轉(zhuǎn)讓協(xié)議書(2篇)
- 2025年浙教版九年級歷史上冊月考試卷含答案
- 2025年中圖版七年級物理下冊階段測試試卷含答案
- 2025年湘師大新版七年級物理上冊階段測試試卷含答案
- 2025年粵教版選擇性必修1歷史下冊階段測試試卷含答案
- 2025年新世紀(jì)版九年級歷史上冊階段測試試卷
- 2025年滬科版九年級生物下冊階段測試試卷
- 高中英語外研版 單詞表 選擇性必修3
- 標(biāo)準(zhǔn)作文稿紙模板(A4紙)
- 中小學(xué)校園突發(fā)事件應(yīng)急與急救處理課件
- 2024年山東省普通高中學(xué)業(yè)水平等級考試生物真題試卷(含答案)
- 2024年青海省西寧市選調(diào)生考試(公共基礎(chǔ)知識)綜合能力題庫匯編
- 2024年湖南高速鐵路職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 廣州綠色金融發(fā)展現(xiàn)狀及對策的研究
- 《近現(xiàn)代史》義和團運動
- 時間的重要性英文版
- 2024老舊小區(qū)停車設(shè)施改造案例
- 灰壩施工組織設(shè)計
評論
0/150
提交評論