一种面向STL文件的3D打印自适应分层方法技术

技术编号:32123754 阅读:14 留言:0更新日期:2022-01-29 19:11
本发明专利技术公开了一种面向STL文件的3D打印自适应分层方法,属于3D打印技术领域。一种面向STL文件的3D打印自适应分层方法,包括以下步骤:S1,设置切平面,获取与切平面相交的三角面片;S2,计算切平面轮廓和尖角高度;S3,根据轮廓数目将模型分为多个部分;S4,根据尖角高度和改善面积比率,对每一部分自适应分层;本发明专利技术,预处理中分层设置,控制基础精度;根据预设尖角高度误差阈值和面积差异比率阈值,进行自适应分层,直接控制打印精度和打印效率。直接控制打印精度和打印效率。直接控制打印精度和打印效率。

【技术实现步骤摘要】
一种面向STL文件的3D打印自适应分层方法


[0001]本专利技术涉及3D打印
,尤其涉及一种面向STL文件的3D打印自适应分层方法。

技术介绍

[0002]3D打印技术已经广泛应用在航空航天、高端汽车、医疗设备和建筑设计等领域中。STL文件是目前最通用的模型格式,它是由一些无序的三角面片及其法向量组成。尽管目前3D打印的方法多种多样,但都是将3维的模型,沿着打印方向切割成一系列的“2.5维”层轮廓。一般来说分为以下四个步骤:(1)选择打印方向,该方向可以是恒定的,也可以是变化的;(2)分层,分为均匀分层和自适应分层;(3)为每一层切片生成该层对应的多重轮廓;(4)在必要的地方增加支撑结构。
[0003]其中,自适应分层一直是一个关键步骤。自适应分层指的是根据待打印模型的几何特征,自动的决定每一层的厚度;该步骤直接影响了打印精度和打印效率。若层厚度过大,则可以较快的完成打印,但是打印精度会降低;若层厚度过小,则打印精度会提升,但是需要较长时间完成一个模型的打印。在大部分情况下,步骤(2)和(3)是耦合在一起的,因为轮廓对层厚度的决定有很大的指导意义,而最终的打印时的层轮廓需要在分层之后才能够生成。
[0004]在目前的自适应分层方法中,其对于精度与效率的取舍之间没有很好的解决方案。

技术实现思路

[0005]本专利技术的目的是提出一种面向STL文件的3D打印自适应分层方法,计算切面轮廓,通过尖角高度和改进的面积差异进行选择合并;以解决现有技术中自适应分层方法不能高效兼顾精度与效率之间的问题。
[0006]为了实现上述目的,本专利技术采用了如下技术方案:
[0007]一种面向STL文件的3D打印自适应分层方法,包括以下步骤:
[0008]S1,设置切平面,获取与切平面相交的三角面片;
[0009]S2,计算切平面轮廓和尖角高度;
[0010]S3,根据轮廓数目将模型分为多个部分;
[0011]S4,根据尖角高度和改善面积比率,对每一部分自适应分层。
[0012]优选的,在步骤S1中包括以下步骤:
[0013]S101,定义三角面片:
[0014]记,该STL文件含有n个三角面片,分别记作T
i
(i=1,2,...,n);三角面片的三个顶点分别记作T
i,j
(j=1,2,3),三个顶点按照Z坐标从小到大排序;顶点在X、Y、Z轴的坐标分别为T
i,j,k
(k=x,y,z);
[0015]S102,设置切平面:
[0016]设置打印精度为Δh,以Δh为间隔均匀分层设置切平面,步骤如下;
[0017]遍历三角面片,获得模型的Z坐标最大值,记作Z
max

[0018]Z
max
=max(T
i,3,z
),i=1,2,...,n;
[0019]根据Z
max
确定切平面的数目m,
[0020][0021]切平面用它的Z坐标表示,切平面P
t
(t=1,...,m)为
[0022]P
t
=(t

1)
×
Δh;
[0023]S103,获取与切平面相交的三角面片:
[0024]遍历三角面片,获得与切平面P
t
相交的三角面片的序号,记入集合A
t
,步骤如下:
[0025]S1031,初始化三角面片序号初始化i=1;
[0026]S1032,获取三角面片T
i
的Z坐标最小值Z
min
=T
i,1,z
和Z坐标最大值Z
max
=T
i,3,z

[0027]S1033,计算与该三角面片相交的切平面的序号的最小值和最大值
[0028]S1034,将三角面片T
i
加入到与之相交的切平面对应的集合A
t
中,
[0029]A
t
=A
t
∪{i},t=t
min
,t
min
+1,...,t
max

1,t
max

