1

我正在开发一个为定制数控机床生成路径的应用程序。它基于不支持 G 代码的 PLC 控制器,因此我需要将整个路径定义为命令列表。

我在定义型腔铣削的刀具路径时遇到了麻烦。作为输入,我使用具有不同形状的 DXF 文件。每个形状都位于不同的层上,由简单的元素组成,如 LINE、ARC 等。我需要将这些简单元素分析为闭合轮廓,并生成用于铣削该轮廓内的整个材料的刀具路径。你知道我可以定义形状的任何库或简单算法(在这种情况下,基于 DXF 数据)并且 lib/算法将生成整个刀具路径,同时考虑刀具直径?

对于像圆形或矩形这样的简单形状,我可以手动生成这样的刀具路径,但是当形状更复杂时(例如下面),我已经没有想法了。

示例形状

互联网上有很多免费的 CAM 软件,每个软件都以 G-Code 的形式生成刀具路径,所以我假设这种算法是以某种方式实现的。我考虑过使用这样的 CAM 软件,但 G 代码输出对我来说不可用,而且我不需要任何 GUI。它们中的大多数也是用高级语言编写的,而我正在用运行在 node.js 下的 JavaScript 编写我的应用程序。

4

1 回答 1

0

您的意思是您知道如何单独处理每个实体并且不知道如何将它们组合在一起?由于它们接触,您只需要根据其起点/终点 (1) 从当前实体的终点找到下一个实体。如果点 (1) 是该实体的终点,您将需要反向处理找到的实体,或按正常顺序处理它并反转结果线。当然要注意以正确的方向偏移它。

为了更快的邻居搜索,首先通过它们的起点和终点的 X 或 Y 坐标对它们进行排序。

于 2021-07-19T16:57:45.843 回答