FreeCAD is a tool that is a parametric 3D modeler. Parametric modeling allows you to easily change a drawing by navigating backwards in the model history and changing the parameters.
It is currently in version 0.15 that was released on April 8, 2015 and is available for Windows, Ubuntu, MAC OSX and Fedora. FreeCAD can be downloaded from this site.
Being a multi-platform tool it allows to be used by different user profiles. From the home user to the experienced CAD user, the programmer and even the teacher.
The main functionalities of the tool are:
- An “Open CASCADE” technology allowing complex 3m 3D operations in various types of shapes.
- A complete parametric model. All FreeCAD objects are natively parametric, which means that their shape is based on properties or dependencies of other objects. New objects can be easily added and can even be programmed in Python.
- Modular architecture that allows modules (plugins) to add functionality based on the application. These extensions can be as complex as new applications programmed in C ++, simple scripts in Python or macros recorded.
- Import and Export to standard formats such as STEP, IGES, OBJ, STL, DXF, SVG, DAE, IFC, OFF, NASTRAN and VRML in addition to the native Fcstd format.
- A sketcher with restriction resolution. Allowing sketchs with 2D constraints.
- A simulation of Robos that allows to study the movements of the same ones.
- Drawing sheets that allow you to place 2D views of 3D models on sheets. These modules allow you to export to SVG or PDF.
- A “Render” module that allows the export of 3D objects to be rendered by external “renderers”. Currently only povray and LuxRender are supported.
- An architecture module that allows the implementation of workflows type BIM with IFC compatibility.
- Multi-platform: Supports Windows, Linux and MAC OSX.
- Application with a GUI based on framework Qt with a 3D viewer based on Open Inventor allowing the fast rendering of 3D scenes.
- It has command line support. Allows it to run with server to prepare content for other applications.
- Can be imported as a Python module inside other applications that can execute Python _scripts.
- Concept of Workbench: in the interface of FreeCAD the tools are grouped by workbenches.
- Framework of Modules / Plugins that allow the late loading of functionalities / type of data.
- Objects that can be defined by parameters.
- Creation of parametric primitives.
- Graphical modification operations such as translation, rotation, mirror scaling, displacement or shape change, in any 3D plane.
- Boolean operations (unions, differences and intersections).
- Graphical creation of simple planar geometry like lines, wires, rectangles, arcs, circles in any plane 3D.
- Modeling with extrusions, sections or ties.
- Topological components such as vertices, edges, wires and planes (through scripts in Python).
- Knit testing and repair tools: solids testing, sealing tests, intersection tests, hole filling and uniform orientation.
- Annotations such as texts and dimensions.
- Undo _Framework _ Redo.
- Transaction management.
- Embedded scripts_Framework: FreeCAD has a built-in Python interpreter, and an API that covers almost every aspect of the application, interface, geometry, and presentation in the 3D viewer.
- Python Console.
- Mirrored user interaction on the console: everything done on the interface is displayed as a command on the console.
- Full support of Macros for recording and editing.
- The native type of recording format is ZIP based and stores different types of information such as geometry, scripts and icons thumbnail.
- The entire interface is configurable and scriptable.