金席卷 ,姚 杰 ,方 逵
(1.長沙大學 電子與通信工程系,湖南 長沙 410003;2.湖南農業大學 信息科學技術學院,湖南 長沙 410128)
對于參數曲線曲面的凸性問題,國內外已有很多學者研究。參數Bezier曲線的凸性問題,Liu C和劉鼎元等已基本解決[1-2]。參數曲面的凸性研究一直是人們感興趣的問題,常庚哲等得到了三角域上非參數Bezier曲面的凸性條件[3],Zhi L等導出了三角域上參數 Bezier曲面的凸性條件[4]。KORAS G D和KAKLIS P D得到了一般矩形域上參數曲面凸的充要條件[5]。
工業產品形狀的數學描述重在解決曲面的數學描述。由于實際形狀的復雜性,用單一曲面往往難以實現,很多時候都采用拼接曲面。由于B-樣條曲面本身是組合曲面,構造一個k×l次拼接曲面只需增加一排 k個或l個控制點,且拼接曲面能保持比次數低一階的導數連續。根據B-樣條曲面的局部性質,可以完成任意多張曲面片的保凸拼接,將一張小的曲面片擴張成較大的曲面。最后用幾個實驗實現了多張三次曲B-樣條面片的保凸拼接,達到了較為理想的效果。
設有參數曲面Σ:r=r(u,v),對曲面Σ上任何一點P,設曲面在點P的法向量為n,過點P的切平面為π。切平面π將歐氏空間R3分成兩個半空間,沿點P的法向量n的正向指向的半空間為切平面的上半空間,另一個半個空間為下半空間,包含切平面π的半空間稱為閉半空間。
定義1 設有參數曲面Σ:r(u,v),(u,v)?D∈R2,如果?(u,v)∈D,若 ru×rv≠0,則稱Σ是正則曲面。
從全局凸的角度,WILHELM K[6]給出了凸曲面的原始幾何定義。
定義2 一個正則曲面Σ:r(u,v),(u,v)?D∈R2,如果?(u,v)∈D,曲面Σ完整地處在P點的切平面的閉上半空間(閉下半空間),則稱該曲面是全局凸曲面。
平面是一個特殊的全局凸曲面。全局凸曲面的判別是十分困難的,至今還沒有代數判別方法,只能用原始的幾何定義。
定義3 設有正則曲面Σ:r(u,v),(u,v)?D∈R2,P是曲面Σ上的任意一點,如果對于過P點的任一條法截線都存在P點的某個鄰域,在該鄰域內,法截線對應的曲線段完整地處在P點切平面的上半空間 (下半空間),則Σ稱是局部凸曲面。
顯然,全局凸曲面是局部凸曲面。
KORAS G D和KAKLIS P D[5]給出了局部凸曲面的充分必要條件:
引理1[6]正則曲面Σ:r(u,v),(r(u,v)∈C2(D),D∈R2)為局部凸的充要條件是:L≥0,N≥0,LN-M2≥0或L≤0,N≤0,LN-M2≥0。
給 定(m+1)×(n+1)個 控 制 頂 點 di,j(i=0,1,… ,m;j=0,1,…,n)的陣列,構成一張控制網格。又分別給定參數u與v的次數k與l和兩個節點矢量U=[u0,u1,…,um+k+1]與 V=[v0,v1,…,vn+l+1]。
k×l次張量積B-樣條曲面為

其 中 ,B-樣 條 基 Ni,k(u)(i=0,1, … ,m)與 Nj,l(v)(j=0,1,…,n)分別由節點矢量U與V按de Boor-Cox遞推公式決定。B-樣條曲線的局部性質可以推廣到曲面。因此定義在子矩形域 ue≤u≤ue+1,vf≤v≤vf+1上那塊 B-樣條子曲面片僅和控制點陣中的部分頂點 di,j(i=e-k,e-k+1,…,e;j=f-l,f-l+1,…,f)有關,而與其他頂點無關。 相應地,式(1)就可改寫為分片表示形式:

k×l次張量積B-樣條曲面的一階偏導矢和二階偏導矢分別為:



由引理1易得到下面的結論。
推論1 B-樣條曲面為局部凸,當且僅當下列不等式成立:

或

接下來主要研究均勻和準均勻B-樣條曲面的凸性。因為(準)均勻B-樣條的端點外所有節點區間長度Δi=ui+1-ui=常數>0,所以上式中的與可化簡為:

