一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于PLT文件的轮廓切割路径缩放方法与流程

2021-11-22 12:40:00 来源:中国专利 TAG:

一种基于plt文件的轮廓切割路径缩放方法
技术领域
1.本技术属于裁床技术领域,具体涉及一种基于plt文件的轮廓切割路径缩放方法。


背景技术:

2.随着我国机械制造业、自动化产业的快速发展,越来越多的行业被机器自动化给取代,裁床作为一种自动切割机器,给部分产业带来了高效率、低成本的效益。
3.plt文件是裁床切割机最常用的一种切割用图形文件,它给出的是由点构成的轮廓,机器根据点的顺序进行路径的切割。由于切割的图形和材料不一样,往往会在工艺上有多方面的要求,需要对原始的图形轮廓进行处理以达到预期的切割效果。
4.轮廓的内缩外扩是实际切割中往往会遇到的一种需求。由于plt文件给出的轮廓为图像打印时按照打印的图形形成的轮廓,若机器根据plt文件给出的原轮廓进行切割由于切割刀具的宽度问题可能会出现多余的留白。或者当工艺要求切割的图形外围预留一个等距的留白时,机器直接按照plt文件中的原轮廓进行切割往往也无法满足该工艺要求。所以需要对原plt文件的轮廓进行处理,使原轮廓向内缩小一小段或者向外扩张一小段。
5.现有的技术中,对轮廓内缩外扩的方法,比较成熟的是对图片进行操作,而对于已经形成对应的plt切割文件时,是不可用的。还有一些在对plt文件进行的操作,会常常出现不规则图形操作后,造成点错乱严重损坏原始轮廓的形状,不普遍使用。


技术实现要素:

6.本技术的目的在于提供一种基于plt文件的轮廓切割路径缩放方法,以实现轮廓的内缩外扩。
7.为实现上述目的,本技术所采取的技术方案为:
8.一种基于plt文件的轮廓切割路径缩放方法,所述基于plt文件的轮廓切割路径缩放方法,包括:
9.步骤1、确定缩放类型,获取缩放距离r,令n=2;
10.步骤2、取plt文件中原始轮廓上的第1个轮廓点,以第1个轮廓点以及第1个轮廓点的前后相邻的两个轮廓点组成一个角,并取该角的角平分线为第1角平分线,确定第1角平分线上的两个点作为初始拟定点,每个初始拟定点与第一直线和第二直线的垂直距离均为缩放距离r,其中第一直线为第1个轮廓点和其相邻的前一个轮廓点所确定的直线,第二直线为第1个轮廓点和其相邻的后一个轮廓点所确定的直线;
11.步骤3、判断两个初始拟定点分别相对于原始轮廓的位置,并取与所述缩放类型相对应的一个初始拟定点作为与第1个轮廓点对应的缩放点;
12.步骤4、取plt文件中原始轮廓上的第n个轮廓点作为当前待处理点,以当前待处理点以及当前待处理点的前后相邻的两个轮廓点组成一个角,并取该角的角平分线为第n角平分线,以第n

1个轮廓点和第n个轮廓点确定第三直线,过与第n

1个轮廓点对应的缩放点作第三直线的平行线与第n角平分线相交于一点,取该相交的点作为与第n个轮廓点对应的
缩放点;
13.步骤5、若n≥3,则判断第n个轮廓点对应的缩放点是否导致轮廓变形,若第n个轮廓点对应的缩放点不导致轮廓变形,则执行步骤6;否则判断第n

1角平分线对应的角是否在误差允许阈值内,若第n

1角平分线对应的角在误差允许阈值内,则取与第n个轮廓点间隔一个轮廓点的前轮廓点和与第n个轮廓点相邻的后轮廓点组成一个角重新确定第n个轮廓点对应的缩放点,并重新执行步骤5;若第n

