Part Module/de

Einleitung
Die Festkörper Modellierungsfunktionen von FreeCAD basieren auf der Open Cascade Technologie. (OCCT) Kernel, ein professionelles CAD System mit fortschrittlicher 3D Geometrieerstellung und -manipulation. Die Part Arbeitsbereich ist eine Schicht, die sich auf der Oberseite der OCCT-Bibliotheken befindet und dem Benutzer Zugriff auf geometrische OCCT Grundkörper und -Funktionen gewährt. Grundsätzlich basieren alle 2D und 3D Zeichenfunktionen in jedem Arbeitsbereich (Draft Arbeitsbereich, Arbeitsbereich Skizze, PartDesign Arbeitsbereich, usw.) auf diesen Funktionen, die vom Part Arbeitsbereich herausgestellt werden. Daher gilt die Part Workbench als die Kernkomponente der Modellierungsfunktionen von FreeCAD.

Die mit dem Part Arbeitsbereich erstellten Objekte sind relativ einfach; sie sind für die Verwendung mit booleschen Operationen (Verbindungen und Schnitte) vorgesehen, um komplexere Formen zu erstellen. Dieses Modellierungsparadigma ist bekannt als konstruktive Festkörpergeometrie (CSG) Arbeitsablauf, und es war die traditionelle Methodik, die in frühen CAD Systemen verwendet wurde. Andererseits bietet der Arbeitsbereich PartDesign einen moderneren Arbeitsablauf bei der Konstruktion von Formen: Sie verwendet eine parametrisch definierte Skizze, die zu einem Grundkörper extrudiert wird, der dann durch parametrische Transformationen (Funktionsbearbeitung) modifiziert wird, bis das endgültige Objekt vorliegt.

Part Objekte sind komplexer als Mesh Objekte, die mit der Arbeitsbereich Mesh erstellt wurden, da sie erweiterte Operationen wie kohärente boolesche Operationen, Änderungshistorie und parametrisches Verhalten ermöglichen.





Werkzeuge
Die Werkzeuge befinden sich alle im Menü.

Grundkörper
Dies sind Werkzeuge zum Erstellen von Grund Objekten.


 * [[Image:Part_Box.png|32px]] Quader: Erzeugt einen Quader, dessen zunächst vorgegebene Dimensionen als Eigenschaft en erfasst und deren Wert e veränderbar sind.
 * [[Image:Part_Cylinder.png|32px]] Cylinder: Erzeugt einen Zylinder, dessen zunächst vorgegebene Dimensionen als Eigenschaft en erfasst und und deren Wert e veränderbar sind.
 * [[Image:Part_Sphere.png|32px]] Sphere: Erzeugt eine Kugel, deren zunächst vorgegebener Durchmesser als Eigenschaft en erfasst und deren Wert veränderbar ist.
 * [[Image:Part_Cone.png|32px]] Kegel: Erzeugt einen Kegel, dessen zunächst vorgegebene Dimensionen als Eigenschaft en erfasst und deren Wert e veränderbar sind.
 * [[Image:Part_Torus.png|32px]] Torus: Erzeugt einen Torus (Ring), dessen zunächst vorgegebene Dimensionen als Eigenschaft en erfasst und deren Wert e veränderbar sind.
 * [[Image:Part_CreatePrimitives.png|32px]] CreatePrimitives: Ein Werkzeug zum Erstellen verschiedener parametrischer geometrischer Grundelemente
 * [[Image:Part_Shapebuilder.png|32px]] Shapebuilder: Ein Werkzeug zum Erstellen komplexerer Formen aus verschiedenen parametrischen geometrischen Grundelementen

