Esempio n. 1
0
    def export_acdb_entity(self, tagwriter: 'TagWriter'):
        """ Export subclass 'AcDbEntity' as DXF tags. (internal API)"""
        # Full control over tag order and YES, sometimes order matters
        not_r12 = tagwriter.dxfversion > DXF12
        if not_r12:
            tagwriter.write_tag2(SUBCLASS_MARKER, acdb_entity.name)

        self.dxf.export_dxf_attribs(tagwriter, [
            'paperspace',
            'layer',
            'linetype',
            'material_handle',
            'color',
            'lineweight',
            'ltscale',
            'true_color',
            'color_name',
            'transparency',
            'plotstyle_enum',
            'plotstyle_handle',
            'shadow_mode',
            'visualstyle_handle',
        ])

        if self.proxy_graphic and not_r12 and options.store_proxy_graphics:
            # length tag has group code 92 until DXF R2010
            export_proxy_graphic(
                self.proxy_graphic,
                tagwriter,
                length_code=(92 if tagwriter.dxfversion < DXF2013 else 160))
def test_export_proxy_graphic():
    tagwriter = TagCollector()
    binary_data = load_proxy_graphic(Tags.from_text(DATA))
    export_proxy_graphic(binary_data, tagwriter)
    s = "".join(tag.dxfstr() for tag in tagwriter.tags)
    assert s == DATA