一种基于高阶三角形插值曲面细分的几何数据细分方法

文档序号:6561456阅读:220来源:国知局
专利名称:一种基于高阶三角形插值曲面细分的几何数据细分方法
技术领域
本发明属于几何体造型技术领域,特别是涉及一种基于三角形插值曲面细分的几何数据细分方法。
背景技术
细分方法是一个从离散到离散的过程,从初始多面体或多边形网格出发,递归地调用细分规则加密控制网格,最终在极限意义下,网格序列收敛到连续甚至光滑曲线、曲面,具有许多参数方法和隐式方法表示的优点,适合计算机的离散表示。1990年,Dyn等人在论文“A butterflysubdivision scheme for surface interpolatory with tension control.ACMTransactions on Graphics.9(1990)160-169”中把曲线的插值方法推广到了曲面,形成了曲面插值细分方法,开创了曲面插值细分的先河。
近年来使用细分方法迭代构造三维几何实体作为一个新的研究方向,在理论和应用中逐渐得到了重视和发展,成为一种新的体造型的手段。曲面细分方法目的在于建立了一种基于离散数据迭代细化的方法快速建立三维数据体的技术,表现出了很多新的特性和优点。其中,三角形拓扑网格是形成三维几何形体和进行有限元等计算中常用的三维形体表示的拓扑结构。
目前与基于曲面细分方法的几何造型方法相关的技术方案有1996年,D.Zorin,P. Schrder,W.Sweldens在论文“Interpolating Subdivision forMeshes with Arbitrary Topology.SIGGRAPH 96 Proceedings(1996)189-192”中提出在三角形拓扑网格上的插值型曲面细分方法。这是当今最为流行的曲面插值细分方法,但是该细分方法生成的曲面只能达到C1连续,曲面的光顺性难免不足,为了克服这个缺点,本发明提供了一种在正则情形下能达到C2连续,在奇异点C1连续的插值细分曲面,提高了细分曲面的光滑效果。同时本细分曲面在一次细分时把一个三角形分裂为9个,1996年Zorin提出的方法在一次细分时只把一个三角形分裂为4个,因而本细分方法在生成相同复杂度的模型时具有更高的速度优势。

