CN103903304B - 用于产品三维数据处理的任意四边形曲面中轴线生成方法 - Google Patents

用于产品三维数据处理的任意四边形曲面中轴线生成方法 Download PDF

Info

Publication number
CN103903304B
CN103903304B CN201410123906.2A CN201410123906A CN103903304B CN 103903304 B CN103903304 B CN 103903304B CN 201410123906 A CN201410123906 A CN 201410123906A CN 103903304 B CN103903304 B CN 103903304B
Authority
CN
China
Prior art keywords
insertion point
axis
model
point
vector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410123906.2A
Other languages
English (en)
Other versions
CN103903304A (zh
Inventor
彭健钧
李吉平
苗苗
矫叙伦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian Polytechnic University
Original Assignee
Dalian Polytechnic University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian Polytechnic University filed Critical Dalian Polytechnic University
Priority to CN201410123906.2A priority Critical patent/CN103903304B/zh
Publication of CN103903304A publication Critical patent/CN103903304A/zh
Application granted granted Critical
Publication of CN103903304B publication Critical patent/CN103903304B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明公开了用于产品三维数据处理的任意四边形曲面中轴线生成方法,采用轨迹法结合移动Frenet标架,提出了一种简单快速的中轴线生成算法。在工程问题中应用较多的为B-rep三维实体模型,该模型具有明确的边界定义,模型的顶点、边、面的信息都明确的存储在模型文件中,利用这些明确的信息就可以简化传统的轨迹法中轴线生成方法,从而缩减了中轴线生成所需要的数据量。本发明利用B-rep模型中明确的边界信息作为中轴线生成方法的条件,并利用平分线的特点消除对分支点的计算,减少影响中轴线精确度的因素。为了保证中轴线的精确度,可以采用***点的密度来进行控制。

Description

用于产品三维数据处理的任意四边形曲面中轴线生成方法
技术领域
本发明涉及一种用于产品三维数据处理的任意四边形曲面中轴线生成方法,尤其适用于模型简化、模型重构、有限元网格生成、实体建模等CAD/CAE技术。涉及专利分类号G06计算;推算;计数G06T一般的图像数据处理或产生G06T17/00用于计算机制图的3D建模。
背景技术
中轴线也叫模型骨架或者中心线,通常被描述如下:在二维封闭区域中,有一可变半径的圆盘在该区域内部,保持该圆盘与区域边界至少有两个切点,然后移动此圆盘,当圆盘所走路径覆盖到所有区域之后,圆盘的圆心留下的轨迹构成的线称为中轴线,在三维模型中被称为中轴面。中轴线在CAD/CAE***的各关键环节有着广泛应用,例如模型重构、模型分析、计算机视觉、实体建模和在几何设计的特征提取等。然而,中轴线也在某些应用中受到限制,因为目前并没有一种快速并且精确的计算中轴线的算法,特别是在曲线边界条件下生成中轴线。
Blum在1967年第一次提出中轴线的概念,中轴线具有唯一、可逆、对称、拓扑等价等优越特性。中轴线受边界的连续性影响很大,而且当时也很难提取出准确的曲线边界。10年前,主要的发现是平分线的引入,它是中轴线的一个特例,但此方法需要剪枝操作,增加了处理过程的复杂度。近年来,Teixeira和Zucker研究了曲边和中轴线的曲率、切线和法线向量三者之间的关系,给出了由平均曲率描述的曲线中轴线运动的微分方程。尽管有很多关于中轴线生成的算法,但是生成稳定和精确的中轴线还不是一件容易的工作。
目前在CAD/CAE***中常用到的中轴线生成算法大致分成两类:轨迹法和Voronoi图法。轨迹法是根据中轴线的定义,让一可变半径的圆始终保持与该区域至少两条边界相切,则此圆圆心所留下的轨迹就是中轴线。但此算法需要判断每一个点到达各边界的距离和该点是否为分支点,即具有两个以上切点的位置。这无形中增加了数据量,必然会影响计算的效率。Voronoi图法是先将给定区域的边界用点集将其离散化,根据这个离散的点集生成Voronoi图,则Voronoi图的顶点所组成的就是中轴线。但此算法更适合二维模型,需要增加额外选择条件才可以拓展到三维模型。
发明内容
本发明针对以上问题的提出,而研制的一种用于产品三维数据处理的任意四边形曲面中轴线生成方法,具有如下步骤:
—模型分解步骤:对四边形面模型分解为四个边;将所述的四个边中不相邻的两边分成一组,得到的两组边分别作为起始边和终止边以及两约束边;
—插值步骤:通过计算所述的两约束边的向量得到两约束边的合并向量,以该合并向量的方向作为插值方向,按步长δ***多个***点;
—***点移动步骤:当所述的多个***点均位于模型内部时,计算每个***点与所述两约束边的距离;使用迭代的方式,移动所述***点,使该***点与所述两约束边的距离近似相等;
—中轴线确定步骤:重复上述步骤;当所述的***点与两约束边的距离均近似相等时,利用所述的各***点构造B-spline曲线,该曲线近似为四边形面模型的中轴线。
本发明所述的步长δ即为两个***点之间的距离,利用步长δ可以控制***点的数量。步长δ越小,***点越多,所生成的中轴线精度越高;***点越少,生成中轴线的计算量越小。
更进一步的,考虑到由于选取起始边和终止边的不同,可能会导致***点的空间坐标位于四边形模型之外。故本发明所述的***点移动步骤中至少还具有***点判定和移动步骤:
—计算***点P与两约束边的距离d1和d2,以及与d1和d2与两约束边的交点q1和q2,q1和q2之间的距离为d,d=||q1q2||;根据Frenet标架公式得到***点P的方向向量 e → 1 = q 1 q 2 / | | q 1 q 2 | | 2 ;
—比较d1、d2和d的关系:若d1>d或者d2>d,则***点P在模型区域外部;
—若d1>d2,则点P沿着方向移动距离Δ=|(d1-d2)|/2;若d1<d2,则点P沿着的相反方向移动距离Δ=|(d1-d2)|/2;将***点P移动到模型内部后,更新该点坐标;
—若d1<d且d2<d,表明点P在模型内部,暂时不进行调整。
通过上述判定过程,可以保证每个***点都位于四边形模型的内部,保证了算法的进行。
优选的,所述的“使用迭代方法,移动所述***点,使该***点与所述两约束边的距离近似相等”具体包含如下步骤:
—计算***点P与两约束边的距离d1和d2,在确定***点在四边形模型内部时:根据Frenet标架公式得到P位置调整的方向向量
—若d1>d2,点P沿着方向移动距离Δ1
—若d1<d2,点P沿着相反方向移动距离Δ1
—重复上述步骤,直到d1/d2=ε,停止运算;其中0.99<ε<1.01;移动距离Δ1的取值为|(d1-d2)|/2n,其中n取值为两次连续移动方向不一致的次数。
所述的插值步骤中,所述的“通过计算所述的两约束边的向量得到两约束边的合并向量”具体为:
设定A1和A2为所述的两约束边;按起始边到终止边的方向,得到两条约束边A1和A2的向量利用向量合并公式(1)计算得到***点的插值方向向量
e &RightArrow; = e &RightArrow; a 1 + e &RightArrow; a 2 - - - ( 1 )
所述的“按步长δ***多个***点”具体为:
在起始边上取中点P1作为起始点,根据插值的方向向量和步长δ,利用公式(2)计算下一个***点的坐标P2(x,y)
P 2 . x = P 1 . x + e &RightArrow; . x * &delta; P 2 . y = P 1 . y + e &RightArrow; . y * &delta; - - - ( 2 )
如果P2到终止边的距离d小于步长δ,表示新***点已经接近终止边,不再需要新的***点,所以P2就是最后的终止点;反之,继续***新的***点P*。
由于采用了上述技术方案,本发明提供的用于产品三维数据处理的任意四边形曲面中轴线生成方法,采用轨迹法结合移动Frenet标架,提出了一种简单快速的中轴线生成算法。在工程问题中应用较多的为B-rep三维实体模型,该模型具有明确的边界定义,模型的顶点、边、面的信息都明确的存储在模型文件中,利用这些明确的信息就可以简化传统的轨迹法中轴线生成方法,从而缩减了中轴线生成所需要的数据量。本发明利用B-rep模型中明确的边界信息作为中轴线生成方法的条件,并利用平分线的特点消除对分支点的计算,减少影响中轴线精确度的因素。为了保证中轴线的精确度,可以采用***点的密度来进行控制。
附图说明
为了更清楚的说明本发明的实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为中轴线生成算法流程图;
图2为四边形各边分组示意图;
图3为***点算法示意图;
图4为调整***点到模型内部示意图;
图5为调整***点位置在中轴线上示意图;
图6为四边不规则弯曲四边形的中轴线生成效果图,图6a为原始的四边形模型;图6b为按本发明算法得到的中轴线示意图;
图7为圆角特征面分解示意图;
图8为机械零件模型圆角简化效果图a原始模型b圆角特征简化后模型;
图9利用中轴线分割模型生成网格a初始模型b模型四边化c边ab、cd为约束条件生成中轴线d边bc、da为约束条件生成中轴线e两个方向的中轴线相交,形成网格。
具体实施方式
为使本发明的实施例的目的、技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1-图5所示:一种用于产品三维数据处理的任意四边形曲面中轴线生成方法,主要包括如下的步骤:
模型分解步骤中四边形各边分组示意图2所示。四边形每条边按“边与边不相邻”原则分为两组,A1和A2为一组作为约束边,边B1和B2为另一组,分别作为起始边和终止边。选择起始边和约束边的主要考虑想要选择的中轴线的走向。
本发明内容的所述插值步骤如图3所示:***点算法示意图。设定B1为起始边,B2为终止边,A1和A2为约束边。在具体选择起始边和终止边时,主要考虑想要获取的目标中轴线的走向,与目标中轴线近似平行(走向一致)的两条边作为约束边,剩余的两条边即可作为起始边和终止边。
按起始边到终止边的方向,得到两条约束边的向量利用向量合并公式(1)计算得到即为***点的插值方向向量。
e &RightArrow; = e &RightArrow; a 1 + e &RightArrow; a 2 - - - ( 1 )
在起始边上取中点P1作为起始点,根据插值的方向向量和步长δ,利用公式(2)计算下一个***点的坐标P2(x,y)。
P 2 . x = P 1 . x + e &RightArrow; . x * &delta; P 2 . y = P 1 . y + e &RightArrow; . y * &delta; - - - ( 2 )
如果P2到终止边的距离d小于步长δ,表示新***点已经接近终止边,不再需要新的***点,所以P2就是最后的终止点。反之,继续***新的***点P*
在本实施例中步长δ为四边形模型中最短边的五分之一。
更进一步的,考虑到由于选取起始边和终止边的不同,可能会导致***点的空间坐标位于四边形模型之外。故本发明所述的***点移动步骤中至少还具有***点判定和移动步骤如图4所示。调整***点到模型内部示意图。对已获得的***点P,计算该点到达两条约束边的最短距离d1和d2,以及与最短距离对应的点q1和q2(位于约束边A1和A2上的点),根据Frenet标架公式计算得到方向向量。
e &RightArrow; 1 = q 1 q 2 / | | q 1 q 2 | | 2 ;
判断***点P的位置是否在模型区域内部,若不在模型内部,将调整到模型内部,判断及调整方法如下:
根据点P到约束边A1和A2最短距离的对应点q1和q2,得到距离d=||q1q2||。比较点P到约束边的最短距离d1、d2与d之间的关系。
若d1>d或者d2>d,则点P在模型区域外部。若d1>d2,则点P沿着方向移动一定距离Δ=|(d1-d2)|/2;若d1<d2,则点P沿着的相反方向移动一定距离Δ=|(d1-d2)|/2。将***点P移动到模型内部后,更新该点坐标;
若d1<d且d2<d,表明点P在模型内部,暂时不需要进行调整。
如图5:调整各***点位置使其落在中轴线上示意图。对每一个***点,按以下规则进行调整:
(a)如果d1>d2,点P沿着方向移动一定距离Δ1
(b)如果d1<d2,点P沿着相反方向移动一定距离Δ1
(c)如果d1=d2(近似相等),更新点P坐标值。
本发明中移动距离Δ1初值设为|(d1-d2)|/2。当两次连续的移动方向不一致时,第二次的移动距离Δ1缩小为|(d1-d2)|/4,采用迭代算法反复调整点的位置直到点P到达两条约束边距离相等。移动距离Δ1的取值为|(d1-d2)|/2n,其中n取值为两次连续移动方向不一致的次数。采用迭代方法反复调整点的位置,若使***的点到达约束边距离完全相等有一定困难,所以近似相等,即d1/d2=ε,ε接近1即可。对于高精度的中轴线来说,ε越接近1越好,但运算效率会降低。
本发明中各模型实例ε取值为0.99<ε<1.01。
如图6:四边不规则弯曲四边形的中轴线生成效果图。在工业生产CAD模型中,较多模型是规则的,但也有一些不规则模型。采用复杂度高的不规则边界模型对中轴线生成算法进行测试。如图6a所示,采用四边非规则弯曲的四边形。导入此模型后,应用中轴线生成算法,效果如图6b所示。虽然双边弯曲使得***点的方向并不完全等于约束边的方向向量,但是经过对***点的调整,使得***点可以落在中轴线上。再利用已获得在中轴线上的点构造B-spline曲线,该曲线即为弯曲四边形曲面的中轴线,满足了中轴线的对称性。
利用中轴线实现圆角特征简化。专利“基于圆角中轴线的圆角特征简化方法”(201310578463.1)公开了利用中轴线分割圆角特征曲面,重构被分割曲面和相应支持面,从而实现圆角特征简化的方法。大多数圆角特征由四条边构成,两条光滑边和两条普通边。用光滑边作为约束条件,普通边作为起始边和终止边,恰好满足本专利提出的中轴线生成算法,故可在此圆角特征曲面上生成中轴线。如图7所示,以光滑边e4和e7为约束边,普通边e5和e6为起始边和终止边,生成中轴线e8将圆角特征曲面分成两个面F3和F4;同时中轴线的两个端点将边e5分成两段a1和a2,边e6分成b1和b2两段。图8是一个机械零件,由20个面构成,其中包含多个圆角特征,利用中轴线分割重构圆角曲面,简化圆角特征,模型的面数减少到11个,简化后的模型如图8b所示。
利用中轴线分割模型实现网格生成。中轴线生成方法中,已将边界作为中轴线生成的约束条件。利用中轴线分割模型,每一个子区域的边界也受到边界的约束,使得各子区域边界相似。在给定区域内生成的中轴线将该区域分成对等的两部分,若将该两个区域继续划分,便会得到若干近似相等的子区域。对调约束边跟起始边、终止边的关系,再次进行同样的划分,如此所得到的一系列连续单元即为生成的网格。
如图9a所示的给定封闭区域,将其划分为四边形:边ab、bc、cd、da组成。将边ab、cd作为约束条件生成中轴线ef,将该区域分解,形成两个区域,如图9b所示。然后进行判定,判定条件:各区域内最短边小于或者等于初始网格边界设定值。不满意判定条件再次划分,如图9c所示分别以边ae、fd和边eb、cf作为约束条件再生成两条中轴线,原区域被划分为四个子区域,此时满足判定条件终止划分。对调原模型约束边跟起始边、终止边的关系,以边bc、da作为约束条件再次进行同样的划分,生成如图9d的三条中轴线。两次不同方向划分生成的六条中轴线相交,相交节点即为网格节点,由网格节点连接而成的一系列连续的四边形即为网格单元,如图9e所示。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (1)

1.一种用于产品三维数据处理的任意四边形曲面中轴线生成方法,具有如下步骤:
—模型分解步骤:将四边形面模型分解为四个边;将所述的四个边中不相邻的两边分成一组,得到的两组边分别作为起始边和终止边以及两约束边;
—插值步骤:通过计算所述的两约束边的向量得到两约束边的合并向量,以该合并向量的方向作为插值方向,按步长δ***多个***点;
—***点移动步骤:当所述的多个***点均位于模型内部时,计算每个***点与所述两约束边的距离;使用迭代的方式,移动所述***点,使该***点与所述两约束边的距离近似相等;
—中轴线确定步骤:重复上述步骤;当所述的***点与两约束边的距离均近似相等时,利用各***点构造B-spline曲线,该曲线近似为四边形面模型的中轴线;
所述的***点移动步骤中至少还具有***点判定和移动步骤:
—计算***点P与两约束边的距离d1和d2,以及与d1和d2与两约束边的交点q1和q2,q1和q2之间的距离为d,d=||q1q2||;根据Frenet标架公式得到P位置调整的方向向量
—比较d1、d2和d的关系:若d1>d或者d2>d,则***点P在模型区域外部;
—若d1>d2,则点P沿着方向移动距离Δ=|(d1-d2)|/2;若d1<d2,则点P沿着的相反方向移动距离Δ=|(d1-d2)|/2;将***点P移动到模型内部后,更新点P的坐标;
—若d1<d且d2<d,表明点P在模型内部,暂时不进行调整;
其中,使用迭代方法,移动所述***点,使该***点与所述两约束边的距离近似相等具体包含如下步骤:
—计算***点P与两约束边的距离d1和d2,在确定***点在四边形模型内部时:根据Frenet标架公式得到P位置调整的方向向量
—若d1>d2,点P沿着方向移动距离Δ1;
—若d1<d2,点P沿着相反方向移动距离Δ1;
—重复上述步骤,直到d1/d2=ε,停止运算;其中0.99<ε<1.01;移动距离Δ1的取值为|(d1-d2)|/2n,其中n取值为两次连续移动方向不一致的次数;
所述的插值步骤中,通过计算所述的两约束边的向量得到两约束边的合并向量具体为:
设定A1和A2为所述的两约束边;按起始边到终止边的方向,得到两条约束边A1和A2的向量利用向量合并公式(1)计算得到***点的插值方向向量
e &RightArrow; = e &RightArrow; a 1 + e &RightArrow; a 2 - - - ( 1 )
其中,按步长δ***多个***点具体为:
在起始边上取中点P1作为起始点,根据插值的方向向量和步长δ,利用公式(2)计算下一个***点的坐标P2(x,y);
P 2 . x = P 1 . x + e &RightArrow; . x * &delta; P 2 . y = P 1 . y + e &RightArrow; . y * &delta; - - - ( 2 )
如果P2到终止边的距离d小于步长δ,表示新***点已经接近终止边,不再需要新的***点,所以P2就是最后的终止点;反之,继续***新的***点P*。
CN201410123906.2A 2014-03-28 2014-03-28 用于产品三维数据处理的任意四边形曲面中轴线生成方法 Expired - Fee Related CN103903304B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410123906.2A CN103903304B (zh) 2014-03-28 2014-03-28 用于产品三维数据处理的任意四边形曲面中轴线生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410123906.2A CN103903304B (zh) 2014-03-28 2014-03-28 用于产品三维数据处理的任意四边形曲面中轴线生成方法

Publications (2)

Publication Number Publication Date
CN103903304A CN103903304A (zh) 2014-07-02
CN103903304B true CN103903304B (zh) 2016-06-22

Family

ID=50994609

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410123906.2A Expired - Fee Related CN103903304B (zh) 2014-03-28 2014-03-28 用于产品三维数据处理的任意四边形曲面中轴线生成方法

Country Status (1)

Country Link
CN (1) CN103903304B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104504759B (zh) * 2014-12-29 2018-10-02 佛山市诺威科技有限公司 一种基于义齿基底冠三角网格的快速过渡缝补的方法
CN107909611A (zh) * 2017-10-01 2018-04-13 华南理工大学 一种利用微分几何理论提取空间曲线曲率特征的方法
CN114661394B (zh) * 2022-03-01 2024-06-25 网易(杭州)网络有限公司 界面显示的控制方法、装置、存储介质、处理器

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
《Computing medial axes of generic 3D regions bounded by B-spline surfaces》;S Musuvathy等;《Computer-Aided Design》;20111130;第43卷(第11期);1485-1495 *
《Medial axis computation for planar free–form shapes》;O. Aichholzera等;《Computer-Aided Design》;20090531;第41卷(第5期);339-349 *
《Medial axis of regions bounded by B-spline curves and surfaces》;Musuvathy等;《Original housed in Marriott Library Special Collections, QA3.5 2011 .M87》;20111231;1-165 *
《基于隐式曲面的几何造型理论与应用》;宋兴华;《中国博士学位论文全文数据库》;20111115(第11期);A002-61 *

Also Published As

Publication number Publication date
CN103903304A (zh) 2014-07-02

Similar Documents

Publication Publication Date Title
CN103985155B (zh) 基于映射法的散乱点云Delaunay三角剖分曲面重构方法
CN101609564B (zh) 一种草图式输入的三维网格模型制作方法
CN102306396B (zh) 一种三维实体模型表面有限元网格自动生成方法
CN104268934B (zh) 一种由点云直接重建三维曲面的方法
KR100707841B1 (ko) 3차원 목표곡선을 이용한 곡면 변형 장치 및 그 방법
US20120206457A1 (en) Methods and Systems for Generating Continuous Surfaces from Polygonal Data
CN105867310A (zh) 基于occ实现t样条模型的数控加工方法及***
CN107886569B (zh) 一种基于离散李导数的测度可控的曲面参数化方法及***
CN110689620B (zh) 一种多层次优化的网格曲面离散样条曲线设计方法
CN108230452B (zh) 一种基于纹理合成的模型补洞方法
CN113077553A (zh) 一种基于表面属性的三维模型分割方法
CN103903304B (zh) 用于产品三维数据处理的任意四边形曲面中轴线生成方法
CN105225272B (zh) 一种基于多轮廓线三角网重构的三维实体建模方法
Papagiannopoulos et al. How to teach neural networks to mesh: Application on 2-D simplicial contours
CN107578472A (zh) 三维表面三角网络模型的角度优化方法及装置
CN111079353B (zh) 应用于复杂流体分析的快速均匀网格划分的方法及装置
US20120206456A1 (en) Methods and Systems for Generating Continuous Surfaces from Polygonal Data
Huang et al. Adaptive hexahedral mesh generation and regeneration using an improved grid-based method
CN106981095B (zh) 一种改进的光滑自由变形方法
Chen et al. Half-space power diagrams and discrete surface offsets
CN106067192A (zh) 基于逆插值Loop的网格简化方法
CN116113992A (zh) 网格生成
CN110163973A (zh) 一种区域边界环光顺方法
CN101853527A (zh) 插值细分方法
CN117152311B (zh) 基于双分支网络的三维表情动画编辑方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160622

Termination date: 20190328