1角平分线对应的角不在误差允许阈值内,则结束本次轮廓缩放;
14.步骤6、n=n 1,若n>n,则完成本次轮廓缩放,得到缩放后的新轮廓并结束;否则返回步骤4继续执行,其中n为plt文件中原始轮廓上轮廓点的总个数。
15.以下还提供了若干可选方式,但并不作为对上述总体方案的额外限定,仅仅是进一步的增补或优选,在没有技术或逻辑矛盾的前提下,各可选方式可单独针对上述总体方案进行组合,还可以是多个可选方式之间进行组合。
16.作为优选,所述确定第1角平分线上的两个点作为初始拟定点,包括:
17.若第1角平分线对应的角为∠q
n
q1q2,其中n为plt文件中原始轮廓上轮廓点的总个数,即∠q
n
q1q2所涉及的轮廓点为q
n
、q1、q2,其中q1点为第1个轮廓点,q
n
、q2为第1个轮廓点的前后相邻的两个轮廓点,取点q
n
、q1、q2的坐标为(x
n
,y
n
)、(x1,y1)、(x2,y2);
18.作∠q
n
q1q2的角平分线为第1角平分线,取第1角平分线上的两个初始拟定点为则根据三个轮廓点的坐标计算第1角平分线的表达式如下:
19.设向量:其中是以q1点为起始点分别到q2点和q
n
点的向量,是其对应向量的模,可计算出第1角平分线的单位向量为:
[0020][0021]
根据三个轮廓点的坐标可以得出第1角平分线的单位向量为:
[0022][0023]
其中,
[0024][0025]
可得到:
[0026][0027]
其中为以点为起始点、q1为终点的向量与其对应向量的模;
[0028]
因此可以得到:
[0029][0030]
可计算点的坐标为:
[0031][0032]
同理可以计算出点坐标为:
[0033][0034]
其中,为q1点和q2点之间的距离,为q1点和q
n
点之间的距离,为点和q1点之间的距离。
[0035]
作为优选,所述判断两个初始拟定点分别相对于原始轮廓的位置,包括:
[0036]
取一个初始拟定点作为判定点,以判定点为起始点,沿x正轴方向作射线,统计该射线与原始轮廓的交点个数,当交点个数为偶数时,则该判定点在原始轮廓的外部,当交点个数为奇数时,则该判定点在原始轮廓的内部。
[0037]
作为优选,所述取与所述缩放类型相对应的一个初始拟定点作为与第1个轮廓点对应的缩放点,包括:
[0038]
若所述缩放类型为内缩,则取位于原始轮廓的内部的初始拟定点为第1个轮廓点对应的缩放点;若所述缩放类型为外扩,则取位于原始轮廓的外部的初始拟定点为第1个轮廓点对应的缩放点。
[0039]
作为优选,所述过与第n

1个轮廓点对应的缩放点作第三直线的平行线与第n角平分线相交于一点,取该相交的点作为与第n个轮廓点对应的缩放点,包括:
[0040]
令第n角平分线对应的角为∠q
n
‑1q
n
q
n 1
,即∠q
n
‑1q
n
q
n 1
所涉及的轮廓点为q
n
‑1、q
n
、q
n 1
,其中q
n
点为第n个轮廓点,q
n
‑1、q
n 1
为第n个轮廓点的前后相邻的两个轮廓点,取点q
n
‑1、q
n
、q
n 1
的坐标为(x
n
‑1,y
n
‑1)、(x
n
,y
n
)、(x
n 1
,y
n 1
),第三直线为直线q
n
‑1q
n

[0041]
令第n

1个轮廓点对应的缩放点为点,i取值为1或2,则以点为起始点
作直线q
n
‑1q
n
的平行线交于∠q
n
‑1q
n
q
n 1
的第n角平分线于点,根据第n角平分线的单位向量计算第n角平分线的解析式为:
[0042][0043]
向第n角平分线的解析式中代入q
n
点的坐标,可得:
[0044][0045]
根据向量:
[0046][0047]
其中为以为起始点、为终点的向量与其对应向量的模,为以q
n
‑1为起始点、q
n
为终点的向量与其对应向量的模;
[0048]
可得平行线的解析式为:
[0049][0050]
向平行线的解析式代入点的坐标,可得:
[0051][0052]
根据第n角平分线的解析式和平行线的解析式计算两条直线的交点点的坐标为:
[0053][0054]
其中:
[0055][0056][0057]
式中,为点的坐标,q
n
‑2为第n

