Std: Wyślij do konsoli Python

From FreeCAD Documentation
Revision as of 07:29, 17 May 2022 by Kaktus (talk | contribs) (Created page with "{| class="wikitable" |- ! Nazwa zmiennej !! Obiekty, do których się odwołano |- | {{Incode|doc}} || Dokument zawierający wybrany obiekt |- | {{Incode|lnk}} || Wybrany obie...")

Std: Wyślij do konsoli Python

Menu location
Edycja → Wyślij do konsoli Python
Workbenches
wszystkie
Default shortcut
Ctrl + Shift+P
Introduced in version
0.19
See also
None

Opis

Polecenie Wyślij do konsoli Pyton tworzy w Konsoli Python zmienne odnoszące się do wybranego obiektu i jego wybranych kształtów podrzędnych, wraz z kilkoma innymi użytecznymi odniesieniami. Zmienne i związany z nimi kod mogą być wykorzystane podczas tworzenia kodu środowiska Python.

W zależności od wybranego obiektu i jego wybranych kształtów podrzędnych, jeśli takie istnieją, tworzone są następujące zmienne:

Nazwa zmiennej Obiekty, do których się odwołano
doc Dokument zawierający wybrany obiekt
lnk Wybrany obiekt odnośnika (tworzony tylko wtedy, gdy wybrany obiekt jest odnośnikiem)
obj W zależności od wybranego obiektu:

Sam zaznaczony obiekt (jeśli zaznaczony obiekt nie jest odnośnikiem)
Obiekt powiązany (jeśli wybrany obiekt jest odnośnikiem)

shp W zależności od typu obj:

Właściwość Shape obiektu obj (dla obiektów wywodzących się z klasy Part::Feature)
Właściwość Mesh obiektu obj (dla obiektów typu Mesh)
Właściwość Points obiektu obj (dla obiektów Points)

sub Pierwszy wybrany kształt podrzędny (tworzony tylko wtedy, gdy wybrany jest co najmniej jeden kształt podrzędny)
subs Lista zawierająca wszystkie kształty podrzędne (tworzona tylko w przypadku wybrania dwóch lub więcej kształtów podrzędnych)
>>> ### Begin command Std_SendToPythonConsole
>>> try:
>>>     del(doc,lnk,obj,shp,sub,subs)
>>> except Exception:
>>>     pass
>>> 
>>> doc = App.getDocument("Unnamed")
>>> lnk = doc.getObject("Link")
>>> obj = lnk.getLinkedObject()
>>> shp = obj.Shape
>>> sub = obj.getSubObject("Edge10")
>>> subs = [obj.getSubObject("Edge10"),obj.getSubObject("Face3"),obj.getSubObject("Vertex5"),]
>>> ### End command Std_SendToPythonConsole

Przykładowe dane wyjściowe: wybrano krawędź, ścianę i wierzchołek łącza do sześcianu.

Użycie

  1. Select a single object or one or more subshapes belonging to a single object.
  2. There are several ways to invoke the command:
    • Select the Edit → Send to Python Console option from the menu.
    • Select the Send to Python Console option from the Tree view context menu or 3D view context menu.
    • Use the keyboard shortcut: Ctrl+Shift+P.
  3. If required the Python console opens.
  4. The Python console receives the keyboard focus.

Uwagi

  • Wszystkie wcześniej utworzone zmienne są usuwane po każdym uruchomieniu polecenia.
  • Jeśli zaznaczony obiekt jest Łączem (App::Link), a Obiekt połączony pochodzi z klasy Part::Feature, zmienna shp będzie kształtem obiektu połączonego. Jeśli odnośnik został przekształcony lub przeskalowany i chcesz uzyskać dostęp do przeskalowanego/przekształconego kształtu, możesz to zrobić za pomocą tego kodu:
lnk_shp = Part.getShape(lnk)