Python to wysokopoziomowy język programowania ogólnego przeznaczenia, który jest bardzo powszechnie wykorzystywany w dużych aplikacjach do automatyzacji pewnych zadań poprzez tworzenie skryptów lub makr.
We FreeCAD, kod Pythona może być stosowany do tworzenia różnych elementów programowo, bez potrzeby klikania w interfejsie graficznym użytkownika. Ponadto, wiele narzędzi i środowisk pracy we FreeCAD jest zaprogramowanych w Pythonie.
Zobacz stronę Wprowadzenie do Pythona, aby zapoznać się z językiem programowania Python, a następnie sprawdź Poradnik pisania skryptów w Pythonie oraz Podstawy tworzenia skryptów we FreeCAD, aby rozpocząć tworzenie skryptów we FreeCAD.
Czytelność kodu w Pythonie jest jednym z najważniejszych aspektów tego języka. Stosowanie jasnego i spójnego stylu w społeczności Pythona ułatwia wkład różnych programistów, ponieważ większość doświadczonych programistów Pythona oczekuje, że kod będzie sformatowany w określony sposób i będzie przestrzegał określonych zasad. Podczas pisania kodu w Pythonie zaleca się stosowanie do dokumentów PEP8: Style Guide for Python Code oraz PEP257: Docstring Conventions.
Te dokumenty zawierają wyjaśnienia w bardziej przyjaznej dla użytkownika formie:
W tej dokumentacji należy stosować się do niektórych konwencji dotyczących przykładów w Pythonie.
To jest typowa sygnatura funkcji
Wire = make_wire(pointslist, closed=False, placement=None, face=None, support=None)
Wire = make_wire(pointslist, False, None, None, None)
Wire = make_wire(pointslist, False, None, None)
Wire = make_wire(pointslist, False, None)
Wire = make_wire(pointslist, False)
Wire = make_wire(pointslist)
Wire = make_wire(pointslist, closed=False, placement=None, face=None)
Wire = make_wire(pointslist, closed=False, face=None, placement=None)
Wire = make_wire(pointslist, placement=None, closed=False, face=None)
Wire = make_wire(pointslist, support=None, closed=False, placement=None, face=None)
p1 = Vector(0, 0, 0)
p2 = Vector(1, 1, 0)
p3 = Vector(2, 0, 0)
Wire = make_wire([p1, p2, p3], closed=True)
a_list = [1, 2, 3,
2, 4, 5]
Wire = make_wire(pointslist,
False, None,
None, None)
Wire = make_wire(pointslist, closed=True, face=True)
Window = make_window(Wire, name="Big window")
Funkcje Pythona są przechowywane w plikach zwanych modułami. Zanim użyjesz jakiejkolwiek funkcji z danego modułu, moduł musi zostać dołączony do dokumentu za pomocą instrukcji import.
Tworzy to funkcje z prefiksem, czyli module.function(). System ten zapobiega konfliktom nazw funkcji, które mają taką samą nazwę, ale pochodzą z różnych modułów.
Na przykład dwie funkcje Arch.make_window() i myModule.make_window() mogą współistnieć bez problemu.
Pełne przykłady powinny zawierać niezbędne importy oraz funkcje z prefiksem.
import FreeCAD as App
import Draft
p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 1, 0)
p3 = App.Vector(2, 0, 0)
Wire = Draft.make_wire([p1, p2, p3], closed=True)
import FreeCAD as App
import Draft
import Arch
p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1, 0, 0)
p3 = App.Vector(1, 1, 0)
p4 = App.Vector(0, 2, 0)
pointslist = [p1, p2, p3, p4]
Wire = Draft.make_wire(pointslist, closed=True, face=True)
Structure = Arch.make_structure(Wire, name="Big pillar")