B样条曲面建模新方法

文档序号:6604500阅读:277来源:国知局
专利名称:B样条曲面建模新方法
技术领域
本发明涉及CAD领域一种插值两个参数方向上多条截面线采样点的B样条曲面双 向蒙皮建模新方法。
背景技术
B样条曲面是一种最常用的自由曲面表达方式。目前,关于B样条曲面的几何建模 大多采用单向蒙皮的方法,即沿着一个参数方向设计截面线,然后通过放样得到蒙皮曲面。 单向蒙皮虽然可以满足一定的造型需求,但是得到的曲面只能插值单方向上的数据,不能 满足更高的造型需求,如在多边形网格孔洞修补过程中,有时需要构造一个插值四条边界 线采样点的曲面,同时还要求插值曲面与周围网格的光滑连接,参见文献“有限元网格的孔 洞修补算法研究”(陈文亮,张胜,金修宝,计算机学报,2006,28 (6) 1068 1071)。因此, 建模时往往需要从两个参数方向上控制曲面的形状。文献“NURBS双向蒙皮造型方法的研 究与实现”(张乐年,周来水,周儒荣,软件学报,1997,8(6) 470 474)提出了 NURBS曲面 双向蒙皮造型方法,采用先构造B样条截面线后统一节点矢量的方法,可以插值四条给定 边界,但是由于各条截面线采样点的个数不一定相等,分布也可能不均勻,因此各条截面线 的节点矢量一般互不相同,简单的节点合并会使蒙皮曲面控制顶点的数量急剧膨胀,曲面 的光顺性也难以保证。

发明内容
针对现有的B样条曲面造型方法要么只能插值单向截面线,要么可以插值双向截 面线但曲面控制顶点过多的问题,本发明提出一种新的B样条曲面双向蒙皮造型方法,蒙 皮曲面插值两族相交截面线采样点,且具有较少的控制顶点和较好的光顺性。本发明所采用的技术方案是首先对两族截面线采样点作预处理,使其满足相容 性约束,即①不同族的两条截面线之间有且仅有一个公共点,②输入的截面线至少应该包 含曲面片的四条边界。为了减少不同截面线之间参数分布的差异性,采用向心参数化方法 计算每个方向上(U向和V向)截面线采样点的参数,用平均法统一各条截面线对应的参 数,重新规范化采样点的参数,使得异族截面线公共点的参数与对应的截面线参数吻合;以 采样点最多的截面线节点矢量为基准,统一同族B样条截面线的节点矢量,这里不是采用 简单的节点合并,而是根据Schoenberg-Whitney条件,参见文献“A practical guide to splines" (De BoorC, Berlin =Springer, 1978),使得公共节点矢量只要能保证插值线性方 程组有解即可;基于能量法用统一的节点矢量计算插值B样条曲线;分别对两族B样条曲 线放样,得到两张单向蒙皮曲面,再构造一张插值截面线公共点的张量积B样条曲面,三张 曲面的布尔和即为所求的双向蒙皮曲面。本发明的有益效果是,通过先统一公共节点矢量后双向蒙皮的思路构造B样条曲 面,既可以插值双向截面线采样点,又可以有效地限制曲面控制顶点数量的急剧膨胀,取得 了造型方法实用化的功效。


