任意四边形网格上光滑曲面的重建方法

文档序号:6622602阅读:506来源:国知局
任意四边形网格上光滑曲面的重建方法
【专利摘要】任意四边形网格上光滑曲面的重建方法,包括以下步骤:1)生成四边形区域边界曲线;2)对每个四边形区域,由边界曲线和内部数据点拟合生成B样条曲面;3)在正则顶点处进行C2相容性调整,奇异顶点处G1相容性调整;4)正则边界上进行C2连续调整;5)非正则边界上进行近似G1连续调整。本发明提供了一种简化求解、提高效率、提升重建效果的任意四边形网格上光滑B样条曲面的重建方法。
【专利说明】
【技术领域】
[0001] 本发明属于曲面造型领域,涉及一种在经过四边形划分后网格上重建光滑拼接曲 面片的方法。 任意四边形网格上光滑曲面的重建方法

【背景技术】
[0002] 在对诸如人体器官、骨骼、玩具公仔等以自由曲面为主的复杂模型逆向工程建模 中,很难用单一曲面片对模型进行表述,通常首先需要对原始模型进行四边形划分,然后在 每个四边形区域上进行曲面重建,并逼近内部数据点,同时曲面片之间应该实现光滑拼接。 衡量光滑程度通常用两种连续性:一是参数连续性,记为C";二是几何连续性,记为G n,η指 连续阶数。参数连续是指在曲面切平面的任一方向上两曲面片的方向导数相等,Cn连续指 0-n阶方向导数相等。几何连续中的G°是指位置连续,G 1指切平面连续,G2指主曲率和主 方向连续。
[0003] 四边形网格的顶点根据顶点的度数(与顶点相连的边的条数)分为正则顶点和奇 异顶点:网格内部的正则顶点度数为4,奇异顶点度数为3、5及以上;网格边界上的正则顶 点度数为3,奇异顶点度数为2、4及以上。如果一条边的两个顶点都是正则顶点,则该边为 正则边,否则为非正则边。
[0004] 多张曲面间的连续拼接问题,已有不少学者对此进行了研究,出现了多种连续拼 接曲面的重建方法。Milroy等[1]提出了一种近似G 1连续的分片B样条曲面拟合方法,将 G1连续条件作为约束条件,通过求解非线性最小二乘问题的解来保证曲面间的连续性。该 方法计算量比较大,而且只能得到近似的G 1连续。Eck和Hoppe[2]利用Peter[3]提出的曲面 样条构造方法来生成双三次B样条曲面片,对四边形网格进行两次Doo-Sabin细分 [5]后得 至IJ一个生成B样条曲面片的控制网格,B样条曲面片的控制顶点由控制网格顶点的线性组 合得到,构造过程自动保证了 B样条曲面片间的G1连续。曲面的拟合转化为对控制网格顶 点位置的最小二乘求解。为了得到保证精度的曲面,曲面构造需要迭代进行,整个过程非常 耗时。Peter [4]通过对任意四边形网格进行Catmull-Clark细分[6],在每个四边形面片上, 得到一张双三次B样条曲面,并且曲面片间除了奇异点处C 1连续,其他各处达到了 C2连续, 但由于Catmull-Clark细分的收缩性,重建的曲面模型会有较大的收缩。施锡泉等在[7] 中给出了在经过四边形区域划分后的模型上重建收敛G 1连续的双三次B样条曲面片的方 法,随着曲面控制顶点的增加,曲面片间趋向于G1连续。随后,在[8]中讨论了内部没有重 节点的双五次B样条曲面片间的G 1连续性条件,给出了生成严格的G1连续的双五次B样条 曲面的局部构造方法。局部构造方法首先拟合得到一个G°连续的曲面片网格,然后再根据 G 1连续性条件对曲面的控制顶点进行局部修改使曲面片间连续。
[0005] 已有的分片连续曲面重建方法得到的曲面大部分只有G1连续,而且有的方法求解 复杂,效率不高,或者重建的曲面不能较好的保持原始模型的几何特征,并不实用。


【发明内容】

