Property editor/pl: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 133: Line 133:
* {{PropertyData|Axis}}: Oś, wokół której będzie przeprowadzane wyciągnięcie przez obrót. Nie można go modyfikować bezpośrednio, tylko podczas edycji elementu.
* {{PropertyData|Axis}}: Oś, wokół której będzie przeprowadzane wyciągnięcie przez obrót. Nie można go modyfikować bezpośrednio, tylko podczas edycji elementu.


* {{propertyData|Angle}}: Kąt określający, o ile element bazowy jest obracany. Domyślnie jest to wartość {{value|360 stopni}}, jednakże możliwe jest wprowadzanie wartości dla dowolnego kąta.
<div class="mw-translate-fuzzy">
* {{propertyData|Angle}}:
Określa kąt, który ma być użyty z właściwością [[#Axis|axis]] ''(poniżej)''. Tutaj ustawiany jest kąt, a oś, na którą działa kąt, jest ustawiana z właściwością osi.
Właściwość jest obracana o określony kąt wokół zadanej osi.
Przykładem użycia może być sytuacja, gdy utworzyłeś element wyciągniemy przez obrót zgodnie z wymaganiami, ale potem musiałeś obrócić cały element o pewną wartość, aby umożliwić mu połączenie z innym wcześniej istniejącym elementem.
</div>


{{TitleProperty|Sketch Based}}
{{TitleProperty|Sketch Based}}

Revision as of 19:40, 15 December 2019

Wprowadzenie

Edytor property editor pojawia się, gdy aktywna jest zakładka Model widoku łączonego. Umożliwia zarządzanie publicznie eksponowanymi właściwościami obiektów w dokumencie.

Ogólnie rzecz biorąc, edytor właściwości jest przeznaczony do obsługi tylko jednego obiektu w tym samym czasie. Wartości wyświetlane w edytorze właściwości należą do wybranego obiektu aktywnego dokumentu. Mimo to, niektóre właściwości, takie jak kolory, mogą być ustawione dla wielu zaznaczonych obiektów. Jeśli nie ma zaznaczonych elementów, edytor właściwości będzie pusty.

Nie wszystkie właściwości mogą być zawsze modyfikowane. W zależności od określonego statusu właściwości, niektóre z nich będą niewidoczne (nie wymienione) lub będą tylko do odczytu (nie edytowalne).

Pusty edytor właściwości, gdy żaden obiekt nie jest zaznaczony.

Typy właściwości

Właściwość jest informacją taką jak numer lub ciąg znaków dołączony do dokumentu FreeCAD lub obiektu w dokumencie.

Własny obiekt skryptowy może używać dowolnych typów właściwości zdefiniowanych w systemie bazowym. Zobacz pełną listę Właściwości.

Niektóre z najczęściej używanych typów właściwości to właśnie:

App::PropertyBool
App::PropertyFloat
App::PropertyAngle
App::PropertyDistance
App::PropertyInteger
App::PropertyString
App::PropertyMatrix
App::PropertyVector
App::PropertyPlacement

Różne obiekty mogą mieć różne typy właściwości. Jednak wiele obiektów ma te same typy, ponieważ pochodzą one z tej samej klasy wewnętrznej. Na przykład, większość obiektów opisujących kształty geometryczne (linie, okręgi, prostokąty, bryły, importowane części itp.) ma właściwość Położenie, która określa ich położenie w widoku 3D.

Właściwości widoku i danych

Istnieją dwie klasy właściwości obiektu dostępne poprzez zakładki w edytorze właściwości:

  • View właściwości związane z wizualnym wyglądem obiektu. Właściwości View są związane z ViewProvider (atrybut obiektu ViewObject) i są dostępne tylko wtedy, gdy załadowany jest graficzny interfejs użytkownika (GUI). Nie są one dostępne przy korzystaniu z FreeCAD w trybie konsolowym lub jako biblioteka zasobów własnych.
  • Data właściwości związane z parametrami "fizycznymi" obiektu. Właściwości Data definiują podstawowe właściwości obiektu. Istnieją przez cały czas, nawet gdy FreeCAD jest używany w trybie konsolowym lub jako biblioteka. Oznacza to, że jeśli załadujesz dokument w trybie konsolowym, możesz edytować promień okręgu lub długość linii, nawet jeśli nie widzisz wyniku na ekranie.

Z tego powodu właściwości Data są uważane za bardziej realne, ponieważ naprawdę definiują geometrię kształtu. Z drugiej strony, właściwości View są mniej ważne, ponieważ wpływają jedynie na wygląd powierzchni geometrii. Na przykład okrąg o promieniu 10mm różni się od okręgu o promieniu 5mm. Kolor okręgu (właściwość widoku) nie ma wpływu na jego kształt, ale promień ma (właściwość danych). W wielu przypadkach w niniejszej dokumentacji słowo właściwość jest rozumiane jako odnoszące się do Właściwości danych, a nie do Właściwości widoku.

Własności podstawowe

Najprostszy obiekt skryptowy nie pokaże żadnej właściwości Data w edytorze właściwości, z wyjątkiem atrybutu Label. Label jest edytowalnym łańcuchem użytkownika, który identyfikuje obiekt w widoku drzewa. Z drugiej strony, atrybut Name obiektu jest przypisany w momencie jego utworzenia i nie może być zmieniony. Atrybut ten jest tylko do odczytu i również nie jest wyświetlany w edytorze właściwości.

Podstawowy obiekt parametryczny jest tworzony w następujący sposób.

obj = App.ActiveDocument.addObject("App::FeaturePython", "App__FeaturePython")
obj.Label = "Plain_object"
print(obj.Name)
print(obj.Label)

Zakładki Widok i Dane edytora właściwości, dla podstawowego obiektu skryptowego App::FeaturePython.

Większość obiektów geometrycznych, które mogą być tworzone i wyświetlane w widoku 3D pochodzi z Part::Feature. Zobacz Właściwości części, aby dowiedzieć się, jakie podstawowe właściwości mają te obiekty.

Dla geometrii 2D większość obiektów pochodzi z Part::Part2DObject (wywodzi się z Part::Feature), która jest podstawą Środowiska pracy Sketches, i większości Elementy Draft. Zobacz Część2DObject, aby zapoznać się z najbardziej podstawowymi właściwościami tych obiektów.

Działania

Działania w zakresie widoku właściwości zostały wdrożone w wersji 0.19.

Kliknięcie prawym przyciskiem myszy w pustym miejscu widoku lub z wybraną właściwością powoduje wyświetlenie tylko jednego polecenia:

  • Show all: jeśli jest aktywny, oprócz standardowych właściwości, które już się pojawiają, pokazuje wszystkie ukryte właściwości danych i widoku w odpowiednich zakładkach.
    • Dane: "Proxy", "Label2", "Expression Engine", oraz "Visibility".
    • Widok: "Proxy".

Gdy opcja Show all jest aktywna, a wybrana jest jedna właściwość, dostępnych jest więcej akcji za pomocą drugiego kliknięcia prawym przyciskiem myszy:

  • Show all: dezaktywuje polecenie Show all, ukrywając dodatkowe właściwości Dane i Widok.
  • Add Property: dodaje dynamiczną właściwość do obiektu; działa to zarówno z obiektami zdefiniowanymi w C++ jak i Python objekty skryptowane.
  • Expression: przywołuje edytor formuły, który umożliwia użycie wyrażenia w wartości właściwości.
  • Hidden: jeżeli opcja jest aktywna, ustawia właściwość jako ukrytą, co oznacza, że będzie wyświetlana tylko wtedy, gdy aktywna jest opcja Show all.
  • Output: jeżeli opcja jest aktywna, ustawia właściwość jako wyjście.
  • NoRecompute: jeżeli opcja jest aktywna, ustawia właściwość jako nieprzeliczaną, gdy dokument jest ponownie obliczany. Jest to przydatne, gdy właściwość powinna być utrzymywana bez wpływu innych aktualizacji.
  • ReadOnly: jeżeli opcja jest aktywna, ustawia właściwość jako tylko do odczytu; nie będzie już edytowalna, dopóki ten przełącznik nie zostanie wyłączony.
  • Transient: jeżeli opcja jest aktywna, ustawia właściwość jako przejściową.
  • Touched: jeżeli opcja jest aktywna, to obiekt zostanie oznaczony do ponownego przeliczenia.
  • EvalOnRestore: jeżeli opcja jest aktywna, to obiekt jest przeliczany po przywróceniu dokumentu.

Przykładowe właściwości obiektu z PartDesign

W tej sekcji pokazujemy kilka wspólnych właściwości, które są widoczne dla PartDesign Body, oraz jedną cechę PartDesign Feature. Specyficzne właściwości obiektu można znaleźć na stronie poświęconej dokumentacji tego obiektu.

Widok

Większość z tych właściwości jest dziedziczona z obiektu podstawowego Part Feature.

Base

  • WIDOKBounding Box: Wskazuje, czy ma być wyświetlana ramka pokazująca ogólną rozpiętość obiektu. Wartość False lub True (domyślnie, False).
  • WIDOKControl Point: Wskazuje, czy mają być wyświetlane punkty sterowania funkcjami. Wartość False lub True (domyślnie, False).
  • WIDOKDeviation: Ustawia dokładność wielobocznych reprezentacji modelu w widoku 3d (teselacja). Niższe wartości = lepsza jakość. Wartość jest wyrażona w procentach wielkości obiektu (odchylenie w mm = (w+h+d)/3*valueInPercent/100, gdzie w, h, d są wymiarami obwiedni).
  • WIDOKDisplay Mode: Tryb wyświetlania funkcji, Linie płaskie, zacienione, Szkielet, Punkty. . (domyślnie, Flat lines).
  • WIDOKLighting: Oświetlenie "Z jednej strony, z dwóch stron". . (domyślnie, z dwóch stron).
  • WIDOKLine Color: Nadaje kolor linii (krawędzi) (domyślnie, 25, 25, 25, 25).
  • WIDOKLine Width: Podaje grubość linii (krawędzi) (wartość domyślna, 2).
  • WIDOKPoint Color: Nadaje kolor punktów (zakończenia elementu) (domyślnie, 25, 25, 25, 25).
  • WIDOKPoint Size: Podaje wielkość punktów (domyślnie 2).
  • WIDOKSelectable: Umożliwia wybór funkcji. Wartość False, lub True (domyślnie, True).
  • WIDOKShape Color: Nadaj kolor kształtowi (domyślnie 204, 204, 204, 204).
  • WIDOKTransparency: Ustawia stopień przejrzystości obiektu od 0 do 100 (domyślnie 0).
  • WIDOKVisibility: Określa widoczność funkcji (np. pasek SPACJA). Wartość False, lub True (domyślnie, True).

Dane

W tym przypadku obserwujemy właściwości PartDesign Wyciągnij przez obrót.

Base

  • DANELabel: Zdefiniowana przez użytkownika nazwa nadana obiektowi, którą można dowolnie zmieniać.

Part Design

  • DANERefine: Udoskonalenie procesu scalania z innymi przedmiotami.

Revolution

  • DANEBase: Punkt w przestrzeni, który określa, gdzie odbywa się wyciągnięcie przez obrót. Nie można go modyfikować bezpośrednio, tylko podczas edycji elementu.
  • DANEAxis: Oś, wokół której będzie przeprowadzane wyciągnięcie przez obrót. Nie można go modyfikować bezpośrednio, tylko podczas edycji elementu.
  • DANEAngle: Kąt określający, o ile element bazowy jest obracany. Domyślnie jest to wartość 360 stopni, jednakże możliwe jest wprowadzanie wartości dla dowolnego kąta.

Sketch Based

  • DANEPosition:

Ta właściwość określa punkt bazowy, do którego odnoszą się wszystkie wymiary. Wymaga to podania trzech argumentów, które są przekazywane jako liczby do pól x, y i z w narzędziu. Ustawienie wartości dla więcej niż jednego pola spowoduje, że część zostanie przetłumaczona przez liczbę jednostek wzdłuż odpowiedniej osi.

Scripting

See also: FreeCAD Scripting Basics.

See scripted objects for the full information on adding properties to objects defined through Python.

Most properties that are visible in the property editor can be accessed from the Python console. These properties are just attributes of the class that defines the selected object. For example, if the property editor shows the DANEGroup property, this means that the object has the Group attribute.

print(obj.Group)

These attributes (properties) are added with the addProperty method of the base object. At least it is necessary to specify the type of property, and its name.

obj.addProperty("App::PropertyFloat", "Custom")
print(obj.Custom)

Properties follow the CapitalCamelCase or PascalCase convention, meaning that each word starts with a capital letter, and there are no underscores. When the property editor displays such names, it leaves a space between each capital letter, making it easier to read.

obj.addProperty("App::PropertyDistance", "CustomCamelProperty")
obj.CustomCamelProperty = 1000
print(obj.CustomCamelProperty)

Property editor showing the Data properties of a PartDesign Body, with two additional properties, "Custom" and "Custom Camel Property".

In similar way the View properties are added, not to the base object, but to its ViewObject. Then, it follows that properties like WIDOKAngular Deflection, WIDOKBounding Box, WIDOKDisplay Mode, WIDOKDisplay Mode Body, WIDOKLine Color, and others, can be examined and changed from the Python console.

print(obj.ViewObject.AngularDeflection)
print(obj.ViewObject.BoundingBox)
print(obj.ViewObject.DisplayMode)
print(obj.ViewObject.DisplayModeBody)
print(obj.ViewObject.LineColor)

Template:Interface