Feature list/pl

To jest wyczerpująca lista cech zaimplementowanych we FreeCADzie. Jeśli chcesz poznać przyszłe funkcje przeczytaj plan rozwoju. Dobre, dla wstępnego poznania, są zrzuty ekranu.

Aplikacja bazowa



 * FreeCAD jest wieloplatformowy. Działa i zachowuje się dokładnie tak samo na platformach Windows, Linux i Mac OS X.


 * FreeCAD jest aplikacją w pełni "okienkową". Posiada pełny interfejs użytkownika, oparty na znanym frameworku Qt, z przeglądarką 3D Open Inventor, pozwalającą na szybki rendering scen i bardzo przystępną reprezentacją graficzną.


 * FreeCAD działa także jako aplikacja linii poleceń, z małym zapotrzebowaniem na pamięć. W trybie linii poleceń, FreeCAD działa bez interfejsu graficznego, ale ze wszystkimi narzędziami geometrii. Może być używany, np. jako serwer produkujący treść dla innych aplikacji.


 * FreeCAD może być zaimportowany jako moduł Pythona, do innych aplikacji potrafiących wykonywać skrypty Pythona lub w konsoli Pythona. Podobnie jak w trybie konsolowym, część interfejsu jest niedostępna, ale wszystkie narzędzia geometrii są dostępne.


 * Framework pluginu/modułu do opóźnionego ładowania cech/typów danych . FreeCAD jest podzielony na rdzeń i moduły, które mogą być ładowane dopiero wtedy gdy są potrzebne. Większość narzędzi i typów geometrii mieści się w modułach. Moduły zachowują się jak wtyczki i mogą być dodawane lub usuwane z istniejącej instalacji FreeCADa.


 * Wbudowany framework skryptowania: FreeCAD zawiera wbudowany interpreter Pythona i API które pokrywa niemal każdą część aplikacji, interfejsu, geometrię i reprezentację tej geometrii w przeglądarce 3d. Interpreter potrafi wykonywać zarówno pojedyncze polecenia jak i skomplikowane skrypty, w rzeczywistości całe moduły mogą być zaprogramowane w Pythonie.


 * modularny instalator MSI pozwala na elastyczną instalację w systemie Windows. Paczki dla Ubuntu także są przygotowywane.

Struktura dokumentu



 * Framework Cofnij/Ponów: Wszystko można cofać/ponawiać przez dostęp do stosu cofania, wiele kroków można cofnąć jednocześnie.


 * Zarządzanie transakcją: Stos cofnij/ponów zapamiętuję transakcje dokumentu, nie pojedyncze akcje, pozwalając zdefiniować (dla każdego narzędzia) co ma być cofnięte/ponowione.


 * Obiekty łączone parametrycznie: Wszystkie obiekty w dokumencie FreeCADa są zdefiniowane parametrycznie. Te parametry mogą być modyfikowane w locie i przeliczane w dowolnej chwili. Także relacje pomiędzy obiektami są zapisywane, więc modyfikacja obiektu powoduje modyfikację obiektów zależnych.


 * Mieszany (na bazie ZIP) format zapisu dokumentu: dokumenty FreeCADa zapisywane z rozszerzeniem .fcstd mogą zawierać wiele różnych typów informacji, jak geometria, skrypty czy ikony miniatur.

Interfejs użytkownika

 * W pełni modyfikowalny/skryptowalny Graficzny Interfejs Użytkownika . Bazujący na Qt interfejs FreeCADa jest w całości dostępny przez interpreter Pythona. Poza prostymi funkcjami, które FreeCAD dostarcza we warsztatach(ang. workbenches), dostępny jest cały framework Qt, pozwalający na dowolne operacje z GUI, jak tworzenie, dodawanie, dokowanie, modyfikowanie lub usuwanie widżetów i pasków narzędzi.


 * Koncepcja Warsztatów: W interfejsie FreeCADa narzędzia są pogrupowane we warsztaty. Pozwala to na wyświetlanie tylko narzędzi potrzebnych do wykonania określonego zadania, pozostawiając przestrzeń roboczą niezabałaganioną i responsywną.


 * Wbudowana konsola Pythona z podświetlaniem składni, autouzupełnianiem i przeglądarką klas: Polecenia mogą być wydawane bezpośrednio we FreeCADzie i natychmiastowo zwracać rezultaty, pozwalając piszącym skrypty na sprawdzanie rezultatów w locie, przeglądować zawartość modułów i łatwo i łatwo poznawać wnętrze FreeCADa.


 * Działanie użytkownika widoczne w konsoli: Wszystko co robi użytkownik w interfejsie FreeCADa wyzwala kod Pythona, który może być wypisywany w konsoli i zapisywany w makrach.


 * Pełny zapis i edycja makr: Komendy Pythona powstające podczas działania użytkownika na interfejsie mogą być nagrywane, edytowane jeśli to konieczne, i zapisywane w celu ponownego wykonania.


 * Miniaturki (Obecnie tylko systemy Linux): Ikona dokumentu pokazuje zawartość pliku w większości menedżerów plików jak np. Gnome Nautilus.

