Std Part/de: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(209 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

<div class="mw-translate-fuzzy">
{{Docnav/de
{{Docnav/de
|
|
|[[Std Group/de|Gruppe]]
|[[Std_Group/de|Gruppe]]
|[[Std_Base/de|Std Basis]]
|[[PartDesign_Workbench/de|PartDesign-Arbeitsbereich]]
|IconL=
|IconL=
|IconR=Std_Group.svg
|IconC=Workbench_PartDesign.svg
|IconR=Group.svg
|IconC=Freecad.svg
}}
}}
</div>


{{GuiCommand/de
{{GuiCommand/de
|Name=Std Part
|Name=Std Part
|Name/de=Std Baugruppe
|Name/de=Std Teil
|MenuLocation=Keine
|Workbenches=All
|Workbenches=Alle
|MenuLocation=None
|Version=0.17
|Version=0.17
|SeeAlso=[[Std Group/de|Std Group]], [[PartDesign Body/de|PartDesign Body]]
|SeeAlso=[[Std_Group/de|Std Gruppe]], [[PartDesign_Body/de|PartDesign Körper]]
}}
}}


<span id="Description"></span>
==Beschreibung==
==Beschreibung==


{{Button|[[File:Std_Part.svg|16px]] [[Std_Part/de|Std Teil]]}}, intern [[App_Part/de|App-Part]] genannt, ist ein Sammelbehälter zur allgemeinen Verwendung, der eine Gruppe von Objekten (Baugruppe) zusammenhält, so dass sie zusammen als Einheit in der [[3D_view/de|3D-Ansicht]] bewegt werden können.
Eine '''Baugruppe '''( engl. PART ) ist ein allgemeiner Container. Er enthält mehrere Elemente, die auf diese Weise gemeinsam bewegt werden können. Diese Art der Zusammenfassung kann aus fast allen Freecad-Elementen wie Körpern (Bodies, aus Part Design), Part-WorkbenchObjekten, Netzen (Meshes ) etc. bestehen.


Das 'Std Part'-Element wurde entwickelt, um als Grundbaustein zur Zusammenstellung von mechanischen [[assembly/de|Zusammenbauten]] (Baugruppen) zu dienen. Es dient zum Anordnen von Objekten, die eine [[Part_TopoShape/de|Part TopoForm]] haben, wie [[Part_Primitives/de|Part Grundkörper]], [[PartDesign_Body/de|PartDesign Körper]] und andere [[Part_Feature/de|Part Formelement]].
Eine Baugruppe besitzt eine eigenes Koordinatensystem welches von den Objekten referenziert werden kann.
Das 'Std Part' stellt ein [[#Ursprung|Ursprungsobjekt]] mit lokalen X-, Y- und Z-Achsen und Standardebenen zur Verfügung, die als Bezug für die Positionierung der enthaltenen Objekte dienen können. Zusätzlich können 'Std Parts' in andere 'Std Parts' eingebettet werden, um eine Gesamtbaugruppe aus kleineren Unterbaugruppen zu erstellen.


Obwohl es hauptsächlich für Festkörper gedacht ist, kann das 'Std Part' zur Handhabung aller Objekte verwendet werden, die die Eigenschaft [[Placement/de|Placement]] besitzen. Daher kann es auch [[Mesh_Feature/de|Mesh Formelemente]], [[Sketch/de|Skizzen]] und andere Objekte enthalten, die von der Klasse [[App_GeoFeature/de|App-GeoFeature]] abgeleitet werden.
Baugruppe ist ein Symbol welches in der Struktur-Toolbar , die in allen Arbeitsberecihen ( Workbench ) angezeigt wird, enthalten ist.


Ein {{Button|[[File:PartDesign_Body.svg|16px]] [[PartDesign_Body/de|PartDesign Körper]]}} darf nicht mit einem {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/de|Std Teil]]}} verwechselt werden. Das erste ist ein entsprechendes Objekt aus dem Arbeitsbereich [[File:Workbench_PartDesign.svg|24px]] [[PartDesign_Workbench/de|PartDesign]], zum Erstellen [[PartDesign_Body/de#Einzeln zusammenhängender Körper|einteiliger, zusammenhängender Festkörper]] aus [[PartDesign_Feature/de|PartDesign Formelementen]]. Das [[Std_Part/de|Std Teil]] wird im Gegensatz dazu nicht zur Erstellung von Objekten verwendet, sondern um unterschiedliche Objekte im Raum anzuordnen, mit der Absicht [[assembly/de|Baugruppen]] zu erstellen.
[[File:Std Part-tree.png|top]][[File:Std Part example.png]]


Das Werkzeug {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/de|Std Part]]}} wird nicht durch einen bestimmten Arbeitsbereich festgelegt, sondern durch das Grundsystem. Daher befindet es sich in der {{MenuCommand|structure toolbar}}, die es in allen [[Workbenches/de|Arbeitsbereichen]] gibt. Mit der Schaltfläche {{Button|[[File:Std_Group.svg|16px]] [[Std_Group/de|Std Gruppe]]}} können Objekte in der Baumansicht frei gruppiert werden, ohne ihre Position zu berücksichtigen. Dieses Objekt beeinflußt die Positionen seiner Elemente nicht. Es ist im wesentlichen nur ein Ordner mit dem die [[Tree_view/de|Baumansicht]] geordnet werden kann.
{{Caption|Local coordinate system defined by a Part}}