2个轮廓点,若n=2,则n

2为
第n个轮廓点,为q
n
‑1点和q
n
点之间的距离,为q
n
点和q
n 1
点之间的距离。
[0058]
作为优选,所述判断第n个轮廓点对应的缩放点是否导致轮廓变形,包括:
[0059]
若第n个轮廓点对应的缩放点由第n

1个轮廓点、第n个轮廓点、第n 1个轮廓点计算得出,且令第n

1个轮廓点为a点,第n个轮廓点对应的缩放点为a1点,第n个轮廓点为b点,第n个轮廓点对应的缩放点为b1点,则判断条件为:
[0060][0061]
其中分别是以a为起始点到b点的向量和以a1为起始点到b1点的向量;为其向量对应的模;
[0062]
若第n个轮廓点满足上述判断条件,则第n个轮廓点对应的缩放点不会导致轮廓变形;否则第n个轮廓点对应的缩放点会导致轮廓变形。
[0063]
本技术提供的基于plt文件的轮廓切割路径缩放方法,与现有技术相比,优点在于可以直接对切割文件进行操作。现有技术是针对图片的格式,进行操作的。对于广告行业,在打印好样片后,直接生成了切割的plt文件,进行“出血”(轮廓切割路径内缩)操作时,只能在plt文件下进行。针对服装行业的刀补(轮廓切割路径外扩),也能根据现场的刀具情况,直接对plt文件进行操作,不用重新生成切割文件。
附图说明
[0064]
图1为本技术的基于plt文件的轮廓切割路径缩放方法的流程图;
[0065]
图2为本技术原始轮廓进行缩放的一种实施例示意图;
[0066]
图3为本技术判断点与原始轮廓的相对位置的一种实施例示意图;
[0067]
图4为本技术出现变形点的示意图;
[0068]
图5为本技术出现变形点后处理的示意图;
[0069]
图6为本技术出现变形点后无法继续缩放推导的一种实施例示意图。
具体实施方式
[0070]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
[0071]
除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本技术。
[0072]
如图1所示,本实施例的一种基于plt文件的轮廓切割路径缩放方法,包括以下步骤:
[0073]
步骤1、确定缩放类型,获取缩放距离r(即内缩外扩的距离),令n=2。
[0074]
步骤2、取plt文件中原始轮廓上的第1个轮廓点,以第1个轮廓点以及第1个轮廓点
的前后相邻的两个轮廓点组成一个角,并取该角的角平分线为第1角平分线,确定第1角平分线上的两个点作为初始拟定点(记为p1、p2,即对应于下方的),每个初始拟定点与第一直线和第二直线的垂直距离均为缩放距离r,其中第一直线为第1个轮廓点和其相邻的前一个轮廓点所确定的直线,第二直线为第1个轮廓点和其相邻的后一个轮廓点所确定的直线。
[0075]
在轮廓的缩放中,由于第1个轮廓点无缩放后的点可参考,因此本实施例将第1个轮廓点与其余轮廓点进行区分,采用两种不同的方式分别进行轮廓的缩放,以保证缩放准确的前提下,具有最高的缩放效率。
[0076]
在确定第1角平分线上的两个点作为初始拟定点时,本实施例基于以下步骤计算得到:
[0077]
若第1角平分线对应的角为∠q
n
q1q2,其中n为plt文件中原始轮廓上轮廓点的总个数,即∠q
n
q1q2所涉及的轮廓点为q
n
、q1、q2,其中q1点为第1个轮廓点,q
n
、q2为第1个轮廓点的前后相邻的两个轮廓点,取点q
n
、q1、q2的坐标为(x
n
,y
n
)、(x1,y1)、(x2,y2)。
[0078]
作∠q
n
q1q2的角平分线为第1角平分线,取第1角平分线上的两个初始拟定点为则根据三个轮廓点的坐标计算第1角平分线的表达式如下:
[0079]
设向量:其中是以q1点为起始点分别到q2点和q
n
点的向量,是其对应向量的模,可计算出第1角平分线的单位向量为:
[0080][0081]
根据三个轮廓点的坐标可以得出第1角平分线的单位向量为:
[0082][0083]
其中,
[0084][0085]
可得到:
[0086][0087]
其中为以点为起始点、q1为终点的向量与其对应向量的模。
[0088]
因此可以得到:
[0089]
[0090]
可计算点的坐标为:
[0091][0092]
同理可以计算出点坐标为:
[0093][0094]
其中,为q1点和q2点之间的距离,为q1点和q
n
点之间的距离,为点和q1点之间的距离。
[0095]
为了便于理解以下结合附图2对第1角平分线上的两个初始拟定点的求解进一步详述:
[0096]
如图2所示,以e点作为q
n
点,以p点作为q1,以a点作为q2,且以p1、p2点作为第1角平分线上的两个初始拟定点则第1角平分线对应的角为∠epa,即∠epa所涉及的轮廓点为e、p、a,其中p点为第1个轮廓点,e、a为第1个轮廓点的前后相邻的两个轮廓点,取点e、p、a的坐标为(x
e
,y
e
)、(x
p
,y
p
)、(x
a
,y
a
)。
[0097]
作∠epa的角平分线为第1角平分线,取第1角平分线上的两个初始拟定点为p1、p2,则根据三个轮廓点的坐标计算第1角平分线的表达式如下:
[0098]
设向量:其中是以p点为起始点分别到a点和e点的向量,是其对应向量的模,可计算出第1角平分线的单位向量为:
[0099][0100]
根据三个轮廓点的坐标可以得出第1角平分线的单位向量为:
[0101]
[0102]
其中,
[0103][0104]
可得到:
[0105][0106]
其中为以p2点为起始点、p为终点的向量与其对应向量的模。
[0107]
因此可以得到:
[0108][0109]
可计算p2点的坐标为:
[0110][0111]
同理可以计算出p1点坐标为:
[0112][0113]
其中,l
pa
为p点和a点之间的距离,l
pe
为p点和e点之间的距离,为p2点和p点之间的距离。
[0114]
步骤3、判断两个初始拟定点分别相对于原始轮廓的位置,并取与所述缩放类型相对应的一个初始拟定点作为与第1个轮廓点对应的缩放点。
[0115]
本实施例中判断点相对于原始轮廓的位置的方法为:取一个初始拟定点作为判定点,以判定点为起始点,沿x正轴方向作射线,统计该射线与原始轮廓的交点个数,当交点个数为偶数时,则该判定点在原始轮廓的外部,当交点个数为奇数时,则该判定点在原始轮廓
的内部。
[0116]
以图3为例,plt文件中不规则的轮廓由七个点组成,其中首尾点相同,所以计算中只用六个点计算。以点m为例,设m坐标为(x
m
,y
m
),轮廓上点的坐标为(x
i
,y
i
),i=1,2,3,4,5,6;在不打断轮廓点的顺序,选取横轴最小的点作为轮廓的起始点,如图3所示,点1为起始点。
[0117]
先判断点是否在轮廓上,从第二个开始,计算当前点与前一点的向量和目标点m与前一点的斜率其中l=1,2,3,4,5,6。
[0118][0119][0120]
当或满足:
[0121]