发明内容
本发明的目的在于克服现有技术的不足,提供一种能生成更光滑曲面,而且速度更快的基于三角形插值曲面细分的几何数据细分方法。
为了实现发明目的,采用的技术方案为一种基于高阶三角形插值曲面细分的几何数据细分方法的主要步骤包括1)利用拓扑规则将三角形的拓扑网格进行分裂,以增加新顶点并形成新的网格拓扑;2)利用几何规则计算所有顶点的几何位置;3)循环迭代上述步骤1、2至满足循环停止条件。
所述拓扑规则为(1)在拓扑网格的每一个三角形中,对于三角形的三条边,各产生2个新的边点。原三角形每条边应包含两个顶点,这里称为A、B,现于每条边都生成了2个新的边点C、D,我们定义D到A的距离不比C到A的距离大。分别连接边点A与C,C与D,D与B,新生成3条边AC、CD、DB,用新生成的3条边AC、CD、DB代替原有边AB。对于每个三角形,除了在每条边各生成2个新边点外,还在每个三角形中生成一个面点。根据面点和三角形3条边共9个边点的位置,把一个三角形分裂成9个新三角形。
(2)原有的拓扑网格顶点保持不变。
所述几何规则包括不规则三角形几何规则和规则三角形几何规则。
所述不规则三角形几何规则具体如下,该几何规则涉及到2个不同边点和1个面点(I)边点1以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么边点1的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法w0=89w1=4+n9nwk=49ncos2πkn,(k=2,3,···,n)]]>(II)边点2以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么边点2的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法w0=59w1=4+4n9nwk=49ncos2πkn,(k=2,3,···,n)]]>(III)面点以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么面点的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法当与不规则顶点P0邻接的顶点有且只有3个时候,w0=23,w1=518,w2=518,w3=-29.]]>当与不规则顶点P0邻接的顶点有且只有4个时候,w0=23,w1=15+3372,w2=15+3372,w3=3+3372,w4=3+3372.]]>当与不规则顶点P0邻接的顶点多于4个时候,
其中 (IV)原顶点位置保持不变。
所述规则三角形几何规则,具体如下,该几何规则涉及到1个边点和1个面点(I)边点每条边都包含两个顶点,取出所有与该两个顶点相邻接的所有顶点,在规则情况下,这些邻接的顶点为8个,加上边的原有的2个顶点,共有10个顶点,把它们标记为P1、P2、P3、...、P10。其中P1、P2为边的两个顶点,P3、P4为与P1、P2都相邻的两个顶点,P9为与P1相邻,但是不与P3、P4相邻的顶点,P10为与P2相邻,但是不与P3、P4相邻的顶点,P5、P6为与P1相邻但不与P2相邻的顶点,P7、P8为与P2相邻但不与P1相邻的顶点。那么边点的计算方法为q=αP1+βP2+γP3+γP4+δP5+δP6+ξP7+ξP8+εP9+νP10,其中α=136(24+2411),β=136(12-2411),γ=136(4),δ=136(-2-611),]]>ξ=136(-2+611),ϵ=0,v=0.]]>(II)面点每个三角形包含3个顶点,取出所有包含这三个顶点至少其中一个的三角形,这样的三角形一共有13个,这13三角形中一共有12个不同的顶点。标记面点所在三角形的三个顶点为P1,P2,P3,同时与P1、P2相邻的顶点为P4,同时与P2、P3相邻的顶点为P5,同时与P1、P3相邻的顶点为P6,其余顶点为P7、P8、P9、P10、P11、P12。那么面点的计算方法为q=136(14+611)(P1+P2+P3)+136(-1211)(P4+P5+P6)+136(-1+311)Σj=712Pj]]>(III)顶点保持不变。
上述规则三角形几何规则所涉及的拓扑意义上的规则三角形的几何约束为(1)所有的拓扑网格都很好连接在一起,也就是说没有孤立点或者孤立边,每一个点都在边上,每一条边都在面上;(2)每一个面元素都是封闭体,由边包围而成,也就是说三角形包围的面不会形成漏缝或者洞,面不会相交和自相交;(3)每条边都为2个三角形所共享。
(4)对于规则三角形拓扑网格,一个点仅与6条边相连。
所述循环停止条件为三角形已经达到设定的足够的计算精度或显示精度、或三角形的最长的一条边的长度小于设定的值、或三角形最大的元素小于设定的参数值、或三角形的数量大于设定的参数值。
本发明方案定义的是在三角形拓扑结构实体上的细分规则,在面上要求有分布较均匀的拓扑网格点,这些网格点将被插值,并进一步细分,逐渐形成稠密的体数据点集。
其优越性如下(1)对于三角形的三维网格数据,可以通过本发明,经过迭代计算生成稠密的连续面数据;(2)插值型方法所生成的图形经过其初始的控制顶点,当需要进行几何形体变形时,可以直接操纵控制顶点,进行交互式的操作,易于构造任意形状的三维几何形体。
(3)本方法能够生成更加光滑的曲面。一般的方法只能生成C1连续的细分曲面,而本方法能够生成正则区域C2连续、奇异点C1连续的曲面。
(4)本方法的生成曲面速度更快。一般的方法在每次细分时,只把一个三角形分裂成4个新的三角形,而本方法每次细分时,把一个三角形分裂成9个新的三角形,因而能更快地形成密集网格。