[[File:Std Part-tree.png]][[File:Std Part example.png]]
===Beispiele===
* Eine Baugruppe welche Objekte zusammenhält, die einzeln gefertigt und danach zusammengeschraubt oder geklebt werden, wie z.bsp. ein Tisch aus Holz oder ein Ventilblock.
* Importierte STEP Dateien sind eine Baugruppe aus dem Haupt-Assembly und den Unter-Assemblies.
* Ein Teil aus lose zusammengefügten Elementen , wie ein Kugellager oder ein Schukostecker.


{{Caption|Links: Elemente innerhalb eines Std Teils (Part-Objekt) in der [[Tree_view/de|Baumansicht]]. Rechts: Objekte im Raum positioniert, bezogen auf den Ursprung des Std Teils.}}
===Aktiv Status===
Ein FreeCAD Dokument kann mehrere Baugruppen beinhalten. Jedoch kann davon nur eine aktiv sein. Diese wird durch eine hellblaue Hinterlegung des Namens kenntlich gemacht.
[[File:Std Part-tree-active.png|none]]
===Usrprung===
Der Ursprung ( Originxxx ) besteht aus den 3 Standardachsen (X, Y, Z) und den 3 Standardflächen (XY, XZ and YZ). Skizzen können auf diesen Flächen konstruiert werden. Hierbei entsteht automatisch ein Körper innerhalb der Baugruppe.
Alle Elemente der Baugruppe sind am Ursprung dieser ausgerichtet und werden zusammen mit der Baugruppe bewegt.
[[File:PartDesign_Body_tree-02.png|none]]
===Sichtbarkeit regeln===
Die Sichtbarkeit der Baugruppe hat Vorrang vor der Sichtbarkeit ihrer Elemente. Ist die Baugruppe unsichtbar, sind alle Elemente unsichtbar. Ist diese sichtbar kann eine beliebige Anzahl der Elemente ebenfalls gleichzeitig sichtbar sein.


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


# Die Schaltfläche {{Button|[[File:Std_Part.svg|16px]] [[Std_Part/de|Baugruppe erstellen]]}} betätigen.
* Klicke auf{{KEY|[[Image:Std Part.png|24px]] '''Create part'''}} in der Toolbar. Die neue Baugruppe wird sofort aktiviert.
# Ein leeres Teil wird erzeugt und wird automatisch ''[[Std_Part#Active_status|aktiv]]''.
* Mit Doppelklick auf die Baugruppe im Modellbaum wird diese sin oder aus geschaltet.
* Objekte werden per Drag & Drop in und aus Baugruppen heraus bewegt.
# In der [[Tree_view/de|Baumansicht]] Objekte wählen und durch Drag & Drop auf dieses Teil ziehen, um sie zum Teil hinzuzufügen.
* Um Objekte aus der Baugruppe zu entfernen, müssen diese auf den Dokumentnamen gezogen werden um danach auf dessen oberstem Level zu liegen.
# Um Objekte aus einem Teil zu entfernen, zieht man es per Drag & Drop aus dem Teil auf die Dokumentenbeschriftung oben in der [[Tree_view/de|Baumansicht]].
# Objekte können durch Bearbeiten der {{PropertyData/de|Group}} Teileigenschaft auch hinzugefügt oder entfernt werden.


<span id="Notes"></span>
== Hinweise ==

* Ein Objekt kann nur zu einem einzigen Std Teil (Baugruppe) gehören.
* 3D-Bearbeitungen, wie [[Part_Boolean/de|Part Boolean]] können nicht auf Std Teile angewendet werden. Beispielsweise können keine zweit Std Teile markiert und [[Part_Fuse/de|Part Vereinigung]] oder [[Part_Cut/de|Part Differenz]] angewendet werden.

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