[0122]
目标点在轮廓上,如果不满足则依次计算y
i
与y
m
的差值:
[0123]
δy
i
=y
i

y
m
[0124]
当对应的x
i
>x
m
时,将δy
i
添加到差值数组{δy}中,先去除该数组中的零元素,再从该差值数组第二个元素开始,依次与前一个元素比较符号,当符号变化一次,相当于射线与轮廓有一个交点;如图3所示,δy2<0,δy3>0,δy4<0,其余元素都小于0,因此符号变化了两次,所以有两个交点。因此m点再轮廓的外部;用同样的方法可以判断n点在内部。
[0125]
在得到两个初始拟定点相对于原始轮廓的位置后,根据预设的缩放类型确定两个初始拟定点中的一个作为最终的缩放点,具体为:若所述缩放类型为内缩,则取位于原始轮廓的内部的初始拟定点为第1个轮廓点对应的缩放点;若所述缩放类型为外扩,则取位于原始轮廓的外部的初始拟定点为第1个轮廓点对应的缩放点。
[0126]
步骤4、取plt文件中原始轮廓上的第n个轮廓点作为当前待处理点,以当前待处理点以及当前待处理点的前后相邻的两个轮廓点组成一个角,并取该角的角平分线为第n角平分线,以第n

1个轮廓点和第n个轮廓点确定第三直线,过与第n

