Lattice -> uniform & conformal between surfaces


I know how to create a lattice structure within a volume defined by two curved surfaces, but I’d like the resulting lattice to have consistent sized cells/voxels…
How would you approach this?

-> Regular lattices create geometries that are not perpendicular to the surface normal (thus failing to give proper structural strength IMHO)

-> Conformal lattices create big density differences within a piece, resulting in thicker areas having larger cells.

Here a visualisation of what I’m trying to achieve:

Tools tested: intralatticePro / crystallon / dendro

Cheers from Barcelona.

Try looking at some of the various options for quad meshing posted on this forum.
In the WIP you can just select your surface and type QuadMesh

The issue happens when creating the lattice structure between two surfaces in Grasshopper with Intralattice or Crystallon:

Ah I see, so you need a volumetric mesh.
For generating a hexahedral (each cell is like a distorted cube) mesh I’m not sure there is anything free and integrated into Grasshopper, but there are certainly many engineering tools which can generate this type of mesh.
Tetrahedral meshes are easier, as you can just distribute some points then get the Delaunay. I don’t think Intralattice or Crystallon work with tetrahedral meshes though, so you’d need to do the thickening up yourself.

Thank you very much!
that’s the concept/name I was looking for.
I’ll search for ways to create a “hexahedral mesh” first, and edit/thicken it to create the lattice.

You should check out nTopology.

I don’t think nTopology does conforming meshes to general boundaries though.


Researching about hexahedral meshes, I found this nice viewer tool:



Ah I was looking for this site since I saw this topic but I couldn’t remember the name, was driving me crazy! Thanks for posting it.

You haven’t specifically mentioned what’s your use case or if you actually need a hexahedral mesh.

Hexahedral meshes are awesome because when they’re properly built they provide such a regular shape and means of connecting adjacent cells. It would seem plausible to use a twisted box method to fill a volume with a repeating pattern. Though making a nice hexa mesh from a generic volume is quite difficult…

However, as @Michael_Pryor had mentioned, tetrahedral “triangular” 3D meshing is much easier. Have a look at this old thread: where Nik implemented Tetgen into Grasshopper to great effect.

Here’s something I was able to get quite quickly out of that Tetgen interface:

Just from intuition, if you’re looking at creating a very stiff and material efficient structure, tetrahedral is probably better than hexahedral. The hexahedral structures look really vulnerable in their shear plane and probably behave in a very anisotropic fashion where as a large enough tetrahedral mesh might be fairly isotropic (? just a guess here).

Have a look at FEA/FEM tools such as OpenFoam, Salome Meca, Code-Aster for some existing volumetric meshing tools.


Hello Louis, Can you share grasshopper file of the this shoe design ? This is very nice work and very informative for beginners :slight_smile:

check this one with Pufferfish

1 Like

Hello Michael, thank you for sharing this nice work :slight_smile: I am new on the grasshopper, so if you don’t mind, can you share this grasshopper screen shot or gh file? @Michael_Pryor