我想删除形成DXF文件的每个Circle实体。我正在使用ezdxf,它似乎是进行此类工作的好工具。

我使用ezdxf doc编写了代码,但是从Python中得到了一个错误:

AttributeError: 'str' objet has no attribute 'destroy'


我不明白为什么。我使用了这个文档:http://pythonhosted.org/ezdxf/layouts.html#delete-entities

这是我的代码:

import dxfgrabber
import ezdxf

dwg = dxfgrabber.readfile("test.dxf")
print(dwg)
c = []
center_points = [entity.center for entity in dwg.entities if entity.dxftype == 'CIRCLE']
dxf = ezdxf.readfile("test.dxf")
modelspace = dxf.modelspace()
for point in center_points:
    modelspace.add_point(point)
    c.append(point)
modelspace.delete_entity('CIRCLE')
dxf.save()
print(c)


谢谢。

最佳答案

我成功了。我发布我的代码:

entities = dxf.entities
for e in entities:
        if e.dxftype() == 'CIRCLE':
            modelspace.delete_entity(e)


代替 :

modelspace.delete_entity('CIRCLE')


我认为这样做可能有更好的方法,但它正在起作用。

关于python - 使用ezdxf删除DXF中的圆,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45139989/

10-10 20:03