Part Module/de



In FreeCAD wird OpenCasCade, eine Software zum Modellieren (Modellierkern, Kernel) geometrischer Objekte benutzt. OpenCascade ist eine professionell entwickelte und ursprünglich kommerziell genutzte CAD-Software, die Objekte und Funktionen (wie 3D-Geometrie-Manipulation) in einer inzwischen frei nutzbaren Software-Bibliothek bereitstellt. Die im Arbeitsbereich Part übernommenen Objekte sind bearbeitbar, z.B. mit Boolschen Operationen, Kanten können angeschrägt oder verrundet werden u.a.

The Part Workbench allows the user to access and use the OCCT objects and functions. Part objects, unlike Mesh objects, are more complex, and therefore permit more advanced operations like coherent boolean operations, modifications history, and parametric behaviour.



Die Werkzeuge
Die Werkzeuge sind alle im -Arbeitsbereichs-Menü verfügbar.

These are tools for creating primitive objects.


 * [[Image:Part_Box.png|32px]] Box: Draws a box by specifying its dimensions
 * [[Image:Part_Cone.png|32px]] Cone: Draws a cone by specifying its dimensions
 * [[Image:Part_Cylinder.png|32px]] Cylinder: Draws a cylinder by specifying its dimensions
 * [[Image:Part_Sphere.png|32px]] Sphere: Draws a sphere by specifying its dimensions
 * [[Image:Part_Torus.png|32px]] Torus: Draws a torus (ring) by specifying its dimensions
 * [[Image:Part_CreatePrimitives.png|32px]] CreatePrimitives: A tool to create various parametric geometric primitives
 * [[Image:Part_Shapebuilder.png|32px]] Shapebuilder: A tool to create more complex shapes from various parametric geometric primitives

Modifying objects
These are tools for modifying existing objects. They will allow you to choose which object to modify.


 * [[Image:Part_Extrude.png|32px]] Extrude: Extrudes planar faces of an object
 * [[Image:Part_Revolve.png|32px]] Revolve: Creates a solid by revolving another object (not solid) around an axis
 * [[Image:Part_Mirror.png|32px]] Mirror: Mirrors the selected object on a given mirror plane
 * [[Image:Part_Fillet.png|32px]] Fillet: Fillets (rounds) edges of an object
 * [[Image:Part_Chamfer.png|32px]] Chamfer: Chamfers edges of an object
 * [[Image:Part_RuledSurface.png|32px]] Ruled Surface:
 * [[Image:Part_Loft.png|32px]] Loft: Lofts from one profile to another
 * [[Image:Part_Sweep.png|32px]] Sweep: Sweeps one or more profiles along a path


 * [[Image:Part_CompOffsetTools.png|48px]] Offset tools:
 * [[Image:Part_Offset.png|32px]] 3D Offset: Constructs a parallel shape at a certain distance from original.
 * [[Image:Part_Offset2D.png|32px]] 2D Offset: Constructs a parallel wire at certain distance from original, or enlarges/shrinks a planar face. (v0.17)


 * [[Image:Part_Thickness.png|32px]] Thickness: Hollows out a solid, leaving openings next to select faces.


 * [[Image:Part_CompCompoundTools.png|48px]] Compound Tools:
 * [[Image:Part MakeCompound.png|32px]] Make compound: Creates a compound from the selected objects.
 * [[Image:Part_ExplodeCompound.svg|32px]] Explode Compound: Tool to split up compounds of shapes
 * [[Image:Part Compound‏‎Filter.png|32px]] Compound Filter: The CompoundFilter can be used to extract the individual pieces.


 * [[Image:Part_Booleans.png|32px]] Booleans: Performs boolean operations on objects
 * [[Image:Part_Union.png|32px]] Union: Fuses (unions) two objects
 * [[Image:Part_Common.png|32px]] Common: Extracts the common (intersection) part of two objects
 * [[Image:Part_Cut.png|32px]] Cut: Cuts (subtracts) one object from another


 * [[Image:Part_CompJoinFeatures.png|48px]] Join features: smart booleans for walled objects (e.g., pipes) (v0.16)
 * [[Image:Part JoinConnect.png|32px]] Connect: Connects interiors of objects (v0.16)
 * [[Image:Part JoinEmbed.png|32px]] Embed: Embeds a walled object into another walled object (v0.16)
 * [[Image:Part JoinCutout.png|32px]] Cutout: Creates a cutout in a wall of an object for another walled object (v0.16)


 * [[Image:Part_CompSplittingTools.png|48px]] Splitting tools: (v0.17)
 * [[Image:Part BooleanFragments.png|32px]] Boolean fragments: makes all the pieces that can be obtained by Boolean operations between objects (v0.17)
 * [[Image:Part SliceApart.svg|32px]] Slice a part: tool to split shapes by intersection with other shapes
 * [[Image:Part Slice.png|32px]] Slice: Splits an object into pieces by intersections with another object (v0.17)
 * [[Image:Part XOR.png|32px]] XOR: removes space shared by even number of objects (symmetric version of Cut) (v0.17)


 * [[Image:Part Defeaturing.svg|32px]] Defeaturing: (v0.18)
 * [[Image:Part_Section.png|32px]] Section: Creates a section by intersecting an object with a section plane
 * [[Image:Part_SectionCross.png|32px]] Cross sections...:

