NGon 3.0.0 - Update for Wood-wood connections

I made a small update for NGon 3.0.0 version for developing further wood-wood connections (Joint tab).
It is an update for the previous 2.4.5 joinery-solver version, that contains a better functionality, rewriting and structuring larger part of code. Most of the components employ Rhino 6 NGon mesh face grouping to build adjacency graphs and finding the right connection topology.

The images below come from the new components from Joint subcategory including some basic sample files. I am planning to make proper tutorials to make the introduction to joinery in beams and plates and post it in this thread. The code is developed as part of IBOIS, EPFL studies Laboratory for Timber Constructions ‐ EPFL

There are four different ways how joints could be displayed and cut from the element volume.
Polyline methods remains the fastest one, mesh boolean is the most robust when volumetric cutting is needed and BRep boolean is also optimized to perform cuts in a separate thread:

The overall idea in the Joinery Solver comes from Tiling method where a Unit connection is oriented to connection zone. There are more peculiarities how to this method was made more effective. I would like to thank @DanielPiker who showed the principle of ChangeBasis Rhino transformation that applies to larger than this timber joinery set. Interestingly, this idea extrapolates to timber plates not only beam elements in quite fast and efficient way.


is there an example like this in the zip file? i don’t think i saw one. i have to do these a lot. thanks for the add in!

image (19.8 KB)

Click Solver to True in order to create joints.


thank you so much!

1 Like

Thank you. This is amazing! Can I report some bugs somewhere with the new joint tools?

Yes write me a PM.
It would be good to get a proper feedback.

Hello Petras,
great work, very interesting!
Is there a possibility to learn more about the graph model that you use to model the assembly? Do you store the shapes of parts and joins via attributes of the nodes/edges or is the model just the topology?
Thank you!

The joints is a list of indices pointing to each element. It has additional attributes of connection zones and joint geometry. So there are two main classes: elements and joints, and for sure each class groups a series of subclasses and properties for indexing (graph), 3D data for joints (Tiles), and fabrication tool-paths (Cuts). So I can work with a graph as nodes and edges, where the dual of the element-to-element graph is a joint graph. To answer the question, you can see it as a typical node-to-node graph with additional geometry attributes.