realthunder / FreeCAD_assembly3

Experimental attempt for the next generation assembly workbench for FreeCAD
GNU General Public License v3.0
885 stars 74 forks source link

Assembly3 Workbench for FreeCAD

Patreon Liberapay paypal

Assembly3 workbench is yet another attempt to bring assembly capability to FreeCAD. There is the original unfinished Assembly workbench in FreeCAD source tree, and Assembly2, which is an inspiration of this workbench, and with some code borrowed as well. The emphasis of Assembly3 is on full support of nested and multi-document assemblies.

You can find more details at Assembly3 wiki.

Update: I have added a donation button. Feel free to show your support, and thanks in advance!

Installation

Assembly3 workbench works with FreeCAD version 0.19 or higher. You can also try my fork of FreeCAD which bundles everything and with lots of extra enhancement to the official FreeCAD release. If you are using Linux, you can also choose the snap build which is updated more frequently.

If you want to build everything yourself, please check out the build instruction here.

~~If you are using one of the official FreeCAD pre-built images, then Assembly3 is already bundled inside. But it may not always contain the latest version.~~ To install the latest version, just clone this repository to your FreeCAD user module directory. Depending on which platform you are on, the directory is located at

If you prefer zip file over git clone, you can download it here. and extract the archive to the above directory.

If you are not using any pre-built FreeCAD image, then in addition to clone the repository here, you'll also need to install the SolveSpace solver Python module.

For Windows, open a command prompt window, change directory to your FreeCAD installation directory, e.g. cd c:\Program Files\FreeCAD\bin. And install the solver by running command python.exe -m pip install py_slvs

IMPORTANT: For Linux and MacOSX, simply use your system Python to install the the solver, e.g. Python3 -m pip install py_slvs. The workspace will not function properly without a solver installed!

Design

The design of Assembly3 (and the fork of FreeCAD) partially follows the unfinished FreeCAD Assembly project plan, in particularly, the section Infrastructure and Object model. You can find more details at here.

Usage

Before starting to use the Assembly3 workbench, it is necessary for the user to be familiar with a few new concepts introduced by the forked FreeCAD.

You can find instructions on common operations along with some tutorials at here.

Comparing with Assembly2

This section is for those who have used Assembly2 before. Here is a brief list of comparison between Assembly2 to Assembly3.