SubD Stitch Invalid input geometry


I’m working on a subd from a 3d scanned mesh (reduced 90% from original). While trying to fix the perimeter I haven’t been able to stich some vertices, it says “Invalid input geometry”. I also tried to create some single subd faces append to the big one and it fails, it just doesn’t do anything. Any clues on what’s happening?

Rock Wall.3dm (8.8 MB)

one or both of your faces are somehow messed up… simplest solution?

delete them and use bridge-

Thanks, Kyle!

Yes, that’s what I’ve been doing. Just wondering why stitch’s not working

oddly if you extract those two faces, and then stitch them then join them back in they work…

must be some small edge on one of those surfaces…

I tend to not worry to much about it, I just kill misbehaving faces with extreme prejudice and move on.

I’m always interested to know why things don’t work… :slight_smile:

And one of the problems is the mesh you started with.


General information about this mesh:

Mesh has 1 non manifold edge.
Mesh has 1 duplicate face.
Skipping face direction check because of positive non manifold edge count.
Mesh has 14 pairs of faces that intersect each other.
This can cause problems if you’re doing mesh boolean operations with it.

Mesh has 909 naked edges. Naked edges can cause problems if the ultimate goal is STL output.
Mesh has 12 faces where the face normal differs substantially from the vertex normals.
These normals can cause problems if the ultimate goal is for rendering or boolean purposes.

Mesh does not have any degenerate faces.
Mesh does not have any ngons.
Mesh does not have any extremely short edges.
Mesh has 10 disjoint pieces.
Mesh does not have any unused vertices.

My first attempt was to split the mesh into disjoint pieces.


Split 1 mesh into 10 meshes


1 open mesh added to selection.

Converted this into a SubD

I can stitch the two vertices.

What’s your expected benefit of turning this mesh into a SubD?

You’re hoing to spend quite some time fixing boundary issues…

In this situation Quad Remesh isn’t a good solution to rebuild the mesh and convert to Nurbs later on.

Here’s a solution using Grasshopper:

Since your mesh sort of has 4 boundaries, you can project the boundary onto a plane, split into 4 segments, rebuild the curves and create an Edge Surface.

The surface can be meshed with nice quads using the Mesh Surface component.

You can get the mesh parameter of the closest point of the nice mesh vertices on a planar representation of your not so nice mesh.

Evaluate the not so nice mesh at the parameters found on the planar representation mesh.

Construct mesh, done. (1.9 MB)

This is the solution:

Thanks Kyle!

Thanks Martin!

I’m turning this mesh (I reduced it more) into a SubD because we’re making a reproduction of a section of a real rock wall (located somewhere in Mesoamerica) for a museum and they want the shape to be as close to the real one as we can, so they gave us the mesh that came from 3d scanning the real thing. I’ll make a big solid to be able to split it into smaller blocks and milling them out of eps on a robot arm, adding a steel structure on the back, hardware, etc. I’m not worried about the boundaries, I just made a quick & dirty thing on those areas (filled some holes, deleted some vertices, stitching, etc. to get those 4 boundaries) as they’ll be finished by hand.

Anyways, your Grasshopper solution sounds awesome for another project I’ll start working on probably next month.

Thanks again for your help and for sharing your knowledge!

1 Like

Thanks for your reply. My whole point was actually the fact that it’s not a SubD problem but the mesh beforehand. I own an Artec Leo and I’m dealing with scanned meshes on a daily basis and many times what looks nice in Artec Studio still has some problems later on in Rhino.



Yep, sorry, I got your point and at the same time I deviated a lot. I don’t deal with meshes so often and with this one I knew it had problems, I always try to check/repair them before moving on. I was just wondering why stitch was working on some vertices and not on some others even though it’s a much simpler SubD than what I’ve dealt with in the past.

I’m learning a lot about working with meshes in Rhino now as we’re getting a 3d scanner for future projects (not an Artec Leo though :frowning_face:)

1 Like