CN107599404B - 一种fdm三维打印垂直支撑模型的垂直投影求交方法 - Google Patents
一种fdm三维打印垂直支撑模型的垂直投影求交方法 Download PDFInfo
- Publication number
- CN107599404B CN107599404B CN201710858147.8A CN201710858147A CN107599404B CN 107599404 B CN107599404 B CN 107599404B CN 201710858147 A CN201710858147 A CN 201710858147A CN 107599404 B CN107599404 B CN 107599404B
- Authority
- CN
- China
- Prior art keywords
- patch
- model
- patch set
- support
- triangular
- 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
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明公开了一种FDM三维打印垂直支撑模型的垂直投影求交方法。它具体包括如下步骤:(1)基于STL网格模型对支撑区域进行搜索,扫成支撑轮廓;(2)对支撑轮廓进行垂直投影求交,具体为:对于一个待求支撑区域,看成一个从支撑区域向下投影而扫成的网格模型,这个模型在扫成中,遇到的零件表面为该支撑模型的底面,该底面和所有的侧面组成支撑模型;(3)重新网格化;(4)布尔并操作,并输出支撑模型。本发明的有益效果是:对垂直投影求交操作加以优化,即考虑顶面向‑Z方向投影求交的求解方法,以得到合适的支撑模型,大大简化了对于算法的要求。
Description
技术领域
本发明涉及三维打印相关技术领域,尤其是指一种FDM三维打印垂直支撑模型的垂直投影求交方法。
背景技术
FDM是“Fused Deposition Modeling”的简写形式,即为熔融沉积成型。搞懂FDM成型技术,首先我们需要转变思维。通常2D打印是在一张纸上(一个平面上)完成打印,而3D打印是完成一个立体模型的打印。FDM,通俗来讲就是利用高温将材料融化成液态,通过打印头挤出后固化,最后在立体空间上排列形成立体实物。
由于FDM设备的特殊性,数据预处理部分需要为零件生成支撑部分以防止加工过程中防止坍塌。基于已有STL模型生成支持FDM设备的支撑数据是一个复杂的问题,其中涉及到数字几何处理很难处理的布尔操作、容差处理、鲁棒性处理等问题。一般网格模型的布尔操作,其操作对算法要求较高,这主要表现在容差、求交效率、奇异判断、拓扑重建等方面。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种对算法要求较低的基于FDM三维打印垂直支撑模型的垂直投影求交方法。
为了实现上述目的,本发明采用以下技术方案:
一种FDM三维打印垂直支撑模型的垂直投影求交方法,具体包括如下步骤:
(1)基于STL网格模型对支撑区域进行搜索,扫成支撑轮廓;
(2)对支撑轮廓进行垂直投影求交,具体为:对于一个待求支撑区域,看成一个从支撑区域向下投影而扫成的网格模型,这个模型在扫成中,遇到的零件表面为该支撑模型的底面,该底面和所有的侧面组成支撑模型;
(3)重新网格化;
(4)布尔并操作,并输出支撑模型。
该方法实际先通过垂直支撑模型和物体模型的“布尔差”得到支撑体,然后经过重新网格化将这些支撑体进行布尔并操作得到,其中“垂直投影求交”实际为“布尔差”操作的实现。该方法对垂直投影求交操作加以优化,即考虑顶面向-Z方向投影求交的求解方法,以得到合适的支撑模型,大大简化了对于算法的要求。
作为优选,在步骤(1)中,支撑区域搜索目标是搜索需要支撑的模型表面,这些支撑区域分别表示了倾斜角度过大、悬挂点、悬挂边而导致的在加工过程中容易造成坍塌的情况,这些情况归结起来表示各个类的面片,在这些不同的面片中,倾斜面的判断比较简单,只要判断面法向和Z轴的夹角即可,而悬挂点和悬挂线的判断则要对网格模型进行几何分析。
作为优选,在得到需要支撑的各个类面片中包括了三角面片,而在得到需要支撑的三角面片后,需要基于它们之间的几何信息建立其拓扑关系,将具有公共边的三角面片合并,最终形成一个个连贯的区域。
作为优选,三角面片合并方法如下:所有需要支撑的三角面片组成一系列支撑区域,这些支撑区域通过对得到的三角面片进行聚类获得,具体为,对所有三角形进行两两测试,如果二者共边,则将该三角形合并为一个区域,所有相互邻接的三角面片组成待支撑区域。
作为优选,在步骤(2)中,垂直投影求交方法如下:
Step 1:支持顶面面片集合Sa向底面投影,得到一个平面区域 A,平面区域A为同平面三角形集合;
Step 2:计算落于平面区域A中的区域的三角面片集合W;
Step 3:对三角面片集合W中的三角形,计算其相互遮挡关系;
Step 4:组成支撑网格模型,其中:可见面片集合Vs、平面区域A、支持顶面面片集合Sa以及支持顶面面片集合Sa向下投影的侧面Hsa,组成新的支撑模型的实体;
Step 5:面片集合Nhs、可见面片集合Vs、平面区域A、支持顶面面片集合Sa组成新的支撑网格的面片集合。
作为优选,在步骤Step 2中,三角面片集合W获取方法如下:
Step 2.1:对网格模型面片集合St-支持顶面面片集合Sa中的每个三角形t,与平面区域A中的三角面片两两相交,其重叠区域为R,对重叠区域R进行三角化,得到三角形集合M;
Step 2.2:对三角形集合M中的每个三角面片,比较和支持顶面面片集合Sa的关系,如果高于支持顶面面片集合Sa中的面片,则放弃,否则进入三角面片集合W中。
作为优选,在步骤Step 3中,计算其相互遮挡关系的方法如下:
Step 3.1:记录已经就绪的可见面片集合为Vs,其中:初始的可见面片集合Vs=NULL;
Step 3.2:取三角面片集合W中的一个三角形t,计算三角形t 和可见面片集合Vs中的每个面片的关系,可见面片集合Vs中的任意面片为Ts,计算t和Ts之差,得到的区域则为新的可见面,对这个可见面进行三角化,得到可见面片集合Vs中的新的面片集合。
作为优选,在步骤Step 3.2中,t和Ts的关系有两种:(1)t 在Ts之上;(2)Ts在t之上;若t在Ts之上,则Ts将可能遮挡掉部分或者全部的t;若Ts在t之上,则t将可能遮挡掉部分或者全部的Ts。
作为优选,在步骤Step 4中,新的支撑模型的实体获取方法如下:
Step 4.1:将可见面片集合Vs向底面投影,得到新的底面Tvs,其中:新的底面Tvs和侧面Hsa相交;
Step 4.2:对新的底面Tvs的面片集合建立邻接关系,显然每条边对应一个新的侧面;
Step 4.3:对新的侧面进行三角化,得到面片集合Nhs。
本发明的有益效果是:对垂直投影求交操作加以优化,即考虑顶面向-Z方向投影求交的求解方法,以得到合适的支撑模型,大大简化了对于算法的要求。
下面结合具体实施方式对本发明做进一步的描述。
一种FDM三维打印垂直支撑模型的垂直投影求交方法,具体包括如下步骤:
(1)基于STL网格模型对支撑区域进行搜索,扫成支撑轮廓;
支撑区域搜索目标是搜索需要支撑的模型表面,这些支撑区域分别表示了倾斜角度过大、悬挂点、悬挂边而导致的在加工过程中容易造成坍塌的情况,这些情况归结起来表示各个类的面片,在这些不同的面片中,倾斜面的判断比较简单,只要判断面法向和Z轴的夹角即可,而悬挂点和悬挂线的判断则要对网格模型进行几何分析。
在得到需要支撑的各个类面片中包括了三角面片,而在得到需要支撑的三角面片后,需要基于它们之间的几何信息建立其拓扑关系,将具有公共边的三角面片合并,最终形成一个个连贯的区域。三角面片合并方法如下:所有需要支撑的三角面片组成一系列支撑区域,这些支撑区域通过对得到的三角面片进行聚类获得,具体为,对所有三角形进行两两测试,如果二者共边,则将该三角形合并为一个区域,所有相互邻接的三角面片组成待支撑区域。
(2)对支撑轮廓进行垂直投影求交,具体为:对于一个待求支撑区域,看成一个从支撑区域向下投影而扫成的网格模型,这个模型在扫成中,遇到的零件表面为该支撑模型的底面,该底面和所有的侧面组成支撑模型;
其中输入:支持顶面面片集合Sa,网格模型面片集合St;输出:支撑网格模型面片集合Ss;垂直投影求交方法如下:
Step 1:支持顶面面片集合Sa向底面投影,得到一个平面区域 A,平面区域A为同平面三角形集合;
Step 2:计算落于平面区域A中的区域的三角面片集合W;
Step 2.1:对网格模型面片集合St-支持顶面面片集合Sa中的每个三角形t,与平面区域A中的三角面片两两相交,其重叠区域为 R,对重叠区域R进行三角化,得到三角形集合M;
Step 2.2:对三角形集合M中的每个三角面片,比较和支持顶面面片集合Sa的关系,如果高于支持顶面面片集合Sa中的面片,则放弃,否则进入三角面片集合W中;
Step 3:对三角面片集合W中的三角形,计算其相互遮挡关系;
Step 3.1:记录已经就绪的可见面片集合为Vs,其中:初始的可见面片集合Vs=NULL;
Step 3.2:取三角面片集合W中的一个三角形t,计算三角形t 和可见面片集合Vs中的每个面片的关系,可见面片集合Vs中的任意面片为Ts,计算t和Ts之差,得到的区域则为新的可见面,对这个可见面进行三角化,得到可见面片集合Vs中的新的面片集合;
其中t和Ts的关系有两种:(1)t在Ts之上;(2)Ts在t之上;不失一般性,若t在Ts之上,则Ts将可能遮挡掉部分或者全部的t;若Ts在t之上,则t将可能遮挡掉部分或者全部的Ts;
Step 4:组成支撑网格模型,其中:可见面片集合Vs、平面区域A、支持顶面面片集合Sa以及支持顶面面片集合Sa向下投影的侧面Hsa,组成新的支撑模型的实体;
Step 4.1:将可见面片集合Vs向底面投影,得到新的底面Tvs,其中:新的底面Tvs和侧面Hsa相交;
Step 4.2:对新的底面Tvs的面片集合建立邻接关系,显然每条边对应一个新的侧面;
Step 4.3:对新的侧面进行三角化,得到面片集合Nhs;
Step 5:面片集合Nhs、可见面片集合Vs、平面区域A、支持顶面面片集合Sa组成新的支撑网格的面片集合。
(3)重新网格化;
(4)布尔并操作,并输出支撑模型。
在步骤(2)中,大量用到同一平面内的两个三角形之间的差运算,两个三角形相互质检可以具有0、1、2、3、4、6个交点,这些情况需要分别处理,并进行三角化,得到新的面片集合;这一问题已经具有比较成熟的算法,具体算法可以采用如下文献中的方法:Philippe GUigue,Olivier Devillers.Fast and Robust Triangle-Triangle OverlapTest Using Orientation Predicates[J].Journal of Graphics Tools.2003,8(1):25-32.
在步骤(3)中,重新网格化就是将上述三角网格边界处的网格重新建立对应关系,从而保证得到的支撑模型为有效的二维流形,这方面的算法已经比较成熟,如:PierreAlliez,et,al.Anisotropic polygonal remeshing.ACM SIGGRAPH 2003Papers.
在步骤(4)中,对一般的布尔并操作,其核心的操作为两个:1) 模型表面求交,得到相交交线;2)物体表面被交线分割的部分相互判断包含关系,即判断物体的两两之间的包含关系。其中第二步骤费时且容易出错,这事由于判断一个点是否在网格内部或者外部难以做的鲁棒高效,在本方法中,这一问题不再存在,这是因为基于前面所描述的垂直投影求交方法,所有的体不会相互包容,而仅仅是面邻接贴合。
该方法实际先通过垂直支撑模型和物体模型的“布尔差”得到支撑体,然后经过重新网格化将这些支撑体进行布尔并操作得到,其中“垂直投影求交”实际为“布尔差”操作的实现。该方法对垂直投影求交操作加以优化,即考虑顶面向-Z方向投影求交的求解方法,以得到合适的支撑模型,大大简化了对于算法的要求。
Claims (8)
1.一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,具体包括如下步骤:
(1)基于STL网格模型对支撑区域进行搜索,扫成支撑轮廓;
(2)对支撑轮廓进行垂直投影求交,具体为:对于一个待求支撑区域,看成一个从支撑区域向下投影而扫成的网格模型,这个模型在扫成中,遇到的零件表面为该支撑模型的底面,该底面和所有的侧面组成支撑模型;
其中:垂直投影求交方法如下:
Step 1:支持顶面面片集合Sa向底面投影,得到一个平面区域A,平面区域A为同平面三角形集合;
Step 2:计算落于平面区域A中的区域的三角面片集合W;
Step 3:对三角面片集合W中的三角形,计算其相互遮挡关系;
Step 4:组成支撑网格模型,其中:可见面片集合Vs、平面区域A、支持顶面面片集合Sa以及支持顶面面片集合Sa向下投影的侧面Hsa,组成新的支撑模型的实体;
Step 5:面片集合Nhs、可见面片集合Vs、平面区域A、支持顶面面片集合Sa组成新的支撑网格的面片集合;
(3)重新网格化;
(4)布尔并操作,并输出支撑模型。
2.根据权利要求1所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在步骤(1)中,支撑区域搜索目标是搜索需要支撑的模型表面,这些支撑区域分别表示了倾斜角度过大、悬挂点、悬挂边而导致的在加工过程中容易造成坍塌的情况,这些情况归结起来表示各个类的面片,在这些不同的面片中,倾斜面的判断比较简单,只要判断面法向和Z轴的夹角即可,而悬挂点和悬挂线的判断则要对网格模型进行几何分析。
3.根据权利要求2所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在得到需要支撑的各个类面片中包括了三角面片,而在得到需要支撑的三角面片后,需要基于它们之间的几何信息建立其拓扑关系,将具有公共边的三角面片合并,最终形成一个个连贯的区域。
4.根据权利要求3所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,三角面片合并方法如下:所有需要支撑的三角面片组成一系列支撑区域,这些支撑区域通过对得到的三角面片进行聚类获得,具体为,对所有三角形进行两两测试,如果二者共边,则将该三角形合并为一个区域,所有相互邻接的三角面片组成待支撑区域。
5.根据权利要求1所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在步骤Step 2中,三角面片集合W获取方法如下:
Step 2.1:对网格模型面片集合St-支持顶面面片集合Sa中的每个三角形t,与平面区域A中的三角面片两两相交,其重叠区域为R,对重叠区域R进行三角化,得到三角形集合M;
Step 2.2:对三角形集合M中的每个三角面片,比较和支持顶面面片集合Sa的关系,如果高于支持顶面面片集合Sa中的面片,则放弃,否则进入三角面片集合W中。
6.根据权利要求1所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在步骤Step 3中,计算其相互遮挡关系的方法如下:
Step 3.1:记录已经就绪的可见面片集合为Vs,其中:初始的可见面片集合Vs=NULL;
Step 3.2:取三角面片集合W中的一个三角形t,计算三角形t和可见面片集合Vs中的每个面片的关系,可见面片集合Vs中的任意面片为Ts,计算t和Ts之差,得到的区域则为新的可见面,对这个可见面进行三角化,得到可见面片集合Vs中的新的面片集合。
7.根据权利要求6所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在步骤Step 3.2中,t和Ts的关系有两种:(1)t在Ts之上;(2)Ts在t之上;若t在Ts之上,则Ts将可能遮挡掉部分或者全部的t;若Ts在t之上,则t将可能遮挡掉部分或者全部的Ts。
8.根据权利要求1所述的一种基于FDM三维打印垂直支撑模型的垂直投影求交方法,其特征是,在步骤Step 4中,新的支撑模型的实体获取方法如下:
Step 4.1:将可见面片集合Vs向底面投影,得到新的底面Tvs,其中:新的底面Tvs和侧面Hsa相交;
Step 4.2:对新的底面Tvs的面片集合建立邻接关系,显然每条边对应一个新的侧面;
Step 4.3:对新的侧面进行三角化,得到面片集合Nhs。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710858147.8A CN107599404B (zh) | 2017-09-21 | 2017-09-21 | 一种fdm三维打印垂直支撑模型的垂直投影求交方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710858147.8A CN107599404B (zh) | 2017-09-21 | 2017-09-21 | 一种fdm三维打印垂直支撑模型的垂直投影求交方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107599404A CN107599404A (zh) | 2018-01-19 |
CN107599404B true CN107599404B (zh) | 2020-01-17 |
Family
ID=61061599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710858147.8A Active CN107599404B (zh) | 2017-09-21 | 2017-09-21 | 一种fdm三维打印垂直支撑模型的垂直投影求交方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107599404B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111958967A (zh) * | 2020-08-18 | 2020-11-20 | 中科院广州电子技术有限公司 | 一种fdm三维打印垂直支撑模型的布尔操作方法 |
CN112861201B (zh) * | 2021-01-21 | 2022-04-05 | 浙江大学 | 一种基于支撑点膨胀融合的3d打印支撑区域生成方法 |
CN114013045B (zh) * | 2021-10-28 | 2023-12-05 | 深圳市创想三维科技股份有限公司 | 3d打印文件的生成方法、装置、计算机设备及存储介质 |
CN116872500B (zh) * | 2023-09-07 | 2023-12-29 | 苏州闪铸三维科技有限公司 | 一种通过生成和消除自相交实现z轴补偿的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510225B (zh) * | 2009-03-26 | 2011-03-30 | 山东理工大学 | 产品stl模型布尔运算方法 |
CN103823928B (zh) * | 2014-02-19 | 2016-08-17 | 浙江大学 | 基于扫描偏置的三维打印零件支撑自动生成方法 |
CN104504186B (zh) * | 2014-12-10 | 2017-10-31 | 广州中国科学院先进技术研究所 | 一种基于3d打印数据处理软件平台的实现方式 |
CN105761297A (zh) * | 2016-01-22 | 2016-07-13 | 贺兵 | 3d打印中面向stl三维模型的待加支撑特征元素的快速提取算法 |
CN106373184B (zh) * | 2016-08-30 | 2019-08-02 | 苏州紫金港智能制造装备有限公司 | 一种三维打印模型摆放所需支撑量快速估算方法 |
-
2017
- 2017-09-21 CN CN201710858147.8A patent/CN107599404B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107599404A (zh) | 2018-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107599404B (zh) | 一种fdm三维打印垂直支撑模型的垂直投影求交方法 | |
WO2021000720A1 (zh) | 一种基于点云边界构建小曲率零件机器人加工路径曲线的方法 | |
CN111243090B (zh) | 土方量计算方法及系统 | |
US7133551B2 (en) | Semi-automatic reconstruction method of 3-D building models using building outline segments | |
TWI491848B (zh) | 點雲提取系統及方法 | |
CN102944174B (zh) | 一种三维激光点云数据的去噪与精简方法及系统 | |
CN109993783A (zh) | 一种面向复杂三维建筑物点云的屋顶及侧面优化重建方法 | |
CN110276732B (zh) | 一种顾及地形特征线要素的山区点云空洞修复方法 | |
CN109900338B (zh) | 一种路面坑槽体积测量方法及装置 | |
CN104463871A (zh) | 基于车载LiDAR点云数据的街景面片提取及优化方法 | |
CN107672180A (zh) | 一种基于逆向工程技术的3d打印精度检测方法 | |
CN105761309B (zh) | 一种处理数字地面模型接缝的方法及装置 | |
CN112037318A (zh) | 三维岩体结构模型的构建方法、系统及模型的应用 | |
Rashidi et al. | Video to BrIM: Automated 3D as-built documentation of bridges | |
CN109767497A (zh) | 一种自动检测航空叶片表面质量的检测方法 | |
CN101270982A (zh) | 基于立体视觉的风洞模型外形监测方法 | |
CN107599413A (zh) | 一种fdm三维打印垂直支撑模型的布尔操作方法 | |
CN111958967A (zh) | 一种fdm三维打印垂直支撑模型的布尔操作方法 | |
US11014307B2 (en) | Method for generating and depicting additive manufacturing build supports | |
CN115229813A (zh) | 一种基于机器视觉的焊接手眼标定系统及标定方法 | |
CN114419186A (zh) | 一种基于原始轨迹生成道路分歧合流点的方法 | |
Patel et al. | Automatic CAD model topology generation | |
CN112985288A (zh) | 一种基于网格投影点云处理技术的隧道变形监测分析方法 | |
CN103217118A (zh) | 全自动smt网板厚度测量方法 | |
Patel et al. | Stitching and filling: Creating conformal faceted geometry |
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 |