Solid porous voronoi structure and porosity percentage

Hey Guys,

I need your help with creating a porous structure in Grasshopper based on Voronoi tessellation. The structure I have developed so far can be seen in the pictures below, including the corresponding Grasshopper file.

I have got 2 specific questions:

  1. How can you determine the volume of the structure in order to calculate the percentage of porosity? I used the Volume and the Mass Addition components to determine the mass of the (bounding)box. However, I was unable to do this for the rod-like structure within the box.
  2. Is it possible to make this structure fully solid in Grasshopper? As can been seen in the picture, the rods are defined by the surfaces but I would like a closed and solid structure in the end. This way I can directly export it as .stl and start 3D printing.

Looking forward to hear some suggestions.

Kind regards,

3D Voronoi Porous (24.4 KB)



Looks like questions 1 and 2 are solvable with the same action (closing the mesh)?

Some plug-ins out there that do ‘mesh capping’ or closing holes for a fast solution. Just search for that.

'Wanted to help but Rhino/gh crashed and closed immediately after I open your file so mission aborted :slight_smile:

1 Like

it is doable to make the cuts, but at the moment Rhino/Grasshopper are not very good at that.
Here a solution using Dendro. There are many ways with Dendro to make smooth nodes/sponge.

See here for others sponge related geometry

3D Voronoi Porous (23.5 KB)


Hi Laurent,

Finally had the chance to explore for a minute.

Thank you very much for your suggestions and your alternative approach also looks very nice!
However, my goal is to investigate the influence of the scaling factors on the percentage porosity. So I want to keep that method.

I was able to create a closed mesh, see the picture and file below. Unfortunately, calculating the volume of the structure (with Mesh Volume still results in the error: Mesh geometry is not solid!. So I tried the method of intersecting the skeletal mesh with a solid object using the Dendro plug-in, but was not successful…

Perhaps you have an idea what goes wrong?

Kind regards,

Sven E.


Closed 3D Voronoi Porous (23.7 KB)

1 Like

Hi Corellaman,

Thank you for the suggestions! Indeed, I though closing the mesh would solve both problems.
In the end I was able to close the holes using a different method, resulting in the structure below. However, the calculation of the percentage porosity turns out to not work because I still have difficulties determining the volume of the structure (using Mesh Volume results in the error: Mesh geometry is not solid!).

Do you have an suggestion to end up with a solid geometry?
Hopefully, you can open the Grasshopper file.


Sven E.


Closed 3D Voronoi Porous (23.7 KB)


You still have a huge hole. Laurent’s polyline smoothing/dendro solution would give you a similar mesh that is closed.

The output mesh still has some naked boundaries out of your Weaverbird Subdivision component (aka, it is an open mesh).

There are a number of ways to close it but I just threw the Pufferfish “Close Mesh” component in and everything seems to work fine.


Nice fix charlie. Dendro solution: Closed 3D Voronoi Porous Structure DENDRO (27.7 KB)

1 Like

Can you give me this source file? Thank you!!!

Thank you all for the contributions!

I tried this file given in this thread and it works perfectly for 50 seed points but for 25 points the pufferfish close mesh fails and returns an open mesh, and for 75 points the mesh intersection (of the voronoi mesh with the bounding box mesh) fails. The modified file is here: Closed 3D Voronoi Porous Structure DENDRO GB (29.8 KB)

Do you have any suggestions how to fix this?

Thanks in advance,

Merry Christmas everyone :slight_smile:

this is just a small hint, but by scaling down the original mesh box by a tiny fraction the mesh intersection works (you already get a closed mesh)
it worked for me (Rhino 7 update 12/08/2020) for any amount of voronoi points

Closed 3D Voronoi Porous Structure DENDRO GB (28.8 KB)

1 Like