[0006] 为了克服已有分片连续曲面重建方法的求解复杂、效率不高、重建效果较差的不 足,本发明提供了一种简化求解、提高效率、提升重建效果的任意四边形网格上光滑B样条 曲面的重建方法。
[0007] 本发明解决其技术问题所采用的技术方案是:
[0008] 任意四边形网格上光滑曲面的重建方法,所述重建方法包括下述步骤:
[0009] 1)生成四边形区域边界曲线
[0010] 用三次B样条曲线拟合四边形区域边界上的采样点得到边界曲线,而且对所有的 边界曲线采用相同的节点向量,使相对的两条边的节点向量相容;
[0011] 在生成边界曲线时,首先找出四边形网格上的长边,长边由依次相连的多条边组 成,长边的首末端点为奇异顶点或网格边界上的正则顶点;得到长边后,取出组成长边的每 条边上的采样点,将它们合在一起,拟合出一条长曲线,该曲线插值长边上的顶点,逼近每 条边上的采样点;再将长曲线在顶点处打断,得到每条边上对应的边界曲线,使边界曲线在 正则顶点处C 2连续,奇异顶点处G°连续;
[0012] 2)对每个四边形区域,由边界曲线和内部数据点拟合生成B样条曲面;
[0013] 3)在正则顶点处进行C2相容性调整,再进行奇异顶点处G1相容性调整,过程如 下:
[0014] 3. 1)正则顶点处的C2相容性调整按下述方法进行:
[0015] 计算与正则顶点P相连的4个曲面{Si (Ui, Vi), i = 1,…,4}在P处的混合偏导

