App: Obiekt dokumentu

From FreeCAD Documentation
Revision as of 14:44, 30 March 2024 by Kaktus (talk | contribs) (Created page with "{{Emphasis|Zobacz również:}} Podstawy tworzenia skryptów FreeCAD, oraz Obiekty skryptowe.")

Wprowadzenie

Obiekt Dokumentu, lub formalnie App::DocumentObject, jest klasą bazową wszystkich klas obiektów obsługiwanych w dokumencie.

Ogólnie rzecz biorąc, "ObiektDokumentu" to dowolna "rzecz", która może pojawić się w widoku drzewa i która jest zapisywana i przywracana podczas otwierania dokumentu.

Widok drzewa pokazujący różne obiekty w dokumencie. Każdy z nich jest "obiektem dokumentu", wywodzącym się z klasy bazowej App::DocumentObject.

Uproszczony diagram zależności pomiędzy podstawowymi obiektami w programie FreeCAD.

Użycie

Obiekt dokumentu jest klasą wewnętrzną, więc nie może być tworzona z poziomu interfejsu graficznego, ani nie jest przeznaczona do samodzielnego użytku. Definiuje ona jedynie podstawowe zachowanie i właściwości obiektów w programie.

Niektóre z najważniejszych obiektów dokumentu to:

Właściwości

Zobacz stronę Właściwości dla wszystkich typów właściwości, które mogą mieć obiekty tworzone skryptami.

Są to podstawowe właściwości, które posiadają zasadniczo wszystkie obiekty. Dostęp do tych właściwości można uzyskać z Konsoli Python.

  • DANEEtykieta (String): użytkownik może edytować nazwę tego obiektu, jest to dowolny ciąg znaków UTF8. Domyślnie jest to samo co Nazwa.
  • DANEEtykieta2 (String): dłuższy, użytkownik może edytować opis tego obiektu, jest to dowolny ciąg znaków UTF8, który może zawierać nowe linie. Domyślnie jest to pusty ciąg znaków "".
  • DANESilnik wyrażeń (ExpressionEngine): lista wyrażeń.
  • DANEWidoczność (Bool): definiuje czy wyświetlać obiekt czy nie.

Dla obiektów pochodnych, tylko DANEEtykieta będzie domyślnie wyświetlane w edytorze właściwości. Pozostałe właściwości będą ukryte.

Tworzenie skryptów

Zobacz również: Podstawy tworzenia skryptów FreeCAD, oraz Obiekty skryptowe.

See Part Feature for the general information on adding objects to the document.

A DocumentObject is created with the addObject() method of the document. However, in general, there is no need to create this object manually. It is usually better to subclass one of the more complex classes, for example, App FeaturePython, App GeoFeature, Part Feature, Part Part2DObject, etc.

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::DocumentObject", "Name")
obj.Label = "Custom label"