Ein [[Std_Part/de|Std Teil]] wird intern [[App_Part/de|App Part]](Klasse {{incode|App::Part}}) genannt und ist von einem [[App_GeoFeature/de|App GeoFeature]] (Klasse {{incode|App::GeoFeature}}) abgeleitet und erbt alle seiner Eigenschaften. Es hat weitere zusätzliche Eigenschaften, vor allem Eigenschaften die ihm helfen, Informationen im Zusammenhang mit Baugruppen/Zusammenbauten zu verwalten, z.B. die {{PropertyData/de|Type}}, {{PropertyData/de|Id}}, {{PropertyData/de|License}}, {{PropertyData/de|LicenseURL}} und {{PropertyData/de|Group}}.
<div class="mw-translate-fuzzy">
* {{PropertyData/de|Id}}: ID (Teilenummer) für die Baugruppe. Dies ist optional.
* {{PropertyData/de|License}}: Die Lizenz unter welcher die baugruppe veröffentlicht ist , auch optional .
* {{PropertyData/de|License URL}}: Die URL der zugrunde gelegten Lizenzinformationen.
* {{PropertyData/de|Placement}}: Die Parameter zur Lage und Position der Baugruppe im 3D Raum. Siehe [[Placement/de|Platzierung]].
* {{PropertyData/de|Label}}: Der Name der Bearbeitung , optional.
* {{PropertyData/de|Group}}: Liste der referenzierten Objekte.
</div>


Diese Eigenschaften stehen im [[property_editor/de|Eigenschafteneditor]] zur Verfügung. Versteckte Eigenschaften werden durch den Befehl {{MenuCommand|Alle anzeigen}} im Kontextmenü des [[property_editor/de|Eigenschafteneditors]] angezeigt.
==Limitierungen==


<span id="Data"></span>
* Neu erstellte Elemente sind nicht automatisch in der aktiven Baugruppe. Diese werden entweder auf der obersten Ebene am Ende des Baums erzeugt oder innerhalb des aktiven Körpers, selbst wenn dieser in einer andren Baugruppe liegt.
=== Daten ===


{{TitleProperty|Basis}}
* Ein Baugruppe selbst hat keine Oberflächen. Darum können keine 3D Operationen wie Boolsche Operationen an ihr angewendet werden.

