一种插值型细分和逼近型细分相融合的曲面造型方法

文档序号:6458854阅读:289来源:国知局
专利名称:一种插值型细分和逼近型细分相融合的曲面造型方法
技术领域
本发明涉及计算机辅助设计与制造技术领域,确切地说,涉及一种插值型细分和逼近型细分相融合的曲面造型方法。

背景技术
曲面造型是CAD和计算机图形学中最活跃、最关键的学科分支之一,是CAD系统的一个重要组成部分,也是CAGD中的一项重要研究内容,主要研究在计算机图象系统的环境下对曲面的表示、设计、显示和分析。很显然,用计算机对一个物体的模型进行分析或模拟比对一个实际物体进行测量或处理要容易得多。CAD/CAM、计算机图形学、计算机艺术、动画片、模拟仿真、计算机视觉、机器人等领域都把曲线曲面造型作为基础。三维形体的几何表示处处都要用到它,从飞机、汽车、船舶、叶轮的流体动力学分析,家用电器、轻工产品的工业造型设计、服装、皮鞋的三维打样和款式设计,山脉、水浪、云彩的自然景物模拟,地形、地貌、矿藏、石油分布的地理资源描述,人体外貌和内部器官的CT扫描数据三维重构,科学计算中的应力、应变、温度场、速度场的直观显示等等,无不需要强有力的曲面造型工具。近二十年来,随着三维数据采样设备的长足进步与复杂拓扑结构的曲面造型日益普及,细分方法已成为近些年曲面造型领域最活跃的研究热点之一。新的细分模式不断涌现,细分技术被广泛应用于计算机图形学、三维模型的多分辨率表示、计算机动画、数字几何处理等方面。
据实际的应用划分,可将细分分成两类,一类是插值型细分,一类是逼近型细分。各有优点,插值型细分的约束更多,要求生成的细分网格必须通过给定的控制网格。逼近型细分生成的细分网格位于初始控制网格的凸包内,便于求交等网格操作,并且逼近型细分比插值型细分更容易得到光滑度高的网格。
实现细分插值曲面无外乎两种方法一种是利用已有模式通过构造适当的初始控制网格使极限曲线曲面满足插值条件,另一种则是构造新的模式或修改已有模式的几何规则使极限曲面经过初始控制网格的顶点。
第一种方法的实质是反求控制顶点,因而避免不了要求解方程。
第二类方法,通过构造新的模式或修改已有模式的几何规则使极限曲面经过初始控制网格顶点方法直接快捷,无须像第一类方法那样需要求解复杂的方程组,然而它与逼近细分采用各自的细分模式。
现实中,我们经常需要生成的网格通过某些特定点,也就是局部插值。因此局部插值也是一个重要的应用要求。第一类方法可以实现局部插值,然而以四点法为代表的第二类插值细分方法无法实现局部插值。因此现存的通过修改细分规则来实现局部插值的方法,都另外寻找别的修改细分的规则来实现。现存的通过修改细分规则的来实现局部插值的方法可以分成三类(1)截断在插值的细分中,在某个插值点处截断,从而达到端点插值的目的;(2)细分规则的修改在约束处修改细分规则;(3)迭代后修改每一步迭代按正常细分方法计算出点后再修改为所需的点。上述方法均是针对局部插值来独立处理,一方面方法不够简洁方便,另一方面又给细分方法的统一带来新的困难。
如今细分技术也被广泛应用于三维模型的多分辨率表示、计算机动画、数字几何处理。细分曲面与多分辨率分析(Multiresolution Analysis)之间有着密切的联系。在细分方法做多分辨率分析的时候,若细分方法的网格面增长太快,在最大网格面数固定的限制下,不同分辨率的层数相对较少,相邻层之间过渡会产生较明显的跳跃。
近些年很多研究都致力于融合各种细分方法,有三角网格四边网格细分的融合,有点分裂型细分面分裂型细分的融合等等,然而仍然没有一种统一的形式来表示插值型细分和逼近型细分的融合。
为解决上述问题,本发明找到了现存的插值型细分和逼近型细分的内在联系,提供了一种逼近型细分模式与插值型细分模式的统一和融合的方法。
目前最常用的逼近型细分模式是Utah大学的Catmull和Clark于1978年提出的Catmull-Clark模式,规则网格处是张量积B样条的离散形式。插值细分中最常用的是基于四点插值模式的曲面形式。因而要融合和统一插值逼近细分模式,最重要的内容是融合这两种最常用的逼近和插值细分模式。


