CN112184911B - 一种非流行网格模型切片处理方法 - Google Patents

一种非流行网格模型切片处理方法 Download PDF

Info

Publication number
CN112184911B
CN112184911B CN202011044831.0A CN202011044831A CN112184911B CN 112184911 B CN112184911 B CN 112184911B CN 202011044831 A CN202011044831 A CN 202011044831A CN 112184911 B CN112184911 B CN 112184911B
Authority
CN
China
Prior art keywords
node
edge
path
slice
graph
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.)
Active
Application number
CN202011044831.0A
Other languages
English (en)
Other versions
CN112184911A (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.)
Jiaxing University
Original Assignee
Jiaxing 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 Jiaxing University filed Critical Jiaxing University
Priority to CN202011044831.0A priority Critical patent/CN112184911B/zh
Publication of CN112184911A publication Critical patent/CN112184911A/zh
Application granted granted Critical
Publication of CN112184911B publication Critical patent/CN112184911B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Abstract

本发明涉及一种非流行网格模型切片处理方法,包括以下步骤:步骤一、读取三角网格模型,对模型进行封闭性检测;步骤二、计算各层切片与模型的交点,并将交点映射为节点集,相交线段映射为边集,利用节点集和边集建立一个无向图;步骤三、对无向图中的节点集和边集进行重复性检测;步骤四、计算无向图的连通子图,根据每个连通子图中节点度的分布情况,基于路径规划方法获取每层切片的有序轮廓。本发明根据切片交点的排列规律,利用强大的路径规划方法快速获取正确的有序切片轮廓,避免了修复非流行三角片的复杂数学计算,提高了整个切片算法的有效性和鲁棒性,适用于各种流行和非流行网格模型的切片处理。

Description

