Feature list/pl: Difference between revisions

From FreeCAD Documentation
m (Languages in alphabetic order, except english that goes first)
(Updating to match new version of source page)
Line 1: Line 1:
This is an extensive, hence not complete, list of features FreeCAD implements. If you want to look into the future see the [[Development roadmap]] for a quick overview of what's coming next. Also, the [[Screenshots]] are a nice place to go.
To jest wyczerpująca lista cech zaimplementowanych we FreeCADzie. Jeśli chcesz poznać przyszłe funkcje przeczytaj [[Development roadmap|plan rozwoju]]. Dobre, dla wstępnego poznania, są [[Screenshots|zrzuty ekranu]].


== Główne cechy ==
== Release notes ==


* [[Release notes 011|Release 0.11]] - March 2011
=== Aplikacja bazowa ===
* [[Release notes 012|Release 0.12]] - December 2011
* [[Release notes 013|Release 0.13]] - January 2013


== Key features ==
[[Image:Freecad09-thumbnail.jpg|300px|right]]


* [[Image:Feature1.jpg|left]] A complete [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technology]-based '''geometry kernel''' allowing complex 3D operations on complex shape types, with native support for concepts like brep, nurbs curves and surfaces, a wide range of geometric entities, boolean operations and fillets, and built-in support of STEP and IGES formats {{clear}}
*'''FreeCAD jest wieloplatformowy'''. Działa i zachowuje się dokładnie tak samo na platformach Windows, Linux i Mac OS X.
* [[Image:Feature3.jpg|left]] A full '''parametric model'''. All FreeCAD objects are natively parametric, which means their shape can be based on [[Property|properties]] or even depend on other objects, all changes being recalculated on demand, and recorded by the undo/redo stack. New object types can be added easily, that can even be [[Scripted objects|fully programmed in Python]]{{clear}}
* [[Image:Feature4.jpg|left]] A '''modular architecture''' that allow plugins (modules) to add functionality to the core application. Those extensions can be as complex as whole new applications programmed in C++ or as simple as [[Scripting|Python scripts]] or self-recorded [[macros]]. You have complete access from the '''Python''' built-in interpreter, macros or external scripts to almost any part of FreeCAD, being [[Topological data scripting|geometry creation and transformation]], the 2D or 3D representation of that geometry ([[scenegraph]]) or even the [[PyQt|FreeCAD interface]] {{clear}}
* [[Image:Feature5.jpg|left]] Import/export to '''standard formats''' such as [http://en.wikipedia.org/wiki/ISO_10303 STEP], [http://en.wikipedia.org/wiki/IGES IGES], [http://en.wikipedia.org/wiki/Obj OBJ], [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL], [http://en.wikipedia.org/wiki/Dxf DXF], [http://en.wikipedia.org/wiki/Svg SVG], [http://en.wikipedia.org/wiki/STL_(file_format) STL], [http://en.wikipedia.org/wiki/COLLADA DAE], [http://en.wikipedia.org/wiki/Industry_Foundation_Classes IFC] or [http://people.sc.fsu.edu/~jburkardt/data/off/off.html OFF], [http://en.wikipedia.org/wiki/NASTRAN NASTRAN], [http://en.wikipedia.org/wiki/VRML VRML] in addition to FreeCAD's native [[Fcstd file format]]. The level of compatibility between FreeCAD and a given file format can vary, since it depends on the module that implements it.{{clear}}
* [[Image:Feature7.jpg|left]] A [[Sketcher Workbench|Sketcher]] with constraint-solver, allowing to sketch geometry-constrained 2D shapes. The sketcher currently allows you to build several types of constrained geomerty, and use them as a base to build other objects throughout FreeCAD.{{clear}}
* [[Image:Feature9.jpg|left]] A [[Robot Workbench|Robot simulation]] module that allows to study robot movements. The robot module already has an extended graphical interface allowing GUI-only workflow.{{clear}}
* [[Image:Feature8.jpg|left]] A [[Drawing Module|Drawing sheets]] module that permit to put 2D views of your 3D models on a sheet. This modules then produces ready-to-export SVG or PDF sheets. The module is still sparse but already features a powerful Python functionality.{{clear}}
* [[Image:Feature-raytracing.jpg|left]] A [[Raytracing Module|Rendering]] module that can export 3D objects for rendering with external renderers. Currently only supports [http://en.wikipedia.org/wiki/POV-Ray povray], but is expected to be extended to other renderers in the future.{{clear}}
* [[Image:Feature-arch.jpg|left]] An [[Arch Module|Architecture]] module that allows [http://en.wikipedia.org/wiki/Building_Information_Modeling BIM]-like workflow, with [http://en.wikipedia.org/wiki/Industry_Foundation_Classes IFC] compatibility. The making of the Arch module is heavily discussed by the community [http://forum.freecadweb.org/viewtopic.php?f=10&t=821 here].{{clear}}


== General features ==
* '''FreeCAD jest aplikacją w pełni "okienkową"'''. Posiada pełny interfejs użytkownika, oparty na znanym frameworku [http://www.qtsoftware.com/ Qt], z przeglądarką 3D [http://en.wikipedia.org/wiki/Open_Inventor Open Inventor], pozwalającą na szybki rendering scen i bardzo przystępną reprezentacją graficzną.


*'''FreeCAD is multi-platform'''. It runs and behaves exactly the same way on Windows Linux and Mac OSX platforms.
* '''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 is a full GUI application'''. FreeCAD has a complete Graphical User Interface based on the famous [http://www.qtsoftware.com/ Qt] framework, with a 3D viewer based on [http://en.wikipedia.org/wiki/Open_Inventor Open Inventor], allowing fast rendering of 3D scenes and a very accessible scene graph representation.
* '''FreeCAD może być zaimportowany jako [[Embedding FreeCAD/pl|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.


* '''FreeCAD also runs as a command line application''', with low memory footprint. In command line mode, FreeCAD runs without its interface, but with all its geometry tools. It can be, for example, used as server to produce content for other applications.
* '''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.


* '''FreeCAD can be imported as a [[Embedding FreeCAD|Python module]]''', inside other applications that can run python scripts, or in a python console. Like in console mode, the interface part of FreeCAD is unavailable, but all geometry tools are accessible.
* '''Wbudowany framework [[Scripting/pl|skryptowania]]''': FreeCAD zawiera wbudowany interpreter [http://www.python.org/ 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.


* '''Workbench concept''': In the FreeCAD interface, tools are grouped by [[workbenches]]. This allows to display only the tools used to accomplish a certain task, keeping the workspace uncluttered and responsive, and the application fast to load.
* '''modularny instalator MSI''' pozwala na elastyczną instalację w systemie Windows. Paczki dla Ubuntu także są przygotowywane.


* '''Plugin/Module framework for late loading of features/data-types'''. FreeCAD is divided into a core application and modules, that are loaded only when needed. Almost all the tools and geometry types are stored in modules. Modules behave like plugins, and can be added or removed to an existing installation of FreeCAD.
=== Struktura dokumentu ===


* '''Parametric associative document objects''': All objects in a FreeCAD document can be defined by parameters. Those parameters can be modified on the fly, and recomputed anytime. The relationship between objects is also stored, so modifying one object also modifies its dependent objects.
[[Image:Freecad-vista01.jpg|300px|right]]


* '''Parametric primitive creation''' (box, sphere, cylinder, etc)
* '''Framework Cofnij/Ponów''': Wszystko można cofać/ponawiać przez dostęp do stosu cofania, wiele kroków można cofnąć jednocześnie.


* Graphical '''modification operations''' like translation, rotation, scaling, mirroring, offset (trivial or after [http://www.ann.jussieu.fr/~frey/papers/meshing/Jung%20W.,%20Self-intersection%20removal%20in%20triangular%20mesh%20offsetting.pdf Jung/Shin/Choi]) or shape conversion, in any plane of the 3D space
* '''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 .


* '''[http://en.wikipedia.org/wiki/Constructive_solid_geometry Boolean operations]''' (union, difference, intersect)
* '''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.


* Graphical creation of '''simple planar geometry''' like lines, wires, rectangles, arcs or circles in any plane of the 3D space
* '''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.


* Modeling with straight or revolution '''extrusions''', '''sections''' and '''fillets'''.
=== Interfejs użytkownika ===


* Topological components like '''vertices, edges, wires''' and '''planes''' (via python scripting).
* '''W pełni modyfikowalny/skryptowalny Graficzny Interfejs Użytkownika '''. Bazujący na [http://www.qtsoftware.com 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.


* '''Testing and repairing''' tools for meshes: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.
* '''Koncepcja Warsztatów''': W interfejsie FreeCADa narzędzia są pogrupowane we [[workbenches/pl|warsztaty]]. Pozwala to na wyświetlanie tylko narzędzi potrzebnych do wykonania określonego zadania, pozostawiając przestrzeń roboczą niezabałaganioną i responsywną.


* '''Annotations''' like texts or dimensions
* '''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.


* '''Undo/Redo framework''': Everything is undo/redoable, with access to the undo stack, so multiple steps can be undone at a time.
* '''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.


* '''Transaction management''': The undo/redo stack stores document transactions and not single actions, allowing each tool to define exactly what must be undone or redone.
* '''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.


* '''Built-in [[Scripting|scripting]] framework''': FreeCAD features a built-in [http://www.python.org/ Python] interpreter, and an API that covers almost any part of the application, the interface, the geometry and the representation of this geometry in the 3D viewer. The interpreter can run single commands up to complex scripts, in fact entire modules can even be programmed completely in Python.
* '''Miniaturki''' (Obecnie tylko systemy Linux): Ikona dokumentu pokazuje zawartość pliku w większości menedżerów plików jak np. Gnome Nautilus.


* '''Built-in Python console''' with syntax highlighting, autocomplete and class browser: Python commands can be issued directly in FreeCAD and immediately return results, permitting scriptwriters to test functionality on the fly, explore the contents of the modules and easily learn about FreeCAD internals.
== Cechy specyficzne dla określonych aplikacji ==


* '''User interaction mirroring on the console''': Everything the user does in the FreeCAD interface executes python code, which can be printed on the console and recorded in macros.
Funkcje FreeCADa są podzielane pomiędzy moduły, każdy z nich dotyczy określonych typów danych i aplikacji:


* '''Full macro recording & editing''': The python commands issued when the user manipulates the interface can then be recorded, edited if needed, and saved to be reproduced later.
=== [[Mesh Module/pl|Moduł Meshes]] ===


* '''Compound (ZIP based) document save format''': FreeCAD documents saved with .[[fcstd file format|fcstd]] extension can contain many different types of information, such as geometry, scripts or thumbnail icons.
[[Image:Screenshot_mesh.jpg|300px|right]]


* '''Fully customizable/scriptable Graphical User Interface'''. The [http://www.qtsoftware.com Qt]-based interface of FreeCAD is entirely accessible via the python interpreter. Aside from the simple functions that FreeCAD itself provides to workbenches, the whole Qt framework is accessible too, allowing any operation on the GUI, such as creating, adding, docking, modifying or removing widgets and toolbars.
* [[Mesh Module|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.


* '''Thumbnailer''' (Linux systems only at the moment): The FreeCAD document icons show the contents of the file in most file manager applications such as gnome's nautilus.
* '''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)


* '''A modular MSI installer''' allows flexible installations on Windows systems. Packages for Ubuntu systems are also maintained.
* '''Import''' w następujących formatach: ASCII lub binarny [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL (Stereo lithography format)] ('''*.stl, *.ast'''), [http://en.wikipedia.org/wiki/Obj OBJ format] ('''*.obj'''), ograniczone wsparcie [http://en.wikipedia.org/wiki/NASTRAN NASTRAN] ('''*.nas'''), siatki [http://en.wikipedia.org/wiki/Open_Inventor Open Inventor] ('''*.iv'''), i natywna siatka jądra FreeCAD ('''*.bms''')


==In development==
* '''Eksport''' w następujących formatach: ASCII lub binary [http://en.wikipedia.org/wiki/STL_%28file_format%29 STL (Stereo lithography format)] ('''*.stl, *.ast'''), [http://en.wikipedia.org/wiki/Obj OBJ format] ('''*.obj'''), ograniczone wsparcie [http://en.wikipedia.org/wiki/NASTRAN NASTRAN] ('''*.nas, *.brl'''), siatka [http://en.wikipedia.org/wiki/VRML VRML] ('''*.wrl'''), natywna siatka jądra FreeCAD ('''*.bms'''), siatka jako moduł Pythona ('''*.py''')


* [[Image:Feature-assembly.jpg|left]] An [[Assembly project|Assembly]] module that allows to work with multiple projects, multiple shapes, multiple documents, multiple files, multiple relationships...{{clear}}
* '''Testowanie i naprawa''' narzędzia do siatek: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.
* [[Image:Feature-CAM.jpg|left]] A [[Cam Module]] dedicated to mechanical machining like milling, and will be able to output, display and adjust [http://en.wikipedia.org/wiki/G-code G code]. This module is currently in planning state.{{clear}}


{{docnav|About FreeCAD|Install on Windows}}
* ''' [[Mesh Scripting/pl|API skryptów Pythona]]'''.


[[Category:User Documentation]]
=== [[Draft Module/pl|Szkicowanie 2D]] ===
<languages/>

* Graficzne tworzenie '''prostej płaskiej geometrii''' jak linie, przewody, prostokąty, łuki lub okręgi na dowolnej płaszczyźnie w przestrzeni 3D

* '''Adnotacje''' jak napisy czy wymiary

* Graficzne '''operacje modyfikacji''' jak przesunięcie, obrót, skalowanie, lustro, odsunięcie lub konwersja kształtu, w dowolnym miejscu przestrzeni 3D

* '''Import''' i '''Export''' w następujących formatach: Autodesk's Drawing Exchange Format ('''*.dxf'''), Open Cad Format ('''*.oca, *.gcad''') e SVG ('''*.svg''')

=== [[Part Module/pl|CAD]] ===

[[Image:Part_BooleanOperations.png|300px|right|An example of union, intersection and difference]]

* [[Part Module/pl|Moduł Part]] zajmuje się wszystkim wokół modelowania CAD i struktur danych CAD. Funkcje CAD są w czasie intensywnego tworzenie (zobacz [[PartDesign_project]] oraz [[Assembly_project]] w [[Development_roadmap|planie rozwoju]]). [[Part Module|Moduł Part]] współpracuje z wysokopoziomowym rdzeniem geometrii [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE].

* '''Parametryczne prymitywy''' jak sześcian, kula, walec, stożek czy torus.

* Komponenty topologiczne '''wierzchołki, krawędzie, przewody''' i '''płaszczyzny''' (poprzez skrypty pythona).

* Modelowanie przez '''obrót''', '''wyciągnięcie''', '''przekroje''' i '''zaokrąglenia'''.

* '''[http://en.wikipedia.org/wiki/Constructive_solid_geometry Operacje Boole'a]''' jak '''suma''', '''różnica''' czy '''iloczyn'''.

* '''Wyczerpująco [[Topological_data_scripting/pl|API skryptów Pythona]]'''.

* '''Import''' i '''Eksport''' w następujących formatach: [http://en.wikipedia.org/wiki/Standard_for_the_Exchange_of_Product_model_data STEP] parts and assemblies ('''*.stp,*.step'''), [http://en.wikipedia.org/wiki/IGES IGES] models ('''*.igs, *.iges''') i BRep ('''*.brp'''), natywnym formacie naszego [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE] jądra CAD.

=== [[Raytracing Module/|Raytracing]] ===

* [[Raytracing Module/pl|Moduł Raytracing]] na eksport geometrii do '''zewnętrznych rendererów''' generujących obrazy o wysokiej jakości. Aktualnie jedynym renderującym silnikiem jest [http://en.wikipedia.org/wiki/POV-Ray POV-Ray]. Obecnie moduł pozwala tworzyć arkusze renderingu i dodawać do niego elementy geometryczny w celu eksportu do pliku POV-Ray.

=== [[Drawing Module/pl|Rysowanie]] ===

* [[Drawing Module|Moduł Drawing]] pozwala na eksport rzutów twoich obiektów 3D do '''dokumentu 2D SVG'''. Pozwala on na tworzenie arkusza 2D z istniejącego szablonu SVG i wypełnienie go rzutami twoich elementów geometrycznych. Arkusz może być zapisany jako plik SVG.

=== [[Cam Module/pl|CAM]] ===

* [[Cam Module/pl|Moduł CAM]] jest dedykowany do obróbki ubytkowej jak np. frezowanie. Ten moduł jest w bardzo wczesnej fazie rozwoju, obecnie skupia się głównie na [http://en.wikipedia.org/wiki/Incremental_sheet_forming Formowaniu Przyrostowym]. Pomimo obecności pewnych algorytmów do tworzenia ścieżki obróbki, narzędzie to nie jest obecnie przydatne dla użytkownika końcowego.


{{docnav/pl|About FreeCAD/pl|Install on Windows/pl}}

{{languages/pl | {{en|Feature list}} {{cn|Feature list/cn}} {{de|Feature list/de}} {{es|Feature list/es}} {{fr|Feature list/fr}} {{it|Feature list/it}} {{ru|Feature list/ru}} {{se|Feature list/se}} }}

[[Category:User Documentation/pl]]

Revision as of 21:35, 29 November 2013

This is an extensive, hence not complete, list of features FreeCAD implements. If you want to look into the future see the Development roadmap for a quick overview of what's coming next. Also, the Screenshots are a nice place to go.

Release notes

Key features

  • A complete Open CASCADE Technology-based geometry kernel allowing complex 3D operations on complex shape types, with native support for concepts like brep, nurbs curves and surfaces, a wide range of geometric entities, boolean operations and fillets, and built-in support of STEP and IGES formats
  • A full parametric model. All FreeCAD objects are natively parametric, which means their shape can be based on properties or even depend on other objects, all changes being recalculated on demand, and recorded by the undo/redo stack. New object types can be added easily, that can even be fully programmed in Python
  • A modular architecture that allow plugins (modules) to add functionality to the core application. Those extensions can be as complex as whole new applications programmed in C++ or as simple as Python scripts or self-recorded macros. You have complete access from the Python built-in interpreter, macros or external scripts to almost any part of FreeCAD, being geometry creation and transformation, the 2D or 3D representation of that geometry (scenegraph) or even the FreeCAD interface
  • Import/export to standard formats such as STEP, IGES, OBJ, STL, DXF, SVG, STL, DAE, IFC or OFF, NASTRAN, VRML in addition to FreeCAD's native Fcstd file format. The level of compatibility between FreeCAD and a given file format can vary, since it depends on the module that implements it.
  • A Sketcher with constraint-solver, allowing to sketch geometry-constrained 2D shapes. The sketcher currently allows you to build several types of constrained geomerty, and use them as a base to build other objects throughout FreeCAD.
  • A Robot simulation module that allows to study robot movements. The robot module already has an extended graphical interface allowing GUI-only workflow.
  • A Drawing sheets module that permit to put 2D views of your 3D models on a sheet. This modules then produces ready-to-export SVG or PDF sheets. The module is still sparse but already features a powerful Python functionality.
  • A Rendering module that can export 3D objects for rendering with external renderers. Currently only supports povray, but is expected to be extended to other renderers in the future.
  • An Architecture module that allows BIM-like workflow, with IFC compatibility. The making of the Arch module is heavily discussed by the community here.

General features

  • FreeCAD is multi-platform. It runs and behaves exactly the same way on Windows Linux and Mac OSX platforms.
  • FreeCAD is a full GUI application. FreeCAD has a complete Graphical User Interface based on the famous Qt framework, with a 3D viewer based on Open Inventor, allowing fast rendering of 3D scenes and a very accessible scene graph representation.
  • FreeCAD also runs as a command line application, with low memory footprint. In command line mode, FreeCAD runs without its interface, but with all its geometry tools. It can be, for example, used as server to produce content for other applications.
  • FreeCAD can be imported as a Python module, inside other applications that can run python scripts, or in a python console. Like in console mode, the interface part of FreeCAD is unavailable, but all geometry tools are accessible.
  • Workbench concept: In the FreeCAD interface, tools are grouped by workbenches. This allows to display only the tools used to accomplish a certain task, keeping the workspace uncluttered and responsive, and the application fast to load.
  • Plugin/Module framework for late loading of features/data-types. FreeCAD is divided into a core application and modules, that are loaded only when needed. Almost all the tools and geometry types are stored in modules. Modules behave like plugins, and can be added or removed to an existing installation of FreeCAD.
  • Parametric associative document objects: All objects in a FreeCAD document can be defined by parameters. Those parameters can be modified on the fly, and recomputed anytime. The relationship between objects is also stored, so modifying one object also modifies its dependent objects.
  • Parametric primitive creation (box, sphere, cylinder, etc)
  • Graphical modification operations like translation, rotation, scaling, mirroring, offset (trivial or after Jung/Shin/Choi) or shape conversion, in any plane of the 3D space
  • Graphical creation of simple planar geometry like lines, wires, rectangles, arcs or circles in any plane of the 3D space
  • Modeling with straight or revolution extrusions, sections and fillets.
  • Topological components like vertices, edges, wires and planes (via python scripting).
  • Testing and repairing tools for meshes: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.
  • Annotations like texts or dimensions
  • Undo/Redo framework: Everything is undo/redoable, with access to the undo stack, so multiple steps can be undone at a time.
  • Transaction management: The undo/redo stack stores document transactions and not single actions, allowing each tool to define exactly what must be undone or redone.
  • Built-in scripting framework: FreeCAD features a built-in Python interpreter, and an API that covers almost any part of the application, the interface, the geometry and the representation of this geometry in the 3D viewer. The interpreter can run single commands up to complex scripts, in fact entire modules can even be programmed completely in Python.
  • Built-in Python console with syntax highlighting, autocomplete and class browser: Python commands can be issued directly in FreeCAD and immediately return results, permitting scriptwriters to test functionality on the fly, explore the contents of the modules and easily learn about FreeCAD internals.
  • User interaction mirroring on the console: Everything the user does in the FreeCAD interface executes python code, which can be printed on the console and recorded in macros.
  • Full macro recording & editing: The python commands issued when the user manipulates the interface can then be recorded, edited if needed, and saved to be reproduced later.
  • Compound (ZIP based) document save format: FreeCAD documents saved with .fcstd extension can contain many different types of information, such as geometry, scripts or thumbnail icons.
  • Fully customizable/scriptable Graphical User Interface. The Qt-based interface of FreeCAD is entirely accessible via the python interpreter. Aside from the simple functions that FreeCAD itself provides to workbenches, the whole Qt framework is accessible too, allowing any operation on the GUI, such as creating, adding, docking, modifying or removing widgets and toolbars.
  • Thumbnailer (Linux systems only at the moment): The FreeCAD document icons show the contents of the file in most file manager applications such as gnome's nautilus.
  • A modular MSI installer allows flexible installations on Windows systems. Packages for Ubuntu systems are also maintained.

In development

  • An Assembly module that allows to work with multiple projects, multiple shapes, multiple documents, multiple files, multiple relationships...
  • A Cam Module dedicated to mechanical machining like milling, and will be able to output, display and adjust G code. This module is currently in planning state.
About FreeCAD
Install on Windows