Objekte ändern
Dies sind Werkzeuge zum Ändern vorhandener Objekte. Sie können wählen, welches Objekt geändert werden soll.


 * [[Image:Part_Extrude.png|32px]] Extrude: Erstellt einen Körper aus einer geschlossenen Kurve durch deren Schieben in Normalen-Richtung. Der erzeugte Körper hat die Kontur des Raums, der beim Schieben der Kurve aufgespannt wird.
 * [[Image:Part_Revolve.png|32px]] Revolve: Erstellt einen Körper aus einer geschlossenen Kurve durch deren Drehen um eine Achse. Der erzeugte Körper hat die Kontur des Raums, der beim Drehen derKurve aufgespannt wird.
 * [[Image:Part_Mirror.png|32px]] Mirror: Spiegelt das ausgewählte Objekt auf einer bestimmten Spiegelebene
 * [[Image:Part_Fillet.png|32px]] Fillet: Verrundungen (Abrunden) von Kanten eines Objekts
 * [[Image:Part_Chamfer.png|32px]] Chamfer: Fasst Kanten eines Objekts an
 * [[Image:Part_RuledSurface.png|32px]] Ruled Surface: Erzeugt zwischen zwei geschlossenen Kurven eine Regelfläche
 * [[Image:Part_Loft.png|32px]] Loft: Erzeugt zwischen zwei geschlossenen Kurven einen Loft
 * [[Image:Part_Sweep.png|32px]] Sweep: Erzeugt zwischen zwei geschlossenen Kurven entlang einer linie einen Sweep


 * [[Image:Part_CompOffsetTools.png|48px]] Offset tools:
 * [[Image:Part_Offset.png|32px]] Offset: Erzeugt eine Kopie eines Körpers durch Versatz seiner Oberflächen nach außen (Kopie ist vergrößert) bzw. innen (Kopie ist verkleinert).
 * [[Image:Part_Offset2D.png|32px]] 2D Offset: Konstruiert einen parallelen Draht in einem bestimmten Abstand vom Original oder vergrößert/verkleinert eine ebene Fläche. (v0.17)


 * [[Image:Part_Thickness.png|32px]] Thickness: Erzeugt einen an einer Seite offenen Kasten gewählter Wandstärke (Dicke), in den der Ausgangskörper genau hineinpasst (Dicke hat positiven Wert) oder der genau dessen Außenkontur hat (Wert der Dicke ist negativ).


 * [[Image:Part_ProjectionOnSurface.png|32px]] Projection on surface: Project a logo, text or any face,wire,edge to a surface. With the projection part it is possible to create a solid or wire.


 * [[Image:Part_CompCompoundTools.png|48px]] Compound Tools:
 * [[Image:Part MakeCompound.png|32px]] Make compound: Erzeugt einen Verbund aus den ausgewählten Objekten.
 * [[Image:Part_ExplodeCompound.svg|32px]] Explode Compound: Werkzeug zum Aufteilen von Formmassen
 * [[Image:Part Compound‏‎Filter.png|32px]] Compound Filter: Mit dem CompoundFilter können die einzelnen Teile extrahiert werden.


 * [[Image:Part_Booleans.png|32px]] Boolesche Operationen: Führt boolsche Operationen mit zwei geometrischen Grundkörpern durch
 * [[Image:Part_Union.png|32px]] Union: boolsche Operation: Vereinigung
 * [[Image:Part_Common.png|32px]] Common: boolsche Operation: Gemeinsames ("Schnittmenge")
 * [[Image:Part_Cut.png|32px]] Cut: boolsche Operation: Subtraktion (vom ersten Grundkörper wird der Teil entfernt, den er mit dem zweiten Grundkörper gemeinsam hat)


 * [[Image:Part_CompJoinFeatures.png|48px]] Join features: intelligente Booleans für ummauerte Objekte (e.g., pipes) (v0.16)
 * [[Image:Part JoinConnect.png|32px]] Connect: Verbindet Innenräume von Objekten (v0.16)
 * [[Image:Part JoinEmbed.png|32px]] Embed: Bettet ein ummauertes Objekt in ein anderes ummauertes Objekt (v0.16)
 * [[Image:Part JoinCutout.png|32px]] Cutout: Erstellt einen Ausschnitt in einer Wand eines Objekts für ein anderes ummauertes Objekt (v0.16)


 * [[Image:Part_CompSplittingTools.png|48px]] Splitting tools: (v0.17)
 * [[Image:Part BooleanFragments.png|32px]] Boolean fragments: macht alle Teile, die durch boolesche Operationen zwischen Objekten erhalten werden können (v0.17)
 * [[Image:Part SliceApart.svg|32px]] Slice a part: Werkzeug zum Teilen von Formen durch Überschneidung mit anderen Formen
 * [[Image:Part Slice.png|32px]] Slice: Teilt ein Objekt durch Schneiden mit einem anderen Objekt in Teile (v0.17)
 * [[Image:Part XOR.png|32px]] XOR: entfernt den von einer geraden Anzahl von Objekten gemeinsam genutzten Speicherplatz (symmetrische Version von Cut) (v0.17)


 * [[Image:Part Defeaturing.svg|32px]] Defeaturing: (v0.18)
 * [[Image:Part_Section.png|32px]] Section: Erzeugt einen Schnitt durch Überschneiden eines Objekts mit einer Schnittebene
 * [[Image:Part_SectionCross.png|32px]] Cross sections...:

