开源改变世界

使用圆弧插入大量小线 #921

推推 grbl 2年前 (2023-02-01) 193次浏览
关闭
Harvie 打开了这个问题 2018 年 7 月 16 日 · 17条评论
关闭

使用圆弧插入大量小线#921

Harvie 打开了这个问题 2018 年 7 月 16 日 · 17条评论

注释

使用圆弧插入大量小线 #921
合作者
哈维 评论了 2018 年 7 月 16 日  

这更像是一个长期目标。我想要一个插件,它能够采用将圆弧和圆存储为许多小 G1 线的刀具路径,并将它们替换为 G2/G3 圆弧以降低 g 代码大小。

我听说 3d 打印中使用的一些 STL 切片器已经可以做到这一点(他们使用它来优化 g 代码,因为 STL 切片总是从三角形切片的线)。

使用圆弧插入大量小线 #921 哈维 改了标题 使用圆弧近似大量的小线 使用圆弧插入大量小线 2018 年 7 月 19 日
使用圆弧插入大量小线 #921
合作者作者
使用圆弧插入大量小线 #921
合作者作者
使用圆弧插入大量小线 #921
合作者作者

另一个执行此操作的 GPLv2 python 代码:
http ://wiki.linuxcnc.org/cgi-bin/wiki.pl?LinesToArcs

Harvie 向 Harvie/bCNC 添加了引用此问题的提交 2018 年 9 月 29 日

Harvie 向 Harvie/bCNC 添加了引用此问题的提交 2018 年 9 月 29 日

Harvie 向 Harvie/bCNC 添加了引用此问题的提交 2018 年 9 月 29 日

使用圆弧插入大量小线 #921
合作者作者

我有基本的功能!
使用圆弧插入大量小线 #921

使用圆弧插入大量小线 #921
贡献者

@Harvie
我拿了代码,这就是发生的事情。

Y0X0Z0
G1F1000
X-20F1000
Z-10F1000
Z0F1000
Y20F1000
Z-2F1000
X-10F1000
Y10F1000
X-20F1000
Y20F1000
Z0F1000
Y0X0F1000

使用圆弧插入大量小线 #921

Harvie 向 Harvie/bCNC 添加了引用此问题的提交 2018 年 9 月 29 日

使用圆弧插入大量小线 #921
合作者作者
哈维 评论了 2018 年 9 月 29 日  

@sfinexer别担心这个。这是由与弧形拟合无关的错误引起的。当存在由多个循环组成的路径时,它会影响更多的功能。我得看看它。

使用圆弧插入大量小线 #921
合作者作者
哈维 评论了 2018 年 9 月 29 日  

@sfinexer更新:您的 g 代码中有 Z 坐标。它暂时不起作用,因为 frompath() 和 lib/bpath 无法处理 Z。抱歉。此外,整个算法在处理 Z(想象倾斜弧)时会更复杂一些。我认为拥有真正的 3D 弧形拟合会很酷,但今天不会发生 :-) bCNC 目前是 2D CAM。我认为更好的 3D 支持将会到来,但又一次。不是今天……基础设施还没有真正准备好。

使用圆弧插入大量小线 #921
贡献者
斯芬克斯 评论了 2018 年 9 月 29 日  

@Harvie, 所以需要在选项中指定Z坐标除外。
我使用此代码来清洁主轴。

使用圆弧插入大量小线 #921
合作者作者

如何使用 g 代码清洁主轴?:) 为什么需要 arcfit 主轴清洁 g 代码,其中没有弧?

使用圆弧插入大量小线 #921
贡献者
斯芬克斯 评论了 2018 年 9 月 29 日  

@Harvie 很简单的。
沿工作区域外的 Z 轴定位(负 X 坐标)并用尖端追踪网格。
但是我需要圆弧来平滑我得到的代码 sketch.py

使用圆弧插入大量小线 #921
合作者作者

反正。在#591修复之前,我不太愿意在 bCNC 中开发任何 3D 功能。我认为在无法正确渲染 3D 刀具路径的 UI 中拥有高级 3D 功能毫无意义,这真的很烦人……

它应该从 sketch.py​​ 中获取 g 代码……我猜有一些与单个块中的多路径相关的问题。我会试着看看它。但不确定什么时候。问题似乎出在 Block.toPath()

使用圆弧插入大量小线 #921
贡献者
斯芬克斯 评论了 2018 年 9 月 29 日  

制作二维。

Y0X0Z0
G1F1000
X-20F1000
Y20F1000
X-10F1000
Y10F1000
X-20F1000
Y20F1000
Y0X0F1000

我想平滑角落。
使用圆弧插入大量小线 #921

使用圆弧插入大量小线 #921
合作者作者
哈维 评论了 2018 年 9 月 29 日  

@sfinexer我已经解决了这个问题。但我认为你误解了这个插件的作用!
它是圆弧拟合插件。不是角平滑。如果您需要平滑拐角,则必须在 CAD 中进行。使用 bCNC 另存为 DXF,在 librecad 中编辑并再次在 bCNC 中打开。

换句话说:它旨在简化 g 代码而不改变它的形状

使用圆弧插入大量小线 #921
贡献者

@Harvie这样的话,能不能在这里加个新的平滑插件呢?

使用圆弧插入大量小线 #921
合作者作者

@sfinexer是的。只需创建新的插件文件。例如:插件/smoothpath.py

使用圆弧插入大量小线 #921
合作者作者

现在已经掌握了,但它可能仍需要一些调整。