Wprowadzenie
Obiekt App: Cechy geometrii, lub formalnie App::GeoFeature
, jest klasą bazową większości obiektów wyświetlających elementy geometryczne w oknie widoku 3D, ponieważ zawiera właściwość DANEUmiejscowienie.
Uproszczony diagram zależności pomiędzy podstawowymi obiektami w programie FreeCAD.
Użycie
App: Cechy geometrii jest obiektem wewnętrznym, więc nie można go utworzyć z poziomu interfejsu graficznego. Zasadniczo nie jest on przeznaczony do bezpośredniego użycia, a raczej może być podklasowany, aby uzyskać obiekt typu bare-bones, który ma tylko podstawową właściwość DANEUmiejscowienie do zdefiniowania jego pozycji w oknie Widoku 3D.
Niektóre z najważniejszych obiektów pochodnych są następujące:
- Klasa Część: Cecha, rodzic większości obiektów o kształtach topologicznych 2D i 3D.
- Klasa Siatka: Cecha, rodzic większości obiektów wykonanych z Siatka, a nie brył.
- Klasa MES: FemMeshObject, rodzic siatek elementów skończonych utworzonych za pomocą środowiska pracy MES.
- Klasa CAM: Cecha, rodzic ścieżek utworzonych za pomocą środowiska pracy CAM do użytku w obróbce CNC.
- Klasa App: Część, która definiuje Std: Część, które mogą być używane jako kontenery korpusów do wykonywania złożeń.
Podczas tworzenia tego obiektu w środowisku Python, zamiast klasy podrzędnej App::GeoFeature
, należy utworzyć klasę podrzędną App::GeometryPython
, ponieważ ta ostatnia zawiera domyślnego dostawcę widoku oraz atrybuty Proxy
dla samego obiektu i jego dostawcy widoku. Zobacz także sekcję tworzenie skryptów.
Właściwości App GeoFeature
Zobacz stronę Właściwości dla wszystkich typów właściwości, które mogą mieć obiekty tworzone skryptami.
App: Cechy geometrii (klasaApp::GeoFeature
) jest pochodną podstawowego obiektu App DocumentObject (klasa App::DocumentObject
) i dziedziczy wszystkie jego właściwości. Dodatkowo posiada właściwość DANEUmiejscowienie, która kontroluje jego pozycję w oknie Widoku 3D.
Właściwości App GeometryPython
Zobacz stronę Właściwości dla wszystkich typów właściwości, które mogą mieć obiekty tworzone skryptami.
Obiekt App: Cechy geometrii Python (klasa App::GeometryPython
) jest pochodną podstawowego obiektu App: Cechy geometrii (klasa App::GeoFeature
) i dziedziczy wszystkie jego właściwości. Posiada również kilka dodatkowych właściwości.
Są to właściwości dostępne w edytorze właściwości. Ukryte właściwości można wyświetlić za pomocą polecenia Pokaż ukryte w menu kontekstowym edytora właściwości.
Dane
Podstawa
- DANE (Ukryte)Proxy (
PythonObject
): niestandardowa klasa powiązana z tym obiektem. - DANEUmiejscowienie (
Placement
): pozycja obiektu w widoku 3D. Umiejscowienie jest definiowane przez punktBazowy
(wektor) iObrót
(oś i kąt). Zobacz informacje na stronie Umiejscowienie.- DANEKąt: kąt obrotu wokół DANEOsi. Domyślnie jest to
0°
(zero stopni). - DANEOś: wektor jednostkowy definiujący oś obrotu dla umiejscowienia. Każdy element jest wartością zmiennoprzecinkową pomiędzy
0
i1
. Jeśli jakakolwiek wartość znajduje się powyżej1
, wektor jest normalizowany tak, aby jego wielkość wynosiła1
. Domyślnie jest to dodatnia oś Z,(0, 0, 1)
. - DANEPozycja: wektor ze współrzędnymi 3D punktu bazowego. Domyślnie jest to punkt odniesienia połażenia
(0, 0, 0)
.
- DANEKąt: kąt obrotu wokół DANEOsi. Domyślnie jest to
- DANEEtykieta (
String
): edytowalna przez użytkownika nazwa tego obiektu, jest to dowolny ciąg UTF8. - DANE (Ukryte)Etykieta2 (
String
): dłuższy, edytowalny przez użytkownika opis tego obiektu, jest to dowolny ciąg UTF8, który może zawierać nowe linie. Domyślnie jest to pusty ciąg""
. - DANESilnikWyrażeń (
Ukryte
): lista wyrażeń. Domyślnie jest pusta[]
. - DANE (Ukryte)Widoczność (
Bool
): określa czy obiekt ma być wyświetlany czy nie.
Widok
Baza
- WIDOK (Ukryte)Proxy (
PythonObject
): niestandardowa klasa dostawcy widoku powiązana z tym obiektem.
Opcje wyświetlania.
- WIDOKRamka otaczająca (
Bool
): jeśli ma wartośćPRAWDA
, obiekt wyświetli obwiednię w oknie widoku 3D. - WIDOKTryb wyświetlania (
Enumeration
): zobacz informacje w App: Właściwości Python. - WIDOKPokaż w drzewie (
Bool
): zobacz informacje w App: Właściwości Python. - WIDOKWidoczność (
Bool
): zobacz informacje w App: Właściwości Python.
Styl obiektu
- WIDOKKolor kształtu (
Color
): krotka trzech zmiennoprzecinkowych wartości RGB(r,g,b)
do definiowania koloru ścian w widoku 3D. Domyślnie jest to(0. 8, 0.8, 0.8)
, co jest wyświetlane jako[204, 204, 204]
na podstawie 255, a jasnoszary . - WIDOK (ukryte)Materiał kształtu (
Material
): powiązany z tym obiektem Materiał. Domyślnie włąściwość jest pusta. - WIDOKPrzeźroczystość (
Percent
): wartość całkowita od0
do100
, która określa poziom przeźroczystości ścian w widoku 3D. Wartość100
oznacza całkowicie niewidoczne ściany, ściany są niewidoczne, ale nadal można je wybrać, o ile właściwość WIDOKWybieralny ma wartośćPRAWDA
.
Wybór
- WIDOKNa górze po wybraniu (
Enumeration
): zobacz informacje na stronie App: Właściwości Python. - WIDOKWybieralny (
Bool
): jeśli ma wartośćPRAWDA
, obiekt może zostać wybrany za pomocą kursora w oknie widoku 3D. W przeciwnym razie obiekt nie może zostać wybrany, dopóki ta właściwość nie zostanie ustawiona naPRAWDA
. - WIDOKStyl wyboru (
Enumeration
): zobacz informacje na ten temat zawarte na stronie App: Właściwości Python.
Tworzenie skryptów
Zobacz również: Podstawy tworzenia skryptów FreeCAD, oraz Obiekty skryptowe.
Ogólne informacje na temat dodawania obiektów do dokumentu można znaleźć na stronie Część: właściwość.
Obiekt Cechy geometrii jest tworzony za pomocą metody addObject()
dokumentu. Jeśli chcesz utworzyć obiekt o kształcie 2D lub 3D kształt topologiczny, lepszym rozwiązaniem może być utworzenie jednej z klas podrzędnych wyspecjalizowanych do obsługi kształtów, na przykład Część: Cecha lub Część: Część na obiekt 2D.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::GeoFeature", "Name")
obj.Label = "Custom label"
Dlatego też, dla klasy podrzędnej Python, powinieneś stworzyć obiekt App::GeometryPython
.
import FreeCAD as App
doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::GeometryPython", "Name")
obj.Label = "Custom label"
Ta strona pochodzi z https://wiki.freecad.org/App_GeoFeature