Measure
Measure: Allows linear and angular measurement between points, edges, and faces.


 * [[Image:Part_Measure_Linear.svg|32px]] Measure Linear allows you to make linear measurements.
 * [[Image:Part_Measure_Angular.svg|32px]] Measure Angular allows you to make angular measurements.
 * [[Image:Part_Measure_Refresh.svg|32px]] Measure Refresh updates the measurements on screen.
 * [[Image:Part_Measure_Clear_All.svg|32px]] Clear All Clears all measurements.
 * [[Image:Part_Measure_Toggle_All.svg|32px]] Toggle All shows or hides all measurements.
 * [[Image:Part_Measure_Toggle_3d.svg|32px]] Toggle 3D shows or hides 3D measurements.
 * [[Image:Part_Measure_Toggle_Delta.svg|32px]] Toggle Delta shows or hides delta measurements.

Andere Werkzeuge

 * [[Image:Part_Import.svg|32px]] Import: This tool allows you to add a file *.IGES, *.STEP, *.BREP to the current document.
 * [[Image:Part_Export.svg|32px]] Export: This tool allows you to export a part object in a *.IGES, *.STEP, *.BREP file.
 * Part_BoxSelection.svg BoxSelection: add to the selection the faces of the shapes that are touches by the rectangular selection.
 * [[Image:Part_ShapeFromMesh.svg|32px]] Shape from Mesh: Creates a shape object from a mesh object.
 * Part_PointsFromMesh.svg Points from mesh: creates a shape object made of points from the mesh.
 * Convert to solid: Converts a shape object to a solid object.
 * Reverse shapes: Flips the normals of all faces of the selected object.


 * Create a copy:
 * [[Image:Part_SimpleCopy‎.svg|32px]] Create simple copy: Creates a simple copy of the selected object.
 * Part_TransformedCopy.svg Create transformed copy: creates a transformed copy of the selected object.
 * Part_ElementCopy.svg Create shape element copy: creates a copy from an element (vertex, edge, face) of the selected object.
 * [[Image:Part_RefineShape.svg|32px]] Refine shape: Cleans faces by removing unnecessary lines.


 * [[Image:Part_CheckGeometry.svg|32px]] Check geometry: Checks the geometry of selected objects for errors.

Preferences

 * [[Image:Preferences-import-export.svg|32px]] Preference ... Import Export

OCCT geometrische Konzepte
In der OpenCascade Terminologie unterscheiden wir zwischen geometrischen Grundelementen (engl.: primitives) und topologischen Formen. Ein geometrisches Grundelement kann ein Punkt, eine Linie, ein Kreis, eine Ebene usw. oder sogar einige komplexere Typen wie eine B-Spline Kurve oder eine Fläche sein. Eine Form kann ein Knoten, eine Kante, ein Draht, eine Fläche, ein Solid oder eine Verbindung aus anderen Formen sein. Die geometrischen Grundelemente sind nicht dazu bestimmt, direkt in der 3D Szene dargestellt zu werden, sondern als Baugeometrie für Formen zu dienen. So kann beispielsweise eine Kante aus einer Linie oder aus einem Teil eines Kreises konstruiert werden.

Zusammenfassend lässt sich sagen, dass Geometrie Grundelemente "formlose" Bausteine sind, während topologische Formen die realen Objekte sind, die auf ihnen aufgebaut sind.

Eine vollständige Liste aller Grundelemente und Formen findest Du in der OCC documentation (Alternative: sourcearchive.com) und suche nach Geom_* (für geometrische Grundelemente) und TopoDS_* (für Formen). Dort kannst Du auch mehr über die Unterschiede zwischen ihnen lesen. Bitte beachte, dass die offizielle OCC Dokumentation nicht online verfügbar ist (Du musst ein Archiv herunterladen) und sich hauptsächlich an Programmierer richtet, nicht an Endanwender. Aber hoffentlich findest du genug Informationen, um hier anzufangen.

Die geometrischen Typen lassen sich tatsächlich in zwei große Gruppen unterteilen: Kurven und Flächen. Aus den Kurven (Linie, Kreis,....) kann man direkt eine Kante bauen, aus den Flächen (Ebene, Zylinder,...) kann man eine Fläche bauen. So ist beispielsweise die geometrische Grundlinie unbegrenzt, d.h. sie wird durch einen Basisvektor und einen Richtungsvektor definiert, während ihre Formdarstellung durch einen Start- und Endpunkt begrenzt sein muss. Und eine Kasten - ein Solid - kann durch sechs begrenzte Ebenen erzeugt werden.

