一种用于3DP增材制造的快速切片方法技术

技术编号:24125570 阅读:32 留言:0更新日期:2020-05-13 04:28
一种快速3DP切片算法属于增材制造、3D打印技术领域。具体包括以下步骤:1.筛选出跨过切层的三角形;2.计算每个三角形的矩形thick包络;3.计算厚度为thick的边界像素。与现有流行的切片技术相比,本3DP切片方法能够区分三维模型的边界部分和内部填充部分,在边界部分保持各向厚度一致性。这有利于做彩色切片处理,或边界精细打印处理。算法快速完成切片,计算复杂度与模型三角面片数为线性关系,仅为O(n*D),其中n为模型的总三角面片数,D为切片点阵分辨率。

【技术实现步骤摘要】
一种用于3DP增材制造的快速切片方法
本专利技术属于增材制造、3D打印
,具体涉及一种用于3DP增材制造的快速切片方法。
技术介绍
在3D打印中,3DP打印工艺(立体喷墨打印法)的切层是像素点阵,分辨率一般是可调的。目前现有3DP切片技术中,一般不区分边界部分和内部填充部分。然而,切层的边界部分和内部填充部分的打印工艺有时是不同的。比如边界部分需要喷射得更细致,而内部填充部分可以喷射的粗糙一些,以提高打印速度;再比如在彩色3D打印中,边界部分需要喷射彩色墨滴,而内部填充部分则喷射白色或无色墨滴。因此,在切片算法中需要将边界部分区分出来,以做特定处理,切片的每一层是一个点阵,边界部分也是用点阵表示的,它有一定厚度,以离散像素表示。问题的难点在于,这个边界厚度在垂直于三维模型表面的法线方向上应保持一致,这使得计算复杂度增加,而三维模型数据量往往很大,三角面片数一般在几百兆,处理速度要求要很快。因此,急需提出一种能够区分三维模型的边界部分和内部填充部分,在边界部分保持各向厚度一致性的切片方法来解决上述问题。
技术实现思路
本专利技术提出一种快速3DP切片算法,并在边界部分保持法向厚度一致性,计算复杂度与模型三角面片数为线性关系,仅为O(n*D),其中n为模型的总三角面片数,D为切片点阵分辨率。一种快速3DP切片算法,具体步骤如下:步骤1.筛选出跨过切层的三角形:设模型边界需要厚度为thick毫米,在每个切层高度(level毫米),检查三维模型中每个三角形是否跨过level±thick(毫米)高度范围。即设三角形三个顶点为p1、p2、p3,如果p1、p2、p3的高度坐标同时大于level+thick或同时小于level-thick,则三角形没有跨过level±thick层面高度。否则是跨过,把该三角形加入切片运算集合R={待计算三角形}。步骤2.计算每个三角形的矩形thick包络:对集合R的每个三角形做XY平面投影,计算投影三角形的XY平面范围。即设三角形三个顶点为p1、p2、p3,它们在其X坐标最大值为Xmax,在X坐标最小值为Xmin,在Y坐标最大值为Ymax,在Y坐标最小值为Ymin,则三角形的XY平面投影范围是[Xmin,Xmax;Ymin,Ymax]。要求的三角形的矩形thick包络则是[Xmin-thick,Xmax+thick;Ymin-thick,Ymax+thick]矩形。步骤3.计算法向厚度为thick的边界像素对在level(毫米)高度得到的三维模型切片轮廓线,进行扫描线像素点填充,得到实体部分像素点集合V。对集合R的每个空间三角形a,计算其矩形thick包络的扫描线像素点填充,得到像素点集合S。对每一个既属于集合V(实体内部)又属于集合S(三角形a附近)的像素点p∈{V∩S},设空间坐标为p=[x,y,z],计算点p到空间三角形a所在平面的垂足q。如果满足下列条件之一,则该像素点是法向厚度为thick的边界像素点:1)、点q在三角形a内,且p到a的点面距离d小于thick;2)、点q在三角形a外,但在三角形a某个边的thick宽度矩形内,且p到该边的点边距离小于thick;3)、点q在三角形a外,且q在a的三条边的thick宽度矩形外,但p到某顶点的距离。小于thick。本专利技术的有益效果:与现有流行的切片技术相比,本3DP切片方法能够区分三维模型的边界部分和内部填充部分,在边界部分保持法向厚度一致性。这有利于做彩色切片处理,或边界精细打印处理。算法快速完成切片,计算复杂度与模型三角面片数为线性关系,仅为O(n*D),其中n为模型的总三角面片数,D为切片点阵分辨率。附图说明图1:一个封闭模型实体,蓝色为边界部分,横线为切平面图2:选出与level±thick水平切面相交的三角形,其中黑粗线部分为需要计算的跨过level±thick的三角形(侧影)集合R图3:空间三角形在切平面投影的thick矩形包络,其中虚线矩形为该三角形的thick包络。图4:对切平面上模型轮廓型进行像素行扫描,得到实体点阵图5:像素点p到模型三角形a的垂足q在三角形区域内。图6:垂足q在三角形区域外,但在边thick矩形范围内。图7:垂足q在三角形区域外,且在边thick矩形范围外,但在顶点thick距离范围内。图8:计算该空间三角形附近边界像素点的实例。具体实施方式下面结合附图说明对本专利技术提出的技术方案做进一步的描述。一种快速3DP切片算法,具体步骤如下:步骤1.筛选出跨过切层的三角形:如图2所示,设模型边界需要厚度为thick毫米,在每个切层高度(level毫米),检查三维模型中每个三角形是否跨过level±thick(毫米)高度范围。即设三角形三个顶点为p1、p2、p3,如果p1、p2、p3的高度坐标同时大于level+thick或同时小于level-thick,则三角形没有跨过level±thick层面高度。否则是跨过,把该三角形加入切片运算集合R={待计算三角形}。图2中黑粗线部分为需要计算的三角形侧影集合R。步骤2.计算每个三角形的矩形thick包络对集合R的每个三角形做XY平面投影,计算投影三角形的XY平面范围。即设三角形三个顶点为p1、p2、p3,它们在其X坐标最大值为Xmax,在X坐标最小值为Xmin,在Y坐标最大值为Ymax,在Y坐标最小值为Ymin,则三角形的XY平面投影范围是[Xmin,Xmax;Ymin,Ymax]。要求的三角形的矩形thick包络则是[Xmin-thick,Xmax+thick;Ymin-thick,Ymax+thick]矩形。图3为计算该空间三角形在切平面投影的thick矩形包络示意图。步骤3.计算厚度为thick的边界像素如图4所示,对在level(毫米)高度得到的三维模型切片轮廓线,进行扫描线像素点填充,得到实体部分像素点集合V。对集合R的每个空间三角形a,计算其矩形thick包络的扫描线像素点填充,得到像素点集合S。对每一个既属于集合V(实体内部)又属于集合S(三角形a附近)的像素点p∈{V∩S},设空间坐标为p=[x,y,z],计算点p到空间三角形a所在平面的垂足q。如果满足下列条件之一,则该像素点是法向厚度为thick的边界像素点:1)、如图5所示,点q在三角形a内,且p到a的点面距离d小于thick;2)、如图6所示,点q在三角形a外,但在三角形a某个边的thick宽度矩形内,且p到该边的点边距离小于thick;3)、如图7所示,点q在三角形a外,且q在a的三条边的thick宽度矩形外,但p到某顶点的距离小于thick。如图8所示,图中阴影部分为三维模型的thick厚度的边界(这里边界是外壳向内部增加的厚度),等间距水平线为切片高度,加粗的黑线部分表示一个三角形的侧面视图,浅粗线表示这个三角本文档来自技高网...

