How to use brep edges as voronoi boundary

Hello, I would like to have different voronoi patterns on a surface divided into 4 points surfaces.
I want the voronoi to be on each face and use the brep edges as boundaries.
What am I doing wrong?

I’m quite new with grasshopper.

Here the grasshopper file
new (40.6 KB)

I’m not in front of Rhino at the moment, but I kind of remember the Boundary input of a 2D Voronoi components wants a Rectangle to be provided (in this particular case, a list of Rectangles, one for each surface)

maybe it will work if you just plug a Join Curve component between the Edges output of the Deconstruct Brep and the Brep input of the Voronoi component?

anyway, uploading your definition with internalized data (or GH + Rhino file) will for sure facilitate giving you an answeer

Thanks! It’s more less working but it’s somehow not fitting the rectangles

I just uploaded the file, hope it’s working.

your original Necklace surface is a freeform double-curved surface, and the Voronoi component works in 2-Dimensions so with this strategy you will always get final planar curves that will not perfectly fit your original surface

I have made some changes and adapted the last part of the definition to use voronoi 3D and intersect the 3D cells generated with the original necklace subdivision, maybe this is closer to what you are looking for? (48.9 KB)

Here’s a result I made that required the Dendro plugin. The Voronoi object is a small cluster that creates the structure for the Voronoi based in the BRep input. TBH I don’t really know how/why why the Dendro parts work, so hopefully someone with more Dendro experience can explain that. I do know that Dendro is VERY sensitive to the slider values you give it, so be careful when you tweak those.

new (82.7 KB)

Thank you so much for your time.
The thing is that i want to keep the brep faces as rectangles and use them as the voronoi boundaries so that every rectangle has its own pattern that starts and finishes inside of it.

Hello, I don’t know this plug in, but i would like the voronoi to fit in the rectangles, not to be one single surface. Not sure if you understood what I mean…

You are correct - I didn’t understand that you wanted a separate Voronoi inside each rectangle. The only way I can imagine doing that is to use each individual rectangle as the boundary for a 3D surface and then use that as the input surface on the GH file I supplied. But then you’d have to re-assemble all the individual Voronois into a single piece. Plus, each individual Vornoi would be very tiny indeed.

in this definition, for each rectangle is generated a different 3D voronoi based on random points distributed on the original (freeform) split surface

then the 3D voronoi cells are intersected with the rectangular surfaces (47.7 KB)


YES! Thank you so so much, it’s exactly how I imagined it!

1 Like