图1为基于高阶三角形插值曲面细分的几何数据细分方法流程图;图2为三角形面片分裂示意图;图3为规则三角形边点细分规则示意图;图4为不规则三角形边点细分规则示意图;图5为基于高阶三角形插值曲面细分效果图。
具体实施例方式
下面结合附图对本发明做进一步的说明。
如图1所示为基于高阶三角形插值曲面细分的几何数据细分方法流程图,首先利用拓扑规则将三角形的拓扑网格进行分裂,以增加新顶点并形成新的网格拓扑,接着利用几何规则计算所有顶点的几何位置;最后循环迭代上述步骤至满足循环停止条件。
具体过程如下一、利用拓扑规则将三角形的拓扑网格进行分裂,以增加新顶点并形成新的网格拓扑本发明对规则三角形的细分过程如附图2所示,先对该三角形的拓扑网格进行分裂,附图2左图为原三角形,右图为分裂后三角形,具体如下1)三角形的3条边上,各生成2个边点。
2)在每个三角形中,各生成1个面点。
3)分别连接新生成的边点和面点。
4)按照附图2右图的规则连接新生成的边点与三角形原有的顶点。
5)从几何数据中删除三角形原有的3条边,用附图2右图中的18条边取代。
6)从几何数据中删除原有三角形,用附图2右图中的9个三角形取而代之。
二、利用几何规则计算所有顶点的几何位置对网格中的所有三角形进行分裂后,通过几何规则计算点的位置,具体如下(1)若三角形为规则三角形,即三角形3个顶点都为规则顶点,与三角形3个顶点相连接的边的数目均为6,那么按照图3(b)给出的掩膜,从三角形网格数据中取出相对应的点,按照以下方法计算新插入边点的位置q=αP1+βP2+γP3+γP4+δP5+δP6+ξP7+ξP8+εP9+νP10,其中α=136(24+2411),β=136(12-2411),γ=136(4),δ=136(-2-611),]]>ξ=136(-2+611),ϵ=0,v=0.]]>按照图3(a)给出的掩膜,从三角形网格数据中取出相对应的点,按照以下方法计算新插入面点的位置q=136(14+611)(P1+P2+P3)+136(-1211)(P4+P5+P6)+136(-1+311)Σj=712Pj]]>(2)若三角形为非规则三角形,即三角形3个顶点中,至少有一个顶点满足此条件与该顶点相邻接的边的数目不为6。对于边点的生成,取出连接的边数目不为6的顶点P0,然后再取出所有与该顶点相连接的顶点,把相连接的顶点按照逆时针或者顺时针顺序排放好,以边点所在的顶点为P1,其余点按排放顺序编号为P2、P3、P4、....,假设共有n个顶点,那么新插入的2个边点和面点的位置应该用如下方法确定q=w0p0k+Σi=1nwipik,]]>其中Wi为与Pi对应的权重。
对于边点1,如图4(a),其权重的计算方法为w0=89w1=4+n9nwk=49ncos2πkn,(k=2,3,···,n),]]>对于边点2,如图4(b),其权重的计算方法为
w0=59w1=4+4n9nwk=49ncos2πkn,(k=2,3,···,n)]]>对于面点,如图4(c),其权重的计算方法为当与不规则顶点V0邻接的顶点有且只有3个时候,w0=23,w1=518,w2=518,w3=-29.]]>当与不规则顶点V0邻接的顶点有且只有4个时候,w0=23,w1=15+3372,w2=15+3372,w3=3+3372,w4=3+3372.]]>当与不规则顶点V0邻接的顶点多于4个时候, 其中 (3)计算顶点,原顶点位置在细分过程中保持不变。
三、循环迭代上述步骤一、二至满足循环停止条件循环停止条件为三角形已经达到设定的足够的计算精度或显示精度、或三角形的最长的一条边的长度小于设定的值、或三角形最大的元素小于设定的参数值、或三角形的数量大于设定的参数值。
如图5所示为基于高阶三角形插值曲面细分效果图,通过以上的三角形插值曲面细分算法,一个三角形将被分成9个小的三角形,在曲面细分循环迭代计算中,可能的循环停止条件如下已经达到足够的计算精度或显示精度;最长的一条边的长度小于某个预先给定的值;或者最大的面元素都小于某个参数值;面元素的数量大于某个参数值。
实验表明,一般进行2-3次曲面细分就能够得到较稠密的体数据,满足应用要求。
本发明在三角形拓扑结构实体上的细分规则,,网格中的点将被插值,并进一步细分,逐渐形成稠密的体数据点集。
权利要求
1.一种基于高阶三角形插值曲面细分的几何数据细分方法,它主要步骤包括1)利用拓扑规则将三角形的拓扑网格进行分裂,以增加新顶点并形成新的网格拓扑;2)利用几何规则计算所有顶点的几何位置;3)循环迭代上述步骤1、2至满足循环停止条件。
2.根据权利要求1所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述步骤1)的拓扑规则为a)在拓扑网格的每一个三角形中,对于三角形的三条边,各产生2个新的边点,还在每个三角形中生成一个面点,根据面点和三角形3条边共9个边点的位置,把一个三角形分裂成9个新三角形;b)原有的拓扑网格顶点保持不变。
3.根据权利要求1所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述步骤2)的几何规则包括不规则三角形几何规则和规则三角形几何规则。
4.根据权利要求3所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述不规则三角形几何规则涉及到2个不同边点和1个面点,具体如下(I)边点1以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么边点1的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法w0=89w1=4+n9nwk=49ncos2πkn,(k=2,3,...,n)]]>(II)边点2以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么边点2的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法w0=59w1=4+4n9nwk=49ncos2πkn,(k=2,3,...,n)]]>(III)面点以不规则顶点P0为中心,得到所有与不规则顶点相连接的顶点构成一个顶点环,P1、P2、P3、...、Pn为顶点环上顺时针或逆时针排放的所有顶点,其中W1、W2、W3、...、Wn为与顶点对应的权重,那么面点的计算方法为q=w0p0k+Σi=1nwipik]]>权重的计算法方法当与不规则顶点P0邻接的顶点有且只有3个时候,w0=23,]]>w1=518,]]>w2=518,]]>w3=-29;]]>当与不规则顶点P0邻接的顶点有且只有4个时候,w0=23,]]>w1=15+3372,]]>w2=15+3372,]]>w3=-3+3372,]]>w4=-3+3372;]]>当与不规则顶点P0邻接的顶点多于4个时候, 其中(IV)原顶点位置保持不变。
5.根据权利要求3所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述规则三角形几何规则涉及到1个边点和1个面点,具体如下(I)边点每条边都包含两个顶点,取出所有与该两个顶点相邻接的所有顶点,在规则情况下,这些邻接的顶点为8个,加上边的原有的2个顶点,共有10个顶点,把它们标记为P1、P2、P3、...、P10,其中P1、P2为边的两个顶点,P3、P4为与P1、P2都相邻的两个顶点,P9为与P1相邻,但是不与P3、P4相邻的顶点,P10为与P2相邻,但是不与P3、P4相邻的顶点,P5、P6为与P1相邻但不与P2相邻的顶点,P7、P8为与P2相邻但不与P1相邻的顶点,那么边点的计算方法为q=αP1+βP2+γP3+γP4+δP5+δP6+ξP7+ξP8+εP9+νP10,其中α=136(24+2411),]]>β=136(12-2411),]]>γ=136(4),]]>δ=136(-2-611),]]>ξ=136(-2+611),]]>ε=0,ν=0;(II)面点每个三角形包含3个顶点,取出所有包含这三个顶点至少其中一个的三角形,这样的三角形一共有13个,这13三角形中一共有12个不同的顶点,标记面点所在三角形的三个顶点为P1,P2,P3,同时与P1、P2相邻的顶点为P4,同时与P2、P3相邻的顶点为P5,同时与P1、P3相邻的顶点为P6,其余顶点为P7、P8、P9、P10、P11、P12,那么面点的计算方法为q=136(14+611)(P1+P2+P3)+136(-1211)(P4+P5+P6)+136(-1+311)Σj=712Pj]]>(III)顶点保持不变。
6.根据权利要求3或5所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述三角形几何规则所涉及的拓扑意义上的规则三角形的几何约束为(1)所有的拓扑网格都很好连接在一起,也就是说没有孤立点或者孤立边,每一个点都在边上,每一条边都在面上;(2)每一个面元素都是封闭体,由边包围而成,也就是说三角形包围的面不会形成漏缝或者洞,面不会相交和自相交;(3)每条边都为2个三角形所共享;(4)对于规则三角形拓扑网格,一个点仅与6条边相连。
7.根据权利要求1所述的基于高阶三角形插值曲面细分的几何数据细分方法,其特征在于,所述步骤3)中的循环停止条件为三角形已经达到设定的足够的计算精度或显示精度、或三角形的最长的一条边的长度小于设定的值、或三角形最大的元素小于设定的参数值、或三角形的数量大于设定的参数值。
全文摘要
本发明公开了一种基于高阶三角形插值曲面细分的几何数据细分方法,它属于几何体造型技术领域。该方法主要步骤包括1)利用拓扑规则将三角形的拓扑网格进行分裂,以增加新顶点并形成新的网格拓扑;2)利用几何规则计算所有顶点的几何位置;3)循环迭代上述步骤1)、2)至满足循环停止条件。利用此方法经过迭代计算生成稠密的连续面数据,所生成的图形经过其初始的控制顶点,当需要进行几何形体变形时,可以直接操纵控制顶点,进行交互式的操作,易于构造任意形状的三维几何形体,而且本方法能够生成正则区域C2连续、奇异点C1连续的曲面。
文档编号G06T17/10GK1975787SQ20061012398
公开日2007年6月6日 申请日期2006年12月1日 优先权日2006年12月1日
发明者凌若天, 罗笑南 申请人:中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1