Åpen kildekode Python-bibliotek for AutoCAD DXF-oppretting
Gratis Python CAD-bibliotek for oppretting, lesing og manipulering av AutoCAD DXF-filer. Utviklere kan lese og skrive, og støtter ASCII DXF- og binære DXF-modeller.
Hva er Ezdxf-biblioteket?
Programvareutviklere kan jobbe med AutoCAD DXF-filer i sine egne Python-programmer takket være det robuste Python AutoCAD DXF-biblioteket Ezdxf med åpen kildekode. AutoCAD bruker den mye brukte DXF-filtypen (drawing interchange file) for å utveksle data med andre CAD-programmer. Biblioteket støtter de fleste av DXF-formatets funksjoner, samtidig som det gjør utviklernes jobb enklere ved å skjule de intrikate DXF-detaljer for programmerere.
Applikasjonsspesifikke data kan legges inn av tredjepartsprogrammer ved hjelp av Ezdxf-biblioteket. Muligheten til å produsere DXF-filer, redigere DXF, skrive eksisterende DXF-dokumenter, teste med CPython og Pypy3, bevare tredjeparts DXF-innhold, bruke valgfrie C-utvidelser for CPython og mange flere funksjoner er avgjørende for å administrere DXF-dokumenter. Andre tilleggsprogrammer er også tilgjengelige, men de må lastes inn separat, da de ikke installeres automatisk under det grunnleggende oppsettet.
Flere DXF-versjoner, inkludert R12, R2000, R2004, R2007, R2010, R2013 og R2018, støttes av Ezdxf-biblioteket med åpen kildekode. I tillegg støtter det eldre DXF-versjoner enn R12 og DXF-versjonene R13 og R14 i skrivebeskyttet modus. MIT-lisensen regulerer bruken av Ezdxf-biblioteket.
Komme i gang med Ezdxf
Den enkleste måten å installere Ezdxf-pakken på er å bruke pip. Den inkluderer de valgfrie C-utvidelsene fra PyPI som binære hjul. Bruk følgende kommando for en problemfri installasjon.
Installer Ezdxf via pip
pip install ezdxf
Du kan laste ned det kompilerte delte biblioteket fra Github-repositoriet.
Arbeid med Polygon via Python 3D Library
En polygon er en todimensjonal form med rette sider. Polygonal modellering er en tilnærming for modellering av objekter ved å representere eller tilnærme overflatene deres ved hjelp av polygonnett. Python Library Ezdxf med åpen kildekode lar programvareutviklere lage polygoner for hvert stakkpunkt med bare et par linjer med Python-kode. Det er veldig nyttig i 3D-skrivere hvis firmware ikke korrigerer for små hullstørrelser.
Oppretting av AutoCAD DXF-filer via Python
Python Ezdxf med åpen kildekode har inkludert fullstendig støtte for lesing og skriving av AutoCAD DXF-dokumenter i Python-applikasjoner. Biblioteket lager de nye DXF-dokumentene med svært lite innhold, noe som betyr at bare de ressursene som er helt nødvendige er inkludert, for eksempel linjetyper, tekststiler og mer. Det er også mulig å åpne en eksisterende DXF-fil og enkelt endre innholdet.
Hvordan lage en ny DXF-tegning via Python-biblioteket?
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")
Åpne og les AutoCAD DXF-tegninger via Python
Det åpne Python Ezdxf-biblioteket lar programvareutviklere åpne, laste inn og hente data fra et eksisterende DXF-dokument med bare et par linjer med Python-kode. Husk at det fungerer bra for DXF-tegninger fra pålitelige kilder som AutoCAD eller BricsCAD, og vil laste inn DXF-filer med mindre eller større feil. Du kan enkelt få tilgang til og iterere over alle DXF-enheter, og du kan enkelt få tilgang til attributtene til en eksisterende enhet.
Hvordan laste inn en DXF-fil via Python-biblioteket?
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)
Hvordan håndtere tekst i DXF-tegninger via Python
Ezdxf Python-biblioteket har full støtte for håndtering av tekst i DXF-dokumenter. Biblioteket har inkludert diverse funksjoner for tekstbehandling, som å legge til en enkel tekstenhet på én linje, grunnleggende tekstjustering som (topp, midtre, nederst og grunnlinje, la sentrum, høyre), tilpasse tekst, standard tekststiler og linjetyper, legge til ny tekststil, bruke 3D-tekst, bruke stående fonter og så videre.
Hvordan legge til enkel tekst på én linje via Python API?
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")