Cechy specyficzne dla określonych aplikacji
Funkcje FreeCADa są podzielane pomiędzy moduły, każdy z nich dotyczy określonych typów danych i aplikacji:

Moduł Meshes



 * Moduł Mesh dotyczy siatek (ang. mesh) 3D. Jest przeznaczony głównie do importu, naprawy i konwersji siatek geometrii z prograwów trzecich do FreeCADa oraz ekspotu geometrii FreeCAD w formaty siatek. Ponad to FreeCAD zawiera znacznie bardziej skomplikowane typy geometrii niż siatki.


 * Tworzenie prymitywów (sześcian, kula, walec, itp.), odsunięcie (trywialne lub po Jung/Shin/Choi) i operacje Boole'a (łączenie, wycinanie, część wspólna)


 * Import w następujących formatach: ASCII lub binarny STL (Stereo lithography format) (*.stl, *.ast), OBJ format (*.obj), ograniczone wsparcie NASTRAN (*.nas), siatki Open Inventor (*.iv), i natywna siatka jądra FreeCAD (*.bms)


 * Eksport w następujących formatach: ASCII lub binary STL (Stereo lithography format) (*.stl, *.ast), OBJ format (*.obj), ograniczone wsparcie NASTRAN (*.nas, *.brl), siatka VRML (*.wrl), natywna siatka jądra FreeCAD (*.bms), siatka jako moduł Pythona (*.py)


 * Testing and repairing tools for meshes: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.


 * Extensive Python scripting API.

2D Drafting

 * Graphical creation of simple planar geometry like lines, wires, rectangles, arcs or circles in any plane of the 3D space


 * Annotations like texts or dimensions


 * Graphical modification operations like translation, rotation, scaling, mirroring, offset or shape conversion, in any plane of the 3D space


 * Import and Export of the following formats: Autodesk's Drawing Exchange Format (*.dxf), Open Cad Format (*.oca, *.gcad) e SVG (*.svg)

CAD



 * The Part Module deals with everything around CAD modeling and the CAD data structures. The CAD functionality is under heavy development (see the PartDesign_project and Assembly_project in the Development_roadmap). The Part Module works with high-level Open CASCADE geometry.


 * Parametric primitive shapes like box, sphere, cylinder, cone or torus.


 * Topological components like vertices, edges, wires and planes (via python scripting).


 * Modeling with straight or revolution extrusions, sections and fillets.


 * Boolean operations like union, difference and intersection.


 * Extensive Python scripting API.


 * Import and Export of the following formats: STEP parts and assemblies (*.stp,*.step), IGES models (*.igs, *.iges) and BRep (*.brp), the native format of our Open CASCADE CAD kernel.

Raytracing

 * The Raytracing Module permits the export of FreeCAD geometry to external renderers for generation of high-quality images. Currently, the only supported render engine is POV-Ray. The module currently permits the creation of a render sheet, and adding geometry to that render sheet for export to a POV-Ray file.

Drawing

 * The Drawing Module allows to export projected views of your 3D geometry to a 2D SVG document. It allows the creation of a 2D sheet with an existing svg template, and the insertion of projected views of your geometry in that sheet. Then the sheet can be saved as a SVG file.

CAM

 * The Cam Module is dedicated to mechanical machining like milling. This module is at the very beginning and at the moment mostly dedicated to Incremental Sheet Forming. Although there are some algorithms for toolpath planing they are not usable for the end-user at the moment.