CN112590219B - 一种基于随机点的3d打印填充路径生成方法 - Google Patents
一种基于随机点的3d打印填充路径生成方法 Download PDFInfo
- Publication number
- CN112590219B CN112590219B CN202011134819.9A CN202011134819A CN112590219B CN 112590219 B CN112590219 B CN 112590219B CN 202011134819 A CN202011134819 A CN 202011134819A CN 112590219 B CN112590219 B CN 112590219B
- Authority
- CN
- China
- Prior art keywords
- points
- point
- omega
- contour
- deleting
- 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
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000010146 3D printing Methods 0.000 title claims abstract description 19
- 238000007639 printing Methods 0.000 claims abstract description 19
- 238000005457 optimization Methods 0.000 claims description 7
- 239000010410 layer Substances 0.000 description 34
- 238000005452 bending Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 239000002356 single layer Substances 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000843 powder Substances 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
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
- 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
Landscapes
- Chemical & Material Sciences (AREA)
- Engineering & Computer Science (AREA)
- Materials Engineering (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Optics & Photonics (AREA)
Abstract
本发明公开了一种基于随机点的3D打印填充路径生成方法,包括如下步骤根据3D打印设备以及打印精度确定合适的层厚和随机点密度,并根据层厚和三维模型文件得到每一层需要打印的外轮廓;根据随机点密度和轮廓外接矩形面积获取一定数量的内部随机点;设定点与点之间距离阈值,在外轮廓和内部随机点中删除距离过近的点,在外轮廓点之间对距离过远的点进行内插;根据轮廓点和内部随机点生成网格,采用增加网格线或删除网格线算法对网格进行优化;根据优化后的网格生成不间断打印路径。该方法根据点与点的距离阈值确定删除或增加点,对已有的点集进行网格划分,并对划分好的网格进行优化,确保网格中所有点的度为偶数,最后根据优化后的网格生成不间断打印路径。
Description
技术领域
本发明涉及3D打印技术,尤其涉及一种基于随机点的3D打印填充路径生成方法。
背景技术
3D打印技术先利用计算机辅助设计软件构建或者通过反向工程获得三维实体模型,再将三维模型通过切片软件生成逐层的截面,以逐层加工的方式获得三维实体。由于打印过程中是用液体态、粉状或者片状的材料实现截面的逐层加工,任何形状的物品都可以由该技术加工。因此在一些传统加工技术无法完成的领域,3D打印技术发展迅速,如在建筑、航空航天、机械、生物医学等领域均得到较为广泛的应用。虽然3D打印可以缩短产品的研发周期和降低生产成本,但由于一个模型一般会拥有数量很大的层数,而每个层片的填充路径对于成型后的实体都有影响,如何寻找一种优质的填充路径一直是3D打印的关键技术之一。
目前常用的3D打印填充路径主要包括两种。一种是平行往复直线路径,这种路径的特点是路径的主体部分由大量等距平行的直线段组成,因此填充效率较高,同时路径生成算法简单可靠,生成路径速度快;问题是由于存在大量的路径连接拐角,拐角处的填充精度较差。同时从单层强度方面考虑,平行直线填充无法承受较大的弯矩。另外一种是轮廓平行路径,这种路径由于避免了大量拐角的出现,填充精度较高,并且能够较好地避免成型过程中的成型材料应力集中等问题;但是对于型腔较多的复杂零件,这种路径生成算法就要处理轮廓偏置后出现的自相交、互相交等问题,涉及多边形布尔运算问题,使算法相对复杂,路径生成速度较慢,并且生成的路径轨迹中存在大量的曲线,填充效率低下。目前已有的路径生成方法基本是将以上两种路径相结合,在截面轮廓边缘采用轮廓平行路径,以保证表面成型精度,而对于内部填充,采用平行往复直线路径,以提高填充效率。
但是目前的平行往复直线路径生成过程中都没有考虑填充路径对于单层强度的影响,从而忽略了平行直线承受较大弯矩的情况,这在一定程度上限制了 3D打印技术的应用。这样会导致3D打印技术很难满足各领域对模型承受较大弯矩的要求。同时,在确定的行间距的情况下,直线的填充率较低,无法满足较高填充率的要求。
另外现有的直线填充算法简单快捷,但是没有考虑到直线填充的单层轮廓无法承受较大的弯矩,从而影响结构的整体强度;轮廓偏置算法中存在大量图形自交运算,导致算法效率低,同时,轮廓偏置填充也是直线平行偏置,所以也无法承受较大的平行于轮廓线的弯矩,另外在给定直线行距的情况下,直线填充的填充率较低。
发明内容
根据现有技术存在的问题,本发明公开了一种基于随机点的3D打印填充路径生成方法,具体包括如下步骤:
根据3D打印设备以及打印精度确定合适的层厚和随机点密度,并根据层厚和三维模型文件得到每一层需要打印的外轮廓;
根据随机点密度和轮廓外接矩形面积获取一定数量的内部随机点;
设定点与点之间距离阈值,在外轮廓和内部随机点中删除距离过近的点,在外轮廓点之间对距离过远的点进行内插;
根据轮廓点和内部随机点生成网格,采用增加网格线或删除网格线算法对网格进行优化;
根据优化后的网格生成不间断打印路径。
进一步的,其中每一层需要打印的外轮廓切平面与STL文件的三角形网格相交获得,具体采用如下方式:
根据层厚得到当前切平面为Z=Z0,查找当前切平面相交的所有三角形并任选一个三角形作为初始三角形;依次求解三角形与切平面的交点,并将交点按三角形的拓扑顺序放入结果点集中,当前层中存在多个轮廓时,任选剩余三角形中任一三角形作为初始三角形,重复该过程得到多个轮廓的结果点集。
进一步的,所述内部随机点由随机点密度和轮廓外接矩形面积获取,具体采用如下方式:
由当前层的一个或多个轮廓点集得到x方向的最大值和最小值,y方向最大值和最小值;构建轮廓点集的外接矩形:根据矩形左下角点的坐标值和右上角的点坐标值计算外接矩形面积s,根据矩形面积s和随机点密度f计算在矩形内生成随机点的个数为s×f;在外接矩形内部进行均匀随机撒点得到轮廓内部随机点的点集;在轮廓内部随机点的点集中删除在轮廓外的随机点。
进一步的,在删除距离过近的点时:
当轮廓点与轮廓点之间的距离小于距离阈值时删除其中的一个轮廓点,当内部随机点与内部随机点之间的距离小于距离阈值时删除其中的一个内部随机点,当轮廓点与内部随机点之间的距离小于距离阈值时则删除内部随机点。
先对轮廓点进行判断:如果在以当前轮廓点为圆心,以距离阈值为半径的圆内存在其他轮廓点或内部随机点,则删除在圆内的点;
对内部随机点进行判断:如果在以当前内部随机点为圆心,以距离阈值为半径的圆内存在其他点,则删除在圆内的点;
对轮廓点进行判断,如果相邻两点构成的轮廓线的距离大于2倍的距离阈值时,以距离阈值为间距在两点之间进行点的内插。
进一步的,所述网格为Delaunay三角形网格或Voronoi网格。
进一步的,对网格进行优化时采用删除网格线算法,具体方式为:
计算网格划分结果中每一个点的度,任选一个度为奇数的点作为作为当前点,与当前点相连的点构成集合Ω1;
判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1中点相连的点构成集合Ω2,对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2 中存在,则在Ω2中删除这个点;
判断集合Ω2中是否存在度为奇数的点,如果不存在,则与Ω2中点相连的点构成集合Ω3,对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3中存在,则在Ω3中删除这个点;
采用上述方式得到两个或多个具有连接关系的点集Ω1,Ω2....Ωn,其中Ωn中存在度为奇数的点,从Ω1,Ω2....Ωn得到从当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X;
在网格中删除这条连接路径构成的连接线;
重复上述步骤直到网格中所有点的度都为偶数为止。
进一步的,对Delaunay三角形网格进行优化时的优化准则为增加网格线算法,具体步骤为:
计算Delaunay三角形网格划分结果中每一个点的度,任选一个度为奇数的点作为作为当前点,与当前点相连的点构成集合Ω1;
判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1相连的点构成集合Ω2。对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2中存在,则在Ω2中删除这个点;
判断集合Ω2中是否存在度为奇数的点,如果不存在,则与Ω2相连的点构成集合Ω3,对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3 中存在,则在Ω3中删除这个点;
采用上述方式得到两个或多个具有连接关系的点集Ω1,Ω2....Ωn,其中Ω n中存在度为奇数的点。从Ω1,Ω2....Ωn得到当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X;
根据连接路径,在Delaunay三角形网格中增加连接线,具体步骤如下:
连接路径中第一个点i和第二个点j构成当前工作线段,在Delaunay三角形网格中找到一个包含当前工作线段的三角形,将这个三角形作为当前工作三角形,在当前工作三角形中,构建一个内含六边形;
在六边形中找到与当前工作线段平行且距离最近的一条线段作为添加线段,将当前工作线段的端点与添加线段最近的端点相连,构成一个平行四边形;
将平行四边形除当前工作线段剩余的三条线段作为新增连接线,加入到网格中;重复以上步骤直到网格中所有点的度都为偶数为止。
进一步的,不间断打印路径的生成算法为求无向图的欧拉回路算法,其中求无向图的欧拉回路算法为Hierholzer算法。
其中欧拉回路的起始点选择满足最近原则:在第一层,任选一个点作为欧拉路径的初始点,在下一层,选择与上一层初始点最近的点作为这一层的欧拉路径的初始点。
由于采用了上述技术方案,本发明提供的一种基于随机点的3D打印填充路径生成方法,该方法根据打印机精度和打印需求确定切片层高、随机点密度、点与点之间距离阈值,根据模型和切片层高得到每一层的打印轮廓,在轮廓的外接矩形内部进行随机撒点,并根据点与点的距离阈值确定删除或增加点,对已有的点集进行网格划分,并对划分好的网格进行优化,确保网格中所有点的度为偶数,最后根据优化后的网格生成不间断打印路径,该方法在相同距离阈值限制下,基于随机点的填充方法可有效提高截面填充率,相对于直线填充算法或轮廓偏置算法,基于随机点的网状填充算法可以有限增强,当前层承受弯矩的能力,从而增强模型整体的强度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方法的流程图;
图2为本发明中当前打印层的外轮廓示意图;
图3为本发明中随机点密度为50、内部随机点的生成情况示意图;
图4为发明中限定点与点之间距离阈值为1mm时,经过删除和内插后的结果;
图5为发明中Delaunay三角形网格划分示意图;
图6为本发明中删除网格线优化算法示意图;
图7为本发明中直线填充算法示意图;
图8为本发明中两种填充算法在相同距离阈值限制下的填充量示意图;
图9为本发明中依照删除网格线优化算法打印的实物图
图10为本发明方法的流程图。
具体实施方式
为使本发明的技.术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:
如图1所示的一种基于随机点的3D打印填充路径生成方法,具体包括如下步骤:
S1:根据3D打印设备以及打印精度确定合适的层厚和随机点密度,并根据层厚和三维模型文件得到每一层需要打印的外轮廓;
S2:由随机点密度和轮廓外接矩形面积获取一定数量的内部随机点;
S3:设定点与点之间距离阈值,在外轮廓和内部随机点中删除距离过近的点,在外轮廓点之间对距离过远的点进行内插;
S4:根据轮廓点和内部随机点生成网格,采用增加网格线或删除网格线算法对网格进行优化;
S5:根据优化后的网格生成不间断打印路径。
进一步的,S1中的三维模型文件为STL模型文件。
进一步的,每一层的打印外轮廓由切平面与STL文件的三角形网格相交求得,具体步骤为:
S11:根据层厚,得到当前切平面为Z=Z0;
S12:找到于当前切平面相交的所有三角形;
S13:任选一个三角形作为初始三角形;
S14:依次求解三角形与切平面的交点,并将交点按三角形的拓扑顺序放入结果点集中。当前层中存在多个轮廓时,任选剩余三角形中任一三角形作为初始三角形,重复S14得到多个轮廓的结果点集。
S2中:随机点的生成由随机点密度和轮廓外接矩形面积控制,具体步骤为:
S21:由当前层的一个或多个轮廓点集得到x方向的最大值x_max,最小值x_min,y方向最大值y_max,最小值y_min。
S22:构建轮廓点集的外接矩形,矩形左下角点的坐标为(x_min,y_min), 右上角的点坐标为(x_max,y_max),计算外接矩形面积s,根据矩形面积s和随机点密度f计算在矩形内生成随机点的个数为s×f
S23:在外接矩形内部进行均匀随机撒点,得到轮廓内部随机点的点集
S24:在轮廓内部随机点的点集中删除在轮廓外的随机点。
S3中:点与点之间满足距离阈值要求,点与点之间的关系包括轮廓点与轮廓点,内部随机点与内部随机点,轮廓点与内部随机点的关系。具体操作如下:
(1)先对轮廓点进行判断,如果在以当前轮廓点为圆心,以距离阈值为半径的圆内存在其他轮廓点或内部随机点,删除在圆内的点。
(2)对内部随机点进行判断,在以当前内部随机点为圆心,以距离阈值为半径的圆内存在其他点,删除在圆内的点。
(3)对轮廓点进行判断,如果相邻两点构成的轮廓线的距离大于两倍的距离阈值,以距离阈值为间距在两点直接进行点的内插。
进一步的,所述网格为Delaunay三角形网格或Voronoi网格。
当优化准则为删除网格线算法时,具体包括如下步骤:
S51:计算网格划分结果中每一个点的度。计算方法为,统计与当前点相连的点的个数。与当前点相连的点的个数为i,则当前点的度为i。
S52:任选一个度为奇数的点作为作为当前点,与当前点相连的点构成集合Ω1
S53:判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1中点相连的点构成集合Ω2。对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2中存在,则在Ω2中删除这个点。
S54:判断集合Ω2中是否存在度为奇数的点。如果不存在,则与Ω2中点相连的点构成集合Ω3。对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3中存在,则在Ω3中删除这个点。
S55按照如上方法,得到两个或多个具有连接关系的点集Ω1,Ω2....Ωn。其中Ωn中存在度为奇数的点。从Ω1,Ω2....Ωn得到从当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X。
S56:在网格中删除这条连接路径构成的连接线。
S57:重复S51-S56直到网格中所有点的度都为偶数为止。
进一步的,如果优化准则为增加网格线算法,具体步骤为:
步骤5.1计算Delaunay三角形网格划分结果中每一个点的度。计算方法为,统计与当前点相连的点的个数。与当前点相连的点的个数为i,则当前点的度为i。
步骤5.2任选一个度为奇数的点作为作为当前点,与当前点相连的点构成集合Ω1
步骤5.3判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1 相连的点构成集合Ω2。对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2中存在,则在Ω2中删除这个点。
步骤5.4判断集合Ω2中是否存在度为奇数的点,如果不存在,则与Ω2相连的点构成集合Ω3。对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3中存在,则在Ω3中删除这个点。
步骤5.5按照如上方法,得到两个或多个具有连接关系的点集Ω1,Ω2.... Ωn。其中Ωn中存在度为奇数的点。从Ω1,Ω2....Ωn得到当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X。
步骤5.6根据连接路径,在Delaunay三角形网格中增加连接线,具体步骤如下:
步骤5.6.1连接路径中第一个点i和第二个点j构成当前工作线段,在 Delaunay三角形网格中找到一个包含当前工作线段的三角形,将这个三角形作为当前工作三角形。
步骤5.6.2在当前工作三角形中,构建一个内含六边形。具体步骤如下:
步骤5.6.2.1在三角形内部构建一定长度的三条线段,这三条线段平行于三角形的三条边且不相交。
步骤5.6.2.1逆时针依次相连三条线段,构成一个六边形。
步骤5.6.3在六边形中找到与当前工作线段平行且距离最近的一条线段作为添加线段。将当前工作线段的端点与添加线段最近的端点相连,构成一个平行四边形。
步骤5.6.4将平行四边形除当前工作线段剩余的三条线段作为新增连接线,加入到网格中。
步骤5.7:重复5.1-5.6直到网格中所有点的度都为偶数为止。
进一步的,不间断打印路径的生成算法为求无向图的欧拉回路算法。求无向图的欧拉回路算法为Hierholzer算法。
进一步的,欧拉回路的起始点选择满足最近原则。具体步骤如下:
在第一层,任选一个点作为欧拉路径的初始点
在下一层,选择与上一层初始点最近的点作为这一层的欧拉路径的初始点。
实施例:以图1中的模型为例,对打印路径算法进行说明,具体步骤包括:
读取模型文件;
设置切片厚度为0.1mm,得到每一层需要打印的模型的外轮廓,如图2所示;
设置随机点密度为50,在内部生成均匀的随机点,如图3所示;
限定点与点之间的距离阈值为1mm,删除距离过近的点,对边界点进行点的内插,如图4所示;
对已有点集进行Delaunay三角形网格划分,如图5所示;
对网格进行删除网格线的优化算法,如图6所示。如与已有的直线填充算法对比,直线填充结果如图7所示,设置直线行距与点与点之间距离阈值相同,在相同距离情况下,网格线填充的填充率要远大于直线填充。
在实施例中,图8显示了网格线填充填充线的总长度为215.946,直线填充的填充线总长度为120.可见在相同距离阈值限制下,网格填充的填充率是直线填充的接近两倍。填充线的总长度越长,填充率越大,同时模型承载载荷能力也越强。
图6为网格线填充,图7为直线填充,对比图6,图7,易知当两种填充模型同时承受方向垂直于切平面的弯矩时,网格填充承受弯矩的能力要比直线填充强。从强度角度考虑,无论是沿y方向的拉伸,方向为x方向的弯曲,还是方向为z方向的弯曲,网格填充的承载能力都比直线填充的承载能力更强。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (6)
1.一种基于随机点的3D打印填充路径生成方法,其特征在于包括:
根据3D打印设备以及打印精度确定合适的层厚和随机点密度,并根据层厚和三维模型文件得到每一层需要打印的外轮廓;
根据随机点密度和轮廓外接矩形面积获取一定数量的内部随机点;
设定点与点之间距离阈值,在外轮廓和内部随机点中删除距离过近的点,在外轮廓点之间对距离过远的点进行内插;
根据轮廓点和内部随机点生成网格,采用增加网格线或删除网格线算法对网格进行优化;
根据优化后的网格生成不间断打印路径;
所述网格为Delaunay三角形网格或Voronoi网格;
对网格进行优化时采用删除网格线算法,具体方式为:
计算网格划分结果中每一个点的度,任选一个度为奇数的点作为当前点,与当前点相连的点构成集合Ω1;
判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1中点相连的点构成集合Ω2,对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2中存在,则在Ω2中删除这个点;
判断集合Ω2中是否存在度为奇数的点,如果不存在,则与Ω2中点相连的点构成集合Ω3,对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3中存在,则在Ω3中删除这个点;
采用上述方式得到两个或多个具有连接关系的点集Ω1,Ω2....Ωn,其中Ωn中存在度为奇数的点,从Ω1,Ω2....Ωn得到从当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X;
在网格中删除这条连接路径构成的连接线;
重复上述步骤直到网格中所有点的度都为偶数为止;
不间断打印路径的生成算法为求无向图的欧拉回路算法,其中求无向图的欧拉回路算法为Hierholzer算法。
2.根据权利要求1所述的方法,其特征在于:其中每一层需要打印的外轮廓切平面与STL文件的三角形网格相交获得,具体采用如下方式:
根据层厚得到当前切平面为Z=Z0,查找当前切平面相交的所有三角形并任选一个三角形作为初始三角形;依次求解三角形与切平面的交点,并将交点按三角形的拓扑顺序放入结果点集中,当前层中存在多个轮廓时,任选剩余三角形中任一三角形作为初始三角形,重复该过程得到多个轮廓的结果点集。
3.根据权利要求1所述的方法,其特征在于:所述内部随机点由随机点密度和轮廓外接矩形面积获取,具体采用如下方式:
由当前层的一个或多个轮廓点集得到x方向的最大值和最小值,y方向最大值和最小值;构建轮廓点集的外接矩形:根据矩形左下角点的坐标值和右上角的点坐标值计算外接矩形面积s,根据矩形面积s和随机点密度f计算在矩形内生成随机点的个数为s×f;在外接矩形内部进行均匀随机撒点得到轮廓内部随机点的点集;在轮廓内部随机点的点集中删除在轮廓外的随机点。
4.根据权利要求1所述的方法,其特征在于:在删除距离过近的点时:
当轮廓点与轮廓点之间的距离小于距离阈值时删除其中的一个轮廓点,当内部随机点与内部随机点之间的距离小于距离阈值时删除其中的一个内部随机点,当轮廓点与内部随机点之间的距离小于距离阈值时则删除内部随机点;
先对轮廓点进行判断:如果在以当前轮廓点为圆心,以距离阈值为半径的圆内存在其他轮廓点或内部随机点,则删除在圆内的点;
对内部随机点进行判断:如果在以当前内部随机点为圆心,以距离阈值为半径的圆内存在其他点,则删除在圆内的点;
对轮廓点进行判断,如果相邻两点构成的轮廓线的距离大于2倍的距离阈值时,以距离阈值为间距在两点之间进行点的内插。
5.根据权利要求1所述的方法,其特征在于:对Delaunay三角形网格进行优化时的优化准则为增加网格线算法,具体步骤为:
计算Delaunay三角形网格划分结果中每一个点的度,任选一个度为奇数的点作为当前点,与当前点相连的点构成集合Ω1;
判断集合Ω1中是否存在度为奇数的点,如果不存在,则与Ω1相连的点构成集合Ω2,对Ω2中的点进行判断,如果一个点即在Ω1中存在,也在Ω2中存在,则在Ω2中删除这个点;
判断集合Ω2中是否存在度为奇数的点,如果不存在,则与Ω2相连的点构成集合Ω3,对Ω3中的点进行判断,如果一个点在Ω1或Ω2中存在,也在Ω3中存在,则在Ω3中删除这个点;
采用上述方式得到两个或多个具有连接关系的点集Ω1,Ω2....Ωn,其中Ωn中存在度为奇数的点,从Ω1,Ω2....Ωn得到当前点到Ωn中奇数度的点的一条连接路径A-B-C-....-X;
根据连接路径,在Delaunay三角形网格中增加连接线,具体步骤如下:
连接路径中第一个点i和第二个点j构成当前工作线段,在Delaunay三角形网格中找到一个包含当前工作线段的三角形,将这个三角形作为当前工作三角形,在当前工作三角形中,构建一个内含六边形;
在六边形中找到与当前工作线段平行且距离最近的一条线段作为添加线段,将当前工作线段的端点与添加线段最近的端点相连,构成一个平行四边形;
将平行四边形除当前工作线段剩余的三条线段作为新增连接线,加入到网格中;重复以上步骤直到网格中所有点的度都为偶数为止。
6.根据权利要求1所述的方法,其特征在于:其中欧拉回路的起始点选择满足最近原则:在第一层,任选一个点作为欧拉路径的初始点,在下一层,选择与上一层初始点最近的点作为这一层的欧拉路径的初始点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011134819.9A CN112590219B (zh) | 2020-10-21 | 2020-10-21 | 一种基于随机点的3d打印填充路径生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011134819.9A CN112590219B (zh) | 2020-10-21 | 2020-10-21 | 一种基于随机点的3d打印填充路径生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112590219A CN112590219A (zh) | 2021-04-02 |
CN112590219B true CN112590219B (zh) | 2022-05-03 |
Family
ID=75180378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011134819.9A Active CN112590219B (zh) | 2020-10-21 | 2020-10-21 | 一种基于随机点的3d打印填充路径生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112590219B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104325638B (zh) * | 2014-05-14 | 2016-05-11 | 浙江大学 | 基于分区的3d打印填充路径生成方法 |
CN105711102B (zh) * | 2016-04-19 | 2018-01-02 | 山东大学 | 一种基于费马尔螺旋线的3d打印路径规划方法 |
CN106650124B (zh) * | 2016-12-28 | 2020-04-28 | 谢亿民工程科技(常州)有限公司 | 一种基于有限元结果的连续体表面轻量化方法 |
CN111375208B (zh) * | 2020-03-20 | 2021-12-14 | 杭州乐信圣文科技有限责任公司 | 一种用于一笔画游戏的二维欧拉图生成方法及装置 |
-
2020
- 2020-10-21 CN CN202011134819.9A patent/CN112590219B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112590219A (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Löhner | Progress in grid generation via the advancing front technique | |
EP3414074A1 (en) | Designing objects using lattice structure optimization | |
JP2008186440A (ja) | 構造設計のトポロジー進化最適化演算法 | |
CN104966317A (zh) | 一种基于矿体轮廓线的三维自动建模方法 | |
CN112157911B (zh) | 一种自支撑的3d打印梯度弹性多孔材料微结构设计方法 | |
AU769960B2 (en) | Mesh generator for and method of generating meshes in an extrusion process | |
CN106903889A (zh) | 一种stl模型的快速切片算法 | |
Zhang et al. | Adaptive hexahedral mesh generation based on local domain curvature and thickness using a modified grid-based method | |
CN109325316B (zh) | 基于共点焊接排序的stl模型高效并行切层方法 | |
CN112116713B (zh) | 一种线性承台类构件高精度钢筋布置方法 | |
CN109551768A (zh) | 一种基于stl的3d打印文件的数据处理方法 | |
CN110826128B (zh) | 一种任意形状底面疏浚挖槽快速成形设计方法 | |
CN112380650A (zh) | 工作装置结构件设计方法 | |
CN114434802B (zh) | 3d打印轮廓偏置填充路径规划算法 | |
CN112590219B (zh) | 一种基于随机点的3d打印填充路径生成方法 | |
CN110188395B (zh) | 一种基于线面体的维度增加式计算流体网格生成方法 | |
Quadros et al. | LayTracks: a new approach to automated geometry adaptive quadrilateral mesh generation using medial axis transform | |
CN111696111B (zh) | 一种基于ssdf衰减图聚类的3d模型网格分割方法 | |
CN112464446B (zh) | 基于层间信息继承的金属增材制造路径填充方法 | |
CN115408796A (zh) | 一种多孔结构建模方法、装置、设备及应用 | |
CN110889903B (zh) | 一种基于切层策略的三维模型快速体素化方法 | |
Ng et al. | Incremental tessellation of trimmed parametric surfaces | |
CN111046465B (zh) | 异形楼板块状装饰面层智能化施工方法 | |
CN110868325B (zh) | 一种可降低刚度矩阵构建难度的均匀网格划分方法 | |
CN117349914B (zh) | 一种基于环绕数的布尔运算方法 |
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 |