B样条曲面GC1拼接中连接函数性质及其应用
B样条曲面GC1拼接中连接函数性质及其
应用
第21卷第8期
2009年8月
计算机辅助设计与图形学
JOURNALOFCOMPUTER—AIDEDDESIGN&COMPUTERGRAPHICS
Vo1.21,NO.8
Aug.,2009
B样条曲面GC拼接中连接函数性质及其应用
赵乃良"任歆"马维银
"(杭州电子科技大学图形图像研究所杭州310018)
(香港城市大学制造工程及工程管理学系香港)
(znl@hdu.edu.cn)
摘要为了方便地实现B样条曲面建模,讨论了一般节点下2张B样条曲面G连续条件中连接函数的性质,以
及连接函数,本征方程和公共边界的相互约束关系.通过
连接函数在内节点上的连续性质,提出了一种用B样
条函数为连接函数的B样条曲面G连续拼接方法.最后以分段二次连接函数为例,实现了双三次B样条曲面的G
连续拼接.该方法由于采用了重节点,释放了公共边界的自由度,使得曲面拼接更为灵活.
关键词B样条曲面;G连续;本征方程;连接函数
中图法分类号TP391.72
PropertiesandApplicationsofConnectingFunctionsforGC1-ConnectedB—Spline Surfaces
ZhaoNailiangRenXinMaWeiyin. (InstituteofGraphicsandImage,HangzhouDianziUniversity,Hangzhou310018)
(DepartmentofManufacturingEngineering&EngineeringManagement.CityUniversityofHongKong,HongKong)
AbstractInordertoimprovetheconvenienceofsurfacemodelingwithB—
splinesurfaces,the
propertiesofGcontinuityconditionsarestudiedbetweentwoB—
splinesurfaceswitharbitrary
degrees,suchasconstraintconditionsdefinedbytheconnectingfunctions,theintrinsicequationsand
thecommonboundary.Byinvestigatingthecontinuitypropertyofconnectingfunctionsatinterior
knots,anewmethodisproposedforGconnectionoftwoB—splinesurfacesbyadoptingB—
spline
functionsasconnectingfunctions.Todemonstratetheresults,theimplementoftheGcontinuityof
twobicubicB—
splinesurfacesisachievedbyselectingaspecialkindofpiecewisequadraticpolynomial functions.Duetothereleaseofaddeddegreeoffreedomalongthecommonboundaryupondouble
knotsneartotwoendsofinterval,thepresentedmethodisratherflexibleinsmoothconnectionof
B—splinesurfaces.
KeywordsB—splinesurface;Gcontinuity;intrinsicequation;connectingfunction 非均匀有理B样条(NURBS)已经成为计算机
辅助设计与制造(CAD/CAM)的工业
,并且被
广泛地应用于相关领域.然而,对于B样条曲面
的光滑拼接问题,只在近1O年来有一些结果,而且
基本上都是采用线性连接函数.
1995年,Milroy等嘲首先提出了一种近似G
连续的多张B样条曲面拟合方法,该方法不仅不
能达到精确的G连续拼接,而且需要通过复杂的 收稿日期:200809—02;修回日期:20090320.基金项目:浙江省钱江人才
项目
(2007R10011);香港城市大学战略研究项目 (7001928).赵乃良,男,1967年生,博士,教授,CCF高级会员,主要研究方向为
CAGD,CG.任歆,男,1983年生,硕士,主要研究方向为 CAGD(hart602@163.corn).马维银,男,1961年生,博士,副教授,主要研究方向为
CAGD,CAD/CAM,虚拟设计与制造,快速原型和逆向工程 (mewma@cityu.edu.hk). 计算机辅助设计与图形学
非线性优化求得曲面的控制顶点;Ma等]对文献 [2]的方法进行了改进,通过采用线性约束的最小二 乘方法,可以在大部分公共边界达到高阶几何连续, 但在奇异角点(非4条边界的相交处)附近仍只能达 到近似的G连续:因此这类方法都是近似的. 2002--2004年,施锡泉等.研究了双三次,双四 次,双五次B样条曲面间的G连续问题,并指出B 样条曲面问的几何连续性条件与B6zier曲面间几 何连续条件的本质区别是本征方程;2005年,Che 等[8推广了文献[4—7]的结果,给出了NURBS曲面 G连续的一般条件和拼接方法:由于上述方法的连 接函数都是线性的,因而对于公共边界有很强的本 征方程约束条件.我们在2006年对B样条曲面间 G连续条件的一些基本性质进行了研究,实现了基 于分段线性连接函数的双二次B样条曲面光滑拼 接_9].2007年,高占恒等[1...通过选择特殊的两段线 性连接函数,用局部格式构造了只有一个中间节点 的多张双四次B样条G连续曲面.
1记号约定和预备定理
不失一般性,具有公共边界c()一S(0,)一
S.(O,)的2张B样条张量积曲面S(",)?R{, (,)EEo,1]×Eo,1]和S.(叫,)Ee3(ZU,)E [0,1]×[0,1],定义为
fS(",u)一??P?B(")B()
{?
【S(砌,)一??O?Bi,r(训)B()i一0,一0 其中,{P},.是B样条曲面S(",)的控制顶
点;B(")和B()分别是在"和方向上的B样 条基函数,P和q为它们的次数;基函数的节点向量 分别表示为U:={"o一0,…,0,Ul,…,"l,…,——————,r———————————
——一
P1l
痢,…,",,,而+1—1,…,1},V:={o=0,…,0, ————,r——一———————V————————————,,—————
k一11
791,…,1,…,,…,,"Uff+1—1,…,1}.S2(,)————V————————,——一——
—————V—————一
1q+1
与S(",)类似,B()的节点向量为W:=
…
,硼,…,叫'
,.......
...............一
r+1k1^
+.一l,…,1}.其中,(1?占<p,z一1,2,…,rn) r+l
是内节点"(0<"<1)的重数,且"< "<",mz?+.类似地,是(1?<g,z一1,一 1
2,…,疔)满足一?忌+q,(1?,<,.,l一1,,=l 2,…,官)满足g一?五+r.,一1
容易证明,在G.连续的公共边界C()一S(0, )一S(0,)上,满足
Po,
一
Qo,,J一0,1,2,…(2)
对式(1)分别进行求导,得到公共边界上3条切 向量曲线
fc1(v)一Iu=O一旦Ulj=0
PJ.BJ一
l一
IC2(v)一w=0一'LU1=?一
l云(Q1l_Qo.J)朋一)
lCo(v)一l…一.霎一
l冀
(3)
其中,C()和C.()分别是定义在节点向量',上的 q次B样条曲线切向量,Co()是定义在节点向量 卜的a一1次B样条曲线切向量,一{.. 2,…,+一1}一{.一0,…,0,1,…,】,…,——————,r——————————,———
一
q1
,…,,+1—1,…,1}.—————,,——————————————v———————
一
^q
在上述约定下,根据文献[8],可以将B样条曲 面S(",u)和S(叫,)达到G连续的充要条件表 述如下:
定理1.S(",)和S.(,)是由式(1)定义的
2张B样条曲面,在公共边界c(),?Eo,1]上满 足G.连续条件式(2),则B样条曲面S(",)和 S(叫,)达到G连续的充要条件为:存在定义在节 点向量V上的分段多项式函数a(u),口()和y(), 使得在公共边界c(),?Eo,1]上满足
a()?C1()+()?C2()+7()?Co()一0
(4)
其中a()?()>0,分段多项式函数a(),()和 7()的次数分别满足deg(口())?2q一1, deg(C~(v))?2q一1和deg(())?2q.为方便起见, 8期赵乃良等:B样条曲面GC拼接中连接函数性质及其应用
我们将式(4)写成
Cl()一厂()?C2()+g()?C0()(5) 记厂()一-fl(v)/a()<0,g()一r(v)/a()?
0,我们称厂()和g()为B样条曲面S(U,)和 S.(叫,)的连接函数(也称为拼接函数).定理1的 直观几何意义是:3个切向量C(),C()和C.() 沿着公共边界C(),?[O,1]始终共面.到目前为 止,由于该领域的文献中总是把连接函数定义为线 性函数,对于vE[卜l,72],z===1,2,…,疗+1, 』m一(6)
【g()一卢+),
因此,我们称厂(口)和g()为分段线性连接函数,其 中a<O,(fl).+(y)?0.
2B样条连接函数的曲面连续拼接理论
如果B样条曲面S(U,)和S(砌,)在公共边 界C(),vE[O,1]上达到G连续,则式(5)成立,同 时考虑到式(3)中的3个切向量C(),C.()和
C.()在公共边界为c.连续曲线(假定k?q一1), 则对于任意?(0,1),有
fC1(73)一厂()?C2()+g()?Co() 【c1()=f(v-~)?C2()+g()?Co()
(7)
将式(7)中两式相减得
Ef()一()]?c.()+
[g()一g(_=)]?c.()一0(8)
由于C(72)和C.()在公共边界上是2个线 性无关的向量,根据式(8)可以得到厂()和g()也 是C.连续的,包括所有的内节点—,z一1,2,…, ,即
』f(v7一厂'(9)<'J
lg()一g(讨)
通过对式(5)的两边求次导数,一1,2,…,q— k一1,得到
:一!
aX
:
.J
0
i!(—)!a一3v.
娄OJ-~g(v)3v(1O)!(—)!a…
根据B样条基函数的性质,对于z—l,2,…,疗, C()和C()在内节点一处达到C连续, C.()在内节点—处达到C口连续.根据 式(9)并令式(10)中J=:=1,可以得到-厂()和g()在 内节点—上C连续;根据-厂()和g()在内节 点一上C连续,并令式(1O)中J一2,可以得到
-厂()和g()在内节点—上C.连续;依此类推, 可以得到,厂()和g()在内节点一,上可以达到 C.一一连续,Z一1,2,…,疗,即
aqL厂()
a73g一l一
oq-kfg()
aq一1一
f…+
L+
由式(11),得到B样条曲面G连续的一个必 要条件.
定理2.S(",)和S:(硼,)是由式(1)定义的
2张B样条曲面,在公共边界c(),?[0,1]上满 足G连续条件式(2)和式(4),则连接函数厂()和 g()在节点一,Z一1,2,…,疗上至少达到 Cq--k连续.
根据定理1,2可以断定,连接函数f(72)和 g()可以用定义在公共边界上的2q阶有理B样条 函数表示.
如果k<g一1,对所有z一1,2,…,疗,如单内节 点的三次及以上B样条曲面,根据定理2,式(6)中 的分段线性连接函数将演变为直线段连接函数,即 Cl()一a?C2()+(fl?+y)?Co(), ?LO,1(12)
其中,口<0和+?0.连接函数厂()和g()进 一
步的内在约束,即公共边界上的本征方程,可由定 理3揭示.
定理3.Js(",)和S(W,)是由式(1)定义的
2张B样条曲面,在公共边界c(),?[0,1]上满 足G连续条件式(2)和式(4),则连接函数,()和 g()在公共边界的内节点一,Z一1,2,…,上必 须满足
(『一I).C2(7Jl3vvzvl+3vv~vl-)+\d.d./..
(3dg(v)I一Odg(V)I).Cov=vl+v=vl--Co(v1)+\一十 (::I一+——OaCo(v)3『一一)?g()==.,\d'f十ad.一/5' d—q—k(13)
证明.根据定理2,连接函数厂()和g()达到 C旷连续,同时考虑到C()和C()达到
连续,C.()达到C连续.在式(10)中,令J为 —q一是,即在定理2的基础上再求一次导数,即得 到式(13).证毕.
一
计算机辅助设计与图形学
容易得到,如果在节点—,,Z一1,2,…,打处, 连接函数厂()和g()达到C(C,)连续,则 —
adCo(
一
v)l…+一—
3~Co(
一
v)
d
{一厂,—q一是(14)a.f十a.厂'?…
C.()也至少达到C(Cqk)连续.当公共边界定义 在单内节点向量序列上,即k一k一?一k一1,公 共边界C()将退化为多项式曲线,可以用q次
B~zier曲线表示为
c()一>:C?J(),?[0,1](15)
其中{J()).为q次伯恩斯坦基函数.由于公共 边界c()退化为纯粹的多项式曲线后,极大地减少 了曲面设计的自由度,破坏了B样条曲面分块连续 的局部可控性,因此在实际选择连接函数时,应尽可 能地避免这种情况的出现.根据定理2和定理3,一 方面,在满足k?q一1,z:1,2,…,打的条件下,可 以内部采用重节点的节点向量;另一方面,在满足连 接函数,()和g()在内节点—,l一1,2,…,疗 上至少Cq--k连续的条件下,可以采取降低连接函 数的次数.
3算法实现和实例
下面以双三次B样条曲面为例,说明2张B样 条曲面G连续拼接的算法.为讨论方便起见,在式 (1)中,令n:=m—g,P—q一,一一3,节点向量分别表 示为U===',一{t0,tl,t2,…,t4}={0—0,0,0,0, 1,1,732,…,n5,72j,一4—1,1,1,1}. 此时,式(1)可以表示为
fs(",)一??P?B?(")B()
li=0i=O{
【S(硼,)一???B(训)B()0J0
(16)
其中的2张曲面在公共边界上满足连续,c()一 Sl(O,)一S2(0,),也即P..17一Qo.,J一0,l,2,…. 同时,我们取式(5)中的连接函数f()为常数,即 a光滑拼接前G.连续曲面
-厂()一一1,连接函数g()为式(17)中的分段二次 多项式函数,即
I
g()一0
I
J
1,?[.,]U1——U0,
?(l,5)
二?E一5,]——J,t"一,H4.J
u4H5,
(】7)
10,则B样条的定义域 为讨论简单起见,设?
[0,1]内至少包含6个独立子区间段,而且假定每个 独立子区间段是等距的,即h一一H一
1/(一4),i一1,2,…,7/一4.通过节点插入技术, 式(5)的约束条件可以表示为式(16)中2张B样条 曲面控制顶点之间的关系,即
fP1.0一P…+Ql,0一Q0,o—l(Po.1一Po.o) l6(P一Po,)+6(Q…一Q.,)一1(P0I3一Po.2) lP1.一P[】.J+Q1.一.一0,J一2,3,…,n,2 l6(P1~n1一P,1)+6(Ql,n1一Qo—1)一 I2(Po一2——P.一3)
lP1.一Po,+Q一Q一2(Po.一P一1)
lJ:L1(2(P一P?)一4(P呲一Po.】)+
lPo.3Po.2)一0
l2(P[)IJ一一Po3—4(P1一Po一2)+ }2(.一Po,n-1))一0
(18)
从式(18)容易看出,当?10时,公共边界一端 的控制顶点之间的约束条件不会传递到公共边界的 另一端,而且中间部分只有切向量平行的约束,公共 边界B样条曲线中间部分的控制顶点是完全自由
的,不会退化为B6zier曲线.与其他采用线性连接 函数的方法相比,由于约束条件的分离和简化,B样 条曲面控制顶点的自由度得到了极大的释放,可以 容易地实现多张B样条曲面在角点的局部构造. 在图l所示的2张B样条曲面拼接实例中,每 张曲面选取15×15控制顶点,节点向量为{0,0,0, 0,0.1,0.1,0.2,0.3,…,0.7,0.8,0.9,0.9,1.0,
-
_
黧
l?
图12张B样条曲面拼接
8期赵乃良等:B样条曲面GC拼接中连接函数性质及其应用1O65
1.0,1.0,1.0}.对于图1b,根据式(5),实际上我们 只修正了公共边界及相邻两列上的控制顶点,其他 控制顶点与图1a相比没有变化.
在图2所示的6张B样条曲面拼接实例中,包 括7条公共边界和2个公共角点,其中左边为3张 B样条曲面的角点,右边为5张B样条曲面的角点, 每个曲面都选取ll×11控制顶点,节点向量定义为 {0,0,0,0,0.16667,0.16667,0.3333,0.5,0.6667,
4结语
0.8333,0.8333,1.0,1.0,1.0,1.0}.角点处控制顶 点的处理:由于选取的B样条曲面的控制顶点在角 点插值,需首先确定角点的坐标以及式(17)中的 值;然后调整角点附近沿公共边界的3个控制顶点 和对角线上的1个控制顶点;最后确定公共边界上
(18)调整相关控制顶点相 的其他控制顶点,并按式
邻的左右两排控制顶点.从图2b可以看出,曲面的
G拼接效果良好,符合实际应用的要求.
a光滑拼接前G.连续曲面b光滑拼接后G连续曲面 图26张B样条曲面拼接
本文讨论了B样条曲面G连续拼接中连接函 数的性质,以及连接函数,本征方程和公共边界的相 互约束关系;指出了在内部单节点的三次及以上2 张B样条曲面的拼接中,如果采用线性连接函数, 其公共边界曲线将退化为Bfzier曲线;提出并讨论 了一种用B样条函数为连接函数的B样条曲面G 连续拼接方法;以分段二次连接函数为例,实现了双 三次B样条曲面的G连续拼接.通过实例可以看 出,本文方法灵活,有效,可以方便地实现对复杂几 何模型的构造.在以后的工作中,我们将进一步研究 更为一般的B样条连接函数,并探索本文方法在曲 面过渡,补洞和拟合等几何处理中的应用. [1]
[2]
[3]
参考文献
1-43ShiXQ,YuPQ,WangTJ.Gcontinuousconditionsof
biquarticB—splinesurfacesEJ].JournalofComputationaland
[5]
E6]
E7]
Es]
[9]
PieglL,TillerW.TheNURBSbook[M].2nded.New
York:Springer,1997[1O] MilroyMJ,BradleyC,VickersGW,eta1.Gcontinuityof
B—splinesurfacepatchesinreverseengineering[J]. Computer—AidedDesign,1995,27(6):471—478
MaWY,LeungPC,CheungEHM,eta1.Smooth
multiplesurfacefittingforreverseengineering[C]// Proceedingsofthe32ndCIRPInternationalSeminaron ManufacturingSystems,Leuven,1999:53—62
AppliedMathematics,2002,144(1/2):251—262
ShiXQ,WangTJ,WuPR,eta1.Reconstructionof convergentGsmoothB—splinesurfaces[J].ComputerAided GeometricDesign,2004,21(9):893—913
ShiXQ,wangTJ,YuPQ.ApracticalconstructionofG smoothbiquinticB—splinesurfacesoverarbitrarytopology EJ].Computer—AidedDesign,2004,36(4):413—424
ShiXiquan,ZhaoYan.Gcontinuityconditionsofbicubic B—splinesurfaces[J].JournalofComputer—AidedDesign&
ComputerGraphics,2002,14(7):676—682(inChinese)
(施锡泉,赵岩.双三次B样条曲面的G连续条件[J].计
算机辅助设计与图形学,2002,14(7):676—682)
CheXJ,LiangXZ,LiQ.Gcontinuityconditionsof adjacentNURBSsurfaces[J].ComputerAidedGeometric Design,2005.22(4):285—298
ZhaoNL,MaWY.PropertiesofGcontinuityconditions betweentWOB—splinesurfaces[M]//LectureNotesin ComputerScience.Heidelberg:Springer,2006,4035:743—
752
GaoZhanheng,LiangXuezhang,GaoFushun,eta1. ResearchonGcontinuityconditionsbetweenBspline surfacesandconstructionoflocalschemerJ].Journalof Computer—AidedDesign8LComputerGraphics,2007,19 (7):866-870(inChinese)
(高占恒,梁学章,高福顺,等.B样条曲面间G连续条件
及局部格式构造问题[J].计算机辅助设计与图形学,
2007,19(7):866-870)