App DocumentObject
Einführung
Ein Anwendung DokumentObjekt Objekt oder formal ein App::DocumentObject
ist die Basisklasse aller im Dokument behandelten Objektklassen.
Allgemein ausgedrückt ist ein "Dokumentobjekt" jedes "Ding", das in der Baumansicht erscheinen kann und das beim Öffnen eines Dokuments gespeichert und wiederhergestellt wird.
Baumansicht, die verschiedene Objekte im Dokument anzeigt. Jedes von ihnen ist ein "Dokumentobjekt", das letztlich von der Basisklasse App::DocumentObject
abgeleitet ist.
Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten im Programm. Die App::DocumentObject
Klasse ist die Basisklasse von im Wesentlichen allen Objekten in der Software.
Anwendung
Das Anwendung DokumentObjekt ist eine interne Klasse, kann also weder von der grafischen Oberfläche aus erstellt werden, noch ist sie für sich selbst gedacht. Sie definiert lediglich das grundlegende Verhalten und die Eigenschaften von Objekten in der Software.
Einige der wichtigsten DocumentObjects sind die folgenden:
- Die Klasse App FeaturePython, ein leeres Objekt, das je nach den hinzugefügten Eigenschaften für verschiedene Zwecke verwendet werden kann.
- Die Klasse App GeoFeature, das Basisobjekt aller geometrischen Objekte, d.h. von Objekten, die eine Eigenschaft Platzierung haben, die ihre Position in der 3D Ansicht definiert.
- Die Klasse Part Formelement, abgeleitet von App GeoFeature, und die übergeordnete Klasse von Objekten mit 2D und 3D topologische Formen.
- Die Klasse Polygonnetz Formelement, abgeleitet von App GeoFeature, und die übergeordnete Klasse von Objekten mit 2D und 3D Polygonnetze.
Eigenschaften
Siehe Eigenschaft für alle Eigenschaftstypen, die geskriptete Objekte haben können.
Dies sind die grundlegenden Eigenschaften, die im Wesentlichen alle Objekte haben. Auf diese Eigenschaften kann über die Python Konsole zugegriffen werden.
- Daten-EigenschaftExpression Engine (
ExpressionEngine
): eine Liste von Ausdrücken. - Daten-EigenschaftLabel (
String
): der vom Benutzer editierbare Name dieses Objekts, es ist ein beliebiger UTF8-String. Standardmäßig ist es derselbe wie derName
. - Daten-EigenschaftLabel2 (
String
): eine längere, vom Benutzer editierbare Beschreibung dieses Objekts, es ist eine beliebige UTF8-Zeichenfolge, der Zeilenumbrüche enthalten kann. Standardmäßig ist es eine leere Zeichenfolge""
. - Daten-EigenschaftVisibility (
Bool
): whether to display the object or not.
Für abgeleitete Objekte wird standardmäßig nur Daten-EigenschaftLabel im Eigenschafteneditor aufgelistet. Die anderen Eigenschaften werden ausgeblendet.
Skripten
Siehe auch: FreeCAD Skripten Grundlagen, und geskriptete Objekte.
Siehe Part Formelement für die allgemeinen Informationen über das Hinzufügen von Objekten zum Programm.
Ein DokumentObjekt wird mit der addObject()
Methode des Dokuments erstellt. Im Allgemeinen ist es jedoch nicht erforderlich, dieses Objekt zu erstellen. In der Regel ist es besser, eine der komplexeren Klassen unterzuordnen, z.B. App FeaturePython, App GeoFeature, Part Formelement, Part Teil2DObjekt, usw.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::DocumentObject", "Name")
obj.Label = "Custom label"
- Core: App DocumentObject
- Basic: App FeaturePython, App GeoFeature, Part Feature, Mesh Feature, Fem FemMeshObject
- Internal shapes: Part TopoShape, Mesh MeshObject, Fem FemMesh
- Structure: App DocumentObjectGroup (Std Group), App Part (Std Part), App Link (Std LinkMake)
- Derived: Part Part2DObject, Sketcher SketchObject, PartDesign Body, PartDesign Feature
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzlicher Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Programmeinstellungen, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, Hilf FreeCAD, Spende
- Hilfe: Tutorien, Video Tutorien
- Arbeitsbereiche: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework