Draft DXF/de

Beschreibung

Draft DXF ist ein Softwaremodul, das von den Std Öffnen, Std Import und Std Export Befehlen verwendet wird, um das DXF-Dateiformat zu verarbeiten.

Aus Sicht des Benutzers wird das DXF-Import-/Exportmodul automatisch geladen, wenn einer dieser Befehle aufgerufen wird und die zu öffnende, zu importierende oder zu exportierende Datei eine DXF-Datei ist. Der Hauptunterschied zwischen Std Öffnen und dem Importbefehl besteht darin, dass ersterer ein neues FreeCAD-Dokument erstellt und dann den Import durchführt, während letzterer die DXF-Datei importiert und das Ergebnis in das aktuell aktive Dokument einfügt.

QCAD-Zeichnung nach DXF exportiert, die anschließend in FreeCAD geöffnet wird

Importieren

Es stehen zwei Import-Module zur Verfügung, die unter Bearbeiten → Einstellungen... → Import-Export → DXF festgelegt werden können: Der eine ist eingebaut, C++ basiert und schnell, der andere ist eine Altlast, in Python kodiert, langsamer und erfordert die Installation einer Erweiterung, kann aber manche Objekte besser verarbeiten und kann feinere FreeCAD-Objekte erstellen. Beide unterstützen alle DXF-Versionen seit R12.

3D-Festkörper innerhalb einer DXF-Datei werden unter einem binären "ACIS/SAT-Blob" gespeichert, der zur Zeit von FreeCAD nicht gelesen werden kann.


Vergleich der Unterstützung von DXF-Importer-Entitäten
Entität C++-Importer Legacy-Importer
Linien
Polylinien (and LWPOLYLINES)
Bögen
Kreise
Ellipsen
Splines
Texte & MTexte
Führungslinie
Ebenen
Punkte
Maße
Blöcke
(Nur Geometrie; Texte, Maße, und Attribute innerhalb von Blöcken werden übersprungen)
Papierbereichs-Objekte
3D-Flächen

Exportieren

Es gibt auch zwei Export-Module: Das Altdaten-Export-Modul exportiert in das DXF-Format R12, Das C++ Export-Modul in das DXF-Format R14. Beide Formate können mit vielen Programmen verarbeitet werden.

Vergleich der Unterstützung von DXF-Export-Entitäten
Funktion C++-Exporter (R14) Legacy-Exporter (R12)
Unterstützte 2D-Geometry Alle außer Bezier-Kurven. Ellipsen und Splines werden nativ exportiert. Alle außer Punkten. Ellipsen und B-Splines können ungenau sein oder als Polylinien exportiert werden.
Punkte
(Wenn die "Export-Punkte" Voreinstellung aktiviert ist)
3D-Objekte Kanten von Flächen werden exportiert. Gebogene Kanten nur, wenn sie auf der XY-Ebene liegen. Es können doppelte Linien entstehen. Als abgeflachte 2D-Ansichten exportiert.
Texte und Maße
Farben
(Basierend auf der Farbe der Objektlinie)
Ebenen
(Aus Objektnamen abgeleitet)

(Aus Ebenen und verschachtelten Gruppen abgebildet)
Verbünde
(Als Blöcke exportiert)

Installieren

Aus lizenzrechtlichen Gründen sind die benötigten DXF Import/Export Bibliotheken, die von der Legacy Version des Importeurs benötigt werden, nicht Teil des FreeCAD Quellcodes. Für weitere Informationen siehe: FreeCAD und DXF Import.

Einstellungen

Siehe Import-Export-Einstellungen.

DWG

Da das DWG-Format ein proprietäres, geschlossenes und undokumentiertes Format ist, ist es für Open-Source-Projekte wie FreeCAD schwierig, es zu unterstützen. Aus diesem Grund ist FreeCAD auf externe Konverter angewiesen, um DWG-Dateien lesen und schreiben zu können. Um eine DWG-Datei zu importieren, wird zunächst mit einem Konverter eine DXF-Datei erstellt, die dann vom FreeCAD-DXF-Importer verarbeitet werden kann. Beim Exportieren nach DWG erfolgt die umgekehrte Konvertierung: Die vom FreeCAD-DXF-Exporter erstellte DXF-Datei wird in eine DWG-Datei umgewandelt.

Beachte, dass das DXF-Format eine 1:1-Konvertierung des DWG-Formats ermöglicht. Alle Anwendungen, die DWG-Dateien lesen und schreiben können, können dies auch mit DXF-Dateien tun, ohne dass Daten verloren gehen. Daher sollte es keine Probleme bereiten, DXF-Dateien anstelle von DWG-Dateien anzufordern und wiederum DXF-Dateien bereitzustellen.

Die folgenden DWG-Konverter werden standardmäßig unterstützt:

Siehe Import Export Einstellungen, FreeCAD and DWG Import für mehr Informationen.

Skripten

Siehe auch: Autogenerierte API-Dokumentation und Grundlagen der Skripterstellung in FreeCAD.

Um Objekte in eine DXF-Datei zu exportieren, wird die Methode export des Moduls importDXF verwendet.

importDXF.export(objectslist, filename, nospline=False, lwPoly=False)

Beispiel:

import FreeCAD as App
import Draft
import importDXF

doc = App.newDocument()

polygon1 = Draft.make_polygon(3, radius=500)
polygon2 = Draft.make_polygon(5, radius=1500)

doc.recompute()

objects = [polygon1, polygon2]
importDXF.export(objects, "/home/user/Pictures/myfile.dxf")