Von einer Kante oder Fläche aus kannst du auch zu seinem geometrischen Basisgegenstück zurückkehren.

So können Sie aus Formen sehr komplexe Teile bauen oder umgekehrt alle Unterformen entnehmen, aus denen eine komplexere Form besteht.



Skripten
Part scripting

Die Haupt-Daten-Struktur, die das Part-Modul nutzt, ist der BRep Daten-Typ von OpenCascade. Praktisch alle Inhalte und Objekttypen des Part-Moduls sind als in der Programmiersprache   Python zugängig und bearbeitbar. Auf der Benutzeroberfläche gibt es eine Phyton-Konsole, von der jedermann, also auch Benutzer, die keine Programmier-Experten sind, sich aber im Programmieren versuchen wollen, zugreifen können. Das schließt geometrische primitive, wie Linie und Kreis (oder Kreisbogen), und die ganze Palette von TopoShapes, wie Punkten, Kanten, Netzen, Flächen, Festkörper und Zusammensetzungen ein. Für jedes dieser Objekte gibt es mehrere Entwicklungsmethoden, und für einige von ihnen, besonders der TopoShapes, sind fortgeschrittene Operationen wie Boolsche Vereinigung/Differenz/Kreuzung auch verfügbar. Erkunden Sie die Inhalte des Part-Moduls, wie auf der FreeCAD Scripting Grundlagen-Seite beschrieben, um mehr zu erfahren.

The most basic object that can be created is a Part Feature, which has a simple property, and basic properties to define its color and appearance.

Another simple object used in 2D geometrical objects is Part Part2DObject, which is the base of Sketches, and most Draft elements.

Einfache Beispiele
Zum erstellen eines Linienelements aktivieren Sie die Python-Konsole und geben Sie ein:

Lassen Sie uns das obige Python-Beispiel Schritt für Schritt betrachten:

lädt die Part-Modul und erstellt ein neues Dokument

Line ist eigentlich eine Strecke, folglich der Anfangs- und Endpunkt.

Das fügt ein Part-Objekt zum Dokument hinzu und weist die Form-Darstellung der Strecke der 'Shape'-Eigenschaft des hinzugekommenen Objekts zu. Es ist wichtig, hier zu verstehen, dass wir einen geometrischen Primitiven (den Part.LineSegment) verwendeten, um einen TopoShape daraus (mittels der toShape Methode) zu schaffen. Nur Formen können zum Dokument hinzugefügt werden. In FreeCAD werden Geometrie-primitive als "Grundstrukturen" für Formen verwendet.

Aktualisiert das Dokument. Damit auch die visuelle Darstellung des neuen Part-Objekts.

Beachten Sie, dass ein Liniensegment durch Angabe der Anfangs-und Endpunkt direkt im Konstruktor erstellt werden kann, z.B. Part.LineSegment (point1, Punkt2), oder wir können eine Standard-Linie erstellen und seine Eigenschaften anschießend festlegen, wie wir es hier gemacht haben.

Ein Kreis kann in ähnlicher Weise erstellt werden:

Bemerken Sie wieder, wir verwendeten den Kreis (primitive Geometrie), um eine Form daraus zu erstellen. Wir können natürlich noch immer auf unsere Ursprungs-Geometrie später zugreifen, und zwar so:

Hier nehmen wir die Form unseres Objekts f, dann nehmen wir die Liste der Kanten, in diesem Fall wird es nur eine geben, weil wir die ganze Form aus einem einzelnen Kreis machten, also nehmen wir nur das erste Element der Kanten-Liste, und wir nehmen seinen Verlauf. Jede Kante hat einen Verlauf, welches das Geometrie-primitive ist, worauf der Verlauf basiert ist.

Springen Sie zur Topological data scripting Seite, falls Sie mehr darüber erfahren möchten.

Tutorien

 * Import von STL- oder OBJ-Dateien : Anleitung zum Import von STL/OBJ-Dateien in FreeCAD
 * Export nach STL oder OBJ : Anleitung zum Export von STL/OBJ-Dateien aus FreeCAD
 * Whiffle Ball Tutorial : Anleitung zur Verwendung des Part-Moduls