Patterning a Hexgrid Across a Polysurface

Hi,

I am exploring with lunchbox pattern generation, more specifically hexagon cells. How do I create these hexagon cells that are equal sizes across all surfaces? Another issue I am having trouble with is how do I make sure the pattern gets “cut off” with the boundary of the shape?

Essentially creating a mullion frame with 150 thickness for this pattern.

Hexagon glass.gh (7.2 KB)

Pattern Exploration.3dm (76.9 KB)

A possible solution to have hexagons of equal size.

Hexagon glass a.gh (15.2 KB)

Hexagrid Across a Polysurface VR1.gh (33.0 KB)

You’ll have to fix the control points of the ruled surface.

ShapeMap.

Hexagon glass b.gh (14.1 KB)

I don’t feel like this is complicated enough to warrent ShapeMap:

Hexgrid Across a Polysurface VR2.gh (22.5 KB)

but I also don’t know how to automatically detect the surface orientations in my solution :confused: So if anybody has any ideas on how to do that?

Also because ShapeMap, in this case, does not work correctly.

Hexagon glass c.gh (15.4 KB)

How about this one?
ShapeMap.gh (24.6 KB)

I wouldn’t know. I always assumed ShapeMap was reserved for more complex (curved) geometry. Perhaps this would be an opportunity for me to look into how it works.

This is my solution stripped of the measures taken to rotate the grid and ensure regular hexes… and somehow made to work despite the source and target geometry sources having different orientations?.. How?

I see the two copies of Unroll Brep, once with, and once without Join = “true”. I feel like this has some part to play in it, but I still don’t understand.

Hey, this shape looks familiar.

I’ve downloaded Shape Map as a prompt from missing plugins. That didn’t work. Then I installed from the Package Manager, and still no luck?

Ok.

But with Rhino 9.

It does, doesn’t it…

In fact, it doesn’t make sense like that.
I had made the definition in Rhino7, but when I loaded the file into Rhino8 I noticed that Join doesn’t work so I left it as it was and added Deconstruct Brep.

The answer to my question, is that you provided Sporph with a basepoint, which I’m still scratching my head over.

But I have the same problem I had with Rhino8 ShapeMap.

You can fix it with a smaller Length value. FYI.

ShapeMapR8.gh (25.8 KB)