Feature list/cs

Toto je obsáhlý, i když ne kompletní, seznam charakteristických vlastností implementace FreeCADu. Chcete-li se nahlédnout do budoucnosti, podívejte se na Směry vývoje na rychlý přehled o tom co se očekává. Zajímavé jsou i Screenshoty.

Poznámky k verzím

 * Release 0.11 - March 2011
 * Release 0.12 - December 2011
 * Release 0.13 - January 2013
 * Release 0.14 - March 2014

Klíčové vlastnosti

 * [[Image:Feature1.jpg|left]] 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


 * [[Image:Feature3.jpg|left]] 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


 * [[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 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


 * [[Image:Feature5.jpg|left]] 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.


 * [[Image:Feature7.jpg|left]] 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.


 * [[Image:Feature9.jpg|left]] A Robot simulation module that allows to study robot movements. The robot module already has an extended graphical interface allowing GUI-only workflow.


 * [[Image:Feature8.jpg|left]] 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.


 * [[Image:Feature-raytracing.jpg|left]] A Rendering module that can export 3D objects for rendering with external renderers. Currently only supports povray and LuxRender, but is expected to be extended to other renderers in the future.


 * [[Image:Feature-arch.jpg|left]] An Architecture module that allows BIM-like workflow, with IFC compatibility. The making of the Arch module is heavily discussed by the community here.

Základní charakteristiky

 * FreeCAD je multi-platformní. Běží a chová se přesně stejně na platformách Windows, Linux i Mac OSX.


 * FreeCAD je plně GUI aplikace. FreeCAD má kompletní grafické uživatelské rozhraní (GUI) založené na skvělém frameworku Qt se 3D prohlížečem založeným na Open Inventor, který umožňuje rychlé zobrazování 3D scén a velmi dostupné grafické zobrazování scén.


 * FreeCAD běží také jako aplikace z příkazové řádky, s nízkými paměťovými nároky. V módu příkazové řádky běží FreeCAD bez svého rozhraní, ale zachovává si všechny konstrukční nástroje. Může být využit například jako server k vytváření obsahu pro jiné aplikace.


 * FreeCAD může být importován jako modul Pythonu, uvnitř jiných aplikací, které mohou spouštět skripty Pythonu nebo na Pythonovské konzoli. Stejně jako v konzolovém módu není dostupné rozhraní, ale jsou dostupné všechny konstrukční nástroje.


 * Koncept pracovní plochy: V rozhraní FreeCADu jsou nástroje seskupovány do pracovních ploch. Ty umožňují zobrazovat pouze nástroje, které se budou používat k provedení určité úlohy při udržení pracovní plochy uspořádané a dobře reagující a dovolují rychlé načítání aplikace.


 * Plugin/Module framework pro dodatečné načítání dalších vlastností nebo datových typů. FreeCAD je rozdělen na jádro aplikace a moduly, které jsou načítány podle potřeby. Téměř všechny nástroje a konstrukční typy jsou uloženy v modulech. Moduly se chovají jako pluginy a mohou být přidávány nebo odebírány z existující instalace FreeCADu.


 * Parametrické asociativní objekty documentu: Všechny objekty v dokumentu FreeCADu mohou být definovány pomocí parametrů. Tyto parametry mohou být za běhu měněny a kdykoliv přepočítávány. Ukládány jsou i vztahy mezi objekty, takže úprava jednoho objektu modifikuje i závislé objekty.


 * Vytváření parametrických primitiv (krychle, koule, válec, atd.)


 * Grafické modifikační operace jako jsou transformace, rotace, změna velikosti, zrcadlení, posun (triviální nebo podle Jung/Shin/Choi) nebo tvarové konverze v jakékoliv rovině 3D prostoru.


 * Logické operace (sjednocení, rozdíl, průnik)


 * Gragické vytváření jednoduchých rovinných konstrukcí jako jsou přímky, dráty (lomené čáry), obdélníky, oblouky nebo kružnice v jakékoliv rovině 3D prostoru


 * Modelování přímých nebo rotačních vysunutí, řezů a zaoblení.


 * Topologické komponenty jako jsou vrcholy, hrany, dráty a roviny (pomocí skriptování v Pythonu).


 * Testovací a opravné nástroje pro sítě: test na těleso, non-two-manifolds test, test na protínání sama sebe, uzavírání mezer a stejná orientace.


 * Popisky jako texty nebo kóty


 * Undo/Redo framework: Všechno je undo/redo (kroky zpět nebo vpřed při práci s objekty), s přístupem so zásobníku undo (dříve provedené operace), takže je možné udělat najednou více kroků zpět.


 * Transakční management: Zásobník undo/redo ukládá celé transakce dokumentu a ne jednotlivé akce, což umožňuje každému nástroji definovat přesně to co se musí undone or redone (uděláno při krocích zpět nebo vpřed).


 * Zabudovaný skriptovací framework: FreeCAD zahrnuje zabudovaný interpreter Pythonu a API, které pokrývá téměř všechny části aplikace, rozhraní, konstrukce a reprezentace konstrukcí ve 3D prohlížeči. Interpreter může spouštět od jednotlivých příkazů až po komplexní skripty, ve skutečnosti mohou být i celé moduly programovány kompletně v Pythonu.


 * Zabudovaná konzola Pythonu se zvýrazněnou syntaxí, automatickým doplňováním a prohlížečem tříd: Příkazy Pythonu mohou být zadávány přímo ve FreeCADu a ihned vrací výsledky, dovolující autorům skriptů testovat funkcionalitu za běhu skriptu, prohlížet obsah modulů a snadno zjišťovat interní údaje FreeCADu.


 * Odraz uživatelského dialogu na konsoli: Všechno co uživatel udělá v rozhraní FreeCADu provádí kód Pythonu, který může být tištěn na konzoli a zaznamenáván do maker.


 * Plné zaznamenávání & editování maker: Výstupy Pythonovských příkazů, které vycházejí z uživatelské činnosti mohou být zaznamenávány, podle potřeby upravovány a ukládány pro pozdější použití.


 * 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. The .fcstd file is itself a zip container, so a saved FreeCAD file has already been compressed.


 * Plně upravitelné/skriptovatelné uživatelské grafické rozhraní GUI (Graphical User Interface). Rozhraní FreeCADu založené na Qt je zcela přístupné přes interpreter Pythonu. Kromě jednoduchých funkcí které FreeCAD sám poskytuje pracovním plochám je přístupný celý framework Qt, který umožňuje libovolné operace v GUI, jako je vytváření, přidávání, usazování, úpravy nebo odstraňování pomůcek a pruhů nástrojů.


 * Vytváření ikon dokumentů (dostupné zatím pouze na systémech Linux): Ikony dokumentů FreeCADu ukazují obsah souborů ve většině souborových manažerů jako je třeba Nautilus v GNOME.


 * Modulární MSI installer umožňuje flexibilní instalace na systémech Windows. Udržovány jsou také balíčky pro Ubuntu.

Ve vývoji

 * [[Image:Feature-assembly.jpg|left]] Modul Assembly, který umožňuje práci s více projekty, více tavry, více dokumenty, více soubory, více vztahy...


 * [[Image:Feature-CAM.jpg|left]] Modul Cam určený pro mechanické obrábění jako je frézování, který bude generovat, zobrazovat a upravovat G code. tento modul se zatímve stavu plánování.