下面结合附图和实施算例对本发明进一步说明。图1是整个算法的主要流程。图2是对两条异族截面线相容性处理的示意图。若两条异族截面线的采样点无公 共点,则需要计算一个近似公共点以满足相容性要求。假设两条截面线上距离最近的采样 点分别为Pi和Qp若两者有一个是截面线端点,则该点即为两条截面线的公共点;否则,过 Pi及其邻近点Pj+1和Pi+1构造二次插值曲线C1,过Qj及其邻近点Qf1和Qj+1构造二次插值 曲线C2,一般地,C1和C2是两条空间曲线,不一定有交点。计算C1和C2上距离最近的两点 P和Q,取其中点R作为两条截面线的近似公共点。用户在交互设计时两条异族截面线的距 离不能偏离太大,以免影响蒙皮曲面的质量。图3-图7是对一个简单实例的造型过程。图3是用户输入的截面线采样点,这些 数据可能是用户交互设计得到的,也可能是从别的系统导入的。各条截面线采样点的数量 可以不同,分布也不一定均勻,如果不满足相容性约束,可以按照前述方法自动处理。图4 是沿着一个参数方向蒙皮得到的B样条插值曲面S1,曲面只能插值一个方向的截面线采样 点。图5是沿着另一个参数方向蒙皮得到的B样条插值曲面S2,曲面同样也只能插值另一 个方向的截面线采样点。图6是通过插值两族截面线公共点得到的B样条曲面S3。图7是 三张曲面的布尔和曲面S = S3+S3-S3就是所要构造的双向蒙皮B样条曲面,S插值两族截面 线采样点。本实例采用双三次B样条曲面造型,两个参数方向的公共节点矢量均为{0,0, 0,0,0. 25,0. 375,0. 5,0. 625,0. 75,1,1,1,1}。可以看到,造型曲面的控制顶点数少,曲面光 顺,且能够在两个参数方向上很好地控制曲面的形状。图8是另外一个比较复杂的造型实例,两个参数方向上各有多条截面线,且各条 截面线采样点的分布也不均勻,所得到的三次B样条蒙皮曲面的公共节点矢量分别为U ={0,0,0,0,0. 137,0. 203,0. 269,0. 330,0. 377,0. 421,0. 470,0. 534,0. 602,0. 670,0. 727, 0. 771,0. 813,0. 866,1,1,1,1}和 V = {0,0,0,0,0. 117,0. 164,0. 206,0. 254,0. 301,0. 358, 0. 429,0. 482,0. 529,0. 577,0. 643,0. 708,0. 757,0. 804,0. 848,0. 894,1,1,1,1},而简单的 节点合并得到的蒙皮曲面在U、V两个参数方向上的公共节点数达到67个和103个。
具体实施例方式算法的输入是m+1条U向截面线采样点Pi,j(i = 0,1,-,m, j = 0,1,…,Iii)和 11+1条¥向截面线采样点91;,1& = 0,1,-,η, 1 =0,1,…,Hii)、容差ε及B样条曲面次 数ku、kv ;输出是双向蒙皮B样条插值曲面S (u, ν)。算法主要实施步骤如下1.对采样点数据作预处理,使其满足相容性约束;2.参数化采样点;3.统一各条U、V截面B样条曲线的节点矢量U、V;4.分别反求以U为节点矢量的截面B样条曲线Ci (U),(i = 0,1,···,!!!)和以V为 节点矢量的截面B样条曲线dk(ν),(k = 0,l,…,η);5.以U、V为节点矢量构造U向蒙皮曲面S1Oi, ν),V向蒙皮曲面S2 (U,ν)和在参数(U” Vj)处满足插值约束的张量积曲面S3(u,ν)。6.构造布尔和曲面
即为所求的双 向蒙皮B样条曲面。主要步骤的进一步说明(1)数据预处理。在用户交互设计截面线采样点时,往往难以完全保证两族截面线 的相容性约束条件①,即可能出现两条异族截面线无公共采样点的情况,这时需要按照图2 所示的方法自动计算并添加该公共采样点。若相容性约束条件②不满足,则提示用户重新 输入。两条截面线在公共点处不能偏离太远,以免影响造型曲面的质量。两个不同采样点 的距离也不能小于给定的容差值,否则要将其合并。(2)采样点的参数化。首先用向心参数化方法计算每条U向截面线采样点Piij的 参数Ui,j(i = 0,1,…,m,j = 0,1,…,IIi)及每条V向截面线采样点qka的参数VkaGi = 0,1, -,n, 1 = 0,1,…,mk),找出U、V向截面线公共点ιν,及其参数值(u‘ p,q,v' p,q), (ρ = 0,1,…,m,q = 0,l,…,η),统一两族截面线的参数 Uq(q = 0,1,…,n)&vp(p =
重新规范化各釆
样点参数,使得当
时,令U:J ~y (uf+i-ur);当 vk,
时,令
这样⑴^向截面线公共点、
q的参数值变为(up,、),其他截面线采样点的参数相对公共点的参数“均勻”分布。(3)节点矢量的确定。下面以U向为例加以说明。假设采样点数最多的截面线 共有t条,这些截面线对应的顶点参数为Ti = Iti,。,tu,…,ti.J,i = 1,2,…t,通过
取Ti的平均值得到T= {、,、,…,tn},即(=| >Μ,再对T平均,得到初始节点矢量
、其中
n_ku。对每条截面线的采样点参数uk,1(1 = 0,1,…,mk),根据Schoenberg-Whitney条 件,当且仅当4 < 丨时插值方程组有解,若上述条件不满足,则把Uu作为新节点 插入节点矢量U。。更加稳定的公共节点向量确定方法可以参见文献“Reducing control points in lofted B-spline surface interpolation usingcommon knot vector determination,, (ffen-Ke Wang, Hui Zhang, Hyungjun Park, Jun-Hai Yong, Jean-Claude Paul, Jia-Guang Sun, Computer-Aided Design, 2008,40 (8) :999 1008)。对每条 U 向截 面线的采样点参数按照上述条件合并于Utl,设得到的新节点矢量为U1,以U1为基础,再用同 样的方法合并各条V向截面线对应的曲面参数U2,从而得到造型曲面的U向节点矢量U。(4)B样条截面曲线的反算。对截面线的每个采样点建立约束方程,得到线性方程 组AX = P,若A恰为方阵,则由前面公共节点矢量的构造方法知A必非奇异,方程组的解为 X = A^1P ;若A非方阵,则方程组AX = P是一个欠约束问题,引入能量函数E(X) = XTKX,可得到如下线性方程组 其中K为能量矩阵,ν拉格朗日乘子向量,参见文献“Lofted B-spline surface interpolation bylinearly constrained energy minimization" (Park H. Computer-Aided Design,2003,35(14) 1261 1268)。(5)单向蒙皮曲面的构造。有了截面曲线Ci(u),(i = 0,l,…,m),用类似曲线反 求的方法对Ci(U), (i =0,1,-,m)放样,可以得到单向蒙皮曲面S1 (u,ν)。(6)公共点插值曲面&(11^)的构造方法与单向蒙皮曲面的构造方法类似,不再赘 述。(7)布尔和曲面的构造。按照前述方法构造的B样条曲面S1Oi, V)、S2 (u,ν)和 S3(u, ν)具有相同的节点矢量,设其控制顶点分别为v。),i = 0,1,…,nu,j =0,1,···, , k= 1,2,3,则布尔和曲面S (u, ν)的控制顶点Vi,」可以直接计算得到= V^+v^-ν , i =0,1, ···, nu, j =0,1, ···, nvo
权利要求
一种插值两个参数方向截面线采样点的B样条曲面建模新方法,其特征在于通过对两族截面线采样点先统一节点矢量后插值,使得蒙皮曲面的控制顶点数尽量少,且曲面光顺性好。包括以下步骤步骤1先对数据作预处理,使其满足相容性约束;步骤2分别计算每条截面线采样点的参数;步骤3统一各条B样条截面曲线的公共节点矢量;步骤4反求由公共节点矢量定义的插值B样条曲线;步骤5构造两张单向蒙皮B样条曲面和插值两族截面线公共点的B样条曲面;步骤6构造布尔和曲面。
2.根据权利要求1所述的B样条曲面建模新方法,其特征在于,当步骤1中输入数据不 满足相容性约束时,通过构造局部逼近曲线并计算两条曲线的最近点估算两条异族截面线 的公共点。
3.根据权利要求1所述的B样条曲面建模新方法,其特征在于,当步骤2中计算每条截 面线采样点的参数时,先用累加弦长或向心参数化方法计算参数初始值,再找出两族截面 线的公共点及其参数值,用平均法统一两族截面线的参数,然后重新规范化各参数,使公共 点的参数与相应截面线参数吻合,其它截面线采样点的参数也相对公共点的参数“均勻”分布。
4.根据权利要求1所述的B样条曲面建模新方法,其特征在于,当步骤3以U向为例统 一各截面线节点矢量时,先用采样点数最多的截面线参数计算初始节点矢量U0,再通过对 每条截面线的采样点参数验证Schoenberg-Whitney条件,构造新的节点矢量U1,然后用同 样的方法合并各条V向截面线对应的曲面参数,得到最终的U向节点矢量U。上述方法对V 向同样成立。
5.根据权利要求1所述的B样条曲面建模新方法,其特征在于,当步骤4、步骤5反求 插值曲线和进行曲面放样时,一般需要引入能量约束,以保证方程组解的唯一性和曲面的 光顺性。
6.根据权利要求1、4所述的B样条曲面建模新方法,其特征在于,当步骤6构造布尔和 曲面时,三张曲面的节点矢量是统一的,双向蒙皮B样条曲面的控制顶点可以直接由三张B 样条插值曲面的控制顶点作布尔和运算得到。
全文摘要
本发明B样条曲面建模新方法涉及CAD领域一种新的自由曲面造型方法,用户只要交互设计两族截面线采样点,便可自动生成一张光滑的B样条插值曲面。首先用向心参数化方法计算各条截面线采样点的初始参数,然后重新计算各条截面线的参数并对采样点参数作规范化处理,用平均法计算每条截面线的节点矢量,再根据Schoenberg-Whitney条件统一各条同向截面线的节点矢量。基于能量法计算插值B样条曲线,分别对两族B样条截面线放样,得到两张单向蒙皮曲面,再构造一张插值截面线公共点的张量积曲面,三张曲面的布尔和即为所求的双向蒙皮曲面。本发明构造的B样条曲面控制顶点数量少,曲面光顺性好,可以插值两个方向的采样点,能够满足较高的曲面造型需求。
文档编号G06T17/40GK101908235SQ20101020624
公开日2010年12月8日 申请日期2010年6月23日 优先权日2010年6月23日
发明者李涛 申请人:苏州科技学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1