Parametric modeling allows you to easily modify your design by going back into your model history and changing its parameters. FreeCAD is open source (LGPL license) and completely modular, allowing for very advanced extension and customization.
FreeCAD reads and writes open file formats such as STEP, IGES, STL and others.
Who is FreeCAD for?
- The home user/hobbyist. Got yourself a project you want to build, have built, or 3D printed? Model it in FreeCAD. No previous CAD experience required. Our community will help you get the hang of it quickly!
- The experienced CAD user. If you use commercial parametric modeling software at work, you will find similar tools in FreeCAD.
- The programmer. Most of FreeCAD’s functionality is accessible to Python. You can easily pilot FreeCAD from scripts, build your own modules or even embed FreeCAD in your own application.
Features
- Rock-solid OpenCasCade-based geometry kernel, allowing complex 3D operations on complex shape types, and supports natively concepts like brep, nurbs, booleans operations or fillets
- Full parametric model allowing any type of parameter-driven custom objects, that can even be fully programmed in python
- Complete access from 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
- 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.
- 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.
- 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.
- a modular MSI installer allows flexible installations on Windows systems. Packages for Ubuntu systems are also maintained.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- Primitive creation (box, sphere, cylinder, etc), offset (trivial or after Jung/Shin/Choi) or boolean operations (add, cut, intersect)
- Testing and repairing tools for meshes: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.
- Graphical creation of simple planar geometry like lines, wires, rectangles, arcs or circles in any plane of the 3D space
- Annotations like texts or dimensions
- Graphical modification operations like translation, rotation, scaling, mirroring, offset or shape conversion, in any plane of the 3D space
- Parametric primitive shapes like box, sphere, cylinder, cone or torus.
- Topological components like vertices, edges, wires and planes (via python scripting).
- Modeling with straight or revolution extrusions, sections and fillets.
- Boolean operations like union, difference and intersection.
What’s New
After more than twenty years of intense and sustained development, the FreeCAD community is proud to announce the release of version 1.0. FreeCAD 1.0.
In software development, version 1 usually means: our software is now stable and ready for “real work”. If you are a FreeCAD user, you know that FreeCAD has been ready for real work for years, and is used in productive, professional activity all over the world already. We in fact were tempted many times in the past to cut to the chase, and call the next version 1.0 already!
But we didn’t. Since the very beginnings, the FreeCAD community had a clear view of what 1.0 represented for us. What we wanted in it. FreeCAD matured over the years, and that list narrowed down to just two major remaining pieces: fixing the toponaming problem, and having a built-in assembly module.
Well, I’m very proud to say those two issues are now solved. Not finished, mind you, not the perfect, bug-free, faultless features we all want, but reaching that level takes time and effort. That will be our job from now on. What we have now is a solid, working, reliable toponaming solution, that is already in action in the Sketcher and PartDesign, and is being progressively extended to everything else. And we have a good and fairly complete assembly workbench that has a shiny new solver that comes, if you can believe it, from “the other FreeCAD”. Read the full release notes to learn more about all this.
This version 1.0 is not a finished product, simply because FreeCAD is not a product. It’s our project, our baby, our passion, our tool. Version 1.0 is our achievement. All of us who worked on it, from the ones who helped raise the project on its feet and are not participating anymore to people who just came to help finishing translations for this release, we worked hard for this, we deserved this, and this 1.0 means: we’ve done it.
I hope you’ll enjoy using this new version! If this is your first contact with FreeCAD, be sure to check the documentation, the manual, the tutorials and everything the community has prepared to help you get started! ~ Yorik
With the release of version 1.0 we wanted to provide an executive summary as a quicker read of the Version 1.0 release notes. The full Version 1.0 release notes are available on the FreeCAD Wiki.
Highlights:
- Following a long development process, Realthunders Topological naming problem mitigation algorithm has been incorporated into FreeCAD Version 1.0. This algorithm offers resiliency against topology changes in a parametric chain and a vast improvement of a model’s stability.
- FreeCAD has a new included Assembly workbench which uses the brand-new Ondsel solver.
- A new logo was chosen by the community members, from community contributed proposals.
- The user interface has received huge improvements.These include rotational centre indicators, selection item filters, on-model task panel and combo view modes, universal measuring tools, brand-new dark and light themes and much more.
Other key improvements:
- There are multiple changes and improvements to the Core system. The vector API can now be used in expressions, the new property container App::VarSet allows the user to create design variations, along with many more improvements to the Python editor and Python API.
- A new, streamlined and faster start page replaces the Start Workbench.
- The Arch workbench has been merged with BIM and is now the BIM workbench with lots of new features and improvements added including support for native IFC objects.
- The Path workbench has been renamed the CAM workbench with lots of new features including a new CAM simulator.
- The Draft workbench has a long list of improvements. Grid behaviour has been optimised and appearance options have been increased with many of the Draft workbench tools and approaches receiving extra functionality.
- The FEM workbench has had a large overhaul with many small but useful changes to tools and functions. The language used on the FEM workbench has been developed to be closer to industrial standard terms.
- The material handling system has been completely overhauled and a standard system is now in place for further development.
- The Part workbench has numerous improvements with the Part Scale and Part Mirror tools being two obvious improved tools.
- The Part Design workbench has received many fixes and additional functionality within the revolution and groove features, as well as significant changes to the Pad tool making it possible to end extrusions at multiple faces and more.
- The Sketcher workbench has a huge amount of changes and increased functionality and UI improvements. These include “dimensioning on the go”, contextual Dimension constraint tools, a new Offset tool and more. Cut and Paste including constraints is now available within and across sketches.
- The TechDraw workbench has numerous new tools: Snapping, a CosmeticCircle tool, an AddOffsetVertex tool and many others.
Complete release notes here.
+ There are no comments
Add yours