CN114434802A - 3d打印轮廓偏置填充路径规划算法 - Google Patents
3d打印轮廓偏置填充路径规划算法 Download PDFInfo
- Publication number
- CN114434802A CN114434802A CN202111562018.7A CN202111562018A CN114434802A CN 114434802 A CN114434802 A CN 114434802A CN 202111562018 A CN202111562018 A CN 202111562018A CN 114434802 A CN114434802 A CN 114434802A
- Authority
- CN
- China
- Prior art keywords
- contour
- grid
- offset
- grids
- edge
- 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.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
- B29C64/393—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
- B33Y50/02—Data acquisition or data processing for additive manufacturing for controlling or regulating additive manufacturing processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Abstract
本发明公开了一种3D打印轮廓偏置填充路径规划算法,主要包括如下步骤:步骤1,获取偏置轮廓链表;步骤2,确定与X坐标轴成θ角度直线逼近偏置轮廓曲线,确定外接正方形;步骤3,确定对应的矩阵阶数并递推计算得到Hilbert矩阵,划分网格并对网格编号;步骤4,确定网格与偏置轮廓的相对位置关系,找出与偏置轮廓相交的边缘网格并重新确定扫描路径连接点;步骤5,判断边缘网格连接点之间偏置轮廓的凹凸性,若呈凹陷状,则将该段凹陷轮廓嵌入两边缘网格连接点之间;步骤6,按照网格编号对从小到大进行排序,顺序连接网格连接点得到数条有序的路径曲线。步骤7,改变θ值,重复步骤1‑6,直到完成所有切层的填充路径规划。
Description
技术领域
本发明属于3D打印前处理技术领域,涉及3D打印轮廓偏置填充路径规划算法。
背景技术
目前,国内所使用的前处理软件大多来自国外的开源软件或者进行简单的汉化,这些软件虽说可以完成大多模型的预处理工作,但是算法效率低、稳定性差,特别是对于较复杂模型的前处理,对核心算法的理解并不深刻。目前现有的填充路径规划方式主要有平行线填充、偏置填充、分区填充。平行线填充算法简单且速度较快,但扫描线均为平行直线,每条路径的收缩应力均为同一方向,增加了制件的翘曲变形。偏置填充可以减小翘曲变形且打印头空行程较少,但扫描路径算法计算复杂度高。分区填充对复杂轮廓可以化繁为简,但制件各方向的力学性能各异。
由于Hilbert曲线的连接点为网格中心点,针对复杂轮廓划分网格时,边缘网格中心点有可能在轮廓内部,也有可能在轮廓外部,这样规划的填充路径可能与轮廓粘连不牢固或超出轮廓的现象。
发明内容
本发明的目的是提供一种3D打印轮廓偏置填充路径规划算法,采用该算法能够实现填充线与轮廓线的有效粘连。
本发明所采用的技术方案是,3D打印轮廓偏置填充路径规划算法,具体包括如下步骤:
步骤1,根据分层得到轮廓链表,剔除链表中的细小轮廓线后进行等距偏置,得到偏置轮廓链表;
步骤2,针对步骤1得到的偏置轮廓链表,确定与X坐标轴成θ角度直线逼近偏置轮廓曲线,找出偏置轮廓的外接矩形,从而确定外接正方形;
步骤3,根据填充密度与Hilbert矩阵的阶数的关系,确定对应的矩阵阶数并递推计算得到Hilbert矩阵;然后根据步骤2得到的外接正方形划分网格并对网格编号;
步骤4,确定网格与偏置轮廓的相对位置关系,舍掉偏置轮廓外的网格,找出与偏置轮廓相交的边缘网格并重新确定扫描路径连接点;
步骤5,判断边缘网格连接点之间偏置轮廓的凹凸性,若呈凹陷状,则将该段凹陷轮廓嵌入两边缘网格连接点之间;
步骤6,按照网格编号从小到大进行排序,顺序连接网格连接点得到数条有序的路径曲线。
本发明的特点还在于:
步骤1的具体过程为:
步骤1.1,遍历轮廓链表,合并轮廓中的细小轮廓,得到新的轮廓链表;
步骤1.2,设置偏置距离L,遍历新的轮廓链表,依次进行等距偏置,得到偏置的轮廓数据链表。
步骤2包括如下步骤:
步骤2.1,过打印边界矩形的四个顶点做正方形,第二象限正方形边与X轴正方向成θ角度;
步骤2.2,遍历偏置轮廓链表,逐点与正方形边求矩,分别找出轮廓上与各正方形边距离最近的点;从而确定偏置轮廓的外接矩形;
步骤2.3,在外接矩形的基础上,以矩形较长边为边长,确定一个与X轴成θ角度的外接正方形。
所述步骤3的具体过程为:
步骤3的具体过程为:
步骤3.1,求整数最小Hilbert矩阵阶数K,满足以下公式:
其中,b线材挤压后宽度;M为填充密度设置参数0-1;D为轮廓外接正方形边长;
步骤3.2,递推求得K阶Hilbert矩阵;
步骤3.3,以外接正方形的一顶点为起始点划分网格,以外接最小正方形的顶点(X2,Y2)为起始点,计算每个网格的顶点及中心点坐标,具体为:
根据如下公式计算每个网格的边长为d:
遍历轮廓线链表,求得该层轮廓线的x_min,x_max,y_min和y_max,确定轮廓的最小外接正方形对角点坐标(x_min,y_min),(x_max,y_max),并计算各顶点的坐标x,y,z.计算过程如下:
x=x_min+j*d
y=y_min+i*d
z=n*k
其中,i、j表示遍历循环的次数,d表示网格的边长,n为层数,k为分层的厚度;
计算网格中心点坐标(cx、cy)的计算公式如下所示:
其中,m表示x轴方向上的第几个网格,n表示y方向上的第几个网格。
步骤4具体包括如下步骤:
步骤4.1,遍历网格链表,根据跨立公式判断网格四个顶点与轮廓线位置关系;
步骤4.2,由四个顶点的mark参数可以确定每个网格与轮廓线位置关系,若网格的四个顶点全在轮廓内部,则网格flag参数标记为2;若四个顶点全在轮廓外部,则网格flag参数标记为-1;根据网格四顶点与轮廓线位置关系,确定每个网格与轮廓线位置关系并找出与轮廓线相交的边缘网格;
步骤4.3,若边缘网格与轮廓交于a1,a2两点。过两点中点做直线垂直于差量较大的坐标轴方向,直线交于偏置轮廓与C点,将C点代替网格中心点作为边缘网格的连接点。
步骤5的具体过程为:
步骤5.1,对边缘网格利用边缘网格扫描路径连接点的确定方法重新计算连接点,并将新的连接点作为轮廓点插入轮廓链表;
步骤5.2,判断编号相邻的两个边缘网格连接点之间轮廓曲线的凹凸性;
步骤5.3,若该段轮廓曲线为凸状,两个边缘网格之间直线连接;若该段轮廓曲线为内凹状,则将该段轮廓曲线嵌入两个边缘网格之间。
步骤6的具体过程为:
步骤6.1,采用直接插入排序法对网格进行排序将网格按Hilbert矩阵元素从小到大进行排序;
步骤6.2,遍历得到的有序网格链表,依次将网格连接点坐标按照Gcode文件规则输出,最终生成Gcode指令文件。
本发明的有益效果是:通过将轮廓线等距偏置后,确定偏置轮廓上一点为边缘网格连接点。由于Hilbert曲线的连接点为网格中心点,对复杂轮廓划分网格后,由于各边缘网格中心点到轮廓距离不一,生成的填充线会出现与轮廓粘连不良或超出轮廓形成毛刺的现象。通过找出偏置轮廓上一点作为边缘网格的连接点,并将内凹偏置轮廓段嵌入路径中,既避免了直线连接跨域边界的现象,又增加了填充线与轮廓的粘结。同时由于Hilbert曲线为一条连续曲线,生成的填充路径有很好的连续性,降低了打印头的启停次数。
附图说明
图1是复杂轮廓划分网格后边缘网格中心点示意图;
图2是本发明3D打印轮廓偏置填充路径规划算法中基于Hilbert曲线路径规划示意图;
图3是本发明3D打印轮廓偏置填充路径规划算法中基于Hilbert曲线填充路径规划流程图;
图4是本发明3D打印轮廓偏置填充路径规划算法中轮廓外接矩形确定示意图;
图5是本发明3D打印轮廓偏置填充路径规划算法中对复杂轮廓进行填充路径规划后的填充路径图;
图6是本发明3D打印轮廓偏置填充路径规划算法中划分网格原理图;
图7是本发明3D打印轮廓偏置填充路径规划算法中边缘网格连接点确定原理图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明3D打印轮廓偏置填充路径规划算法,包括以下步骤:
步骤1,分层后得到轮廓链表,首先剔除轮廓链表中的细小轮廓线,并依次逐点进行等距偏置,得到偏置轮廓链表;
步骤1具体按如下步骤实施:
步骤1.1,设置阈值D_MIN,遍历轮廓链表,若轮廓线段长度小于D_MIN,则合并原始轮廓中的细小轮廓;得到新的轮廓链表。
步骤1.2,设置偏置距离L为打印头出丝直径的1/2,遍历新的轮廓链表,依次进行等距偏置,得到偏置的轮廓数据链表;
步骤2,针对步骤1得到的数据链表,利用与X坐标轴成θ角度直线逼近偏置轮廓曲线,找出与坐标轴旋转θ角度的偏置轮廓曲线外接矩形,确定最小外接正方形;
步骤2具体按如下步骤实施:
如图2所示,打印机的X轴和Y轴打印范围为100mm*100mm,正方形为最大打印边界。圆形曲线代表分层后的一个切层轮廓,要获得旋转一定角度的外接矩形。具体步骤如下:
步骤2.1,首先过打印边界矩形四点(50,50)、(-50,50)、(-50,-50)和(50,-50)做四条直线,第二四象限直线与X轴正方向成θ角度,一三象限直线与二四象限直线垂直。
L1:y=k1x+b1,L2:y=k2x+b2,L3:y=k3x+b3,L4:y=k4x+b4,参见图4;
步骤2.2,以第二象限为例,过(-50,50)点做直线y=k2x+b2,与X轴成θ角度;遍历轮廓链表,逐个求轮廓点与直线y=k2x+b2的距离d,比较找出点(x2,y2)与直线距离最短d_min;平行于直线y=k2x+b2,过点f(x2,y2)做直线L22:y=k2x+b22;同理,可以求出点e(x1,y1)、g(x3,y3)以及h(x4,y4),分别过这些点做平行于直线L11:y=k1x+b1、L3:y=k3x+b3以及L4:y=k4x+b4的直线,并求得直线L1:y=k1x+b11;直线L33:y=k3x+b33;直线L44:y=k4x+b44;
步骤2.3,由步骤2.2求得的直线y=k1x+b11、y=k2x+b22、y=k3x+b33以及y=k4x+b44,四条直线两两相交,可分别求得交点E(X1,Y1)、F(X2,Y2)、G(X3,Y3)以及H(X4,Y4),这四点构成与X轴成θ角度的外接矩形。
步骤3,根据填充密度,确定Hilbert矩阵的阶数K,并递推计算K阶Hilbert矩阵;对外接正方形划分网格并对网格进行编号;
步骤3具体按如下步骤实施:
步骤3.1,求整数最小Hilbert矩阵阶数K,满足以下公式:
其中,b为线材挤压后宽度;M为填充密度设置参数0-1;D为轮廓外接正方形边长;确定最小的整数K满足上式,K为Hilbert矩阵级数。
其中,H2 k+1为2k+1×2k+1矩阵;ones2 k的元素全为1;H2 k_Inv为H2 k的横向翻转矩阵;H2 k_flipud为H2 k的纵向翻转矩阵。H2 1=[1,2,3,4]。
步骤3.3,以外接最小正方形的顶点(X2,Y2)为起始点,计算每个网格的顶点及中心点坐标。
根据以下公式计算每个网格的边长为d。
如图6所示,遍历轮廓线链表,求得该层轮廓线的x_min,x_max,y_min和y_max,确定轮廓的最小外接正方形对角点坐标(x_min,y_min),(x_max,y_max),并计算各顶点的坐标x,y,z.计算过程如下:
x=x_min+j*d
y=y_min+i*d
z=N*k
其中,i,j表示遍历循环的次数,d表示网格的边长,N为层数,k为分层的厚度。
计算网格中心点c(cx、cy)的计算公式如下所示:
其中,m表示x轴方向上的第几个网格,n表示y方向上的第几个网格。
步骤4,确定网格与偏置轮廓的相对位置关系,若网格在偏置轮廓外面,舍掉该网格;若网格在偏置轮廓里面,则将网格中心点作为扫描路径的连接点;若网格与偏置轮廓相交,则重新确定扫描路径连接点;
步骤4具体按如下步骤实施:
步骤4.1,遍历网格链表,根据跨立公式判断网格四个顶点与轮廓线位置关系。
如果要判断线段ab与线段cd是否相交可以采用以下公式:
步骤4.2,由四个顶点的mark参数可以确定每个网格与轮廓线位置关系,若网格的四个顶点全在轮廓内部,则网格flag参数标记为2;若四个顶点全在轮廓外部,则网格flag参数标记为-1;其余情况则说明网格与轮廓线相交,网格flag参数标记为1。根据网格四顶点与轮廓线位置关系,确定每个网格与轮廓线位置关系并找出与轮廓线相交的边缘网格(同步骤4.1);
步骤4.3,如图7所示,若边缘网格与轮廓交于a1,a2两点。过两点中点做直线垂直于差量较大的坐标轴方向,直线交于偏置轮廓与C点,将C点代替网格中心点作为边缘网格的连接点;
步骤5,判断边缘网格连接点之间偏置轮廓的凹凸性,若两边缘网格连接点之间轮廓呈外凸状,则将两边缘网格连接点用直线连接;若两边缘网格连接点之间轮廓呈凹陷状,则将该段凹陷轮廓顶点嵌入两边缘网格连接点之间;
步骤5具体按如下步骤实施:
步骤5.1,对边缘网格利用边缘网格扫描路径连接点的确定方法重新计算连接点,并将新的连接点作为轮廓点插入轮廓链表;
步骤5.2,判断编号相邻的两个边缘网格连接点之间轮廓曲线的凹凸性;
步骤5.3,若该段轮廓曲线为凸状,两个边缘网格之间直线连接;若该段轮廓曲线为内凹状,则将该段轮廓曲线嵌入两个边缘网格之间。
步骤6,按照网格编号对从小到大进行排序,按顺序连接网格连接点得到数条有序的路径曲线。
步骤6具体按如下步骤实施:
步骤6.1,采用直接插入排序法对网格进行排序将网格按Hilbert矩阵元素从小到大进行排序;
步骤6.2,遍历得到的有序网格链表,依次将网格连接点坐标按照Gcode文件规则输出,最终生成Gcode指令文件。
重复执行上述过程,将三维模型的所有切层的填充路径工作完成。
图1为复杂轮廓划分网格后边缘网格中心点示意图。图2为基于Hilbert曲线生成的填充路径示意图。图3为本发明算法基于Hilbert曲线的填充路径规划算法的算法流程图,主要分为轮廓等距偏置、划分网格及边缘网格连接点确定、内凹轮廓段嵌入填充路径三大部分。图4为本发明算法中轮廓外接矩形确定示意图。图5为本发明算法对哆啦A梦模型的一层复杂轮廓进行填充路径规划处理后的显示结果。
哆啦A梦的一层复杂轮廓,呈不规则图形。如果采用Hilbert曲线对此轮廓进行填充,如图1所示,边缘网格中心点有可能在轮廓内部,也有可能在轮廓外部。而采用图2所示的本发明方法,通过对轮廓进行等距偏置,确定边缘网格与偏置轮廓的连接点,连接点为偏置轮廓上一点,从而边缘网格的连接点于轮廓相差偏置距离,使填充线与轮廓得到有效粘连。
本发明方法具体实施步骤见图3,
步骤1,根据分层后得到轮廓链表,剔除链表中的细小轮廓线后进行等距偏置,得到偏置轮廓链表;
具体步骤如图3所示
(1)遍历轮廓链表,合并轮廓中的细小轮廓,得到新的轮廓链表。
(2)设置偏置距离L为打印头出丝直径的1/2,遍历新的轮廓链表,依次进行等距偏置,得到偏置的轮廓数据链表;
步骤2,针对上步得到的偏置轮廓链表,确定与X坐标轴成θ角度直线逼近偏置轮廓曲线,找出偏置轮廓的外接矩形,从而确定外接正方形;
具体方法如图4所示
(1)过打印边界矩形的四个顶点做正方形,第二象限正方形边与X轴正方向成θ角度。
(2)遍历偏置轮廓链表,逐点与正方形边求矩,分别找出轮廓上与各正方形边距离最近的点;从而确定偏置轮廓的外接矩形。
(3)在外接矩形的基础上,以矩形较长边为边长,确定一个与X轴成θ角度的外接正方形。
步骤3,根据填充密度与Hilbert矩阵的阶数的关系,确定对应的矩阵阶数并递推计算得到Hilbert矩阵;然后根据外接正方形划分网格并对网格编号;
(1)根据填充密度与Hilbert矩阵阶数的关系,求得最小Hilbert矩阵阶数K并递推求得K阶Hilbert矩阵;
(2)以外接正方形的一顶点为起始点划分网格,根据Hilbert矩阵元素对网格进行编号并计算每个网格的顶点及中心点坐标。
步骤4,确定网格与偏置轮廓的相对位置关系,舍掉偏置轮廓外的网格,找出与偏置轮廓相交的边缘网格并重新确定扫描路径连接点;
(1)遍历网格链表,根据跨立公式判断网格四个顶点与轮廓线位置关系;
(2)根据网格四顶点与轮廓线位置关系,确定每个网格与轮廓线位置关系并找出与轮廓线相交的边缘网格;
(3)若边缘网格与轮廓交于两点。过两点中点做直线垂直于差量较大的坐标轴方向,直线与偏置轮廓求交,将交点作为边缘网格的连接点;
步骤5,判断边缘网格连接点之间偏置轮廓的凹凸性,若呈凹陷状,则将该段凹陷轮廓嵌入两边缘网格连接点之间;
(1)对边缘网格利用边缘网格扫描路径连接点的确定方法重新计算连接点,并将新的连接点作为轮廓点插入轮廓链表;
(2)判断编号相邻的两个边缘网格连接点之间轮廓曲线的凹凸性;
(3)若该段轮廓曲线为凸状,两个边缘网格之间直线连接;若该段轮廓曲线为内凹状,则将该段轮廓曲线嵌入两个边缘网格之间。
步骤6,按照网格编号对从小到大进行排序,顺序连接网格连接点得到数条有序的路径曲线。
(1)采用直接插入排序法对网格进行排序将网格按Hilbert矩阵元素从小到大进行排序;
(2)遍历得到的有序网格链表,依次将网格连接点坐标按照Gcode文件规则输出,最终生成Gcode指令文件。
步骤7,改变θ值,依次进行步骤1-6,完成所有切层的填充路径规划。
本发明算法,通过将轮廓线等距偏置后,找出偏置轮廓上一点作为边缘网格的连接点,并将内凹偏置轮廓段嵌入路径中,既避免了直线连接跨域边界的现象,又增加了填充线与轮廓的粘结(见图5)。同时由于Hilbert曲线为一条连续曲线,生成的填充路径有很好的连续性,降低了打印头的启停次数。
Claims (7)
1.3D打印轮廓偏置填充路径规划算法,其特征在于:具体包括如下步骤:
步骤1,根据分层得到轮廓链表,剔除链表中的细小轮廓线后进行等距偏置,得到偏置轮廓链表;
步骤2,针对步骤1得到的偏置轮廓链表,确定与X坐标轴成θ角度直线逼近偏置轮廓曲线,找出偏置轮廓的外接矩形,从而确定外接正方形;
步骤3,根据填充密度与Hilbert矩阵的阶数的关系,确定对应的矩阵阶数并递推计算得到Hilbert矩阵;然后根据步骤2得到的外接正方形划分网格并对网格编号;
步骤4,确定网格与偏置轮廓的相对位置关系,舍掉偏置轮廓外的网格,找出与偏置轮廓相交的边缘网格并重新确定扫描路径连接点;
步骤5,判断边缘网格连接点之间偏置轮廓的凹凸性,若呈凹陷状,则将该段凹陷轮廓嵌入两边缘网格连接点之间;
步骤6,按照网格编号从小到大进行排序,顺序连接网格连接点得到数条有序的路径曲线。
2.根据权利要求1所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤1的具体过程为:
步骤1.1,遍历轮廓链表,合并轮廓中的细小轮廓,得到新的轮廓链表;
步骤1.2,设置偏置距离L,遍历新的轮廓链表,依次进行等距偏置,得到偏置的轮廓数据链表。
3.根据权利要求2所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤2包括如下步骤:
步骤2.1,过打印边界矩形的四个顶点做正方形,第二象限正方形边与X轴正方向成θ角度;
步骤2.2,遍历偏置轮廓链表,逐点与正方形边求矩,分别找出轮廓上与各正方形边距离最近的点;从而确定偏置轮廓的外接矩形;
步骤2.3,在外接矩形的基础上,以矩形较长边为边长,确定一个与X轴成θ角度的外接正方形。
4.根据权利要求3所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤3的具体过程为:
步骤3.1,求整数最小Hilbert矩阵阶数K,满足以下公式:
其中,b线材挤压后宽度;M为填充密度设置参数0-1;D为轮廓外接正方形边长;
步骤3.2,递推求得K阶Hilbert矩阵;
步骤3.3,以外接正方形的一顶点为起始点划分网格,以外接最小正方形的顶点(X2,Y2)为起始点,计算每个网格的顶点及中心点坐标,具体为:
根据如下公式计算每个网格的边长为d:
遍历轮廓线链表,求得该层轮廓线的x_min,x_max,y_min和y_max,确定轮廓的最小外接正方形对角点坐标(x_min,y_min),(x_max,y_max),并计算各顶点的坐标x,y,z.计算过程如下:
x=x_min+j*d
y=y_min+i*d
z=n*k
其中,i、j表示遍历循环的次数,d表示网格的边长,n为层数,k为分层的厚度;
计算网格中心点坐标(cx、cy)的计算公式如下所示:
其中,m表示x轴方向上的第几个网格,n表示y方向上的第几个网格。
5.根据权利要求4所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤4具体包括如下步骤:
步骤4.1,遍历网格链表,根据跨立公式判断网格四个顶点与轮廓线位置关系;
步骤4.2,由四个顶点的mark参数可以确定每个网格与轮廓线位置关系,若网格的四个顶点全在轮廓内部,则网格flag参数标记为2;若四个顶点全在轮廓外部,则网格flag参数标记为-1;根据网格四顶点与轮廓线位置关系,确定每个网格与轮廓线位置关系并找出与轮廓线相交的边缘网格;
步骤4.3,若边缘网格与轮廓交于a1,a2两点。过两点中点做直线垂直于差量较大的坐标轴方向,直线交于偏置轮廓与C点,将C点代替网格中心点作为边缘网格的连接点。
6.根据权利要求5所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤5的具体过程为:
步骤5.1,对边缘网格利用边缘网格扫描路径连接点的确定方法重新计算连接点,并将新的连接点作为轮廓点插入轮廓链表;
步骤5.2,判断编号相邻的两个边缘网格连接点之间轮廓曲线的凹凸性;
步骤5.3,若该段轮廓曲线为凸状,两个边缘网格之间直线连接;若该段轮廓曲线为内凹状,则将该段轮廓曲线嵌入两个边缘网格之间。
7.根据权利要求6所述3D打印轮廓偏置填充路径规划算法,其特征在于:所述步骤6的具体过程为:
步骤6.1,采用直接插入排序法对网格进行排序将网格按Hilbert矩阵元素从小到大进行排序;
步骤6.2,遍历得到的有序网格链表,依次将网格连接点坐标按照Gcode文件规则输出,最终生成Gcode指令文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562018.7A CN114434802B (zh) | 2021-12-20 | 2021-12-20 | 3d打印轮廓偏置填充路径规划算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111562018.7A CN114434802B (zh) | 2021-12-20 | 2021-12-20 | 3d打印轮廓偏置填充路径规划算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114434802A true CN114434802A (zh) | 2022-05-06 |
CN114434802B CN114434802B (zh) | 2023-07-21 |
Family
ID=81364017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111562018.7A Active CN114434802B (zh) | 2021-12-20 | 2021-12-20 | 3d打印轮廓偏置填充路径规划算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114434802B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115195126A (zh) * | 2022-07-06 | 2022-10-18 | 中国科学院空间应用工程与技术中心 | 3d打印物体的二维匹配方法、装置、电子设备及介质 |
CN116921701A (zh) * | 2023-09-15 | 2023-10-24 | 苏州融速智造科技有限公司 | 异形金属结构件的多层单道打印路径规划方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011013784A (ja) * | 2009-06-30 | 2011-01-20 | Qualice:Kk | 画像処理装置、画像処理方法、およびコンピュータが実行可能なプログラム |
CN108891029A (zh) * | 2018-07-30 | 2018-11-27 | 大连理工大学 | 连续纤维增强复合材料3d打印典型路径的规划方法 |
WO2019009796A1 (en) * | 2017-07-05 | 2019-01-10 | Wematter Ab | METHOD FOR CALCULATING A PATH IN MANUFACTURING ADDITIVES |
CN109903212A (zh) * | 2019-01-28 | 2019-06-18 | 郑州轻工业学院 | 一种基于H几何分形和Hilbert曲线的图像加密方法 |
US20200047416A1 (en) * | 2018-08-10 | 2020-02-13 | Concept Laser Gmbh | Method for operating an apparatus for additively manufacturing three-dimensional objects |
CN111002580A (zh) * | 2019-12-17 | 2020-04-14 | 杭州电子科技大学 | 一种基于Hilbert曲线改进的3D打印路径填充方法 |
CN112848309A (zh) * | 2021-01-05 | 2021-05-28 | 河北工业大学 | 一种针对沉积成型的连续双锯齿状路径填充方法 |
CN113192176A (zh) * | 2021-04-14 | 2021-07-30 | 西安理工大学 | 一种变密度3d打印填充路径的生成方法 |
CN113793351A (zh) * | 2021-09-30 | 2021-12-14 | 中国人民解放军国防科技大学 | 基于等高线的多层轮廓图案的激光填充方法及装置 |
-
2021
- 2021-12-20 CN CN202111562018.7A patent/CN114434802B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011013784A (ja) * | 2009-06-30 | 2011-01-20 | Qualice:Kk | 画像処理装置、画像処理方法、およびコンピュータが実行可能なプログラム |
WO2019009796A1 (en) * | 2017-07-05 | 2019-01-10 | Wematter Ab | METHOD FOR CALCULATING A PATH IN MANUFACTURING ADDITIVES |
CN108891029A (zh) * | 2018-07-30 | 2018-11-27 | 大连理工大学 | 连续纤维增强复合材料3d打印典型路径的规划方法 |
US20200047416A1 (en) * | 2018-08-10 | 2020-02-13 | Concept Laser Gmbh | Method for operating an apparatus for additively manufacturing three-dimensional objects |
CN109903212A (zh) * | 2019-01-28 | 2019-06-18 | 郑州轻工业学院 | 一种基于H几何分形和Hilbert曲线的图像加密方法 |
CN111002580A (zh) * | 2019-12-17 | 2020-04-14 | 杭州电子科技大学 | 一种基于Hilbert曲线改进的3D打印路径填充方法 |
CN112848309A (zh) * | 2021-01-05 | 2021-05-28 | 河北工业大学 | 一种针对沉积成型的连续双锯齿状路径填充方法 |
CN113192176A (zh) * | 2021-04-14 | 2021-07-30 | 西安理工大学 | 一种变密度3d打印填充路径的生成方法 |
CN113793351A (zh) * | 2021-09-30 | 2021-12-14 | 中国人民解放军国防科技大学 | 基于等高线的多层轮廓图案的激光填充方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115195126A (zh) * | 2022-07-06 | 2022-10-18 | 中国科学院空间应用工程与技术中心 | 3d打印物体的二维匹配方法、装置、电子设备及介质 |
CN115195126B (zh) * | 2022-07-06 | 2023-02-24 | 中国科学院空间应用工程与技术中心 | 3d打印物体的二维匹配方法、装置、电子设备及介质 |
CN116921701A (zh) * | 2023-09-15 | 2023-10-24 | 苏州融速智造科技有限公司 | 异形金属结构件的多层单道打印路径规划方法 |
CN116921701B (zh) * | 2023-09-15 | 2023-12-12 | 苏州融速智造科技有限公司 | 异形金属结构件的多层单道打印路径规划方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114434802B (zh) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107571506B (zh) | 一种自适应分层的増材制造方法 | |
CN114434802A (zh) | 3d打印轮廓偏置填充路径规划算法 | |
CN110489778B (zh) | 面向激光刻蚀加工的图形分割方法、激光刻蚀控制系统 | |
CN111186140B (zh) | 一种力线分布的掩模打印路径生成方法 | |
CN110039186A (zh) | 一种应用于激光表面刻蚀的曲面模型路径规划方法 | |
CN105931291B (zh) | 一种数字化完整牙颌建模方法 | |
CN110188423A (zh) | 一种基于有限元网格划分的线性工程结构快速bim建模方法 | |
CN111382485A (zh) | 一种基于三维打印的三维模型二维嵌套摆放方法 | |
CN107053678B (zh) | 一种面向3d打印的曲面填充路径轨迹生成方法 | |
CN109732928B (zh) | 一种实时可变宽度的3d打印路径构造方法 | |
CN106600710A (zh) | 一种几何网格模型邻接拓扑关联的层切多连通域构建方法 | |
CN112157911B (zh) | 一种自支撑的3d打印梯度弹性多孔材料微结构设计方法 | |
CN112518433A (zh) | 一种复杂曲面打磨的刀具轨迹自动生成方法 | |
CN110097588A (zh) | 一种航发叶片陶瓷型芯点云模型的修型边缘提取方法 | |
CN108389263A (zh) | 面向边界元方法求解计算的iges面网格快速生成方法 | |
CN108724734B (zh) | 一种基于密集特征的3d打印前处理分层算法 | |
CN111319264B (zh) | 应用于3d打印设备的数据处理方法和3d打印设备 | |
CN110696367B (zh) | 一种壳类零件变厚度曲面分层、路径规划及工艺控制方法 | |
CN107037738A (zh) | 数控加工几何仿真中基于stl模型的材料去除算法 | |
Jang et al. | Free-floating support structure generation | |
CN104036096B (zh) | 斜面上凸起特征映射为制造特征体积的映射方法 | |
Guan et al. | Development of 3D printing entity slicing software | |
CN114842169A (zh) | 一种基于stl切片算法的壳体零件轮廓路径提取方法 | |
CN113298933A (zh) | 一种生成旋转多边形的方法 | |
CN112085832B (zh) | 广告字3d模型生成方法 |
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 |