Download FreeCAD

With parametric modeling, you can easily change your design by going back into your model history and changing its parameters. FreeCAD is open source (LGPL license) and has a completely modular structure, which enables very advanced expansion and customization.

FreeCAD reads and writes open file formats such as STEP, IGES, STL and others. Continue reading…

Who is FreeCAD for?

  • The home user / hobbyist. Do you have a project you want to create, build, or 3D print? Model it in FreeCAD. No previous CAD knowledge required. Our community will help you to keep track of things quickly!
  • The experienced CAD user. If you use commercial parametric modeling software at work, you can find similar tools in FreeCAD.
  • The programmer. Most of the features of FreeCAD are available for Python. You can easily control FreeCAD from scripts, create your own modules or even embed FreeCAD in your own application.


  • A solid OpenCasCade-based geometry core that enables complex 3D operations for complex shape types and supports native concepts such as Brep, Nurbs, Boolean operations or fillets
  • Full parametric model that allows any kind of parameter driven custom objects that can even be programmed entirely in Python
  • Complete access by interpreters, macros or external scripts integrated in Python to almost every part of FreeCAD, e.g. B. Creation and transformation of geometries, 2D or 3D representation of this geometry (scene graph) or even the FreeCAD surface

More functions:

  • FreeCAD is cross-platform. It runs and behaves the same way on Windows Linux and Mac OSX platforms.
  • FreeCAD is a complete GUI application. FreeCAD has a full graphical user interface based on the famous Qt framework, with a 3D viewer based on Open Inventor that allows for fast rendering of 3D scenes and very accessible display of scene diagrams.
  • FreeCAD also runs as a command line application with a low memory footprint. In command line mode, FreeCAD runs without an interface, but with all geometry tools. For example, it can be used as a server to create content for other applications.
  • FreeCAD can be imported as a Python module, into other applications that can run Python scripts, or into a Python console. As in console mode, the interface part of FreeCAD is not available, but all geometry tools are accessible.
  • Plugin / module framework for late loading of features / data types. FreeCAD is divided into a core application and modules that are only loaded when needed. Almost all tools and geometry types are stored in modules. Modules behave like plugins and can be added to or removed from an existing installation of FreeCAD.
  • Integrated scripting framework: FreeCAD has a built-in Python interpreter and an API that covers almost every part of the application, the user interface, the geometry and the representation of this geometry in the 3D viewer. The interpreter can execute single commands up to complex scripts. In fact, entire modules can even be programmed entirely in Python.
  • A modular MSI installation program enables flexible installations on Windows systems. Packages for Ubuntu systems are also managed.
  • Undo / Redo Framework: Everything is undo / redo, with access to the undo stack so multiple steps can be undone at the same time.
  • Transaction Management: The Undo / Redo batch stores document transactions and not individual actions, so each tool can define exactly what needs to be undone or redone.
  • Parametric Associative Document Objects: All objects in a FreeCAD document can be defined by parameters. These parameters can be changed during operation and recalculated at any time. The relationship between objects is also saved, so changing one object also changes the dependent objects.
  • Composite (ZIP-based) document storage format: FreeCAD documents saved with the .fcstd extension can contain many different types of information, such as: B. Geometry, scripts, or thumbnail icons.
  • Fully customizable / scriptable graphical user interface. FreeCAD’s Qt-based interface can be fully accessed via the Python interpreter. Apart from the simple functions that FreeCAD itself provides for workbenches, the entire Qt framework is also available so that all operations can be carried out on the GUI, e.g. B. creating, adding, docking, changing or removing widgets and toolbars.
  • Workbench concept: In the FreeCAD interface, tools are grouped according to workbenches. This way, only the tools that are used to perform a specific task can be viewed. This keeps the work area clear and responsive, and the application loads quickly.
  • Integrated Python console with syntax highlighting, autocompletion and class browser: Python commands can be issued directly in FreeCAD and return results immediately, so that script authors can test the functionality on the fly, explore the contents of the modules and easily learn more about FreeCAD internals can experience.
  • Mirroring user interaction 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 and Editing: The Python commands issued when the user manipulates the user interface can then be recorded, edited if necessary, and saved for later replay.
  • Thumbnailer (currently Linux systems only): The FreeCAD document icons show the contents of the file in most file manager applications such as Gnomes Nautilus.
  • Primitive creation (box, sphere, cylinder, etc.), offset (trivial or according to Jung / Shin / Choi) or Boolean operations (adding, cutting, cutting)
  • Mesh testing and repair tools: solid state test, non-two-manifold test, self-crossing test, hole filling and even alignment.
  • Graphical creation of simple planar geometries such as lines, wires, rectangles, arcs or circles in any plane in 3D space
  • Annotations such as texts or dimensions
  • Graphic change processes such as displacement, rotation, scaling, mirroring, offset or shape conversion in any plane in 3D space
  • Parametric primitive shapes like box, sphere, cylinder, cone or torus.
  • Topological components such as corner points, edges, wires and planes (via Python scripting).
  • Modeling with straight or revolution profiles, cuts and fillets.
  • Boolean operations such as union, difference, and intersection.

What’s new:

  • [Bug] FreeCAD menus and buttons very slow (Linux version) under ChromeOS (GPU acceleration must be activated) (Kunda1)
  • [Bug] invalid syntax when opening document 0004194: [Bug] Inner windows cannot be resized when a style sheet is selected.
  • [Bug] OpenSCAD causes Multifusion to fail with some empty translations
  • [Feature] Dependency Diagram: Pan
  • [Patch] correct non-standard use of the sed-i argument in cMake / FindPySide2Tools.cmake (Kunda1)
  • [Bug] Recalculation failed (SIGSEGV) after editing a cell in a table
  • [Bug] “2nd length” in “Pocket parameters” shows an incorrect value if a negative f (x) was defined
  • [Patch] Part.CompoundTools.Explode.explodeCompound accesses a property of a sometimes null object with an error (Kunda1).
  • [Bug] OpenSCAD WB symbol is missing in 2 scenarios (wmayer)
  • [Bug] Openscad file cannot be opened * .scad (keithsloan52)
  • [Bug] Freecad app window not correctly placed on the screen
  • [Bug] [BIM] Nudge tool text covered by overlapping arrow and nudge custom value, misspelled “ew nudge value” (Kunda1)
  • [Bug] Spreadsheet Workbench – Import / Export Error (openBrain)
  • [Bug] The gesture navigation style triggers additional events under MacOS (DeepSOIC).
  • [Feature] Settings categories are not displayed if a particular workbench has not been visited

Source link :