一种非流行网格模型切片处理方法
技术领域
本发明涉及快速成型技术领域,具体涉及一种非流行网格模型切片处理方法。
背景技术
三角网格模型是一种用大量三角面片来模拟复杂物体表面的三维几何模型,广泛用于工业设计、医学、影视动画等领域。这种模型在进行快速成型制造时,需要将3维模型转换为一系列2D切片轮廓。现有的切片算法主要应用于流行封闭网格模型,即模型封闭且无自交,无重叠三角片或悬面等错误。
然而,在实际应用中,从三维扫描仪、CT和MRI等设备中构建出来的三角网格模型,通常含有孔洞、悬面、自交等情况。将CAD软件构造的3D模型转换为三角网格模型时,也容易出现三角面片重叠、拓扑连接信息重复或相邻面片法向不相容等情况。此外,由于非流形模型比流形模型具有更复杂和更灵活的拓扑关系,可以用一些非流行表面来表达特殊形状的物体。但如果用传统流行网格模型的切片方法处理非流行模型,会导致难以修复的错误结果。因此,研究非流行网格模型的切片处理算法,对于提高分层切片处理的有效性和鲁棒性具有重要意义。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种非流行网格模型切片处理方法。
为实现上述目的,本发明提供了如下技术方案:
一种非流行网格模型切片处理方法,其包括以下步骤:
步骤一、读取三角网格模型,并对模型进行封闭性检测;
步骤二、计算各层切片与模型的交点,并将交点映射为节点集,相交线段映射为边集,利用节点集和边集建立一个无向图;
步骤三、对无向图中的节点集和边集进行重复性检测;
步骤四、计算无向图的连通子图,根据每个连通子图中节点度的分布情况,基于路径规划方法获取每层切片的有序轮廓。
进一步的,步骤一中的封闭性检测步骤如下:
1)检测三角网格模型上每条边的三角片关联度;
2)将关联度为0的边标记为悬边,然后删除所有的悬边;将关联度为1的边标记为边界边,提取所有的边界边以构建边界集合;若模型上没有关联度为0和1的边,则结束;
3)从边界集合中取出一条边作为起始边,依次搜索与其相邻的边界边,当构成一个封闭环时,将该环保存成一个孔洞边界;若不能构成封闭环,将这些边界边所关联的三角片删除,若删除后出现新的悬边,将其删除,若出现新的边界边,将其加入到边界集合中;
4)判断是否遍历完所有的边界边,若没有遍历完毕,则转步骤2);否则转步骤5);
5)对所有构建的孔洞边界进行三角片填补,得到封闭形体。
进一步的,步骤三中重复性检测步骤如下:
首先对每层切片的无向图中的节点集进行重复性检测,若搜索到坐标重合的节点,只保留其中一个节点而删除与之重合的其它节点,将所删除节点关联的边加入到所保留节点的关联边中,然后对无向图的边集进行重复性检测,删除重复的边。
进一步的,步骤四中包括以下步骤:
S1:计算无向图中的极大连通子图,并获取每个连通子图中节点的度;
S2:判断连通子图中节点度的分布范围:①当连通子图Gg中所有节点的度都等于2时,对连通子图Gg中的节点进行深度优先遍历获得该连通域内的有序切片轮廓路径;②当连通子图Gg中节点的度范围在[0,2],不进行该连通域内轮廓路径的创建;③当连通子图Gg中存在度大于2的节点时,转步骤S3;
S3:计算连通子图Gg的极大双连通子图,若双连通子图的个数为1,则执行S4;若双连通子图的个数大于1时,则对每个双连通子图Ggg循环执行S2;
S4:利用双连通子图的节点集建立凸包,根据凸包确定切片轮廓路径的起始边,然后依次搜索最右拐的邻接边,构成一条有序封闭轮廓路径后,再将剩余节点集组成新图,对新图重复步骤S2以完成剩余轮廓路径的创建。
进一步的,所述步骤S4中,具体包括以下步骤:
i)利用双连通子图Ggg=(Vgg,Egg)的节点集Vgg计算凸包,凸包按逆时针方向排序,然后在凸包边界上找到属于双连通子图Ggg边集Egg的一条边,并将其作为切片轮廓路径的起始边;
ii)从切片轮廓路径的起始边开始,设起始边的第一个节点为起点s1,第二个节点为s2,在双连通子图Ggg中搜索与s2关联且未被使用的邻接点作为下一个路径点s3,依次遍历求出路径点,直到回到起点s1,则完成一条有序切片轮廓路径Path的创建,并记录路径Path中节点度大于2的节点DPath
iii)提取剩余节点集Vgg-Path+Dpath,组成新图后,转步骤S2,以完成剩余轮廓路径的创建。
进一步的,ii)中,在搜索过程中,若当前节点有多个邻接点,则选择最右拐的邻接点作为下一个路径点,具体判断方法如下:设当前路径点为s2,上一个路径点为s1,以为基准向量,若与s2关联的且未使用的邻接点共有n个:{t1,t2...,tn},则依次计算向量/>然后计算两个向量P0、Pi的夹角angle(P0,Pi)和叉积cross(P0,Pi),若cross(P0,Pi)>0,则Pi相对与P0逆时针旋转,表示左拐,反之若cross(Pi,Pi)<0,Pi相对与P0时顺针旋转,表示右拐,为使路径所围成的区域始终在路径方向的左边,应选择右拐且夹角最大的节点,因此计算fi=sgn(cross(P0,Pi))*angle(P0,Pi),然后选择fi为最小时所对应的节点ti作为下一个路径点s3,其中,sgn()为符号函数。
本发明的有益效果:根据切片交点的排列规律,利用强大的路径规划技术快速获取正确的有序切片轮廓路径,避免了修复非流行三角片的复杂数学计算,提高了整个切片算法的有效性和鲁棒性,适用于各种流行和非流行网格模型的切片处理。
附图说明
图1是一种非流行三角网格模型实例图。
图2是商业切片软件Cura对图1模型的切片处理效果图。
图3是本发明方法对图1模型的切片轮廓构建流程示意图。
图4是本发明方法对图1模型的切片处理效果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种非流行网格模型切片处理方法,其包括以下步骤:
步骤一、读取三角网格模型,并对模型进行封闭性检测;
其中封闭性检测步骤如下:
1)检测三角网格模型上每条边的三角片关联度;
2)将关联度为0的边标记为悬边,然后删除所有的悬边;将关联度为1的边标记为边界边,提取所有的边界边以构建边界集合;若模型上没有关联度为0和1的边,则结束;
3)从边界集合中取出一条边作为起始边,依次搜索与其相邻的边界边,当构成一个封闭环时,将该环保存成一个孔洞边界;若不能构成封闭环,将这些边界边所关联的三角片删除,若删除后出现新的悬边,将其删除,若出现新的边界边,将其加入到边界集合中;
4)判断是否遍历完所有的边界边,若没有遍历完毕,则转步骤2);否则转步骤5);
5)对所有构建的孔洞边界进行三角片填补,得到封闭形体。
步骤二、计算各层切片与模型的交点,并将交点映射为节点集,相交线段映射为边集,利用节点集和边集建立一个无向图;
步骤三、对无向图中的节点集和边集进行重复性检测,具体步骤为:
首先对每层切片的无向图中的节点集进行重复性检测,若搜索到坐标重合的节点,则只保留其中一个节点而删除与之重合的其它节点,并合并边联接关系,即将所删除节点关联的边加入到所保留节点的关联边中,然后对无向图的边集进行重复性检测,删除重复的边。
步骤四、计算无向图的连通子图,根据每个连通子图中节点度的分布情况,基于路径规划方法获取每层切片的有序轮廓。
步骤四中包括以下步骤:
S1:计算无向图中的极大连通子图,并获取每个连通子图中节点的度;
S2:判断连通子图中节点度的分布范围:①当连通子图Gg中所有节点的度都等于2时,对连通子图Gg中的节点进行深度优先遍历获得该连通域内的有序切片轮廓路径;②当连通子图Gg中节点的度范围在[0,2],不进行该连通域内轮廓路径的创建;③当连通子图Gg中存在度大于2的节点时,转步骤S3;
S3:计算连通子图Gg的极大双连通子图,若双连通子图的个数为1,则执行S4;若双连通子图的个数大于1时,则对每个双连通子图Ggg循环执行S2;
S4:利用双连通子图的节点集建立凸包,根据凸包确定切片轮廓路径的起始边,然后依次搜索最右拐的邻接边,构成一条有序封闭轮廓路径后,再将剩余节点集组成新图,对新图重复步骤S2以完成剩余轮廓路径的创建。
进一步的,所述步骤S4中,具体包括以下步骤:
i)利用双连通子图Ggg=(Vgg,Egg)的节点集Vgg计算凸包,凸包按逆时针方向排序,然后在凸包边界上找到属于双连通子图Ggg边集Egg的一条边,并将其作为切片轮廓路径的起始边;
ii)从切片轮廓路径的起始边开始,设起始边的第一个节点为起点s1,第二个节点为s2,在双连通子图Ggg中搜索与s2关联且未被使用的邻接点作为下一个路径点s3,依次遍历求出路径点,直到回到起点s1,则完成一条有序切片轮廓路径Path的创建,并记录路径Path中节点度大于2的节点DPath
在搜索过程中,若当前节点有多个邻接点,则选择最右拐的邻接点作为下一个路径点,具体判断方法如下:设当前路径点为s2,上一个路径点为s1,以为基准向量,若与s2关联的且未使用的邻接点共有n个:{t1,t2...,tn},则依次计算向量然后计算两个向量P0、Pi的夹角angle(P0,Pi)和叉积cross(P0,Pi),若cross(P0,Pi)>0,则Pi相对与P0逆时针旋转,即左拐,反之若cross(Pi,Pi)<0,Pi相对与P0时顺针旋转,即右拐,为使路径所围成的区域始终在路径方向的左边,应选择右拐且夹角最大的节点,因此计算fi=sgn(cross(P0,Pi))*angle(P0,Pi),然后选择fi为最小时所对应的节点ti作为下一个路径点s3,其中,sgn()为符号函数。
iii)提取剩余节点集Vgg-Path+Dpath,组成新图后,转步骤S2,以完成剩余轮廓路径的创建。
实施例:
如图1所示的非流行三角网格模型,利用商业切片软件Cura对该模型进行切片处理会导致如图2所示的轮廓断裂现象。本发明方法对图1模型进行切片轮廓构建的流程如图3所示,具体包括以下步骤:首先对模型进行封闭性检测,然后进行切片处理求得交点,并将单层切片内的交点构成无向图,删除重复节点和边后进行连通子图分解。由于该切片内连通子图只有一个且存在度大于2的节点,因此对该连通子图进行双连通分解,得到五个双连通子图。其中,前四个双连通子图中节点度都为2,利用深度优先遍历即可构建有序封闭轮廓路径;第5个双连通子图中存在节点度数大于2的点,因此首先计算凸包,然后从凸包上的起始边s开始逆时针搜索最右拐的点,构建一条封闭轮廓路径后,再对剩余节点进行路径搜索,得到最终的切片效果如图4所示。
可以看出,利用本发明方法可以有效解决传统方法无法处理非流行网格模型的问题,获得正确的切片轮廓。
实施例不应视为对本发明的限制,但任何基于本发明的精神所作的改进,都应在本发明的保护范围之内。

