Feature list

From FreeCAD Documentation

This is an extensive, hence not complete, list of features FreeCAD implements. If you want to look into the future see the Development roadmap.

General features

Base

  • Run as GUI Application with 3D Viewer
  • Run as Command line Version with low memory footprint usable as Server
  • Run as a Python module
  • Plugin/Module framework for late loading of features/data-types
  • Built-in Scripting
  • Modular MSI Installer

Document

  • Undo/Redo framework
  • Transaction management
  • Parametric associative document objects
  • Compound (ZIP based) document save format

Gui

  • GUI is fully customizable/scriptable
  • Workbench concept
  • Built-in python console
  • User interaction mirroring on the console
  • Full macro recording & editing

Features in Modules

As the functionality of FreeCAD is separated in Module which deal with special data types and applications, here is the the list of application/data-type depended features:

Meshes

The Mesh Module handles all kind of meshes.

Modeling

Modeling features:

  • offset (trivial or after Jung/Shin/Choi)
  • Boolean operations (add, cut, intersect)
  • Primitive creation

IO

The mesh module features following:

Imports:

Exports:

Evaluation and Repair

  • Tests solid
  • Tests non two-manifold
  • Tests self intersections
  • Hole filling
  • Uniform orientation

CAD

The Part Module deals with everything around CAD-modeling and the CAD data structures.

An example of union, intersection and difference
An example of union, intersection and difference

Drawing

The Drawing Module is in place for bring the 3D world on a paper/drawing. It also is intended for reporting to paper or web.


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.

Raytracing

The Raytracing Module brings all kind of shapes to renderers (like PovRay).