Assembler 1.2 update

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 (where you’ll find a link to the updated example files).

New Features

  • 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:
    bake Heuristics Display

  • 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

  • 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
  • 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.


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)!


Of course I overlooked a small bug in the Heuristics Display baking and had to push a 1.2.1 release yesterday… :sweat_smile:

1 Like