Claims (3)

1.一种非流形网格模型切片处理方法,用于快速成型技术中非流形网格模型切片封闭性轮廓获取,其特征在于,其包括以下步骤:
步骤一、读取三角网格模型,并对模型进行封闭性检测;
步骤二、计算各层切片与模型的交点,并将交点映射为节点集,相交线段映射为边集,利用节点集和边集建立一个无向图;
步骤三、对无向图中的节点集和边集进行重复性检测;
步骤四、计算无向图的连通子图,根据每个连通子图中节点度的分布情况,基于路径规划方法获取每层切片的有序轮廓,
步骤一中的封闭性检测步骤如下:
1)检测三角网格模型上每条边的三角片关联度;
2)将关联度为0的边标记为悬边,然后删除所有的悬边;将关联度为1的边标记为边界边,提取所有的边界边以构建边界集合;若模型上没有关联度为0和1的边,则结束;
3)从边界集合中取出一条边作为起始边,依次搜索与其相邻的边界边,当构成一个封闭环时,将该环保存成一个孔洞边界;若不能构成封闭环,将这些边界边所关联的三角片删除,若删除后出现新的悬边,将其删除,若出现新的边界边,将其加入到边界集合中;
4)判断是否遍历完所有的边界边,若没有遍历完毕,则转步骤3);否则转步骤5);
5)对所有构建的孔洞边界进行三角片填补,得到封闭形体,
步骤三中重复性检测步骤如下:
首先对每层切片的无向图中的节点集进行重复性检测,若搜索到坐标重合的节点,只保留其中一个节点而删除与之重合的其它节点,将所删除节点关联的边加入到所保留节点的关联边中,然后对无向图的边集进行重复性检测,删除重复的边,
步骤四中包括以下步骤:
S1:计算无向图中的极大连通子图,并获取每个连通子图中节点的度;
S2:判断连通子图中节点度的分布范围:①当连通子图G g中所有节点的度都等于2时,对连通子图G g中的节点进行深度优先遍历获得该连通域内的有序切片轮廓路径;②当连通子图G g中节点的度范围在[0,2],不进行该连通域内轮廓路径的创建;③当连通子图G g中存在度大于2的节点时,转步骤S3;
S3:计算连通子图G g的极大双连通子图,若双连通子图的个数为1,则执行S4;若双连通子图的个数大于1时,则对每个双连通子图G gg循环执行S2;
S4:利用双连通子图的节点集建立凸包,根据凸包确定切片轮廓路径的起始边,然后依次搜索最右拐的邻接边,构成一条有序封闭轮廓路径后,再将剩余节点集组成新图,对新图重复步骤S2以完成剩余轮廓路径的创建。
2.根据权利要求1所述的一种非流形网格模型切片处理方法,其特征在于,
步骤S4中,具体包括以下步骤:
i)利用双连通子图G gg = (V ggE gg)的节点集V gg计算凸包,凸包按逆时针方向排序,然后在凸包边界上找到属于双连通子图G gg边集E gg的一条边,并将其作为切片轮廓路径的起始边;
ii)从切片轮廓路径的起始边开始,设起始边的第一个节点为起点s 1,第二个节点为s 2,在双连通子图G gg中搜索与s 2关联且未被使用的邻接点作为下一个路径点s 3,依次遍历求出路径点,直到回到起点s 1,则完成一条有序切片轮廓路径Path的创建,并记录路径Path中节点度大于2的节点D Path
iii)提取剩余节点集V gg -Path+D Path,组成新图后,转步骤S2,以完成剩余轮廓路径的创建。
3.根据权利要求2所述的一种非流形网格模型切片处理方法,其特征在于,
ii)中,在搜索过程中,若当前节点有多个邻接点,则选择最右拐的邻接点作为下一个路径点,具体判断方法如下:设当前路径点为s 2,上一个路径点为s 1,以为基准向量,若与s 2关联的且未使用的邻接点共有n个:{t 1, t 2…, t n},则依次计算向量/>i=1, 2, …, n,然后计算两个向量P 0P i的夹角/>和叉积/>,若, 则P i相对于P 0逆时针旋转,表示左拐,反之若/>P i相对于P 0时顺针旋转,表示右拐,为使路径所围成的区域始终在路径方向的左边,应选择右拐且夹角最大的节点,因此计算/>,然后选择f i为最小时所对应的节点t i作为下一个路径点s 3,其中,sgn()为符号函数。
CN202011044831.0A 2020-09-28 2020-09-28 一种非流行网格模型切片处理方法 Active CN112184911B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011044831.0A CN112184911B (zh) 2020-09-28 2020-09-28 一种非流行网格模型切片处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011044831.0A CN112184911B (zh) 2020-09-28 2020-09-28 一种非流行网格模型切片处理方法

