Part Part2DObject/de: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 20: Line 20:
Das [[Part Part2DObject/de|Part2DObject]] ist ein internes Objekt, kann also nicht von der grafischen Oberfläche aus erzeugt werden, sondern nur von der [[Python_console/de|Python-Konsole]], wie im Abschnitt [[#Scripten|Scripten]] beschrieben.
Das [[Part Part2DObject/de|Part2DObject]] ist ein internes Objekt, kann also nicht von der grafischen Oberfläche aus erzeugt werden, sondern nur von der [[Python_console/de|Python-Konsole]], wie im Abschnitt [[#Scripten|Scripten]] beschrieben.


Das {{incode|Part::Part2DObject}} ist im Arbeitsbereich [[Part_Workbench/de|Part]] festgelegt, kann aber als Basisklasse für [[scripted objects/de|skriptgenerierte Objekte]] in allen [[Workbenches/de|Arbeitsbereichen]] die geometrische 2D-Formen erzeugen, verwendet werden. Beispielsweise ist sie das Basisobjekt für Skizzen ([[Sketcher_SketchObject/de|Sketcher SketchObjekt]]), und für die meisten Objekte, die mit dem Arbeitsbereich [[Draft_Workbench/de|Draft]] erstellt werden.
<div class="mw-translate-fuzzy">
Das {{incode|Part::Part2DObject}} ist im [[Part Workbench/de|Part Arbeitsbereich]] festgelegt, kann aber als Basisklasse für [[scripted objects/de|geskriptete Objekte]] in allen [[Workbenches/de|Arbeitsbereichen]] die geometrische 2D Formen erzeugen, verwendet werden. Beispielsweise ist sie das Basisobjekt für Skizzen ([[Sketcher_SketchObject/de|Skizzierer SkizzeObjekt]]), und für die meisten Objekte, die mit der [[Draft Workbench/de|Draft Workbench]] erstellt werden.
</div>


Arbeitsbereiche können diesem Grundelement weitere Eigenschaften hinzufügen, um ein Objekt mit komplexem Verhalten zu erzeugen.
Arbeitsbereiche können diesem Grundelement weitere Eigenschaften hinzufügen, um ein Objekt mit komplexem Verhalten zu erzeugen.
Line 31: Line 29:
Siehe [[Property/de|Eigenschaft]] für alle Eigenschaftstypen, die geskriptete Objekte haben können.
Siehe [[Property/de|Eigenschaft]] für alle Eigenschaftstypen, die geskriptete Objekte haben können.


Das [[Part_Part2DObject/de|Part Part2DObjekt]] (Klasse {{incode|Part:: Part2DObject}}) wird von einem [[Part_Feature/de|Part Formelement]] (Klasse{{incode|Part::Feature}}) abgeleitet und erbt alle seiner Eigenschaften.
<div class="mw-translate-fuzzy">
Ein [[Part_Part2DObject/de|Part Teil2DObjekt]] ({{incode|PartDesign::Body}} Klasse) wird von einem [[Part_Feature/de|Part Formelement]] ({{incode|Part::Feature}} Klasse) abgeleitet, daher teilt sie alle Eigenschaften der letzteren.
</div>


Das Part Part2DObjekt hat außerdem die folgenden zusätzlichen Eigenschaften im [[property editor/de|Eigenschafteneditor]]. Ausgeblendete Eigenschaften können unter Verwendung des Befehls {{MenuCommand|Alles anzeigen}} im Kontextmenü des [[Property_editor/de|Eigenschaftseditors]] angezeigt werden.
<div class="mw-translate-fuzzy">
Zusätzlich zu den in [[Part Feature/de|Part Formelement]] beschriebenen Eigenschaften hat das Part Teil2DObjekt im [[property editor/de|Eigenschaftseditor]] die folgenden Eigenschaften. Ausgeblendete Eigenschaften können unter Verwendung des {{MenuCommand|Alles anzeigen}} Befehl im Kontextmenü des [[property editor/de|Eigenschaftseditor]] angezeigt werden.
</div>


<span id="Data"></span>
<span id="Data"></span>
Line 54: Line 48:
== Skripten ==
== Skripten ==


{{Emphasis|Siehe auch:}} [[FreeCAD_Scripting_Basics/de|FreeCAD Grundlagen Skripten]] und [[Scripted_objects/de|Skriptgenerierte Objekte]].
<div class="mw-translate-fuzzy">
{{Emphasis|Siehe auch:}} [[FreeCAD Scripting Basics/de|FreeCAD Skripten Grundlagen]], und [[scripted objects/de|geskriptete Objekte]].
</div>


Siehe [[Part_Feature/de|Part Formelemente]] zu allgemeinen Informationen über das Hinzufügen von Objekten zum Dokument.
Siehe [[Part_Feature/de|Part Formelemente]] zu allgemeinen Informationen über das Hinzufügen von Objekten zum Dokument.
Line 70: Line 62:
}}
}}


Für [[Python/de|Python]]-Subclassing sollte ein {{incode|Part::Part2DObjectPython}}-Objekt erstellt werden.
<div class="mw-translate-fuzzy">
Daher solltest du für [[Python/de|Python]] subclassing das Objekt {{incode|Part::Part2DObjectPython}} erstellen.
</div>


{{Code|code=
{{Code|code=

Latest revision as of 22:10, 1 April 2023

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"