Arbeitsbereich Part

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Part Module and the translation is 100% complete.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский • ‎українська • ‎中文 • ‎中文(中国大陆)‎ • ‎中文(台灣)‎ • ‎日本語
Part Arbeitsbereichsymbol

Einführung

Die Festkörper Modellierungsfähigkeiten von FreeCAD basieren auf dem OpenCASCADE Technologie (OCCT) Kernel, ein professionelles CAD System mit fortschrittlicher 3D Geometrieerstellung und -manipulation. Die Workbench Part.svg 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 (Workbench Draft.svg Draft Arbeitsbereich, Workbench Sketcher.svg Arbeitsbereich Skizze, Workbench PartDesign.svg PartDesign Arbeitsbereich, usw.) auf diesen Funktionen, die vom Part Arbeitsbereich herausgestellt werden. Daher gilt der Part Arbeitsbereich 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 Polygonnetz Objekte, die mit der Arbeitsbereich Polygonnetz erstellt wurden, da sie erweiterte Operationen wie kohärente boolesche Operationen, Änderungshistorie und parametrisches Verhalten ermöglichen.

Part Workbench relationships.svg

Der Part Arbeitsbereich ist die Basisschicht, die die OCCT Zeichenfunktionen allen Arbeitsbereichen in FreeCAD zur Verfügung stellt.


Werkzeuge

Die Werkzeuge befinden sich alle im Menü Part.

Grundelemente

Dies sind Werkzeuge zum Erstellen von Grundobjekten.

  • Part Box.svg Quader: Zeichnet einen Quader, durch Angabe seiner Abmessungen
  • Part Cylinder.svg Zylinder: Zeichnet einen Zylinder, durch Angabe seiner Abmessungen
  • Part Sphere.svg Kugel: Zeichnet eine Kugel, durch Angabe ihrer Abmessungen
  • Part Cone.svg Kegel: Zeichnet einen Kegel, durch Angabe ihrer Abmessungen
  • Part Torus.svg Torus: Zeichnet einen Torus (Ring) durch Angabe seiner Abmessungen
  • Part CreatePrimitives.svg Grundelemente: Ein Werkzeug zum Erstellen verschiedener parametrischer geometrischer Grundelemente
  • Part Shapebuilder.svg Formgeber: 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.

  • Part Extrude.svg Extrudieren: Extrudiert ebene Flächen eines Objekts
  • Part Revolve.svg Drehen: Erzeugt einen Festkörper, indem ein anderes Objekt (nicht Volumenkörper) um eine Achse gedreht wird.
  • Part Mirror.svg Soiegeln: Spiegelt das ausgewählte Objekt auf einer bestimmten Spiegelebene
  • Part Fillet.svg Verrundung: Verrundung der Kanten eines Objekts
  • Part Chamfer.svg Fase: Fasen der Kanten eines Objekts
  • Part RuledSurface.png Regelfläche: Erzeugt zwischen zwei geschlossenen Kurven eine Regelfläche
  • Part Loft.svg Ausformung: Ausformung von einem Profil zum anderen
  • Part Sweep.svg Austragung: Austragung von ein oder mehrerer Profile entlang eines Pfades
  • Part Thickness.svg Dicke: Höhlt einen Körper aus, so dass Öffnungen neben ausgewählten Flächen bleiben.
  • Part Booleans.svg Boolesche Operationen: Führt boolesche Operationen an Objekten durch
  • Part Fuse.svg Vereinigen: Verschmilzt (verbindet) zwei Objekte
  • Part Common.svg Vereinigung: Entnimmt den gemeinsamen Teil (Vereinigungsmenge) von zwei Objekten
  • Part Cut.svg Schneiden: Schneidet (subtrahiert) ein Objekt von einem anderen

Messung

Std Measure Menu.png Messung: Ermöglicht die lineare und winklige Messung zwischen Punkten, Kanten und Flächen.

Andere Werkzeuge

