使用 ezdxf 0.14.1 和 Python 3.8 在动态块中获取属性
Get Attributes in dynamic block using ezdxf 0.14.1 and Python 3.8
我使用附件中的auotcad 制作了一个动态块,里面有几个属性,即“RXXX”、“COOR”。
https://drive.google.com/file/d/1c8WdeAql1U5edFBKEK7coupx9ilX_Ga6/view?usp=sharing
我想按照 ezdxf 文档中关于包装块的指导提取属性,但没有成功。
https://ezdxf.readthedocs.io/en/stable/tutorials/blocks.html?highlight=wrapped#evaluate-wrapped-block-references
万分感谢,如果有人知道如何提取动态块中的属性。
此文件中的 INSERT 实体是常规 INSERT,没有特殊功能,打印所有标记和关联值:
import ezdxf
doc = ezdxf.readfile('Block with attribute.dxf')
msp = doc.modelspace()
for insert in msp.query('INSERT'):
print(str(insert))
print([(attrib.dxf.tag, attrib.dxf.text) for attrib in insert.attribs])
结果:
INSERT(#36E)
[('RXXX_001', 'R502b'), ('COOR', '"836689.0, 822839.6"'),
('MAX_SPL', '64.6'), ('FLOOR_WITH_EXCEEDANCE', 'FLOOR_WITH_EXCEEDANCE'),
('Exceedance', 'EXCEEDANCE'), ('SPL(BASE)', ''), ('MT_TYPEV3', ''),
('TOWER', '5'), ('FLOOR', 'Typ'), ('UNIT', 'B'), ('ROOM', 'MBR'),
('COOR_X', '836689.0044'), ('COOR_Y', '822839.5560')]
我使用附件中的auotcad 制作了一个动态块,里面有几个属性,即“RXXX”、“COOR”。 https://drive.google.com/file/d/1c8WdeAql1U5edFBKEK7coupx9ilX_Ga6/view?usp=sharing
我想按照 ezdxf 文档中关于包装块的指导提取属性,但没有成功。 https://ezdxf.readthedocs.io/en/stable/tutorials/blocks.html?highlight=wrapped#evaluate-wrapped-block-references
万分感谢,如果有人知道如何提取动态块中的属性。
此文件中的 INSERT 实体是常规 INSERT,没有特殊功能,打印所有标记和关联值:
import ezdxf
doc = ezdxf.readfile('Block with attribute.dxf')
msp = doc.modelspace()
for insert in msp.query('INSERT'):
print(str(insert))
print([(attrib.dxf.tag, attrib.dxf.text) for attrib in insert.attribs])
结果:
INSERT(#36E)
[('RXXX_001', 'R502b'), ('COOR', '"836689.0, 822839.6"'),
('MAX_SPL', '64.6'), ('FLOOR_WITH_EXCEEDANCE', 'FLOOR_WITH_EXCEEDANCE'),
('Exceedance', 'EXCEEDANCE'), ('SPL(BASE)', ''), ('MT_TYPEV3', ''),
('TOWER', '5'), ('FLOOR', 'Typ'), ('UNIT', 'B'), ('ROOM', 'MBR'),
('COOR_X', '836689.0044'), ('COOR_Y', '822839.5560')]