- Python 99.2%
- Shell 0.6%
- HTML 0.2%
| Code | Initial clean commit at version 0.60.6 | |
| Resources | Initial clean commit at version 0.60.6 | |
| CHANGELOG.md | Initial clean commit at version 0.60.6 | |
| LICENSE | Initial clean commit at version 0.60.6 | |
| package.xml | init version 0.60.6 | |
| README.md | init version 0.60.6 | |
| TECH_MANUAL.md | Initial clean commit at version 0.60.6 | |
| USER_MANUAL.md | Initial clean commit at version 0.60.6 | |
| VERSION | init version 0.60.6 | |
Assembly4 workbench for FreeCAD
Current version 0.60.6
Overview
This assembly workbench allows to create assemblies from standard FreeCAD objects, Part and Body, and place them relative to the assembly and to each-other. The parts in the assembly can be in the same document as the assembly or imported (via App::Link interface) from external documents.
An Assembly4 Assembly is a standard FreeCAD App::Part container, therefore it is compatible and can be manipulated with all standard FreeCAD tools. In particular, it can be inserted into another Assembly to create nested assemblies to any level. It can also contain solids, datum objects and sketches. Assembly4 supports native FreeCAD Part and Body objects, as well as imported STEP files.
Parts are placed relative to each-other by matching features inside them. Specifically, in Assembly4, these features are virtual objects called LCS (for Local Coordinate System, also called datum coordinate system) and are attached using FreeCAD's built-in Part::Attacher and ExpressionEngine. One can think of these LCS as "connectors" between objects. These built-in tools are very fast, efficient and stable allowing very large assemblies with many levels of nested sub-assemblies. Assembly4 is particularly well suited for top-down modeling techniques using MasterSketches, and is mostly immune to the dreaded topological naming problem (TNP). Assembly4 has built-in support for variables, configurations and animations.
Please Note: only Part and Body containers at the root of a document can be inserted. Objects nested inside containers cannot be used directly by Assembly4.
Important Note: Assembly4 recommends to use the stable FreeCAD v0.21 branch, or the new FreeCAD v2.0 series. Although possible, it is NOT RECOMMENDED to use Assembly4 with FreeCAD 1.x series.
Important Note: even though assemblies introduced in the 1.x series of FreeCAD have copied the Assembly4 icon, they are not compatible with either Assembly4 or native FreeCAD App::Part containers.
Installation
Assembly4 has been removed from the Microsoft-owned and USA-based GitHub hosting provider, and is now accessible on the non-profit codeberg.org forge, located in Europe (Germany)
Manual Installation (recommended)
There are currently problems installing Assembly4 through FreeCAD's AddonManager. It is therefore necessary to proceed with a manual install.
In this case, download the Assembly4-main.zip archive from the Codeberg hosting provider to a temporary directory, and extract the Zip archive. Then, remove any existing Assembly4 directory from FreeCAD's local workbench directory (see below), and copy the extracted folder assembly4 into the directory containing all FreeCAD addon modules :
- for Windows :
C:\Users\******\AppData\Roaming\FreeCAD\Mod - for MacOS :
~/Library/Preferences/FreeCAD/Mod/ - for Linux :
~/.local/share/FreeCAD/Mod/
Addon Manager
Assembly 4 is available through the FreeCAD Addon Manager (menu Tools > Addon Manager). It is called Assembly4 in the Addon Repository. If automatic installation fails, please read how to install manually.
Getting Started
Assembly4 uses extensively FreeCAD's built-in Part::Attacher, and you can find documentation following this link. It is recommended to be familiar with this function to get best usage of this workbebch.
Documentation
- Please read the User Manual,
- Or the more in-depth Technical Manual
- You are invited to follow a tutorial for a quick assembly from scratch
- You can learn about the use of a master sketch and animation of assemblies by building a cinematic assembly in one file
- For advanced user, you can read how to use variant links with the tutorial of the Theo Jansen sandwalker
Discussion
Please offer feedback or connect with the developers in the issues section section.
Addon Repository
This addon is hosted on a codeberg repository.
Release notes
Release notes can be found in the CHANGELOG file.
License
Assembly4 is released under the open-source license LGPLv2.1 (see LICENSE)
Support
This tool is an external addon to FreeCAD and is not related in any way to the FreeCAD organisation. You can provide your financial support for the continuing development of this open-source workbench :