Unfolding multiple elements and arranging them in a grid

I have a series of hexagons that I lofted to create pyramidal extruded surfaces. I want to unfold them and create separate surface development for each of the pyramidal extrusion. The trouble I am facing is that the resultant surface development creates multiple polygons for each single pyramid and I am not able to figure out how to treat individual surface development as a single entity so that they can be arranged on a grid.

Please help

HEXAGONS UNFOLDING.gh (12.5 KB)

Another query is, that in order to save on material and prevent wastage, how can I arrange the result surface developments on one single sheet?

image

1 Like

Set boolean toggle to “True” for lunchbox Unroll Brep would help.


HEXAGONS UNFOLDING_re.gh (12.7 KB)

1 Like

Thanks a lot friends…I want to mark both answers as solutions. Currently I can pick only one. Any way to overcome that?

Moreover, in order to save on material and prevent wastage, how can I arrange the result surface developments on one single sheet?

HS_Kim for sure, mine was quick solution, not considering the geometry.

Have a try opennest plugin.

2 Likes

Okay , I tried. This plugin is resulting in lot of overlapped geometry. What to do?

HEXAGONS UNFOLDING.gh (14.1 KB)

HEXAGONS UNFOLDING _Nesting_re.gh (18.3 KB) Please download the example files and take a closer look through them.

2 Likes

Thanks!..I just increased the seed in my original file after comparing with yours, and also flattened the geometry which resulted in properly organized nesting. What is the function of seed exactly?

Another query, the text tag 3d component of grasshopper creates thick text which will not be suitable for engraving on respective components. Any way you can suggest to write text composed only of thin linear strokes?

I am using Bowerbird plugin for engraving letters and it works.

Seed are used to randomize the nesting. Most of the time nesting can’t explore all the possibilities, so it begins by one piece, then another … Seed enable to test differents orders

1 Like

Oh. I see. Thanks! I just got more ideas and thinking about how complex these geometries can get. Currently all my edges are equal for all the hexagons. Now sometimes, edges may get unequal and the polygons may share edges. Any way to label adjacent edges which are shared by polygons?

Unroll from OpenNest allows to put curves, points on unrolled Brep. You could use that for the adjency engraving.

Unroll from OpenNest allows to put curves, points on unrolled Brep. You could use that for the adjency engraving.

How to label common edges?

It is not so simple, so you will have to find the edges you want (bottom edges) then find which faces share this edge, then apply a text on this face, orient the way you want … It is quite a long job. But all ressources are available. From my own experience when you want to make things it is better to understand most of the process and you are a bit on you own, so the best is to try to do it on your own.
Because there are many details to deal with :
limit of the engraving process
side of the cut, did you check the orientation of you loft and the orientation on the plane ? You need to decide which side will be on top
Also material have physical thickness so modeling with 0 thickness is not good for all purposes

Long … long list of parameters you have to take into account.

1 Like

What is there to check in it? The loft is oriented from bottom hexagon towards the top hexagon. All the hexagons are oriented as a grid originally. Then the nest plugin orients them automatically, in a random manner based upon the spacing of individual unfolded geometry. What type of orientation needs to be checked?

Loft here are oriented in a “standard” way. Direction (use Dir command in Rhino) is like that
image

But all the surfaces from the Unroll component have not the same direction


So it could be OK or NOK depend on what you need. If not OK you will have to flip some of the shapes before the nesting.

For my own work I have done a Mesh Unroller that keeps direction on Z direction (not -Z).