发明内容
本发明的目的在于提高现有技术的实现效果,提出一种插值型细分和逼近型细分相融合的曲面造型方法,本发明基于现存的插值型细分和逼近型细分的内在联系,提供了一种逼近的Catmull-Clark细分模式与基于张量积四点插值的插值模式相统一和融合的方法。
本发明所述的逼近的Catmull-Clark细分模式和基于张量积四点插值的插值模式相统一和融合的方法步骤描述如下 (1)由现有的逼近型Catmull-Clark细分模式推导出新的插值型细分模式 给定初始控制网格Pi,j0,对于网格上的每个面,Pi,j2是每个面的中点,Pi,j1是每条边的中点。
在介绍法则之前,我们先引入以下标识 令e为网格上任意一条边,那么q10(e)和q20(e)是这条边的两个端点。
令e为网格上任意一条边,那么q12(e)和q22(e)是这条边相邻两个面的两个中点。
令f为网格上的任意一个面,那么B0(f)是这个面的所有端点的集合。
令p为网格上的任意一个顶点,那么B2(p)是顶点p相邻的所有面的中点的集合。
令p为网格上的任意一个顶点,那么V0(p)是所有与p共边的顶点的集合。
令f为网格上任意一个面,那么V2(f)是所有与f有公共边的面的中点的集合。
令p为网格上的任意一个顶点,那么D0(p)是p相邻面上的所有顶点的集合。
令f为网格上任意一个面,那么D2(f)={B2(p1),B2(p2),...,B2(pn)},这里fi∈B0(f),i=1,2,...,n。
令e为网格上任意一条边,那么C10(e),C20(e)分别是e相邻的两个面上的所有顶点的集合。
令 若S是一个集合,那么S#表示这个集合里面的元素个数。
令Δi,jq为网格上顶点Pi,jq在每一步细分中的位移,做Catmull-Clark细分的时候取q=0,做插值细分的时候取q=2。
根据上述定义的标识,我们把Catmull-Clark细分的规则写成如下形式 a)在网格的每条边上添加一个新顶点p,对于非边界边,p的位置由如下公式得到 b)在网格的每个面中添加一个新顶点p,p的几何位置是该面的中点 对于每个非边界的旧顶点,改变它的几何位置 c)对于每个边界边,添加一个新的顶点p,p的几何位置是该边的中点。
对于每个边界旧顶点Pi,j0,将其移动到新的几何位置 d)在网格的每一条边上添加一个新的顶点p,对于非边界边e,p的位置可由以下公式计算而来 e)在每个面的中点,添加一个顶点,其几何位置由以下公式计算得到 n=V0(p)#,s=B0(f)# f)对于每条边界边,添加一个新顶点p,其几何位置由以下公式计算得到 g)将面上的新点与相应的边上的新点连接起来生成新的边,由这些新的边构成新的面。
(2)通过添加顶点权重参数,实现Catmull-Clark细分模式和新的插值型细分模式的融合 给定初始控制顶点Pi,j0和它们的权重α(Pi,j0),混合网格的细分规则表述如下 在网格的每一条边上添加一个顶点p。对于非边界边e,点p的位置和其参数权重α(p)可由以下公式计算得到 在网格的每一个面上添加一个顶点p。顶点p及其参数权重α(p)可由以下公式计算得到 n=V0(p)#,s=B0(f)# 对于每个非边界旧顶点Pi,j0,修改它的几何位置如下 n=V0(p)# 对于每个边界旧顶点Pi,j0,修改它的几何位置如下 对于每个边界边,添加一个新顶点p (3)通过修改顶点权重参数,实现网格的局部插值 每个初始控制网格最初的参数权重α(Pi,j0)由用户给出。
当时,它是Catmull-Clark细分模式;当时,它是前面所述的新的插值细分模式;当顶点的参数权重α(p)=0时,细分网格插值控制顶点p,实现了网格的局部插值。
(4)通过修改顶点权重参数,生成介于插值网格和逼近网格之间的细分网格 当a∈(0,1)时,极限网格与初始网格之间的收缩或者扩张现象小于逼近细分模式或者插值细分模式,即生成了介于插值网格和逼近网格之间的细分网格。
本发明的技术特点主要体现如下 1、本发明所述的由Catmull-Clark推导得到新的插值细分模式是基于张量积四点插值的插值细分模式,该细分模式可以处理任意多边形网格,并且极限曲面处处C1连续,该新的插值细分模式解决了Kobbelt的张量积四点插值模式存在的问题; 2、本发明所述的通过添加插值逼近参数生成的融合细分模式可以在同一张曲面上实现Catmull-Clark与新的插值细分模式共存,实现了不需要反求控制顶点或解方程组就能得到局部插值细分网格,所述的融合细分模式也可以生成介于插值网格和逼近网格之间的细分网格,从而解决了多分辨率表示的时候存在的“扩张”或者“收缩”的跳跃问题。



