Contact me: hankecnc@gmail.com

IndexError:加载带圆角的 DXF 时出现列表索引超出范围错误。 #458

推推 grbl 3年前 (2023-02-01) 449次浏览
关闭
dalenunns 打开了这个问题 2016 年 11 月 19 日 · 1条评论
关闭

IndexError:加载带圆角的 DXF 时出现列表索引超出范围错误。#458

dalenunns 打开了这个问题 2016 年 11 月 19 日 · 1条评论

注释

IndexError:加载带圆角的 DXF 时出现列表索引超出范围错误。 #458

尝试在最新版本的 bCNC 上打开带圆角的 DXF 文件时出现以下错误(该错误已经存在一段时间了)

回溯(最近一次调用最后一次):
文件“/home/chippy/Downloads/cnc/bCNC/Utils.py”,第 391 行,在调用
返回 self.func(*args)
文件“./bCNC.py”,第 1871 行, 在 loadDialog
if filename: self.load(filename)
File “./bCNC.py”, line 1932, in load
Sender.load(self,filename)
File “/home/chippy/Downloads/cnc/bCNC/Sender.py “,第 487 行,在加载
self.gcode.importDXF(filename)
文件“/home/chippy/Downloads/cnc/bCNC/CNC.py”,第 2374 行,在 importDXF
path.fromDxfLayer(dxf, entities, units)
文件中“ /home/chippy/Downloads/cnc/bCNC/lib/bpath.py”,第 1121 行,在 fromDxfLayer
b = bulge[i]
IndexError:列表索引超出范围

我在此处上传了示例 DXF 文件NONAME_0.dxf.zip

我查看了代码,似乎正在发生的事情是凸起数组(列表?)不包含与 x 和 y 坐标相同数量的条目。它似乎是由 DXF 文件中折线中的某些坐标没有 42 条目(我认为是“凸起”条目)引起的。

修复方法是在没有 42 条目的情况下从文件加载 PolyLine 时,只需将默认条目添加到值为 0 的凸起数组吗?我不确定这是否会破坏系统的其他部分?

我附上的 DXF 是由 DraftSight 创建的,我取了一个正方形,然后圆角并导出为 DXF。

顺便说一句,我喜欢 bCNC

IndexError:加载带圆角的 DXF 时出现列表索引超出范围错误。 #458
所有者

谢谢@dalenunns. LWPOLYLINE 的凸起读数确实存在问题。由于它是一个可选参数,DraftSight 没有为线性段(仅为圆弧)设置它,并且 bCNC 正在失去与顶点的同步。现在已更正。