1个轮廓点对应的缩放点作第三直线的平行线与第n角平分线相交于一点,取该相交的点作为与第n个轮廓点对应的缩放点。
[0127]
对于除第1个轮廓点之外的其余轮廓点,本实施例根据第1个轮廓点对应的缩放点进行计算,具体如下:
[0128]
令第n角平分线对应的角为∠q
n
‑1q
n
q
n 1
,即∠q
n
‑1q
n
q
n 1
所涉及的轮廓点为q
n
‑1、q
n
、q
n 1
,其中q
n
点为第n个轮廓点,q
n
‑1、q
n 1
为第n个轮廓点的前后相邻的两个轮廓点,取点q
n
‑1、q
n
、q
n 1
的坐标为(x
n
‑1,y
n
‑1)、(x
n
,y
n
)、(x
n 1
,y
n 1
),第三直线为直线q
n
‑1q
n

[0129]
令第n

1个轮廓点对应的缩放点为点,i取值为1或2,则以点为起始点作直线q
n
‑1q
n
的平行线交于∠q
n
‑1q
n
q
n 1
的第n角平分线于点,根据第n角平分线的单位向量计算第n角平分线的解析式为:
[0130][0131]
向第n角平分线的解析式中代入q
n
点的坐标,可得:
[0132][0133]
根据向量:
[0134][0135]
其中为以为起始点、为终点的向量与其对应向量的模,为以q
n
‑1为起始点、q
n
为终点的向量与其对应向量的模。
[0136]
可得平行线的解析式为:
[0137][0138]
向平行线的解析式代入点的坐标,可得:
[0139][0140]
根据第n角平分线的解析式和平行线的解析式计算两条直线的交点点的坐标为:
[0141][0142]
其中:
[0143][0144][0145]
式中,为点的坐标,q
n
‑2为第n

2个轮廓点,若n=2,则n

2为第n个轮廓点,为q
n
‑1点和q
n
点之间的距离,为q
n
点和q
n 1
点之间的距离。
[0146]
为了便于理解同样结合附图2对第n个轮廓点对应的缩放点的求解进一步详述:
[0147]
如图2所示,以e点作为q
n
‑2点,以p点作为q
n
‑1点,以a点作为q
n
点,以b点作为q
n 1
点,且缩放类型为内缩,则第n

1个轮廓点对应的缩放点为中的i取值为1,即以p1作为第n

1个轮廓点对应的缩放点以a1作为第n个轮廓点对应的缩放点
[0148]
则令第n角平分线对应的角为∠pab,即∠pab所涉及的轮廓点为p、a、b,其中a点为第n个轮廓点,p、b为第n个轮廓点的前后相邻的两个轮廓点,取点p、a、b的坐标为(x
p
,y
p
)、(x
a
,y
a
)、(x
b
,y
b
),第三直线为直线pa。
[0149]
令第n