图1是本发明的插值型细分和逼近型细分相融合的曲面造型方法基本流程图; 图2是本发明实施例所支持的Catmull-Clark细分的面具; 图3是本发明实施例所支持的由Catmull-Clark细分模式直接推导出的新的插值细分的面具; 图4是本发明实施例所支持的通过参数α控制逼近到插值渐进的实现例子; 图5是本发明实施例所支持的对比例子; 图6是本发明实施例所支持的局部插值的例子。

具体实施例方式 下面结合附图本发明进行进一步阐述。
本发明的基于现存的插值型细分和逼近型细分的内在联系提供的逼近的Catmull-Clark细分模式和基于张量积四点插值的插值模式相统一和融合的方法的基本构造流程如附图1所示,现在根据具体的例子来说明一下本发明的具体实施方式

1)由Catmull-Clark细分推导得到基于张量积四点插值新的插值细分模式 给定初始控制网格Pi,j0,对于网格上的每个面,Pi,j2是每个面的中点,Pi,j1是每条边的中点。
在介绍法则之前,我们先引入以下标识 令e为网格上任意一条边,那么q10(e)和q20(e)是这条边的两个端点。
令e为网格上任意一条边,那么q12(e)和q22(e)是这条边相邻两个面的两个中点。
令f为网格上的任意一个面,那么B0(f)是这个面的所有端点的集合。
令p为网格上的任意一个顶点,那么B2(p)是顶点p相邻的所有面的中点的集合。
令p为网格上的任意一个顶点,那么V0(p)是所有与p共边的顶点的集合。
令f为网格上任意一个面,那么V2(f)是所有与f有公共边的面的中点的集合。
令p为网格上的任意一个顶点,那么D0(p)是p相邻面上的所有顶点的集合。
令f为网格上任意一个面,那么D2(f)={B2(p1),B2(p2),...,B2(pn)},这里fi∈B0(f),i=1,2,...,n。
令e为网格上任意一条边,那么C10(e),C20(e)分别是e相邻的两个面上的所有顶点的集合。
令 若S是一个集合,那么S#表示这个集合里面的元素个数。
令Δi,jq为网格上顶点Pi,jq在每一步细分中的位移,做Catmull-Clark细分的时候取q=0,做插值细分的时候取q=2。
根据上述定义的标识,我们把Catmull-Clark细分的规则写成如下形式 在网格的每条边上添加一个新顶点p,对于非边界边,p的位置由如下公式得到 在网格的每个面中添加一个新顶点p,p的几何位置是该面的中点 对于每个非边界的旧顶点,改变它的几何位置 对于每个边界边,添加一个新的顶点p,p的几何位置是该边的中点。
对于每个边界旧顶点Pi,j0,将其移动到新的几何位置 在网格的每一条边上添加一个新的顶点p。对于非边界边e,p的位置可由以下公式计算而来 在每个面的中点,添加一个顶点,其几何位置由以下公式计算得到 n=V0(p)#,s=B0(f)# 对于每条边界边,添加一个新顶点p,其几何位置由以下公式计算得到 其拓扑变化规则与Catmull-Clark细分模式完全一样。将面上的新点与相应的边上的新点连接起来生成新的边,由这些新边构成新的面。图2是Catmull-Clark细分模式,图3就是对应的新的插值细分的细分模式。
新的插值细分模式是基于张量积四点插值的插值模式,此新的插值网格生成的极限细分是处处C1连续的。
2)通过添加一个参数来控制细分网格与控制网格的接近程度,实现逼近的Catmull-Clark细分模式和新的基于张量积四点插值的插值模式的统一和融合 给定初始控制顶点Pi,j0和它们的权重α(Pi,j0),混合网格的细分规则表述如下 在网格的每一条边上添加一个顶点p。
对于非边界边e,点p的位置和其参数权重α(p)可由以下公式计算得到 在网格的每一个面上添加一个顶点p。
顶点p及其参数权重α(p)可由以下公式计算得到 n=V0(p)#,s=B0(f)# 对于每个非边界旧顶点Pi,j0,修改它的几何位置如下 n=V0(p)# 对于每个边界旧顶点Pi,j0,修改它的几何位置如下 对于每个边界边,添加一个新顶点p 每个初始控制网格最初的参数权重α(Pi,j0)由用户给出,令它就是Catmull-Clark细分模式;令它就是前面所述的新的插值细分模式。
(3)修改一个参数值,实现网格的局部插值 修改顶点的参数权重,使得α(p)=0,这时细分网格插值控制顶点p,实现了网格的局部插值。
(4)继续修改一个参数值,生成介于插值网格和逼近网格之间的细分网格 当a∈(0,1)时,极限网格与初始网格之间的收缩或者扩张现象小于逼近细分模式或者插值细分模式,这就生成了介于插值网格和逼近网格之间的细分网格,也解决了多分辨率分解时不同层次之间转变时候产生的“跳跃问题”。
图4中第一行从左到右分别是初始控制网格,和第二行从右到左分别是和这里我们描述了使用混合细分网格通过控制参数α实现从插值到逼近过渡的例子当α(Pi,j0)取不同值的时候,得到的是不同形状和特征的网格,当混合细分生成Catmull-Clark细分模式;当混合细分生成前面介绍的新的插值细分模式;当a∈(0,1)时,生成的模型与初始控制网格相比的“扩张”或者“收缩”现象比插值或者逼近网格小。这就解决了多分辨率分解时产生的“跳跃问题”。
在图5中,从左到右,第一个是初始控制网格,第二个是插值细分得到的网格,第三个是第一步细分的时候取其他细分步骤的时候取所得到的网格,第四个是逼近细分所得的网格。这里我们展示了在第一步细分的时候取余下的细分步骤中取的细分例子,由此生成的网格形状更接近于初始控制网格,而极限网格则可以达到C2连续,这就结合了插值细分和逼近细分的优点。
在实际的建模型中,经常需要设计一些曲面使得它能通过某些指定的初始控制网格,使用混合细分模式很容易实现这种局部插值,让需要被插值的这些初始控制网格顶点的参数权重α(Pi,j0)的值取0,其他的取1即可,例子的效果图如图6所示。
权利要求
1、一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于它的步骤包括
(1)由现有的逼近型Catmull-Clark细分模式推导出新的插值型细分模式;
(2)通过添加顶点权重参数,实现Catmull-Clark细分模式和新的插值型细分模式的融合;
(3)通过修改顶点权重参数,实现网格的局部插值;
(4)通过修改顶点权重参数,生成介于插值网格和逼近网格之间的细分网格。
2、根据权利要求1所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的步骤(1)由现有的逼近型Catmull-Clark细分模式推导出新的插值型细分模式又分为以下步骤
a)给定初始控制网格Pi,j0,对于网格上的每个面,Pi,J2是每个面的中点,Pi,j1是每条边的中点;
b)在网格的每条边上添加一个新顶点p,对于非边界边,p的位置由如下公式得到
c)在网格的每个面中添加一个新顶点p,p的几何位置是该面的中点
对于每个非边界的旧顶点,改变它的几何位置
d)对于每个边界边,添加一个新的顶点p,p的几何位置是该边的中点
对于每个边界旧顶点Pi,j0,将其移动到新的几何位置
e)在网格的每一条边上添加一个新的顶点p。对于非边界边e,p的位置可由以下公式计算而来
f)在每个面的中点,添加一个顶点,其几何位置由以下公式计算得到
n=V0(p)#,s=B0(f)#
g)对于每条边界边,添加一个新顶点p,其几何位置由以下公式计算得到
h)将面上的新点与相应的边上的新点连接起来生成新的边,由这些新的边构成新的面。
3、根据权利要求1所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的由现有的逼近型Catmull-Clark细分模式推导出新的插值型细分模式是基于张量积四点插值的插值模式,此新的插值网格生成的极限细分是处处C1连续的。
4、根据权利要求1所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的由现有的逼近型Catmull-Clark细分模式推导出新的插值型细分模式,其拓扑变化规则与Catmull-Clark细分模式完全一样。
5、根据权利要求1所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的步骤(2)通过添加顶点权重参数,实现Catmull-Clark细分模式和新的插值型细分模式的融合,其细分规则表示如下
a)给定初始控制顶点Pi,j0和它们的权重α(Pi,j0);
b)在网格的每一条边上添加一个顶点p,对于非边界边e,点p的位置和其参数权重α(p)可由以下公式计算得到
c)在网格的每一个面上添加一个顶点p。顶点p及其参数权重α(p)可由以下公式计算得到
n=V0(p)#s=B0(f)#
d)对于每个非边界旧顶点Pi,j0,修改它的几何位置如下
n=V0(p)#
e)对于每个边界旧顶点Pi,j0,修改它的几何位置如下
对于每个边界边,添加一个新顶点p
6、根据权利要求1所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的步骤(3)和步骤(4)中所修改的参数为步骤(2)中所添加的参数。
7、根据权利要求4所述的一种插值型细分和逼近型细分相融合的曲面造型方法,其特征在于所述的每个初始控制网格最初的参数权重由用户给出。
全文摘要
本发明公开了一种插值型细分和逼近型细分相融合的曲面造型方法,它属于计算机辅助设计与制造技术领域。它基于现存的插值型细分和逼近型细分的内在联系,提供了逼近的Catmull-Clark细分模式与基于张量积四点插值的插值模式相融合的方法,从而实现不需要反求控制顶点或解方程组就能得到局部插值细分曲线和细分网格以及生成介于插值网格和逼近网格之间的细分网格的目的,解决了多分辨率表示的时候存在的“扩张”或者“收缩”的跳跃问题。
文档编号G06T17/40GK101408991SQ20081002803
公开日2009年4月15日 申请日期2008年5月12日 优先权日2008年5月12日
发明者罗笑南, 林淑金, 陈巧珍 申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1