* Zur Zeit können mit Baugruppen noch keine, [[Draft Snap/de|Draft Snaps]] Bezugsoperationen durchgeführt werden. Auch nicht an den beinhalteten Objekten
* {{PropertyData/de|Type|String}}: eine Beschreibung für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge {{value|""}}.
* {{PropertyData/de|Material|Link}}: das Material für dieses Objekt.
* {{PropertyData/de|Meta|Map|Hidden}}: Zuordnung zusätzlicher Meta-Informationen. Standardmäßig ist sie leer <code>{}</code>.
* {{PropertyData/de|Id|String}}: eine Identifikations- oder Teilenummer für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge {{value|""}}.
* {{PropertyData|Uid|UUID|Hidden}}: Die eindeutige Kennung ([https://en.wikipedia.org/wiki/Universally_unique_identifier universally unique identifier], kurz UUID) (128-bit-Zahl) des Objekts. Diese wird zur Erstellungszeit vergeben.
* {{PropertyData/de|License|String}}: ein Feld zur Angabe der Lizenz für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge {{value|""}}.
* {{PropertyData/de|LicenseURL|String}}: ein Feld zur Angabe einer Webadresse zur Lizenz oder zum Vertrag für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge {{value|""}}.
* {{PropertyData/de|Color|Color}}: ein Tupel von vier RGBA-Fließkommawerten {{value|(r,g,b,a)}} um die Farbe des Objekts festzulegen; standardmäßig ist es {{value|(1.0, 1.0, 1.0, 1.0)}}, das als {{value|[255,255,255]}} zur Basis 255, <span style="background-color:#fff; color:#000; border: 1px solid #888888; width:3em; height:12pt; padding: 2px 1em 2px;">white color</span> angezeigt wird.
* {{PropertyData/de|Placement|Placement}}: die Position des Objekts in der [[3D_view/de|3D-Ansicht]]. Die Positionierung wird durch einen Punkt (Ortsvektor){{incode|Base}} und eine Drehung {{incode|Rotation}}, bestehend aus Richtungsvektor (Axis) und Winkel (Angle), festgelegt. Siehe [[Placement/de|Positionierung]].
** {{PropertyData/de|Angle}}: der Drehwinkel um die {{PropertyData/de|Axis}}. Standardmäßig ist er {{value|0°}} (Null Grad).
**{{PropertyData/de|Axis}}: der Einheitsvektor, der die Drehachse für die Positionierung festlegt. Jede Komponente ist eine Fließkommazahl zwischen {{value|0}} und {{value|1}}. Wenn irgendein Wert über {{value|1}} liegt, wird der Vektor so normiert, dass der Betrag des Vektors {{value|1}} ist. Standardmäßig ist dies die positive Z Achse, {{value|(0, 0, 1)}}.
**{{PropertyData/de|Position}}: ein Vektor mit den 3D-Koordinaten des Basispunkts (Ortsvektor). Standardmäßig ist dies der Ursprung {{value|(0, 0, 0)}}.
* {{PropertyData|Label|String}}: die vom Benutzer editierbare Bezeichnung dieses Objekts, sie ist eine beliebige UTF8-Zeichenfolge.
* {{PropertyData/de|Label2|String|Hidden}}: eine längere vom Benutzer editierbare Bezeichnung dieses Objekts, sie ist eine beliebige UTF8-Zeichenfolge, die Zeilenumbrüche enthalten kann. Standardmäßig ist sie eine leere Zeichenfolge {{value|""}}.
* {{PropertyData/de|Expression Engine|ExpressionEngine|Hidden}}: eine Liste von Ausdrücken. Standardmäßig ist sie leer {{value|[]}}.
* {{PropertyData/de|Visibility|Bool|Hidden}}: legt fest, ob das Objekt angezeigt wird oder nicht.
* {{PropertyData/de|Origin|Link|Hidden}}: das [[App_OriginGroupExtension/de|App Origin]]-Objekt, das als Positionierungsreferenz aller in der {{PropertyData/de|Group}} enthaltenen Elemente dient.
* {{PropertyData/de|Group|LinkList}}: eine Liste der verknüpften Objekte. Standardmäßig ist sie leer {{value|[]}}.
* {{PropertyData/de|_ Group Touched|Bool|Hidden}}: legt fest, ob die Gruppe berührt(?) ist/wird oder nicht.

<span id="View"></span>
===Ansicht===

{{TitleProperty|Optionen anzeigen (Display Options)}}

* {{PropertyView|Display Mode|Enumeration}}: {{value|Group}}.
* {{PropertyView|Show In Tree|Bool}}: if it is {{TRUE}}, the object appears in the [[Tree_view|Tree view]]. Otherwise, it is set as invisible.
* {{PropertyView|Visibility|Bool}}: if it is {{TRUE}}, the object appears in the [[3D_view|3D view]]; otherwise it is invisible. By default this property can be toggled on and off by pressing the {{KEY|Space}} bar in the keyboard.

{{TitleProperty|Auswahl (Selection)}}

* {{PropertyView|On Top When Selected|Enumeration}}: {{value|Disabled}} (default), {{value|Enabled}}, {{value|Object}}, {{value|Element}}.
* {{PropertyView|Selection Style|Enumeration}}: {{value|Shape}} (default), {{value|BoundBox}}. If the option is {{value|Shape}}, the entire shape (vertices, edges, and faces) will be highlighted in the [[3D_view|3D view]]; if it is {{value|BoundBox}} only the bounding box will be highlighted.

<span id="Detailed_explanation"></span>
== Detaillierte Beschreibung ==

<span id="Active_status"></span>
=== Aktiver Status ===

Ein geöffnetes Dokument kann mehrere Teile enthalten. Aber nur ein Teil kann aktiv sein. Das aktive Teil wird in der [[Tree_view/de|Baumansicht]] mit einer Hintergrundfarbe angezeigt, die mit dem {{MenuCommand|Aktiver Behälter}}-Wert im [[Preferences_Editor/de#Farben|Voreinstellungseditor]] angegeben wird. Der voreingestellte Wert ist hellblau. Es wird auch mit der Schrifteigenschaft 'fett' angezeigt.

Eine Zusammenstellung aktivieren oder deaktivieren:
* Doppelklick auf die Zusammenstellung in der [[Tree_view/de|Baumansicht]] oder
* das Kontextmenü mit einem Rechtsklick öffnen und {{MenuCommand|Toggle active part}} wählen.

[[File:Std_Part_active.png]]

{{Caption|Dokument mit zwei Std Teilen, in der das zweite aktiv ist.}}

<span id="Origin"></span>
===Ursprung===

Der Ursprung besteht aus den drei Standardachsen (X, Y, Z) und drei Standardebenen (XY, XZ und YZ). An diese können [[Sketch/de|Skizzen]] und andere Objekte angehängt werden, wenn sie erstellt werden.

[[File:Part_Origin_tree.png]] [[File:Part_Origin_view.png]]

{{Caption|Links: Teil Ursprung in der [[Tree_view/de|Baumansicht]]. Rechts: Ansicht der Ursprungselemente in der [[3D_view/de|3D-Ansicht]].}}

{{Emphasis|Hinweis:}} der Ursprung ist ein [[App_OriginGroupExtension/de|App-Origin]]-Objekt (Klasse {{incode|App::OriginGroupExtension}}), während die Achsen und Ebenen Objekte des Typs {{incode|App::Line}} bzw. {{incode|App::Plane}} sind. Jedes dieser Elemente kann mit der {{KEY|Leertaste}} individuell ausgeblendet und wieder angezeigt werden. Damit kann sicher die korrekte Referenz gewählt werden, wenn andere Objekte erzeugt werden.

{{Emphasis|Hinweis 2:}} alle Elemente innerhalb einer Baugruppe beziehen sich auf den Ursprung der Baugruppe. Das bedeutet, dass die Baugruppe bezogen auf das globale Koordinatensystem verschoben oder gedreht werden kann, ohne die Positionierung der Elemente innerhalb der Baugruppe zu beeinflussen.

<span id="Visibility_Management"></span>
=== Anzeigeverwaltung ===

Die Sichtbarkeit der Baugruppe überlagert die Sichtbarkeit jedes darin enthaltenen Objekts. Wenn die Baugruppe ausgeblendet ist, werden auch die darin enthaltenen Objekte ausgeblendet, auch wenn ihre jeweilige {{PropertyView/de|Sichtbarkeit}} auf {{TRUE}} (wahr) gesetzt ist. Ist die Baugruppe sichtbar, entscheidet die {{PropertyView/de|Sichtbarkeit}} des jeweiligen Objekts, ob das Objekt angezeigt wird oder nicht.

[[File:Part_Visibility_off.png]] [[File:Part_Visibility_on.png]]
{{Caption|Die Sichtbarkeit des Std Teils (Part-Objekt) bestimmt, ob die Objekte, die in der Baugruppe zusammengestellt sind, in der [[3D_view/de|3D-Ansicht]] angezeigt werden oder nicht. Links: die Baugruppe ist ausgeblendet und keines der Objekte wird in der [[3D_view/de|3D-Ansicht]] angezeigt. Rechts: die Baugruppe ist sichtbar und jedes Objekt bestimmt seine Sichtbarkeit selbst.}}

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

{{Emphasis|Siehe auch:}} [[FreeCAD_Scripting_Basics/de|FreeCAD Grundlagen Skripten]] und [[Scripted_objects/de|Skriptgenerierte Objekte]].

Siehe [[Part_Feature/de|Part Formelement]] für allgemeine Informationen zum Hinzufügen von Objekten zu einem Dokument.

Ein Std Teil ([[App_Part/de|App Part]]) wird mit der Methode {{incode|addObject()}} des Dokuments erstellt. Sobald eine Baugruppe (Part-Objekt) existiert, können andere Objekte mit den Methoden {{incode|addObject()}} oder {{incode|addObjects()}} zur Baugruppe hinzugefügt werden.

{{Code|code=
import FreeCAD as App

doc = App.newDocument()
part = App.ActiveDocument.addObject("App::Part", "Part")

obj1 = App.ActiveDocument.addObject("PartDesign::Body", "Body")
obj2 = App.ActiveDocument.addObject("Part::Box", "Box")

part.addObjects([obj1, obj2])
App.ActiveDocument.recompute()
}}

Es kann kein skriptgeneriertes {{incode|App::Part}} erstellt werden. Es kann aber das Verhalten eines {{incode|App::Parts}} zu einem skriptgenerierten {{incode|Part::FeaturePython}}-Objekt durch folgende Codes hinzugefügt werden:

{{Code|code=
class MyGroup(object):
def __init__(self, obj=None):
self.Object = obj
if obj:
self.attach(obj)

def dumps(self):
return

def loads(self, _state):
return

def attach(self, obj):
obj.addExtension("App::OriginGroupExtensionPython")
obj.Origin = FreeCAD.ActiveDocument.addObject("App::Origin", "Origin")

def onDocumentRestored(self, obj):
self.Object = obj

class ViewProviderMyGroup(object):
def __init__(self, vobj=None):
if vobj:
vobj.Proxy = self
self.attach(vobj)
else:
self.ViewObject = None

def attach(self, vobj):
vobj.addExtension("Gui::ViewProviderOriginGroupExtensionPython")
self.ViewObject = vobj

def dumps(self):
return None

def loads(self, _state):
return None

App.ActiveDocument.addObject("Part::FeaturePython",
"Group",
group.MyGroup(),
group.ViewProviderMyGroup(),
True)
}}


* ''Redactor's note: at this time, it is unclear whether the Part's active status serves a purpose.''
( Baugruppen können zwar aktiv oder inaktiv sein, dies hat derzeit aber noch keine klaren Auswirkungen oder Sinnhaftigkeit )


<div class="mw-translate-fuzzy">
{{Docnav/de
{{Docnav/de
|
|
|[[Std Group/de|Gruppe]]
|[[Std_Group/de|Gruppe]]
|[[Std_Base/de|Std Basis]]
|[[PartDesign_Workbench/de|PartDesign-Arbeitsbereich]]
|IconL=
|IconL=
|IconR=Std_Group.svg
|IconC=Workbench_PartDesign.svg
|IconR=Group.svg
|IconC=Freecad.svg
}}
}}
</div>

<div class="mw-translate-fuzzy">
{{PartDesign Tools navi/de}}
</div>


{{Std_Base_navi{{#translation:}}}}
{{Userdocnavi/de}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 09:02, 27 January 2024

Std Teil

Menüeintrag
Keine
Arbeitsbereich
Alle
Standardtastenkürzel
Keiner
Eingeführt in Version
0.17
Siehe auch
Std Gruppe, PartDesign Körper

Beschreibung

Std Teil, intern App-Part genannt, ist ein Sammelbehälter zur allgemeinen Verwendung, der eine Gruppe von Objekten (Baugruppe) zusammenhält, so dass sie zusammen als Einheit in der 3D-Ansicht bewegt werden können.

Das 'Std Part'-Element wurde entwickelt, um als Grundbaustein zur Zusammenstellung von mechanischen Zusammenbauten (Baugruppen) zu dienen. Es dient zum Anordnen von Objekten, die eine Part TopoForm haben, wie Part Grundkörper, PartDesign Körper und andere Part Formelement. Das 'Std Part' stellt ein Ursprungsobjekt mit lokalen X-, Y- und Z-Achsen und Standardebenen zur Verfügung, die als Bezug für die Positionierung der enthaltenen Objekte dienen können. Zusätzlich können 'Std Parts' in andere 'Std Parts' eingebettet werden, um eine Gesamtbaugruppe aus kleineren Unterbaugruppen zu erstellen.

Obwohl es hauptsächlich für Festkörper gedacht ist, kann das 'Std Part' zur Handhabung aller Objekte verwendet werden, die die Eigenschaft Placement besitzen. Daher kann es auch Mesh Formelemente, Skizzen und andere Objekte enthalten, die von der Klasse App-GeoFeature abgeleitet werden.

Ein PartDesign Körper darf nicht mit einem Std Teil verwechselt werden. Das erste ist ein entsprechendes Objekt aus dem Arbeitsbereich PartDesign, zum Erstellen einteiliger, zusammenhängender Festkörper aus PartDesign Formelementen. Das Std Teil wird im Gegensatz dazu nicht zur Erstellung von Objekten verwendet, sondern um unterschiedliche Objekte im Raum anzuordnen, mit der Absicht Baugruppen zu erstellen.

Das Werkzeug Std Part wird nicht durch einen bestimmten Arbeitsbereich festgelegt, sondern durch das Grundsystem. Daher befindet es sich in der structure toolbar, die es in allen Arbeitsbereichen gibt. Mit der Schaltfläche Std Gruppe können Objekte in der Baumansicht frei gruppiert werden, ohne ihre Position zu berücksichtigen. Dieses Objekt beeinflußt die Positionen seiner Elemente nicht. Es ist im wesentlichen nur ein Ordner mit dem die Baumansicht geordnet werden kann.

Links: Elemente innerhalb eines Std Teils (Part-Objekt) in der Baumansicht. Rechts: Objekte im Raum positioniert, bezogen auf den Ursprung des Std Teils.

Anwendung

  1. Die Schaltfläche Baugruppe erstellen betätigen.
  2. Ein leeres Teil wird erzeugt und wird automatisch aktiv.
  3. In der Baumansicht Objekte wählen und durch Drag & Drop auf dieses Teil ziehen, um sie zum Teil hinzuzufügen.
  4. Um Objekte aus einem Teil zu entfernen, zieht man es per Drag & Drop aus dem Teil auf die Dokumentenbeschriftung oben in der Baumansicht.
  5. Objekte können durch Bearbeiten der Daten-EigenschaftGroup Teileigenschaft auch hinzugefügt oder entfernt werden.

Hinweise

  • Ein Objekt kann nur zu einem einzigen Std Teil (Baugruppe) gehören.
  • 3D-Bearbeitungen, wie Part Boolean können nicht auf Std Teile angewendet werden. Beispielsweise können keine zweit Std Teile markiert und Part Vereinigung oder Part Differenz angewendet werden.

Eigenschaften

Ein Std Teil wird intern App Part(Klasse App::Part) genannt und ist von einem App GeoFeature (Klasse App::GeoFeature) abgeleitet und erbt alle seiner Eigenschaften. Es hat weitere zusätzliche Eigenschaften, vor allem Eigenschaften die ihm helfen, Informationen im Zusammenhang mit Baugruppen/Zusammenbauten zu verwalten, z.B. die Daten-EigenschaftType, Daten-EigenschaftId, Daten-EigenschaftLicense, Daten-EigenschaftLicenseURL und Daten-EigenschaftGroup.

Diese Eigenschaften stehen im Eigenschafteneditor zur Verfügung. Versteckte Eigenschaften werden durch den Befehl Alle anzeigen im Kontextmenü des Eigenschafteneditors angezeigt.

Daten

Basis

  • Daten-EigenschaftType (String): eine Beschreibung für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge "".
  • Daten-EigenschaftMaterial (Link): das Material für dieses Objekt.
  • Daten-Eigenschaft (versteckt)Meta (Map): Zuordnung zusätzlicher Meta-Informationen. Standardmäßig ist sie leer {}.
  • Daten-EigenschaftId (String): eine Identifikations- oder Teilenummer für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge "".
  • Daten (Hidden)Uid (UUID): Die eindeutige Kennung (universally unique identifier, kurz UUID) (128-bit-Zahl) des Objekts. Diese wird zur Erstellungszeit vergeben.
  • Daten-EigenschaftLicense (String): ein Feld zur Angabe der Lizenz für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge "".
  • Daten-EigenschaftLicenseURL (String): ein Feld zur Angabe einer Webadresse zur Lizenz oder zum Vertrag für dieses Objekt. Standardmäßig ist es eine leere Zeichenfolge "".
  • Daten-EigenschaftColor (Color): ein Tupel von vier RGBA-Fließkommawerten (r,g,b,a) um die Farbe des Objekts festzulegen; standardmäßig ist es (1.0, 1.0, 1.0, 1.0), das als [255,255,255] zur Basis 255, white color angezeigt wird.
  • Daten-EigenschaftPlacement (Placement): die Position des Objekts in der 3D-Ansicht. Die Positionierung wird durch einen Punkt (Ortsvektor)Base und eine Drehung Rotation, bestehend aus Richtungsvektor (Axis) und Winkel (Angle), festgelegt. Siehe Positionierung.
    • Daten-EigenschaftAngle: der Drehwinkel um die Daten-EigenschaftAxis. Standardmäßig ist er (Null Grad).
    • Daten-EigenschaftAxis: der Einheitsvektor, der die Drehachse für die Positionierung festlegt. Jede Komponente ist eine Fließkommazahl zwischen 0 und 1. Wenn irgendein Wert über 1 liegt, wird der Vektor so normiert, dass der Betrag des Vektors 1 ist. Standardmäßig ist dies die positive Z Achse, (0, 0, 1).
    • Daten-EigenschaftPosition: ein Vektor mit den 3D-Koordinaten des Basispunkts (Ortsvektor). Standardmäßig ist dies der Ursprung (0, 0, 0).
  • DatenLabel (String): die vom Benutzer editierbare Bezeichnung dieses Objekts, sie ist eine beliebige UTF8-Zeichenfolge.
  • Daten-Eigenschaft (versteckt)Label2 (String): eine längere vom Benutzer editierbare Bezeichnung dieses Objekts, sie ist eine beliebige UTF8-Zeichenfolge, die Zeilenumbrüche enthalten kann. Standardmäßig ist sie eine leere Zeichenfolge "".
  • Daten-Eigenschaft (versteckt)Expression Engine (ExpressionEngine): eine Liste von Ausdrücken. Standardmäßig ist sie leer [].
  • Daten-Eigenschaft (versteckt)Visibility (Bool): legt fest, ob das Objekt angezeigt wird oder nicht.
  • Daten-Eigenschaft (versteckt)Origin (Link): das App Origin-Objekt, das als Positionierungsreferenz aller in der Daten-EigenschaftGroup enthaltenen Elemente dient.
  • Daten-EigenschaftGroup (LinkList): eine Liste der verknüpften Objekte. Standardmäßig ist sie leer [].
  • Daten-Eigenschaft (versteckt)_ Group Touched (Bool): legt fest, ob die Gruppe berührt(?) ist/wird oder nicht.

Ansicht

Optionen anzeigen (Display Options)

  • AnsichtDisplay Mode (Enumeration): Group.
  • AnsichtShow In Tree (Bool): if it is true, the object appears in the Tree view. Otherwise, it is set as invisible.
  • AnsichtVisibility (Bool): if it is true, the object appears in the 3D view; otherwise it is invisible. By default this property can be toggled on and off by pressing the Space bar in the keyboard.

Auswahl (Selection)

  • AnsichtOn Top When Selected (Enumeration): Disabled (default), Enabled, Object, Element.
  • AnsichtSelection Style (Enumeration): Shape (default), BoundBox. If the option is Shape, the entire shape (vertices, edges, and faces) will be highlighted in the 3D view; if it is BoundBox only the bounding box will be highlighted.

Detaillierte Beschreibung

Aktiver Status

Ein geöffnetes Dokument kann mehrere Teile enthalten. Aber nur ein Teil kann aktiv sein. Das aktive Teil wird in der Baumansicht mit einer Hintergrundfarbe angezeigt, die mit dem Aktiver Behälter-Wert im Voreinstellungseditor angegeben wird. Der voreingestellte Wert ist hellblau. Es wird auch mit der Schrifteigenschaft 'fett' angezeigt.

Eine Zusammenstellung aktivieren oder deaktivieren:

  • Doppelklick auf die Zusammenstellung in der Baumansicht oder
  • das Kontextmenü mit einem Rechtsklick öffnen und Toggle active part wählen.

Dokument mit zwei Std Teilen, in der das zweite aktiv ist.

Ursprung

Der Ursprung besteht aus den drei Standardachsen (X, Y, Z) und drei Standardebenen (XY, XZ und YZ). An diese können Skizzen und andere Objekte angehängt werden, wenn sie erstellt werden.

Links: Teil Ursprung in der Baumansicht. Rechts: Ansicht der Ursprungselemente in der 3D-Ansicht.

Hinweis: der Ursprung ist ein App-Origin-Objekt (Klasse App::OriginGroupExtension), während die Achsen und Ebenen Objekte des Typs App::Line bzw. App::Plane sind. Jedes dieser Elemente kann mit der Leertaste individuell ausgeblendet und wieder angezeigt werden. Damit kann sicher die korrekte Referenz gewählt werden, wenn andere Objekte erzeugt werden.

Hinweis 2: alle Elemente innerhalb einer Baugruppe beziehen sich auf den Ursprung der Baugruppe. Das bedeutet, dass die Baugruppe bezogen auf das globale Koordinatensystem verschoben oder gedreht werden kann, ohne die Positionierung der Elemente innerhalb der Baugruppe zu beeinflussen.

Anzeigeverwaltung

Die Sichtbarkeit der Baugruppe überlagert die Sichtbarkeit jedes darin enthaltenen Objekts. Wenn die Baugruppe ausgeblendet ist, werden auch die darin enthaltenen Objekte ausgeblendet, auch wenn ihre jeweilige Ansicht-EigenschaftSichtbarkeit auf true (wahr) gesetzt ist. Ist die Baugruppe sichtbar, entscheidet die Ansicht-EigenschaftSichtbarkeit des jeweiligen Objekts, ob das Objekt angezeigt wird oder nicht.

Die Sichtbarkeit des Std Teils (Part-Objekt) bestimmt, ob die Objekte, die in der Baugruppe zusammengestellt sind, in der 3D-Ansicht angezeigt werden oder nicht. Links: die Baugruppe ist ausgeblendet und keines der Objekte wird in der 3D-Ansicht angezeigt. Rechts: die Baugruppe ist sichtbar und jedes Objekt bestimmt seine Sichtbarkeit selbst.

Skripten

Siehe auch: FreeCAD Grundlagen Skripten und Skriptgenerierte Objekte.

Siehe Part Formelement für allgemeine Informationen zum Hinzufügen von Objekten zu einem Dokument.

Ein Std Teil (App Part) wird mit der Methode addObject() des Dokuments erstellt. Sobald eine Baugruppe (Part-Objekt) existiert, können andere Objekte mit den Methoden addObject() oder addObjects() zur Baugruppe hinzugefügt werden.

import FreeCAD as App

doc = App.newDocument()
part = App.ActiveDocument.addObject("App::Part", "Part")

obj1 = App.ActiveDocument.addObject("PartDesign::Body", "Body")
obj2 = App.ActiveDocument.addObject("Part::Box", "Box")

part.addObjects([obj1, obj2])
App.ActiveDocument.recompute()

Es kann kein skriptgeneriertes App::Part erstellt werden. Es kann aber das Verhalten eines App::Parts zu einem skriptgenerierten Part::FeaturePython-Objekt durch folgende Codes hinzugefügt werden:

class MyGroup(object):
    def __init__(self, obj=None):
        self.Object = obj
        if obj:
            self.attach(obj)

    def dumps(self):
        return

    def loads(self, _state):
        return

    def attach(self, obj):
        obj.addExtension("App::OriginGroupExtensionPython")
        obj.Origin = FreeCAD.ActiveDocument.addObject("App::Origin", "Origin")

    def onDocumentRestored(self, obj):
        self.Object = obj

class ViewProviderMyGroup(object):
    def __init__(self, vobj=None):
        if vobj:
            vobj.Proxy = self
            self.attach(vobj)
        else:
            self.ViewObject = None

    def attach(self, vobj):
        vobj.addExtension("Gui::ViewProviderOriginGroupExtensionPython")
        self.ViewObject = vobj

    def dumps(self):
        return None

    def loads(self, _state):
        return None

App.ActiveDocument.addObject("Part::FeaturePython",
                             "Group",
                             group.MyGroup(),
                             group.ViewProviderMyGroup(),
                             True)