Kontextbezogene Menüpunkte

  • Aussehen: bestimmt das Aussehen des gesamten Teils (Farbtransparenz usw.).
  • Farben festlegen: Weist den Teilflächen Farben zu.

Einstellungen

  • Preferences-part design.svg Einstellungen: Einstellungen für Teilewerkzeuge verfügbar (der Part Arbeitsbereich verwendet auch die PartDesign Einstellungen).
  • Preferences-import-export.svg Import Export Einstellungen: Einstellungen verfügbar für den Import aus und Export in verschiedene Dateiformate.
  • Feinabstimmung: einige zusätzliche Parameter zur Feineinstellung des Bauteilverhaltens.

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 Oberflä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 darauf aufgebauten realen Objekte sind.

Eine vollständige Liste aller Grundelemente und Formen findest du in der OCC Dokumentation (Alternativ: 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 und nicht an Endbenutzer richtet. Aber hoffentlich findest du hier genügend Informationen, um anzufangen. Siehe auch Benutzerhandbuch zur Datenmodellierung.

Auf einer sehr hohen Stufe sagt die Topologie aus, aus welchen Teilen ein Objekt besteht und welche logischen Beziehungen zwischen ihnen bestehen. Eine Form besteht aus einem bestimmten Satz von Flächen. Eine Fläche wird durch einen bestimmten Satz von Kanten begrenzt. Zwei Flächen sind benachbart, wenn sie eine gemeinsame Kante teilen.

Die Topologie allein sagt dir nichts über die Größe, Krümmung oder 3D Positionen jedes dieser Teile. Jedes Teil der Topologie weiß jedoch über seine zugrunde liegende Geometrie Bescheid. Eine Fläche weiß, auf welcher Oberfläche sie liegt. Eine Kante weiß, auf welcher Kurve sie liegt. Die Geometrie weiß über Krümmung und Lage im Raum Bescheid.. - Quelle


So definiert die Topologie die Beziehung zwischen einfachen geometrischen Einheiten, die miteinander verbunden werden können, um komplexe Formen darzustellen. - Benutzerhandbuch zur Datenmodellierung

ClassTopoDS Shape inherit graph.png

Anmerkung: Nur 3 Arten von topologischen Objekten haben geometrische Abbilder - Knoten, Kante und Fläche (Quelle).

Die geometrischen Typen lassen sich tatsächlich in zwei große Gruppen unterteilen: Kurven und Oberflächen. Aus den Kurven (Linie, Kreis,....) kann man direkt eine Kante bauen, aus den Oberflä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 irgendetwas sein muss, das durch einen Start- und Endpunkt begrenzt ist. Und ein Quader - eine Grundform - kann durch sechs begrenzte Ebenen geschaffen werden.

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


So kannst du aus Formen sehr komplexe Teile bauen oder umgekehrt alle Unterformen extrahieren, aus denen eine komplexere Form besteht.

Part TopoShape relationships.svg

Die Part::TopoShape Klasse ist das geometrische Objekt, das auf dem Bildschirm zu sehen ist. Im Wesentlichen verwenden alle Arbeitsbereiche intern diese TopoFormen um Kanten, Flächen und Volumenkörper zu erstellen und anzuzeigen.


Skripten

Siehe auch: Part skripten

Die im Part Modul verwendete Hauptdatenstruktur ist der BRep Datentyp von OpenCascade. Fast alle Inhalte und Objekttypen des Part Moduls sind über das Python Skripten verfügbar. Dazu gehören geometrische Grundelemente wie Linie und Kreis (oder Bogen) und die gesamte Palette der TopoFormen, wie Knoten, Kanten, Drähte, Flächen, Volumenkörper und Verbindungen. Für jedes dieser Objekte gibt es mehrere Erstellungsmethoden, und für einige von ihnen, insbesondere die TopoFormen, stehen auch erweiterte Operationen wie boolesche Vereinigung/Differenz/Überschneidung zur Verfügung. Erkunde den Inhalt des Part Moduls, wie auf der Seite FreeCAD Skripten Grundlagen beschrieben, um mehr zu erfahren.

Das grundlegendste Objekt, das erstellt werden kann, ist ein Part Grundelement, das eine einfache Daten-EigenschaftPlatzierungs Eigenschaft und Grundeigenschaften hat, um seine Farbe und sein Aussehen zu definieren.

Ein weiteres einfaches Objekt, das in geometrischen 2D Objekten verwendet wird, ist Part Part2DObjekt, das die Basis von Skizzierer SkizzeObjekt ist. (Skizzierer), und die meisten Draft Elemente.

Testskript

Teste die Erstellung von Part Grundelementen mit einem Skript. introduced in version 0.19

import parttests.part_test_objects as pto
pto.create_test_file("example_file")

Dieses Skript befindet sich im Installationsverzeichnis des Programms und kann untersucht werden, um zu sehen, wie die Basisgrundelemente aufgebaut sind.

$INSTALL_DIR/Mod/Part/parttests/part_test_objects.py

Beispiele

Zum erstellen eines Linienelements schalte um zur Python Konsole und gib ein:

import Part,PartGui 
doc=App.newDocument()  
l=Part.LineSegment()
l.StartPoint=(0.0,0.0,0.0)
l.EndPoint=(1.0,1.0,1.0)
doc.addObject("Part::Feature","Line").Shape=l.toShape() 
doc.recompute()

Lass uns das obige Python Beispiel Schritt für Schritt betrachten:

import Part,PartGui
doc=App.newDocument()

lädt die Part Modul und erstellt ein neues Dokument

l=Part.LineSegment()
l.StartPoint=(0.0,0.0,0.0)
l.EndPoint=(1.0,1.0,1.0)

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

doc.addObject("Part::Feature","Line").Shape=l.toShape()

Dadurch wird dem Dokument ein Part Objekttyp hinzugefügt und weist die Formdarstellung des Liniensegments der 'Form' Eigenschaft des hinzugefügten Objekts zu. Es ist wichtig, hier zu verstehen, dass wir ein geometrisches Grundelement (das Part.LineSegment) verwendet haben, um daraus eine TopoForm zu erstellen (die toShape() Methode). Nur Formen können dem Dokument hinzugefügt werden. In FreeCAD werden Geometrie Grundelemente als "Baustrukturen" für Formen verwendet.

doc.recompute()

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

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

Eine Linie kann erstellt werden auch mit:

import FreeCAD
import Part
DOC = FreeCAD.newDocument()

def mycreateLine(pt1, pt2, objName):
    obj = DOC.addObject("Part::Line", objName)
    obj.X1 = pt1[0]
    obj.Y1 = pt1[2]
    obj.Z1 = pt1[2]

    obj.X2 = pt2[0]
    obj.Y2 = pt2[1]
    obj.Z2 = pt2[2]

    DOC.recompute()
    return obj

line = mycreateLine((0,0,0), (0,10,0), "LineName")


Ein Kreis kann in ähnlicher Weise erstellt werden:

import Part
doc = App.activeDocument()
c = Part.Circle() 
c.Radius=10.0  
f = doc.addObject("Part::Feature", "Circle")
f.Shape = c.toShape()
doc.recompute()

oder mit:

import FreeCAD
import Part
DOC = FreeCAD.newDocument()

def mycreateCircle(rad, objName):
    obj = DOC.addObject("Part::Circle", objName)
    obj.Radius = rad

    DOC.recompute()
    return obj

circle = mycreateCircle(5.0, "CircleName")


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

s = f.Shape
e = s.Edges[0]
c = e.Curve

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 Kantenliste, und wir nehmen seinen Verlauf. Jede Kante hat einen Verlauf, welches das Geometrie Grundelement ist, worauf der Verlauf basiert ist.

Gehe auf die Seite Topologisches Datenskripting, wenn du mehr wissen möchtest.

Tutorien