【权利要求】
1.任意四边形网格上光滑曲面的重建方法,其特征在于:所述重建方法包括下述步 骤: 1) 生成四边形区域边界曲线 用三次B样条曲线拟合四边形区域边界上的采样点得到边界曲线,而且对所有的边界 曲线采用相同的节点向量,使相对的两条边的节点向量相容; 在生成边界曲线时,首先找出四边形网格上的长边,长边由依次相连的多条边组成,长 边的首末端点为奇异顶点或网格边界上的正则顶点;得到长边后,取出组成长边的每条边 上的采样点,将它们合在一起,拟合出一条长曲线,该曲线插值长边上的顶点,逼近每条边 上的采样点;再将长曲线在顶点处打断,得到每条边上对应的边界曲线,使边界曲线在正则 顶点处C 2连续,奇异顶点处G°连续; 2) 对每个四边形区域,由边界曲线和内部数据点拟合生成B样条曲面; 3) 在正则顶点处进行C2相容性调整,再进行奇异顶点处G1相容性调整,过程如下: 3. 1)正则顶点处的C2相容性调整按下述方法进行: 计算与正则顶点P相连的4个曲面{Si, i = 1,...,4}在P处的混合偏导
对它们 进行平均,将平均后的混合偏导作为曲面在P点处的新的混合偏导,并调整曲面相应的控 制顶点,则曲面在P点处有公共的2至4阶混合偏导,在P点处C2相容; 3. 2)奇异顶点处G1相容性调整按下述方法进行: 记与奇异顶点P相连的曲面片为{Si (Ui, Vi),i = 1,· · ·,η},边界曲线为{Ci, i = 1,. . .,η};要使G1连续的曲面片{Si (Ui,Vi),i = 1,. . .,η}在顶点P处扭矢相容,要求边界 曲线{CJ在顶点P处达到G2连续;在顶点P点处构造一张C 2连续的基曲面S,其中S在P 点的一阶、二阶导数分别为Su、Sv、S uu、Suv、Svv ;边界曲线ΙΑ,i = 1,. . .,η}在Ρ点处G2连 续,则Ρ点处新的切矢7Γ和曲率矢< 满足下述关系式:
其中ai,β。入^ Yi为常数,将曲面片= 1,...,η}在Ρ点处的扭矢 取为
则以(Ui,Vi),i = 1,…,η}在P点处G1相容; 首先在Ρ点处求出一个公共切平面11,将1\投影到Π,得到新的切矢If;然后用最小二 乘法求出曲率矢 <和扭矢r/在法向N上的投影<ΛΓ> ? <if,JV > ,调整后的曲率矢 和扭矢E为
求得新的曲率矢! = 1,...,ri丨和扭矢= 1,....?丨后,调整曲面片的相应控制顶点,使 {Si,i = 1,. . .,η}在顶点P处G2连续并且G1相容; 4) 正则边界上进行C2连续调整 计算与正则边Ci(v)相连的两曲面Sg、Si的一阶、二阶跨界导矢曲线狄(v>、 DD,. i v)、D/ (r)、Di)/ (v),对它们进行平均,得到新的跨界导矢曲线、DO,. #(v)、 β厂(v}、DD广(ν):
再根据新的跨界导矢曲线调整曲面靠近边界Q (v)的第二、第三排控制顶点,使 SH、Si在边界C?上C2连续; 5) 非正则边界上进行近似G1连续调整 首先计算两曲面在公共边界上内部节点处的一阶跨界导矢..... ?Ι);?νΑ-:α· = 4.…根据切平面矫正调整这些跨界导矢,然后求出新的跨界导矢曲线 4(1..'卜 ,使舄 W、?,:(ν)插值.界= 4,...,n丨、{1>Πν?),Α =4,...,n} ?且满足如下端点条 件:
接着由新的跨界导矢曲线调整两个曲面靠近公共边界的第二排控制顶点,检查两曲面 在公共边界上法矢的夹角,在夹角大于给定的误差允许值的地方插入节点,重新计算跨界 导矢曲线;整个过程迭代进行,直到各个节点区间的法矢夹角都小于给定的误差允许值或 插入的节点数量达到一个上限值。
2. 如权利要求1所述的任意四边形网格上光滑曲面的重建方法,其特征在于:所述步 骤2)中,给定四边形区域的四条边界曲线及内部数据点集,通过最小二乘拟合重构一张双 三次B样条曲面,重构曲面插值四条边界曲线,逼近内部点。
3. 如权利要求2所述的任意四边形网格上光滑曲面的重建方法,其特征在于:所述步 骤2)中,首先由4条边界曲线创建一张双线性Coons曲面,然后将散乱点P k投影到该基曲 面计算得到点Pk的参数值(uk,vk);曲面S(u,v)边界上的控制顶点由4条边界曲线的控制 顶点确定,内部的控制顶点通过最小二乘拟合如下的目标函数F得到, F = Fls(1+X Ffai,,其中Flsq为最小二乘项,Ffai,为光顺项,λ为光顺项系数。
4. 如权利要求1?3之一所述的任意四边形网格上光滑曲面的重建方法,其特征在于: 所述步骤5)的具体步骤如下: StepO:设定初始值:两个曲面在公共边界上法矢夹角Θ的最大误差为θ_,在公共边 界上允许插入的最大节点个数为Nmax,当前插入的节点个数NinsOTte;d = 0,边界曲线初始的节 点向量为 V = {〇, 〇, 〇, 〇, v4, v5, · · ·,vn,1,1,1,1}; Stepl:在节点{vk, k = 4, · · ·,η}处,计算曲线 Q (v)的切矢{C' i (vk), k = 4, · · ·,η}, S^Si 沿着边界(:? 的跨界导矢巩也―),/f =4,...,?丨、= ; S^Si 在点 Ci(vk) 处的法矢、
St印2:矫正采样点Ci(vk)处的跨界导矢,使C' JvkhAh)、β/(ν*)共面,满足G1连 续条件,首先确定两个曲面在点Ci(vk)处的公共法向
矫正后的跨界导矢〇/(4)#为
Step3:以当前边界曲线(;卜)的节点向量V作为跨界导矢曲线的节点向量,拟合新 的跨界导矢曲线5使D?插值Ο
且 St印4:根据矫正后的跨界导矢曲线巧>)、D,>·)调整S^Si靠近边界(:?的第二 排控制顶点; Step5:经过上述调整,在节点{vk, k = 3, · · · , n+1}处已经达到G1连续,在每个 节点区间[vk, vk+1] (k = 3,. . .,η)内再取m个采样点
计算Sg、Si在节点{vk,』,k = 3,. . .,n, j = 1,. . .,m}处的跨界导矢 -W(vi-._/)丨、^(ν?:.7))+,法矢彳-U、?·υ+;求出两个法向的夹角{Q k,j}; Step6:找出每个区间内夹角最大处的节点值{vk,」,k = 3,. . .,n, j = pk},如 果该处的夹角大于θ_,则将^義加入到待插入的节点集合,记待插入节点集合为
St印7:如果F、0,将节点<(/ = 0,...,.、')+分别插入到曲线C?及曲 面Sg、Si中去,得到新的节点向量V = V U V%计算当前已插入的节点 数Ninserted = Ninserted+S+1 ;矫正{vp = 0,...,4处的跨界导矢,得到新的跨界导矢 IT%叫、'丨、Ο, = !0/(<),/二0,...,.、1 ,新的待拟合的跨界导矢集合为D_ = D_ U D_*、D+ = D+ U D+* ; Step8:重复 Step3 - Step7,直到 K = 0 或者 Ninserted > Nmax,算法结束。
【文档编号】G06T17/30GK104157013SQ201410383403
【公开日】2014年11月19日 申请日期:2014年8月6日 优先权日:2014年8月6日
【发明者】叶修梓, 蒋跃华, 陈志杨 申请人:杭州新迪数字工程系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1