Publications (2)

Publication Number Publication Date
CN112184911A CN112184911A (zh) 2021-01-05
CN112184911B true CN112184911B (zh) 2023-11-14

Family

ID=73946878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011044831.0A Active CN112184911B (zh) 2020-09-28 2020-09-28 一种非流行网格模型切片处理方法

Country Status (1)

Country Link
CN (1) CN112184911B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331555A (zh) * 2014-10-31 2015-02-04 河海大学常州校区 一种针对带有边界的非封闭stl模型的切片处理方法
CN106792744A (zh) * 2016-12-02 2017-05-31 西安电子科技大学 基于构建二信道连通下k点连通的拓扑控制方法
CN110442994A (zh) * 2019-08-13 2019-11-12 嘉兴学院 一种基于图论的3d打印切片处理方法
CN111710022A (zh) * 2020-06-08 2020-09-25 嘉兴学院 一种避免轮廓相交的快速成型切片处理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6474995B2 (ja) * 2014-11-11 2019-02-27 ローランドディー.ジー.株式会社 スライスデータ作成装置、スライスデータ作成方法、プログラムおよびコンピューター読み取り可能な記録媒体
US10357958B2 (en) * 2015-09-14 2019-07-23 Ricoh Company, Ltd. Information processing apparatus, 3D printer system, information processing method, and non-transitory recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104331555A (zh) * 2014-10-31 2015-02-04 河海大学常州校区 一种针对带有边界的非封闭stl模型的切片处理方法
CN106792744A (zh) * 2016-12-02 2017-05-31 西安电子科技大学 基于构建二信道连通下k点连通的拓扑控制方法
CN110442994A (zh) * 2019-08-13 2019-11-12 嘉兴学院 一种基于图论的3d打印切片处理方法
CN111710022A (zh) * 2020-06-08 2020-09-25 嘉兴学院 一种避免轮廓相交的快速成型切片处理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
An Enhanced Slicing Algorithm Using Nearest Distance Analysis for Layer Manufacturing;M. Vatani等;《PROCEEDINGS OF WORLD ACADEMY OF SCIENCE, ENGINEERING AND TECHNOLOGY》;全文 *
一种处理带有边界的非封闭STL模型的切片算法;巢海远等;《计算机集成制造系统》;第21卷(第10期);全文 *

