Część: Kształt topologiczny, lub formalnie Part::TopoShape
, jest klasą, która definiuje parametryczny kształt topologiczny w oprogramowaniu. Obiekty w dokumencie, które pokazują coś w oknie widoku 3D zazwyczaj mają Kształt topologiczny.
Kształty topologiczne, jak również ich metody, i są ostatecznie definiowane przez kernel (OCCT) w technologii OpenCASCADE. FreeCAD używa tych kształtów i buduje wokół nich App: Obiekt dokumentu.
Innym typem klasy jest siatka. Klasa ta nie jest zbyt parametryczna, ponieważ nie można jej łatwo przedefiniować, chyba że poprzez określenie poszczególnych wierzchołków i trójkątnych powierzchni.
Po lewej: Kształt topologiczny zdefiniowany przez właściwości.
Po prawej: Siatka, zdefiniowana przez wierzchołki i powierzchnie trójkątne.
Uproszczony diagram zależności pomiędzy podstawowymi obiektami programu. Klasa Part::TopoShape
jest osadzona w obiekcie Part::Feature
i stamtąd jest propagowana do wszystkich obiektów, które są od niej pochodne.
Część: Kształt topologiczny jest obiektem, który jest przypisany do niektórych App: Obiektów dokumentu.
W szczególności podstawowym obiektem, który obsługuje tego typu atrybuty jest Część: Cecha (klasa Part::Feature
). Wszystkie obiekty wywodzące się z tej klasy będą miały dostęp do Kształtu topologicznego.
Niektóre z najważniejszych obiektów Kształtu topologicznego środowiska Część są następujące:
Zobacz również: Podstawy tworzenia skryptów FreeCAD, oraz Obiekty skryptowe.
Wszystkie obiekty pochodzące z Part::Feature
będą miały Kształt topologiczny środowiska Część, który jest normalnie dostępny z atrybutu Kształt
.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("Part::Box", "Box")
print(obj.Shape)
Kształt topologiczny posiada wiele atrybutów (zmiennych) i metod, które zawierają informacje o nim i które pozwalają na wykonywanie na nim operacji. Te zmienne i metody mogą być testowane w konsoli Python.
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")
Pełna lista atrybutów i metod znajduje się w dokumentacji źródłowej oraz w dokumentacji Std: Pomoc do środowiska Python.
Możesz uzyskać szybkie podsumowanie wszystkich metod, używając wbudowanej w środowisko Python funkcji help()
.
help(obj.Shape)