Part Part2DObject

From FreeCAD Documentation
This page is a translated version of the page Part Part2DObject and the translation is 91% complete.

Einführung

Ein Part Part2DObject, oder formal ein Part::Part2DObject, ist ein einfaches Element mit einer topologischen Form, das in der 3D-Ansicht angezeigt werden kann.

Das Part::Part2DObject ist von dem Part Formelement abgeleitet, ist aber auf 2D-Geometrie spezialisiert, da seine Form auf einer Ebene liegen wird. Diese Ebene wird durch die Daten-EigenschaftPlacement definiert (Position, Normale und Rotation). Die Ebene kann aber auch durch unterstützende geometrische Elemente definiert werden, wie z.B. die Ebene, die durch drei beliebige Knoten erzeugt wird, oder eine Fläche eines Volumenkörpers.

Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten in FreeCAD

Anwendung

Das Part2DObject ist ein internes Objekt, kann also nicht von der grafischen Oberfläche aus erzeugt werden, sondern nur von der Python-Konsole, wie im Abschnitt Scripten beschrieben.

Das Part::Part2DObject ist im Arbeitsbereich Part festgelegt, kann aber als Basisklasse für skriptgenerierte Objekte in allen Arbeitsbereichen die geometrische 2D-Formen erzeugen, verwendet werden. Beispielsweise ist sie das Basisobjekt für Skizzen (Sketcher SketchObjekt), und für die meisten Objekte, die mit dem Arbeitsbereich Draft erstellt werden.

Arbeitsbereiche können diesem Grundelement weitere Eigenschaften hinzufügen, um ein Objekt mit komplexem Verhalten zu erzeugen.

Eigenschaften

Siehe Eigenschaft für alle Eigenschaftstypen, die geskriptete Objekte haben können.

Das Part Part2DObjekt (Klasse Part:: Part2DObject) wird von einem Part Formelement (KlassePart::Feature) abgeleitet und erbt alle seiner Eigenschaften.

Das Part Part2DObjekt hat außerdem die folgenden zusätzlichen Eigenschaften im Eigenschafteneditor. Ausgeblendete Eigenschaften können unter Verwendung des Befehls Alles anzeigen im Kontextmenü des Eigenschaftseditors angezeigt werden.

Daten

Attachment

  • Daten (Hidden)Attacher Type (String): class name of the attach engine object driving the attachment. It defaults to Attacher::AttachEnginePlane.
  • DatenSupport (LinkSubList): it is the plane or face supporting the 2D geometry. It defaults to an empty list [].
  • DatenMap Mode (Enumeration): Deactivated by default. This property determines a plane which the object will use as reference for 2D geometry. Clicking on the ellipsis ... (three dots), to the right of the entry field starts the Part EditAttachment command that allows selecting the supporting plane by picking different elements in the 3D view. The different modes are: Deactivated, Translate origin, Object's XY, Object's XZ, Object's YZ, Plane face, Tangent to surface, Normal to edge, Frenet NB, Frenet TN, Frenet TB, Concentric, Revolution section, Plane by 3 points, Normal to 3 points, Folding, Inertia 2-3, Align O-N-X, Align O-N-Y, Align O-X-Y, Align O-X-N, Align O-Y-N, Align O-Y-X.
  • DatenMap Reversed (Bool): it defaults to false; if it is true the Z direction will be reversed. For example, a sketch will be flipped upside down. Hidden if DatenMap Mode is Deactivated.
  • Daten (Hidden)Map Path Parameter (Float): sets point of curve to map a sketch to. It goes from 0 to 1, which corresponds to the start and end. It defaults to 0.
  • DatenAttachment Offset (Placement): the position of the object in the 3D view, with respect to the attachment object's placement. The placement is defined by a Base point (vector), and a Rotation (axis and angle). See Placement. Hidden if DatenMap Mode is Deactivated.

Skripten

Siehe auch: FreeCAD Grundlagen Skripten und Skriptgenerierte Objekte.

Siehe Part Formelemente zu allgemeinen Informationen über das Hinzufügen von Objekten zum Dokument.

Ein Teil2DObjekt wird mit der addObject() Methode des Dokuments erstellt.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("Part::Part2DObject", "Name")
obj.Label = "Custom label"

Für Python-Subclassing sollte ein Part::Part2DObjectPython-Objekt erstellt werden.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("Part::Part2DObjectPython", "Name")
obj.Label = "Custom label"