Mesh split plane / mesh trim failing

Hi guys,

I’m having some problems splitting a mesh I have of a TPMS gyroid surface. It was created using millipede and then offset a small distance (not sure if that matters).

When trying to split the mesh in 2 with an intersecting plane something odd happens.

  1. It does not split the mesh into 2 seperate meshes 1 above and 1 below the plane.

  1. It splits the mesh as shown in the picture below.

Any insight on why this is happening would be greatly appreciated!

here is the file with internalised data: (469.5 KB)



Hi Andy, if you check your mesh with the MeshRepair command in rhino it tells you a few reasons your mesh might have trouble being split.

you have quite a few intersecting faces and 2 disjoint pieces, which you can find if you explode your mesh in rhino. And there’s some weird normals stuff but I’m not sure how much that would effect splitting.

The gyroid mesh you get out of millipede kind of sucks, it has really bad topology. A while ago I made this quad mesh gyroid “base” that you can tile and join to create like what you had but with good topology. When you use this mesh you get good splitting results.

I’ve internalized it to the gh document so you or anyone else can use it. (489.7 KB)

1 Like


Thanks very much for your reply. Generating a mesh from a discrete number of surface elements rather than using isosurfacing with millipede looks to generate a much better mesh.

The only thing holding me back from using meshes like this is I would like to be able to use a non-zero isovalue to generate non-symmetric gryoid structures.

this leads me onto 2 questions:

  1. is there a way to use generate non-symmetric gyroid structures using the quad base mesh you provided?

  2. If that is challenging, is there a good way to clean up a millipede mesh? - I have tried WB laplacian smoothing which works reasonably well but is there anything better?



1 Like

I didn’t look at your file, but it seems that there is a BUG in Rhinocommon for V6


if you post a file with a non-symmetric gyroid mesh from millipede I can show you how to use MeshMachine to remesh it which might help. Without the file I’ll just tell you: try using MeshMachine to remesh then split.

I have not used mesh machine before, would really appreciate some guidance! (51.7 KB)

1 Like

Ok so I tried to use MeshMachine with your mesh but it wouldn’t give good results, and the FixCurves input wouldn’t work with the mesh’s naked edges for some reason, so I used FixVertices which is a worse way to do it because it doesn’t allow the naked verts to slide along the edges to give more even triangles.

I tried also with the K1 component ReMesh which worked (enough). Would have liked to try with the K2 Simple Remesh but that component is still broken…

You can maybe see why I stopped using millipede to make gyroid meshes and instead went with the quad gryoid mesh approach. Millipede gives you a bad mesh that’s a pain to work with later.

Besides all that, your original mesh splits fine anyways. At least in this case. (55.0 KB)

btw you’ll need Kangaroo 1 installed to use MeshMachine or ReMesh in this definition


thanks very much for this, I didn’t know about mesh machine. I’ve been having a bit of a play around and I think it’ll be really useful for what I want to do.

Thanks for the help, I really appreciate it!


1 Like