Also Published As

Publication number Publication date
CN112184911A (zh) 2021-01-05

Similar Documents

Publication Publication Date Title
CN107610061B (zh) 一种基于二维投影的保边点云孔洞修补方法
Zhou et al. Topology repair of solid models using skeletons
CN106780751A (zh) 基于改进的屏蔽泊松算法的三维点云重建方法
CN108305289B (zh) 基于最小二乘法的三维模型对称性特征检测方法及系统
CN111710022B (zh) 一种避免轮廓相交的快速成型切片处理方法
CN107610228A (zh) 基于海量点云的曲面增量拓扑重建方法
CN113610983A (zh) 一种离散点空间曲面三角网格自动剖分方法
CN112184911B (zh) 一种非流行网格模型切片处理方法
Vigo et al. Efficient algorithms for boundary extraction of 2D and 3D orthogonal pseudomanifolds
CN113971718A (zh) 一种对三维点云模型进行布尔运算的方法
WO2018068196A1 (zh) 一种血管脊线追踪方法及装置
Wang et al. Point cloud hole filling based on feature lines extraction
Qi et al. Robust slicing procedure based on surfel-grid
Son et al. Automatic 3D reconstruction of as-built pipeline based on curvature computations from laser-scanned data
Guo et al. Filling holes in complex surfaces using oriented voxel diffusion
CN110633517B (zh) 一种用于三维场景的高效切片方法
Landier Boolean operations on arbitrary polyhedral meshes
Livesu et al. Loopy cuts: Surface-field aware block decomposition for Hex-meshing
Huang et al. A matching algorithm between precursory 3D process model and 2D working procedure drawing based on subgraph isomorphism
Dahu et al. A fast surface reconstruction algorithm based on Delaunay
Seong et al. Contouring 1-and 2-manifolds in arbitrary dimensions
Cao et al. Design of developable surface via CSA-based modification of boundary curves
Wang et al. An automated mesh generation algorithm for curved surfaces of ship longitudinal structures
Yang et al. Topology Guaranteed B-Spline Surface/Surface Intersection
CN114004174B (zh) 适用多套复杂网格耦合cfd计算的高效宿主单元搜索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant