Part Part2DObject/de: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(15 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{TOCright}}


<span id="Introduction"></span>
== Einführung ==
== Einführung ==


[[File:Tree_Part2D.svg|32px]]
[[File:Tree_Part2D.svg|32px]]


Ein [[Part Part2DObject/de|Part Teil2DObjekt]], oder formal ein {{incode|Part::Part2DObject}}, ist ein einfaches Element mit einer [[Part_TopoShape/de|topologische Form]], das in der [[3D view/de|3D Ansicht]] angezeigt werden kann.
Ein [[Part_Part2DObject/de|Part Part2DObject]], oder formal ein {{incode|Part::Part2DObject}}, ist ein einfaches Element mit einer [[Part_TopoShape/de|topologischen Form]], das in der [[3D_view/de|3D-Ansicht]] angezeigt werden kann.


Das {{incode|Part::Part2DObject}} ist von einem [[Part Feature/de|Part Formelement]] abgeleitet, ist aber auf 2D Geometrie spezialisiert, da seine Form auf einer Ebene liegen wird. Diese Ebene wird durch die {{PropertyData/de|Platzierung}} Eigenschaft 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.
Das {{incode|Part::Part2DObject}} ist von dem [[Part Feature/de|Part Formelement]] abgeleitet, ist aber auf 2D-Geometrie spezialisiert, da seine Form auf einer Ebene liegen wird. Diese Ebene wird durch die {{PropertyData/de|Placement}} 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.


[[File:FreeCAD_core_objects.svg|800px]]
[[File:FreeCAD_core_objects.svg|800px]]


{{Caption|Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten im Programm. Die Klasse {{incode|Part::Part2DObject}} ist auf 2D Formen spezialisiert, so dass sie die Basisklasse für planare Objekte ist, die mit den Werkbänken Draft und Sketcher erstellt werden. Sie enthält eine Erweiterung, mit der sie an Flächen und Ebenen angehängt werden kann.}}
{{Caption|Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten in FreeCAD}}


<span id="Usage"></span>
==Anwendung==
==Anwendung==


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 [[Part_Part2DObject#Scripting|Scripting]] 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 [[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.
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.


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.


<span id="Properties"></span>
== Eigenschaften ==
== Eigenschaften ==


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.


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.
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.


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/de|Alles anzeigen}} Befehl im Kontextmenü des [[property editor/de|Eigenschaftseditor]] angezeigt werden.
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.


<span id="Data"></span>
=== Daten ===
=== Daten ===


{{TitleProperty|Attachment}}
{{TitleProperty|Attachment}}
* {{PropertyData|Map Mode|Enumeration}}: {{value|Deactivated}} by default. This property determines a plane which the object will use as reference for 2D geometry. Clicking on the ellipsis {{KEY|...}} (three dots), to the right of the entry field opens the [[Part_EditAttachment|Part EditAttachment]] [[task panel|task panel]] that allows selecting the supporting plane by picking different elements in the [[3D view|3D view]]. The different modes are: {{value|Deactivated}}, {{value|Translate origin}}, {{value|Object's XY}}, {{value|Object's XZ}}, {{value|Object's YZ}}, {{value|Plane face}}, {{value|Tangent to surface}}, {{value|Normal to edge}}, {{value|Frenet NB}}, {{value|Frenet TN}}, {{value|Frenet TB}}, {{value|Concentric}}, {{value|Revolution section}}, {{value|Plane by 3 points}}, {{value|Normal to 3 points}}, {{value|Folding}}, {{value|Inertia 2-3}}, {{value|Align O-N-X}}, {{value|Align O-N-Y}}, {{value|Align O-X-Y}}, {{value|Align O-X-N}}, {{value|Align O-Y-N}}, {{value|Align O-Y-X}}.


* <div id="Property_Attacher_Type"></div>{{PropertyData|Attacher Type|String|Hidden}}: class name of the attach engine object driving the attachment. It defaults to {{incode|Attacher::AttachEnginePlane}}.
See [[Part_EditAttachment|Part EditAttachment]] for more information on all mapping modes.
* <div id="Property_Support"></div>{{PropertyData|Support|LinkSubList}}: it is the plane or face supporting the 2D geometry. It defaults to an empty list {{incode|[]}}.

* <div id="Property_Map_Mode"></div>{{PropertyData|Map Mode|Enumeration}}: {{value|Deactivated}} by default. This property determines a plane which the object will use as reference for 2D geometry. Clicking on the ellipsis {{KEY|...}} (three dots), to the right of the entry field starts the [[Part_EditAttachment|Part EditAttachment]] command that allows selecting the supporting plane by picking different elements in the [[3D_view|3D view]]. The different modes are: {{value|Deactivated}}, {{value|Translate origin}}, {{value|Object's XY}}, {{value|Object's XZ}}, {{value|Object's YZ}}, {{value|Plane face}}, {{value|Tangent to surface}}, {{value|Normal to edge}}, {{value|Frenet NB}}, {{value|Frenet TN}}, {{value|Frenet TB}}, {{value|Concentric}}, {{value|Revolution section}}, {{value|Plane by 3 points}}, {{value|Normal to 3 points}}, {{value|Folding}}, {{value|Inertia 2-3}}, {{value|Align O-N-X}}, {{value|Align O-N-Y}}, {{value|Align O-X-Y}}, {{value|Align O-X-N}}, {{value|Align O-Y-N}}, {{value|Align O-Y-X}}.
The following two properties are normally hidden. They become visible once {{PropertyData|Map Mode}} is something other than {{value|Deactivated}}.
* {{PropertyData|Map Reversed|Bool}}: it defaults to {{FALSE}}; if it is {{TRUE}} the Z direction will be reversed. For example, a [[sketch|sketch]] will be flipped upside down.
* <div id="Property_Map_Reversed"></div>{{PropertyData|Map Reversed|Bool}}: it defaults to {{FALSE}}; if it is {{TRUE}} the Z direction will be reversed. For example, a [[sketch|sketch]] will be flipped upside down. Hidden if {{PropertyData|Map Mode}} is {{value|Deactivated}}.
* <div id="Property_Map_Path"></div>{{PropertyData|Map Path Parameter|Float|Hidden}}: sets point of curve to map a [[sketch|sketch]] to. It goes from {{value|0}} to {{value|1}}, which corresponds to the {{value|start}} and {{value|end}}. It defaults to {{value|0}}.
* {{PropertyData|Attachment Offset|Placement}}: the position of the object in the [[3D view|3D view]], with respect to the attachment object's placement. The placement is defined by a {{incode|Base}} point (vector), and a {{incode|Rotation}} (axis and angle). See [[Placement|Placement]].
* <div id="Property_Attachment_Offset"></div>{{PropertyData|Attachment Offset|Placement}}: the position of the object in the [[3D_view|3D view]], with respect to the attachment object's placement. The placement is defined by a {{incode|Base}} point (vector), and a {{incode|Rotation}} (axis and angle). See [[Placement|Placement]]. Hidden if {{PropertyData|Map Mode}} is {{value|Deactivated}}.

==== Ausgeblendete Dateneigenschaften ====

{{TitleProperty|Base}}

* {{PropertyData|Proxy|PythonObject}}: a custom class associated with this object. This only exists for the [[Python|Python]] version. See [[Part_Part2DObject#Scripting|Scripting]].

{{TitleProperty|Attachment}}

* {{PropertyData|Attacher Type|String}}: class name of the attach engine object driving the attachment. It defaults to {{incode|Attacher::AttachEnginePlane}}.
* {{PropertyData|Support|LinkSubList}}: it is the plane or face supporting the 2D geometry. It defaults to an empty list {{incode|[]}}.
* {{PropertyData|Map Path Parameter|Float}}: sets point of curve to map a [[sketch|sketch]] to. It goes from {{value|0}} to {{value|1}}, which corresponds to the {{value|start}} and {{value|end}}. It defaults to {{value|0}}.

=== Ansicht ===

{{TitleProperty|Grid}}
* {{PropertyView|Grid Size|Length}}: the size of the spacing of the local grid lines in the [[3D view|3D view]]; it defaults to {{value|10 mm}}.
* {{PropertyView|Grid Snap|Bool}}: it defaults to {{FALSE}}; if {{TRUE}} the grid can be used to snap points.
* {{PropertyView|Grid Style|Enumeration}}: the style of the grid lines; {{value|Dashed}} (default) or {{value|Light}}.
* {{PropertyView|Show Grid|Bool}}: it defaults to {{FALSE}}; if {{TRUE}} a grid local to the object will be displayed in the [[3D view|3D view]]. This grid is independent of the [[Draft_ToggleGrid|Draft Grid]].
* {{PropertyView|Tight Grid|Bool}}: if {{TRUE}} (default) the local grid will be localized around the origin of the shape, otherwise it will extend itself more.

==== Ausgeblendete Eigenschaften Ansicht ====

{{TitleProperty/de|Grundlage}}

* {{PropertyView|Proxy|PythonObject}}: eine benutzerdefinierte Providerklasse, die mit diesem Objekt verknüpft ist. Das gibt es nur für die [[Python/de|Python]] Version. Siehe [[Std_Group/de#Skripten|Skripten]].

Alle anderen Ansichtseigenschaften, einschließlich ausgeblendeter Eigenschaften, sind die des [[Part_Feature/de|Part Formelement]] Basisobjekts.


<span id="Scripting"></span>
== Skripten ==
== Skripten ==


{{Emphasis|Siehe auch:}} [[FreeCAD Scripting Basics/de|FreeCAD Skripten Grundlagen]], und [[scripted objects/de|geskriptete Objekte]].
{{Emphasis|Siehe auch:}} [[FreeCAD_Scripting_Basics/de|FreeCAD Grundlagen Skripten]] und [[Scripted_objects/de|Skriptgenerierte Objekte]].


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.


Ein Teil2DObjekt wird mit der {{incode|addObject()}} Methode des Dokuments erstellt.
Ein Teil2DObjekt wird mit der {{incode|addObject()}} Methode des Dokuments erstellt.

{{Code|code=
{{Code|code=
import FreeCAD as App
import FreeCAD as App
Line 84: Line 62:
}}
}}


Für [[Python/de|Python]]-Subclassing sollte ein {{incode|Part::Part2DObjectPython}}-Objekt erstellt werden.
Diese grundlegende {{incode|Part::Part2DObject}} hat kein Proxyobjekt, sodass es vollständig für sub-classing verwendet werden kann.

Daher solltest du für [[Python/de|Python]] subclassing das Objekt {{incode|Part::Part2DObjectPython}} erstellen.


{{Code|code=
{{Code|code=
Line 96: Line 72:
}}
}}


Beispielsweise, die meisten Werkzeuge aus dem [[Draft_Workbench/de|Entwurf Arbeitsbereich]], wie [[Draft_Line/de|Entwurf Linie]], [[Draft_Rectangle/de|Entwurf Rechteck]], [[Draft_Polygon/de|Entwurf Polygon]], usw., sind {{incode|Part::Part2DObjectPython}} Objekte mit einem benutzerdefinierten Symbol und zusätzliche Eigenschaften.


{{Part Tools navi{{#translation:}}}}
{{Document_objects_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

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"