1. Produse
  2.   CAD
  3.   Python
  4.   Ezdxf
 
  

Bibliotecă Python open source pentru crearea de fișiere DXF AutoCAD

Bibliotecă CAD Python gratuită pentru crearea, citirea și manipularea fișierelor DXF AutoCAD. Dezvoltatorii pot citi și scrie suport pentru modele DXF ASCII și DXF binare.

Ce este Biblioteca Ezdxf?

Dezvoltatorii de software pot lucra cu fișiere DXF AutoCAD în propriile programe Python datorită bibliotecii robuste open source Python AutoCAD DXF Ezdxf. AutoCAD utilizează tipul de fișier DXF (fișier de schimb de desene) utilizat pe scară largă pentru a face schimb de date cu alte programe CAD. Biblioteca acceptă majoritatea caracteristicilor formatului DXF, facilitând în același timp munca dezvoltatorilor prin ascunderea complexității DXF de programatori.

Datele specifice aplicației pot fi încorporate de programe terțe utilizând biblioteca Ezdxf. Capacitatea de a produce fișiere DXF, de a edita DXF, de a scrie documente DXF existente, de a testa cu CPython și Pypy3, de a păstra conținut DXF terț, de a utiliza extensii C opționale pentru CPython și multe alte funcții sunt cruciale pentru gestionarea documentelor DXF. Sunt disponibile și alte extensii, însă acestea trebuie încărcate separat, deoarece nu sunt instalate automat în timpul configurării de bază.

Mai multe versiuni DXF, inclusiv R12, R2000, R2004, R2007, R2010, R2013 și R2018, sunt acceptate de biblioteca open source Ezdxf. În plus, aceasta acceptă versiuni DXF mai vechi decât R12 și versiunile DXF R13 și R14 în modul doar pentru citire. Licența MIT reglementează utilizarea bibliotecii Ezdxf.

Previous Next

Noțiuni introductive despre Ezdxf

Cel mai simplu mod de a instala pachetul Ezdxf este folosind comanda pip. Acesta include extensiile C opționale din PyPI ca roți binare. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme.

Instalați Ezdxf prin pip

pip install ezdxf 

Puteți descărca biblioteca partajată compilată din depozitul Github.

Lucrul cu poligon prin intermediul bibliotecii 3D Python

Un poligon este o formă bidimensională cu laturi drepte. Modelarea poligonală este o abordare pentru modelarea obiectelor prin reprezentarea sau aproximarea suprafețelor acestora folosind plase poligonale. Biblioteca Python open source Ezdxf permite dezvoltatorilor de software să creeze poligoane pentru fiecare punct al stivei cu doar câteva linii de cod Python. Este foarte benefică în cazul imprimantelor 3D al căror firmware nu corectează dimensiunile mici ale găurilor.

Crearea fișierelor DXF AutoCAD prin Python

Ezdxf în Python, versiunea open source, include suport complet pentru citirea și scrierea documentelor DXF AutoCAD în aplicațiile Python. Biblioteca creează noile documente DXF cu foarte puțin conținut, ceea ce înseamnă că sunt incluse doar resursele complet necesare, cum ar fi tipurile de linii, stilurile de text și multe altele. De asemenea, este posibil să deschideți un fișier DXF existent și să îi modificați conținutul cu ușurință.

Cum se creează un nou desen DXF prin intermediul bibliotecii Python?

import ezdxf
from ezdxf import colors
from ezdxf.enums import TextEntityAlignment

# Create a new DXF document.
doc = ezdxf.new(dxfversion="R2010")

# Create new table entries (layers, linetypes, text styles, ...).
doc.layers.add("TEXTLAYER", color=colors.RED)

# DXF entities (LINE, TEXT, ...) reside in a layout (modelspace, 
# paperspace layout or block definition).  
msp = doc.modelspace()

# Add entities to a layout by factory methods: layout.add_...() 
msp.add_line((0, 0), (10, 0), dxfattribs={"color": colors.YELLOW})
msp.add_text(
    "Test", 
    dxfattribs={
        "layer": "TEXTLAYER"
    }).set_placement((0, 0.2), align=TextEntityAlignment.CENTER)

# Save the DXF document.
doc.saveas("test.dxf")
 

Deschidere și citire desene DXF AutoCAD prin Python

Biblioteca open source Python Ezdxf permite dezvoltatorilor de software să deschidă, să încarce și să obțină date dintr-un document DXF existent cu doar câteva linii de cod Python. Rețineți că funcționează bine pentru desene DXF din surse de încredere, cum ar fi AutoCAD sau BricsCAD, și va încărca fișiere DXF cu defecte minore sau majore. Puteți accesa și itera cu ușurință peste toate entitățile DXF și puteți accesa cu ușurință atributele entităților existente.

Cum se încarcă fișierul DXF prin intermediul bibliotecii Python?

import sys
import ezdxf

try:
    doc = ezdxf.readfile("your_dxf_file.dxf")
except IOError:
    print(f"Not a DXF file or a generic I/O error.")
    sys.exit(1)
except ezdxf.DXFStructureError:
    print(f"Invalid or corrupted DXF file.")
    sys.exit(2)

Cum se gestionează textul în desenele DXF prin Python

Biblioteca Ezdxf Python a oferit suport complet pentru gestionarea textului în documentele DXF. Biblioteca a inclus diverse funcții pentru procesarea textului, cum ar fi adăugarea unei entități text simple pe o singură linie, alinierea de bază a textului, cum ar fi (sus, mijloc, jos și linie de bază, centru, dreapta), potrivirea textului, stiluri de text standard și tipuri de linii, adăugarea unui nou stil de text, utilizarea textului 3D, utilizarea fonturilor verticale și așa mai departe.

Cum se adaugă text simplu pe o linie prin intermediul API-ului Python?

import ezdxf
from ezdxf.enums import TextEntityAlignment

# The TEXT entity is a DXF primitive and is supported in all DXF versions.
# The argument setup=True creates standard linetypes and text styles in the
# new DXF document.
doc = ezdxf.new("R12", setup=True)
msp = doc.modelspace()

# Use method set_placement() to define the TEXT alignment, because the
# relations between the DXF attributes 'halign', 'valign', 'insert' and
# 'align_point' are tricky.
msp.add_text("A Simple Text").set_placement(
    (2, 3),
    align=TextEntityAlignment.MIDDLE_RIGHT
)

# Using a predefined text style:
msp.add_text(
    "Text Style Example: Liberation Serif",
    height=0.35,
    dxfattribs={"style": "LiberationSerif"}
).set_placement((2, 6), align=TextEntityAlignment.LEFT)

doc.saveas("simple_text.dxf")
 
 Română