Selecting adjacent edges for SubD stitching fails... sometimes

I sometimes have the need to SubD-stitch together two adjacent edges. But since both edges are adjacent - they appear as only 1 line. So when Rhino asks me to select the first edge for stitching, I click on “that line” and Rhino marks it. Then I get asked to select the second edge. And again I click on “that line”.

Now, sometimes Rhino selects the correct second edge, and stitching works with no problem. The problem is, that often times Rhino seems to select the wrong (because already selected) edge as the second edge and therefore cannot do the stitching.

As a solution I would suggest that Rhino does not select any edge as the second edge for stitching, that has already been set as a first edge. Or - is there any other solution that I missed?

Here is a screenshot of the problem with one first edge already selected for stitching. This case is a demo of course - just for showing the problem.

I have attached a demo file for better understanding. It has a SubD plane with 4 edge pairs in the center not being stitched.

stitch_problem.3dm (67.1 KB)

Instead of trying to select two pretty much coincident sets of edges you could use the command

1 Like

Thanks @martinsiegrist - AlignVertices does the job. :grinning: But honestly speaking I have no idea, why it does! I never have guessed AlignVertices could be the solution! Seems I have a lot to learn.

Thanks @inju for creating a dedicated video to show the solution. At least in my case it seems that Stitch is not even necessary. :thinking: After AlignVertices, the edges are already stitched together. Don’t know why, and to me this is not completely logical.

1 Like

All it does in this case is merge vertices within the specified tolerance

AlignVertices (

This is probably the “problem” I have in understanding - since “aligning” and “merging” are two different things to me. Aligning to me means that there are two vertices with exactly the same 3D location. Merging to me means that there is only one vertex shared (referenced) by several edges.

Maybe my use of ‘merge’ isn’t accurate …

No no - I think your use of merge is completely right. I would rather think that AlignVertices is a bit misleading and should be called MergeVertices instead. :wink:

1 Like

@theoutside - I assume others come across this topic, too - facing the same problem. Maybe it is worth a little quick tip video?

Actually, after aligning the vertices they are at the same location but not merged. Hence the creased edge. Removing the crease equals merging the vertices. Unwelding an edge results in a crease and two mesh topology vertices at the same place.

That’s a good point. I think you’re right! So… suddenly Align in AlignVertices completely makes sense. And it even explains, why there is no Stitch necessary after AlignVertices and why there is a crease after using this command.

I learned a lot today - thanks again for explaining!

1 Like

@martinsiegrist Well… seems I went a bit too fast assuming that I understood. :confused:

Following your hint

Unwelding an edge…

I used UnweldEdge on my initial SubD plane and got this:

But when I then tried to use AlignVertices it resulted in the following:

So the AlignVertices solution does not work in this case. Which brings me back to my initial state. Because in this case “stitching” works, but leads again to the problem, that selecting the edges does not work properly.

Sorry, I wasn’t precise. Unwelding a mesh edge and converting the mesh to a SubD leads to a creased edge.

But you can also use UnweldEdge directly on edges of the SubD plane. I did so in the example above in the left side of the SubD plane. This separates the faces as expected. But AlignVertices does not reverse this.

Overall it seems that only Stitch does the job the way I want. There is a little workaround moving the vertices to have the edges separated. This way, Stitch allows picking the correct edge. But this can only be a workaround from my point of view.

The SubD plane after moving the vertices to allow stitching:

@pascal - from my point of view this issue would be worth checking and improving in a future release. What do you think?

Hi All - AlignVertices has a tolerance at the command line.

This situation with proper simulations in SubD is very rare.
You can also solve the problem this way:

Perfect - that way works nicely! Much better than my workaround! :grinning: Thanks a lot.