Assembler 1.2 update
Assembler was announced here about 6 months ago:
Here’s the first update with new features, implementations and bug fixes.
You can update via the PackageManager or grab it from https://www.food4rhino.com/en/app/assembler (where you’ll find a link to the updated example files).
New Features
Added
-
Weights are now active: in case of equal computed value for two or more candidates, a factor consisting of the sum of AssemblyObject, Handle and Rule weight is compared, highest weight prevails. Examples files are provided in folder 04 - expert.
-
The HeuristicsDisplay component now has proper rendered geometries when Rhino view is in Rendered mode;
It can also bake Collision Meshes, rules texts and XData geometries in dedicated Layers:
-
AssemblyObjects can now be cast directly into the following types (using this field/property):
- Mesh (Collision Mesh)
- Plane (Reference Plane)
- Point (Reference Plane Origin)
- Vector (Direction)
- Number (Weight)
- Integer (Type)
- Boolean (World Z-lock status)
NOTE: due to the Grasshopper default casting overhead, using the Post-Processing Extract components is faster than casting as the amount of AssemblyObjects grows
Changed
- ExtractHandles now exposes the following additional outputs:
- Handle occupancy
- neighbour Object index
- neighbour Handle index
- DisplayAssemblage now exposes an additional output for values computed to generate colors in the following modes:
- Z value
- Connectedness
- Local Density
- default weight for Rules is now 1 (previously was 0): this is for better coherence (it aligns with default weights for AssemblyObjects and Handles) and to implement weight-based strategies (see Added section)
- AssemblyObject preview now includes Handles (different color for each type) and Direction Vector
- baking an AssemblyObject will bake the Collision Mesh ad L polylines for its Reference Plane and each of its Handles
Fixed
- several minor (yet annoying) bugs in ExogenousSettings, DisplayAssemblage, and DeconstructField components
- improved error trapping messages on several components, especially in the AssemblerEngine
For a detailed list, see the changelog.
Examples
Updated example files include several new Post-Processing examples.
- One example automatically detects levels (including a margin for different heights, i.e. in the case of pedestals or pits) and extracts their horizontal faces (far from a perfect extraction, but it gives a good approximation):
- Another example can generate and export plans for all automatically detected levels of an assemblage:
- There is also a section that documents how to port and navigate your assemblages in real-time in Unity:
There are many more! Feel free to explore them all!
If you are doing something with Assembler, please use the #madewithassembler hashtag (and let me know if you want)!