Other tools

 * [[Image:Part ImportCAD.png|32px]] Import CAD: This tool allows you to add a file *.IGES, *.STEP, *.BREP to the current document.
 * [[Image:Part ExportCAD.png|32px]] Export CAD: This tool allows you to export a part object in a *.IGES, *.STEP, *.BREP file.
 * [[Image:Part ShapeFromMesh.png|32px]] Shape from Mesh: Creates a shape object from a mesh object.
 * Convert to solid: Converts a shape object to a solid object.
 * Reverse shapes: Flips the normals of all faces of the selected object.
 * [[Image:Part CreateSimpleCopy‎.svg|32px]] Create simple copy: Creates a simple copy of the selected object.
 * [[Image:Part RefineShape.png|32px]] Refine shape: Cleans faces by removing unnecessary lines.
 * [[Image:Part CheckGeometry.png|32px]] Check geometry: Checks the geometry of selected objects for errors.
 * Measure: Allows linear and angular measurement between points/edges/faces.
 * [[Image:Part Attachment.svg|32px]] Attachment: Attachment is a utility to attach an object to another one.



Preferences

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

Hintergrundinformationen
Die folgenden Infomationen beleuchten etwas den vom FreeCAD-Endbenutzer nicht mehr zu beachtenden Hintergrund für die ihm nach längerer Entwicklungszeit inzwischen zur Verfügung stehenden Werkzeuge

In der OpenCasCade Terminologie wird zwischen geometrischen Grundelementen und Formen unterschieden. Ein geometrisches Grundelement ist ein Punkt, eine Linie, ein Kreis, eine Ebene, etc., oder ist sogar ein komplizierteres Element wie eine B-Spline-Kurve. Eine Form ist eine Ecke, eine Kante, ein Netz, eine Fläche, ein Festkörper (Solid) oder eine Zusammensetzung anderer Formen. CAD-Modellierung heißt, Formen aus Grundelementen erstellen. Sinnvollerweise werden nur die Formen, d.h. das Ergebnis des Modellierens angezeigt, die Grundelemente selbst nicht. Das Grundelement Linie erscheint z.B. nur als jetzt in seiner Länge begrenzte Kante der Form  Quader.

Die geometrischen Grundelemente sind "formlose" Bausteine, auf denen die 3D-Körper als Formen aufbauen.

Eine komplette Liste aller Elemente und bereits modellierten, aus einer Bibliothek entnehmbaren geometrischen Grundformen (-Körper) enthält diese OpenCascade-Dokumentation(Abschnitt Geom_Geometry und TopoDS_Shape; enthält auch weitere Details über den Unterschied zwischen den geometrischen Grundelementen und den Formen).

Dieses Dokument ist leider nicht online verfügbar (herunterladen !) und ist eher für Programmierer als für Endbenutzer geschrieben.

.

.

.

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

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