Lattice Workbench is a plug-in module/addon (workbench) for FreeCAD.
It's purpose is working with placements and arrays of placements. It functions similar to what an Assembly workbench does, but with emphasis on arrays. There are no constraints and relations, there are just arrays of placements that can be generated, combined, transformed, superimposed, and populated with shapes.
Ever wondered how to create a protractor with FreeCAD? That's the aim of this workbench (including tick labeling). Also, exploded assemblies can be made with this workbench.
Additionally, the workbench features a few general-purpose tools, such as parametric downgrade, bounding boxes, shape info tool, and tools for working with collections of shapes (compounds).
One of the big design goals of the workbench is being as parametric as possible.
Follow through the Basic Tutorial to get the basic concept of Lattice2.
Take a look at other examples in the Gallery of screenshots.
Let's have a glance over the most important capabilities that the workbench adds to FreeCAD:
Lattice2 was created at the moment when breaking changes needed to be made to Lattice, but there were a few things made with Lattice. So, it was decided to keep the workbench in that time's state indefinitely as version 1.0, and start development of a new version.
The goal was to allow editing old projects made with Lattice v1, by having both versions installed at the same time. So a new repository was started, and all the files were renamed to start with 'lattice2' or otherwise differ from those of Lattice v1.
Lattice3 (if ever) will be a standalone repository, for the same reasons.
v0.16.5155
v0.17+
The workbench is OS independent, it should work on any system FreeCAD can be run on. If you find that it doesn't - that is a bug. Please open an ticket in the issue queue.
Note: Lattice2 is written in FreeCAD's Python, and must be run from within FreeCAD. It requires no compilation, and can be installed by copying the repository to a special location.
There are several options to automate installation of this workbench.
Note: Any of the above options will require a restart of FreeCAD in order for the workbench to function.
After installing the workbench and restarting FC, Lattice2 should now appear in the workbench dropdown menu. It will be listed down towards the bottom of list. Now, you can familiarize yourself with Lattice2 through the Basic Tutorial.
Side Note: If you want to install the workbench for development, git clone
the repository wherever you like, and make a symlink in where FreeCAD can pick it up as an add-on.
The workbench is stable. I will take care to not make breaking changes, and some new functionality may keep coming.
If you make your FreeCAD project using Lattice2, all further changes to the project must be done with Lattice2 installed, even if you don't touch the relevant features. Otherwise, the parametric features in the project will lose their bound functionality, and will not recompute, even if you install Lattice2 later. This is the case for all add-ons in FreeCAD, not just Lattice2.
For Documentation see the Lattice2 wiki on Github. As the word "wiki" suggests, you can help by editing the documentation.
If you need help on something specific, you can ask a question on FreeCAD forum (there is no Lattice forum yet...). You can also ask me directly. Note: If you post to the forum, please add this to your post so that I get a notification:
[quote=DeepSOIC user_id=3888]Ding![/quote]
NEW!: Github Discussions for Lattice2 are enabled, you are welcome to ask questions and post random thoughts there!
If you have found a bug or are requesting a new feature, please first check to see if it has been previously reported already on the Lattice2 Github repo issue tracker. If not, feel free to open a ticket.
If you have fixed a bug or implemented a new feature you think suits the workbench, feel free to make a pull-request on Github.
Lattice workbench is licensed under LGPL V2, just like FreeCAD. For more info, see copying.lib file in this repository.