[0030]S1035,令i=i+1,若i<n,则转到S1032,否则结束。
[0031]优选的,在步骤S2中,计算切平面轮廓包括以下步骤:
[0032]S201,记切平面层轮廓C
t
和尖角高度h
t

[0033]记A
t
中三角面片的数目为n
t
,且切平面上的层轮廓C
t
用r
t
个多边形表示,即
[0034]S202,求第一个交点:
[0035]设三角面片的边为E
13
、E
12
、E
23
,其中E
13
与切平面P
t
相交,E
13
的两个顶点为V1、V3,两点的Z坐标为z1、z3;该三角面片的另一个顶点为V2,该点的Z坐标为z2;
[0036]则交点a1为
[0037][0038]S203,确定该三角面片另一个与切平面P
t
相交的边,设
[0039]f=(P
t

z2)(P
t

z3);
[0040]若f>0,则边E
12
与切平面P
t
相交;否则,边E
23
与切平面P
t
相交;
[0041]S204,确定另一个交点a2,并在集合中删除该三角面片;
[0042]S205,由交点a2所在的边确定下一个三角面片,计算下一个交点a3;
[0043]S206,重复上述操作,直到某次计算的交点a
s
与a1重合,得到第一个轮廓C
t,1
={a1,...,a
s
};
[0044]S207,若此时A
t
非空,则重复上述操作得到多个轮廓直到A
t
为空集停止。
[0045]优选的,在步骤S2中,计算尖角高度包括以下步骤:
[0046]记每个三角面片T
i
的法向量为normal
i
,且normal
i,k
,k=x,y,z分别表示法向量的X、Y、Z坐标;
[0047]则,每个三角面片对应的尖角高度为
[0048]Δh
i
=Δh
×
|normal
i,z
|;
[0049]切平面P
t
的尖角高度为A
t<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向STL文件的3D打印自适应分层方法,其特征在于,包括以下步骤:S1,设置切平面,获取与切平面相交的三角面片;S2,计算切平面轮廓和尖角高度;S3,根据轮廓数目将模型分为多个部分;S4,根据尖角高度和改善面积比率,对每一部分自适应分层。2.根据权利要求1所述的一种面向STL文件的3D打印自适应分层方法,其特征在于,在步骤S1中包括以下步骤:S101,定义三角面片:记,该STL文件含有n个三角面片,分别记作T
i
(i=1,2,...,n);三角面片的三个顶点分别记作T
i,j
(j=1,2,3),三个顶点按照Z坐标从小到大排序;顶点在X、Y、Z轴的坐标分别为T
i,j,k
(k=x,y,z);S102,设置切平面:设置打印精度为Δh,以Δh为间隔均匀分层设置切平面,步骤如下;遍历三角面片,获得模型的Z坐标最大值,记作Z
max
,Z
max
=max(T
i,3,z
),i=1,2,...,n;根据Z
max
确定切平面的数目m,切平面用它的Z坐标表示,切平面P
t
(t=1,...,m)为P
t
=(t

1)
×
Δh;S103,获取与切平面相交的三角面片:遍历三角面片,获得与切平面P
t
相交的三角面片的序号,记入集合A
t
,步骤如下:S1031,初始化三角面片序号初始化i=1;S1032,获取三角面片T
i
的Z坐标最小值Z
min
=T
i,1,z
和Z坐标最大值Z
max
=T
i,3,z
;S1033,计算与该三角面片相交的切平面的序号的最小值和最大值S1034,将三角面片T
i
加入到与之相交的切平面对应的集合A
t
中,A
t
=A
t
∪{i},t=t
min
,t
min
+1,...,t
max

1,t
max
;S1035,令i=i+1,若i<n,则转到S1032,否则结束。3.根据权利要求2所述的一种面向STL文件的3D打印自适应分层方法,其特征在于,在步骤S2中,计算切平面轮廓包括以下步骤:S201,记切平面层轮廓C
t
和尖角高度h
t
;记A
t
中三角面片的数目为n
t
,且切平面上的层轮廓C
t
用r
t
个多边形表示,即S202,求第一个交点:设三角面片的边为E
13
、E
12
、E
23
,其中E
13
与切平面P
t
相交,E
13
的两个顶点为V1、V3,两点的Z坐标为z1、z3;该三角面片的另一个顶点为V2,该点的Z坐标为z2;
则交点a1为S203,确定该三角面片另一个与切平面P
t
相交的边,设f=(P
t

z2)(P
t

z...

【专利技术属性】
技术研发人员:姜鑫胡一飞霍冠英苏澄王博伦李禾雄郑志明
申请(专利权)人:郑州航空港经济综合实验区空港人工智能研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1