根據推論1及上面的公式,可得到B-樣條曲面片局部凸的一個充分條件。
定理1(準)均勻 k×l次 B-樣條曲面片(式(2))局部凸的充分條件是

其中 ,i,γ=e-k,e-k+1,… ,e-1;j,t=f-1,f-l+1,… ,f;δ,α=e-k+1, …,e;η,ξ=f-l,f-l+1, …,f-1;s=e-k,ek+1,…,e-2;β=f-l,f-l+1,f-2。
當 k×l次(準)均勻 B-樣條曲面(式(2))的控制網格是凸的,且控制子網格是平行四邊形時,有:

于是,由上面的定理有以下推論。
推論2 當 k×l次(準)均勻 B-樣條曲面(式(2))的控制網格是凸的,且控制子網格是平行四邊形,則(準)均勻B-樣條曲面是局部凸的。
但 對 于(m+1)×(n+1)個 控 制 頂 點 di,j(i=0,1,… ,m;j=0,1,…,n)組成的一張 B-樣條曲面來說,情況與Bézier曲面略有區別。因為B-樣條曲面是一類組合樣條曲面,由多張B-樣條曲面片組成,具有局部性質。因此,B-樣條曲面為凸的條件除了要求每張曲面片為凸外,還要求每相鄰兩張曲面片間的連接仍然保持凸性。根據兩相鄰B-樣條曲面片間可達到至少一階倒數連續的性質,只需要各相鄰曲面片同向凸即可保證曲面的凸性,即 保 證 (m+1)×(n+1)個 控 制 頂 點 di,j(i=0,1, … ,m;j=0,1,…,n)構成的網格是凸的。
工業產品形狀的數學描述重在解決曲面的數學描述。由于實際形狀的復雜性,用單一曲面往往難以實現,很多時候都采用拼接曲面。根據推論2.2控制網格與B-樣條曲面凸性的關系,可以得到B-樣條曲面的保凸拼接條件。B樣條曲面本身就是組合曲面,本節主要討論怎樣組合才使得曲面是凸的。
設有一個凸的k×l次B-樣條曲面片:

對于該曲面來說,只要在網格u向或v向增加一排頂點,那么就增加了一個曲面片,并且增加的曲面仍然具有原來的連續性。所以,如何構造這一排頂點使生成的曲面與原曲面完成保凸拼接是解決問題的重點。
由推論2知道,當控制子網為平行四邊形時,網格凸則B-樣條曲面凸。于是就得到B-樣條曲面保凸拼接的條件:
推 論 3 構 造 的 u 向 頂 點 de+1,j和 v 向 頂 點 di,f+1分 別要滿足:

和

注意,若原 B-樣條曲面上凸,則式(5)和式(6)都取≤0;若為下凸,則都取≥0。
已知一凸得到B-樣條曲面片如圖1所示,而沿v向的保凸拼接曲面如圖2所示,沿u向的保凸拼接曲面如圖3所示,面四片三次B-樣條曲面片的拼接如圖4所示。




本文重點討論了B-樣條的凸性和保凸拼接,但只研究均勻與準均勻B樣條,而對于非均勻B樣條以及非均勻有理B樣條有待進一步深入探討。
[1]Liu C,TRASS C R,On convexity of planar curves and its application in CAGD[J].CAGD, 1997,14(6):653-669.
[2]劉鼎元.平面 n次 Bézier曲線的凸性定理[J].數學年刊,1982,3(1):45-55.
[3]王國瑾,汪國昭,鄭建民,等.計算機輔助幾何設計[M].北京:高等教育出版社,2001.
[4]Liu Zhi, Tan Jieqing, Chen Xiaoyan, et al.The conditions of convexity for Bernstein-Bézier surfaces over triangles[J].Computer Aided Geometric Design, 2010,27(6):421-427.
[5]KORAS G D, KAKLIS P D.Convex conditionsfor parametric tensor-product B-spline surfaces[J].Advances in Computational Mathematics, 1999(10):291-309.
[6]WILHELM K.A course in differential geometry[M].New York: Spring-Verlag, 1978.
[7]DAHMEN W,MICCHELLI C A.Convexity of multivariate Bernstein polynomial and Bos spline surface[J].Studa Sci.Math.Hungar, 1998, 23:265-287.
[8]梅向明,黃敬之.微分幾何[M].北京:高等教育出版社,1998.
[9]蘇步青.微分幾何五講[M].上海:上海科技出版社,1979.
[10]方逵.計算機輔助幾何設計中的保形插值理論及算法[M].長沙:湖南人民出版社,2003.