Eine Part TopoForm, oder formal eine Part::TopoShape
, ist eine Klasse, die eine parametrische 'topologische Form in der Software definiert. Objekte im Dokument, die etwas in der 3D Ansicht zeigen, haben normalerweise eine TopoForm.
Die topologischen Formen sowie deren Methoden werden durch den OpenCASCADE Technologie Kernel (OCCT) definiert. FreeCAD verwendet diese Formen und baut Anwendung DokumentObjekte um sie herum.
Eine andere Art von Klasse ist die des Polygonnetzes; diese Klasse ist nicht sehr parametrisch, da sie nicht einfach umdefiniert werden kann, außer durch die Angabe einzelner Knoten und dreieckiger Oberflächen.
Links: parametrische Part_TopoForm, definiert durch Eigenschaften. Rechts: nichtparametrisches Polygonnetz, definiert durch Knoten und und dreieckigen Oberflächen.
Vereinfachtes Diagramm der Beziehungen zwischen den Kernobjekten im Programm. Die Klasse Part::TopoShape
wird in das Part::Feature
Objekt eingebettet und von dort auf alle davon abgeleiteten Objekte übertragen.
Die Part TopoForm ist ein Objekt, das einigen Anwendung DokumentObjekten zugeordnet ist.
Insbesondere das Basisobjekt, das diese Arten von Attributen handhabt, ist die Part Formelement (Part::Feature
Klasse). Alle von dieser Klasse abgeleiteten Objekte haben Zugriff auf eine Part TopoForm.
Einige der wichtigsten Objekte mit Part TopoForm sind die folgenden:
Siehe auch: FreeCAD Skripten Grundlagen, und geskriptete Objekte.
Alle Objekte abgeleitet von Part::Feature
werden eine Part TopoForm haben, die normalerweise über ihr Shape
Attribut zugänglich ist.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("Part::Box", "Box")
print(obj.Shape)
Eine TopoForm hat viele Attribute (Variablen) und Methoden, die Informationen über sie enthalten, und die es erlauben, Operationen mit ihr durchzuführen. Diese Variablen und Methoden können in der Python Konsole getestet werden.
print(obj.Shape.Area)
print(obj.Shape.BoundBox)
print(obj.Shape.CenterOfMass)
print(obj.Shape.ShapeType)
obj.Shape.check()
obj.Shape.copy()
obj.Shape.exportStep("my_file.step")
obj.Shape.exportStl("my_file.stl")
Eine vollständige Liste der Attribute und Methoden kannst Du in der Quelldokumentation und dem Std PythonHilfe Werkzeug nachschlagen.
Du kannst eine schnelle Zusammenfassung aller Methoden erhalten ddurch Verwendung der in Python eingebauten help()
Funktion.
help(obj.Shape)