注释
合作者
|
这是太杂乱的形状,弧形拟合可能永远不会适用于此。10mm 的精度也太高 但你是真的! 我刚刚在圆弧拟合算法中发现了一些错误,但我不知道如何修复它。如果你想在 lib/bpath.py 中查看它。这是检查两个后续段是向左还是向右转向的代码(因为在弧形中所有段都应该朝一个方向转向)。这也是为什么您永远无法使用此算法来弧拟合您在 g 代码中提供的随机不稳定线的原因(它们经常改变方向)。该算法旨在与先前细分为直线的圆弧一起使用,因此您可以恢复原始圆弧。您可能会用它来替换某些片段,但我怀疑它会让您的图像看起来更平滑。 def arcFit(self, prec=0.5, numseg=10):
def arcdir(A,B):
#FIXME: here is some bug. A and B is not used at all, but it works better this way. Have to figure out what's going$
TA = tmpath[0].tangentEnd()
TB = tmpath[1].tangentStart()
if (( TA[0] * TB[1] ) - ( TA[1] * TB[0] )) < 0:
return 1
return 0
两条越野车线应该看起来像这样: TA = A.tangentEnd()
TB = B.tangentStart()
但是,当我修复它时它会完全停止工作!也就是说还有其他问题! 像你这样经常改变方向的形状很可能会触发这个错误并产生大圆圈。就像发生在你身上一样。 |
贡献者作者
|
我检查了新功能的工作,发现某处有错误。 |
贡献者作者
合作者
贡献者作者
|
我认为如果路径不好,那么我们必须忽略它,而不是建立弧线。 |
合作者
但这正是发生的事情。这就是为什么只有 3% 的路径被 arcfited。因为其余部分没有合适的弧线。这意味着 97% 的路径都被忽略了。所以我不确定你的意思。今天我添加了帮助以明确此插件的用途。 有一个错误在整个地方产生了那个有趣的圈子(就像在你的视频中一样)。但这不再是我昨天修复的情况。 |
合作者
|
我做了一些改进,我已经设法将您的草图缩小到几乎一半大小: |
合作者
|
现在我用相同的设置和更好的算法缩小到第三个尺寸: 它可能看起来更糟,但您始终可以使用相同的算法将精度提高到 0.4mm(或更高): |
合作者










我带来了 g 代码和视频。
g代码:
test.nc.zip
视频:
http ://cnc.tiven.ru/ssr-2018-10-09_23.13.37.mp4