【技术保护点】
1.一种快速3DP切片算法,其特征在于,包括以下步骤:/n步骤1.筛选出跨过切层的三角形:/n设模型边界需要厚度为thick毫米,在每个切层高度(level毫米),检查三维模型中每个三角形是否跨过level±thick(毫米)高度范围;即设三角形三个顶点为p1、p2、p3,如果p1、p2、p3的高度坐标同时大于level+thick或同时小于level-thick,则三角形没有跨过level±thick层面高度;否则是跨过,把该三角形加入切片运算集合R={待计算三角形};/n步骤2.计算每个三角形的矩形thick包络:/n对集合R的每个三角形做XY平面投影,计算投影三角形的XY平面范围;即设三角形三个顶点为p1、p2、p3,它们在其X坐标最大值为Xmax,在X坐标最小值为Xmin,在Y坐标最大值为Ymax,在Y坐标最小值为Ymin,则三角形的XY平面投影范围是[Xmin,Xmax;Ymin,Ymax];要求的三角形的矩形thick包络则是[Xmin-thick,Xmax+thick;Ymin-thick,Ymax+thick]矩形;/n步骤3.计算法向厚度为thick的边界像素:/n对在level(毫米)高度得到的三维模型切片轮廓线,进行扫描线像素点填充,得到实体部分像素点集合V;对集合R的每个空间三角形a,计算其矩形thick包络的扫描线像素点填充,得到像素点集合S;对每一个既属于集合V(实体内部)又属于集合S(三角形a附近)的像素点p∈{V∩S},设空间坐标为p=[x,y,z],计算点p到空间三角形a所在平面的垂足q。如果满足下列条件之一,则该像素点是法向厚度为thick的边界像素点:/n1)、点q在三角形a内,且p到a的点面距离d小于thick;/n2)、点q在三角形a外,但在三角形a某个边的thick宽度矩形内,且p到该边的点边距离小于thick;/n3)、点q在三角形a外,且q在a的三条边的thick宽度矩形外,但p到某顶点的距离小于thick。/n...

【技术特征摘要】
1.一种快速3DP切片算法,其特征在于,包括以下步骤:
步骤1.筛选出跨过切层的三角形:
设模型边界需要厚度为thick毫米,在每个切层高度(level毫米),检查三维模型中每个三角形是否跨过level±thick(毫米)高度范围;即设三角形三个顶点为p1、p2、p3,如果p1、p2、p3的高度坐标同时大于level+thick或同时小于level-thick,则三角形没有跨过level±thick层面高度;否则是跨过,把该三角形加入切片运算集合R={待计算三角形};
步骤2.计算每个三角形的矩形thick包络:
对集合R的每个三角形做XY平面投影,计算投影三角形的XY平面范围;即设三角形三个顶点为p1、p2、p3,它们在其X坐标最大值为Xmax,在X坐标最小值为Xmin,在Y坐标最大值为Ymax,在Y坐标最小值为Ymin,则三角形的XY平面投影范围是[Xmin,Xmax;Ymin,Ymax];要求的三角形的矩形thick包...

【专利技术属性】
技术研发人员:徐杰
申请(专利权)人:北京恒创增材制造技术研究院有限公司
类型:发明
国别省市:北京;11

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

1