1个轮廓点对应的缩放点为p1点,则以p1点为起始点作直线pa的平行线p1a1交于∠pab的第n角平分线于a1点,根据第n角平线的单位向量计算第n角平分线的解析式为:
[0150][0151]
向第n角平分线的解析式中代入a点的坐标,可得:
[0152][0153]
根据向量:
[0154][0155]
其中为以p1为起始点、a1为终点的向量与其对应向量的模,为终点的向量与其对应向量的模,为以p为起始点、a为终点的向量与其对应向量的模。
[0156]
可得平行线p1a1的解析式为:
[0157][0158]
向平行线p1a1的解析式代入p1点的坐标,可得:
[0159][0160]
根据第n角平分线的解析式和平行线p1a1的解析式计算两条直线的交点a1点的坐标为:
[0161][0162]
其中:
[0163][0164]
l
ab
为a点和b点之间的距离。
[0165]
步骤5、若n≥3,则判断第n个轮廓点对应的缩放点是否导致轮廓变形,若第n个轮廓点对应的缩放点不导致轮廓变形,则执行步骤6;否则判断第n

1角平分线对应的角是否在误差允许阈值内,若第n

1角平分线对应的角在误差允许阈值内,则取与第n个轮廓点间隔一个轮廓点的前轮廓点和与第n个轮廓点相邻的后轮廓点组成一个角重新确定第n个轮廓点对应的缩放点,并重新执行步骤5;若第n

1角平分线对应的角不在误差允许阈值内,则结束本次轮廓缩放。
[0166]
如图4所示,若第n个轮廓点对应的缩放点由第n

1个轮廓点、第n个轮廓点、第n 1个轮廓点计算得出,且令第n

1个轮廓点为a点,第n个轮廓点对应的缩放点为a1点,第n个轮廓点为b点,第n个轮廓点对应的缩放点为b1点,则判断条件为:
[0167][0168]
其中分别是以a为起始点到b点的向量和以a1为起始点到b1点的向量;为其向量对应的模。
[0169]
若第n个轮廓点满足上述判断条件,则第n个轮廓点对应的缩放点不会导致轮廓变形;否则第n个轮廓点对应的缩放点会导致轮廓变形。
[0170]
如图5所示,在图4的基础上,b点所推导出的b1是变形点,因此在内缩递推时,应不考虑b点的前一点a,以a点的前一点对应的d点来推到b点的对应点b1。按照上述方法,即为第n个轮廓点对应的缩放点由第n

2个轮廓点、第n个轮廓点、第n 1个轮廓点计算得出,即计算出∠dbc的平分角,作d1b1平行db相交于平分线于b1。通过上述计算后,再检测:
[0171][0172]
是否成立,如果不成立,则再继续往前推取第n

3个轮廓点进行第n个轮廓点对应的缩放点的计算,以此类推直至得到不会导致轮廓变形的第n个轮廓点对应的缩放点。其中分别是以d为起始点到b点的向量和以d1为起始点到b1点的向量;
为其向量对应的模。
[0173]
并且在出现变形点时,根据第n

1角平分线对应的角是否在误差允许阈值内判断是否继续进行推导,即若∠q
n
‑2q
n
‑1q
n
在误差允许阈值内则继续进行推导;否则结束推导。
[0174]
本实施例中设置的误差允许阈值为第n

1角平分线对应的角的角度大于180

δ,其中δ为用户实际操作时根据需要进行设定,例如设置δ为10,即第n

1角平分线对应的角的角度需要大于170度才可继续进行推导。
[0175]
如图6所示,实线是原图形,当舍去点b,以点b的前一点d的对应点d1来推算点a1的时候,由于∠dba明显小于180度,因此对比内缩前后两个图形,会发现虚线图形与内缩前实线图形几乎不一样,这是由于内缩距离过大导致误差太大,因此结束缩放推导。
[0176]
步骤6、n=n 1,若n>n,则完成本次轮廓缩放,得到缩放后的新轮廓并结束;否则返回步骤4继续执行,其中n为plt文件中原始轮廓上轮廓点的总个数。
[0177]
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0178]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献