B样条曲面间的光滑拼接算法
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
B样条曲线曲面是实体造型,虚拟现实等CAD/CAM领域中广泛使用的几何造型工具。它不仅继承了Bézier曲线曲面的所有优点,而且具有局部修改的性质,因此得到工业界的广泛认可。但在CAGD领域目前仍存在许多问题待解决。曲面片间几何连续问题便是其中一个重要的问题。目前为止,关于Bézier曲面的几何连续问题的讨论已经基本完善,但关于B样条曲面的几何连续的讨论还不多。
     本文研究两片张量积B样条曲面(以双三次张量积B样条曲面为例)的G~1,G~2连续条件,并分别以三片和四片B样条曲面为例,研究了奇数面角点和偶数面角点处实现G~1拼接的相容性条件的实现,并给出了算法的具体流程。
     本文所用的算法避免了将B样条曲面分裂成多片Bézier曲面后,对Bézier曲面进行拼接的弊端,直接给出两B样条曲面控制顶点所应满足的条件。下面简要介绍算法的思想。
     设有两张B样条曲面B(u,v)和c(s,v),且B(0,v)=C(O,v)(G~0连续)。不妨设B,C在v方向具有相同的节点矢量,则B与C之间G~1连续等价于:其中,α(v),β(v),γ(v)是分段多项式函数.一般地,取α,β为常数,γ(v)是分段线性函数,则由[3]中所述知:C(0,v)是整体三次多项式曲线,γ(v)是整体线性函数,故设:γ(v)=γ_0(1-v)+γ_1v。那么,也是整体三次多项式曲线。由B样条基函数的基底性可知,可将表示为B样条的形式。设再设
    
    吉林大学硕士学位论文
    B样条曲面间的光滑拼接问题2
    守(。)豁}。一。
    =艺p,凡,3(v),则(*)式等价于
     J=0
    艺!a(bl。一b。,,)+口(el,,一e。,,)+p,]凡,3(。)=0
    件a(bl,j一b。,,)+口(el,,一e。,,)+pj(J=0,1,…,。)
    故只需固定bl,,,b0,j=c。,j,P,即可求出cl,j,从而使两B样条曲面实现Gl拼接.
    下面给出此算法的流程:
    算法1
    st即1:将公共边界曲线叔v)转化为整体三次B样条曲线.方法是先用Ferguson
    方法将拭v)用整体三次多项式曲线逼近.我们仍然用拭v)表示调整之后的公共
    边界曲线.之后,利用B样条曲线反算的方法,将拭v)反算成三次B样条曲线,
    记为
    价(v)一艺玖从,3(”);
    StepZ:选取a,口,加,守l;
    steP3:将城v)咖(v)用B样条曲线反算的方法反求出其三次B样条控制顶点,记
    为:
    :(v)功,(v)=艺p‘从,3(v),
    (3 .9)
    Step4:根据(3.8)将el‘求出,并用其来替换原来的e(s,v)的控制顶点el‘;
     对护连续的问题,除了要求(*)式外,还需要关于B,C的二阶跨界导矢的
    关系式,仍可仿照对Gl连续问题的处理思路,将cz,j修改,以达到梦拼接的
    目的.即首先根据(*)式将cl,j修改,使B,C实现Gl拼接,之后根据类似的GZ
    连续的条件,将c2,j修改,最终达到GZ连续的目的.算法如下:
    算法2
    
    吉林大学硕士学位论文
    B样条曲面问的光滑拼接问题3
    stepl:按算法1将B(二,v)和C(s,v)的控制顶点修改以使其达至IJG‘连续;
    stepZ:确定百,”。,刀,;
    stepa:按B样条反算的方法将(3.13)中的守(:)D6(。),守2(:)D7(。),刀(v)D3(v)改写
    成B样条曲线的形式;
    step4:按照对应控制顶点,将c2、求出,并替换原来的。2、。
     多片曲面实现G‘拼接的难点在于,若按照刚才的方法对每两个相邻的边界
    进行G‘拼接,那么在围绕角点处的拼接条件将出现互相缠结的问题,因此我们
    主要致力干如何解决这个矛盾.
     首先,对三面角点问题,可能产生问题的方程为:
    {
    a,(E3一O)+口1(EZ一O)+
    aZ(El一0)+热(Es一0)+
    as(E:一0)+凡(El一0)+
    (**)
    {
    al(G3一El)+口,(Gl一El)+Pl=0
    aZ(G,一EZ)+热(G:一EZ)+Ql=0
    a3(G:一E3)+凡(G3一E3)+Rl=0
    (***)
    式中玖,G‘,P‘,Q‘,凡的意义见第三章第三节.
     (**)式中主要是要求El一0,E:一0,E3一0共面,故可根据其共面的内在关
    系,将久,反表示成昭的式子,即在El,EZ,E3,0确定且El一。,E:一。,E3一。
    共面的情况下,(**)式有三个自由度.(***)式中未知量是G‘,而其系数矩阵是
    非奇异的,故在确定了昭之后(从而确定了a、,反),酬各(***)式中的G‘解出,
    用其替代原来的相应位置的点即可实现三片之间的G‘拼接.上面的方法对所有
    的奇数面角点处的Gl拼接问题都有效.算法如下:
    算法3:
    St即1:将曲面B,c,D的公共边界用整体三次多项式曲线逼近,并反求出其B
    样条形式的控制顶点,分别记为H‘,I‘,J‘.注意,应该使HO=10=J。,以及
    
    吉林大学硕士学位论文
    B样条曲面间的光滑拼接问题4
    Hl一Ho,11一10,JI一Jo共面;
    steP2:算出a‘,认·给定昭,(乞二1,2,3)继而将a‘,风求出,人为将公确定;
    step3:用反算B样条曲线的方法将:,(。)需1。一。,:2(。)豁l、一。,:3(w)瓷!。一。的B
    样条控制顶点P‘,Q*,凡得到;
    Step4:解方程(3.19),得到Gl,GZ,G3,,并替换原来的相应点;
    StePS:利用算法1对每两片曲面进行拼接.
     对四面角点,仍有类似(**)和(***)的式子,其中关于(**)的讨论是相同
    的,即(**)式有4个自由度,但(***)式这时需要解的方程组的系数矩阵是奇
    异的,进一步,还可得知其秩数为3,故其有解当且仅当方程组右端满足一定条
    件.在构成方程组右端的诸向量中,HZ,12,JZ,K:是不受控制的,利用方程组的
    形式?
B-spline methods are widely used tools in CAD/CAM field such as solid modeling ,viaual reality and so on.It not only inherite all the advantages of Bezier method but also have more freedomfor shape modifying ,and be widely accepted in industry. However there are some important problems to resolve in CAGD.The geometric continuity between two adjacent surfaces and that of serval surfaces is one of the most inportant problems.The theory of geometric continity on Bezier surfaces have been almost perfect as yet.And there are a lot of results on the topic of geometric continuity of Bezier surfaces .But the theory about B-spline surfaces isn't so much as those about Bezier surfaces.
    An algorithm for G1, G2 blending of tensor product B-spline surfaces(for example bicubic tensor product B-spline surfaces) is presented. The capability conditions of conor with more then three patches are studied and the routines of the algorithms are given . The algorithm can be easily extended to coner with any number of patches around it. The algorithms presented avoid the drawback of decomposing the B-spline surfaces to serval Bezier patches ,so they recuce the complexity and the time for blending. Now we are going to introduce the main idea of the algorithms.
    Suppose there are two B-spline surfaces B(u,v) and C(s,v) with B(0,v)=C(0,v) for v [0,1](G0 continuity).Withour loss of generality,suppose B and C contain the same knot vector in v direction .Then the G1 continuity conditions are equvalent to that:
    
    
    with a(v),/3(v),7(t;) are piece wise polynomial functions.Generally we let a(v),/3(v] be constant and 7(1;) be a peicewise linear functions . Then from [3] we know that:C(0,i;) is a global cubic polynomial curve and 7(6) must be a global linear function .Let 7(7;) = 70(1 - v) + 7iu,then 7(u)^f |s=o is a global cubic polynomial curve. Because the cubic B-spline functions are the basis of cubic polynomial function space, =0
    
    can be represented in B-spline form.Let B(u, u) = E E bijNi,3(u)Nj:3(v),C(u,v) =
    
    E E CijN^MNtfM, 7(w)lg|s=o = E PjNj,s(v) .Then (*) is equvalent to
    So if the {bilJ-}jn=0,{bolj}jn=0,t/ien{co,,-}7=0,{Pj}"=o are fixed ,we can get c1,j which satisfy the G1 continuity conditions.
    Algorithm 1:
    Step 1-.Firstly we convert (u)to a totally cubic B-spline curve,with Ferguson method[21]. We still use (v) to note the common boundry curve after being modified .Secondly ,we anticompute the B-spline control points of (u),that is
    Step2:Choose 1;
    Step3:Anticompute the B-spline control points of (v) /(v),that is
    Step4:Using (3.8) to compute the B-spline control points of CH and replace the corresponding points of C(s, v)
    
    For G2 continuity ,there are added conditions about the second derivative vectors of the two adjacent B-spline except of the first derivative vectors ,we can also imitate the idea of G1 continuity to resolve the c1,j.
    Algorithm 2 :
    StepltModify the control points of B(u,v)and C(s,v) to make them Continuous; Step2:Choose ;
    Step3:Anticompute the B-spline control points of (v)D6(v),2(v)D7(v), (v)D2(v) in (3.13);
    Step4:Replace the corresponding control points of C2i with the points we have compute from Step3.
    Now study the continuity problems of several patches around one corner. The key point is that if we blend every two adjacent B-spline surfaces with the algorithm abrove ,whether the constraints will be antinomy? In general case they are. So we must find a method to avoid the contradicts.
    Firstly wo consider the intance of a corner with three (odd number) patches around it. The equations that would make condtradicts are the following:
    (**)mainly imply that E1 - O,E2 - O,E3 - O are coplanar.So we can express with i0 according to the relationship of E1 - O, E2 - O, E3 - O.Suppose
    
    , then we can express ai, i with i0 and a,b,c. And a,b,c can easily be resolved from the equation above. Then in (***),only Gi are unknown and the matrix of coefficient is nonsingular.So after fix i0,we can resolve Gi from (***).
    Algorithm 3:
    Step1:Anticompute the B-spline control points of B,C,D.Let Hi,Ii, Ji be the
引文
[1]施法中,计算机辅助几何设计与非均匀有理B样条,北京,北京航空航天大学,2000
    [2]Les Piegl and Wayne Tiller,The NURBS Book,Berlin:springer-Verlag,1997
    [3]X.J.Che,X.Z.Liang, G~1 continuity conditions of B-spline surfaces,Northeastern Mathematical Journal,2002,Vol.18,No.4,343-352.
    [4]车翔玖,NURBS曲面造型中的几何连续性问题,吉林大学博士学位论文,2003
    [5]刘静,IGES中的B样条曲面及其局部修改方法
    [6]W.H.Du and F.J M Schmitt,On the G~1 continuity ofpiecewise Bézier surface:A review with new results,Computer-Aided Design,1990,Vol.7(1-4),165-180.
    [7]施锡泉,赵岩,双三次B样条曲面间的G~1连续条件,计算机辅助设计与图形学学报,2002,Vol14.第七期,676-682
    [8]Xiqua. Shi,Tianjun.Wang,Piqiang.Yu,A practical construction of G~1 smooth biquintic B-spline surfaces over arbitrary toyplogy, CAD 36(2004)413-424
    [9]周西军,杨海城,NURBS曲面G~1光滑拼接算法,计算机辅助设计与图形学学报.2002,Vol.8,No.3,227-233
    [10]于丕强,NURBS曲面重构中的几何连续性问题,大连理工大学博士学位论文,2002
    [11]X.Q.Shi,P.Q.Yu,and T.J.Wang,G~1 continuity conditions of biquartic B-spline surfaces,Journal of Computational and Applied Mathematics.2002,Vol.15,251-262
    [12]E.Catmull,J.Clark,Recursively generated B-spline surfaces on arbitrary topological meshes,Computer-Aided Design,1978, Vol.10,No.6,350,355
    [13]D.Doo,M.Sabin,Behavior of recursive division surfaces near extraordinary points,Computer-Aided Design. 1978,Vol,10,No.6,356,360
    [14]J.Peters,U.Reif.Analysis of algorithms generalizing B-spline subdivision,SIAM Journal of Numerical Annual, 1998,35,728-748
    [15]P.oswald and P.SchrSder,Composite primed/dual 3~(1/2)-subdivision schemes,Computer Aided Geometric Design.2003,Vol.20,No.3,135-164
    [16]王国谨,汪国昭,郑建民,计算机辅助几何设计,高等教育出版社,施普林格出版社,2001
    [17]陈发来,陈长松,邓建松,用分片代数曲面构造管道曲面的过渡曲面,计算
    
    机学报,2002,Vol.25,No.9,912-916
    [18]T.R.Wu,R.S.Zhou,On Blending of several quadratic algebric surfaces,Computer Aided Geometric Design,2000,Vol.17,759-766
    [19]雷娜,两个二次曲面的光滑拼接与吴文俊公式,吉林大学博士学位论文,2002
    [20]宋德军,朱心雄,用能量优化方法构造N边域曲面,工程图学学报,1998,No.1,41-47
    [21]朱心雄等,自由曲线曲面造型技术,北京,科学出版社,2000
    [22]马玲,朱心雄,PDE曲面造型方法在复杂曲面设计中的应用,计算机学报,1998增刊,Vol.21,357-362
    [23]周蕴时,苏志勋,奚涌江等,CAGD中的曲线和曲面,吉林,吉林大学出版社,1993
    [24]关履泰,罗笑南,黎罗罗等,计算机辅助几何图形设计,高等教育出版社,施普林格出版社,1999.
    [25]P.L.Laurent,A.L.Méhauté,L.L.Schumake,Curves and Surfaces in Geometric Design,USA,A.K.Peters,Wellesley, Massachusets, 1994
    [26]赵罡,朱心雄,基于小波的B样条曲线的多分辨表示及编辑,计算机辅助设计与图形学学报,2001,Vol.13,No.4,328-332
    [27]Terzopoulos,D.,Platt,J. and Barr,A.,Elastically Deformable Models,ACM,Computer Graphics,Vol.24,No.4,1987,205-214
    [28]Terzopoulos,D. and Qin,H.,Dynamic NURBS with Geometric Constraints for Interactive Sculpting,ACM,Transactions on Graphics,Vol.13,No.2,1994,103-136
    [29]Celniker,G. and Gossard,D.,Continuous Deformable Curves and Their Application to Fairing 3D Geometry,Proc.IFIP TC5/WG5.2 WORKING Conf., Geometric Modelling,Rensselaeville,NY,USA,1991,5-29
    [30]Celniker,G. and Gossard,D.,Deformable Curve and Surface Finite-Elements for Free-Form Shape Design,ACM Computer Graphics,Vol.25,No.4,1991,257-266
    [31]Lowe,T.W.,Bloor,M.I.G. and Wilson,M.J.,Functionality in Blend Design CAD,Vol.22,No.10,1999,655-665
    [32]Lowe,T.W.,Bloor,M.I.G. and Wilson,M.J.,Functionality in Surface Design,Adv.Des.Automation 1,1990,43-50
    [33]Lowe,T.W.,Bloor,M.I.G. and Wilson,M.J.,The Automatic Functional Design
    
    of Hull Surface Geometry,j.Ship Research,Vol.38,No.4,1994,319-328
    [34]Barnhill,R.E.,Birkhoff, G. and Gordon,w.j.,Smooth Interpolation in Triangles,J.Approx.Theory, No.8,1974,114-128
    [35]L.Shirman,C.Séquin,Local surface interpolation with Bézier patches:errata and improvement,Computer Aided Geometric Design.1991,Vol.8,No.3,217-222.
    [36]H.Li and S.Q.Liu,Local interpolation fo curvature continuous surfaces,Computer-Aided Design. 1992,Vol.24,No.9,491-503.
    [37]黄正东,王启付,周济等,构造G~1曲面的变分优化方法,计算机辅助设计与图形学学报.1996,Vol.8,No.5,352-360.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700