What naked edge fix when MatchSrf fails?

MatchSrf doesnt work on this naked edge, What is best way to repair this ?

It hasnt any curves surviving with it used in its creation.

MatchSrf wont work on trimmed edges and it would appear the edge is trimmed as selecting it with MatchSrf sees nothing happen at all.

It had to have the fillet manually constructed as FilletSrf also wouldnt work on it (by Jim)

So can someone demo how to fix such ?

NakedEdge_BestWayFix.3dm (238.7 KB)



This is a perfect application of joinedge. The result is ‘perfect’.

NakedEdge_BestWayFixck.3dm (252.9 KB)

Some helpful tips can be found here as well

Hi Chris - I would not do this unless the only goal is to get a closed mesh out to analysis or RP. The edges are .1 units off, and forcing them to be joined only disguises this, it does not fix it - the resulting object has edge tolerances 9X larger than the file tolerance.

The right way to fix this is to untrim the fillet-like surface and match it to the patch surface at the top. You need to untrim both, retrim the patch (or a copy of…) along the edge of the fillet and extending off to the edges of that surface to have something to match against. once matched retrim the end of that fillet surface and join in back in - delete the copy of the patch surface.

NakedEdge_BestWayFix_PG.3dm (298.0 KB)

Incidentally, MatchSrf does not ‘fail’ here - it just does not work on trimmed surfaces.


Maybe we should just remove JoinEdge from Rhino altogether.


As long as you leave a secret “back door” for those people that actually know how to use it and when it’s appropriate… :smile:


1 Like

I’ve used JoinEdge for situations where the gap is slightly larger than the set tolerance and the larger gap is acceptable, or where the gap is larger than the set tolerance and I needed the results of Hydrostatics or other mass/area properties command to make a decision on the next step in the design process.

The quickest way to fix this is to use splitsrf (split by isocurve) to trim the surface back to where matchsrf will be able to work properly, then match the edge and then extend the surface back to length it was. and then trim and join into a solid.

When using matchsrf use “match edges by closest points” and “preserve isocurve”
option . See file:
NakedEdgex.3dm (188.8 KB)

In this object, which no doubt you recognise :wink: ) you say to ;_

  1. split by isocurve at the rear end vertical short red line.
  2. then matchsrf along the long naked edge.
  3. then extend the surface back to the aft edge of the object and trim and then join surfaces.

I wouldnt have thought to split it at that red line, I would have been thinking lets try and join it up along the long edge, somehow getting the surface to bridge the minute gap there.

…or simply run the stl file I needed from this through magic and move on ! but thats no way to learn.

Its this knowledge I need, I bet others also faff about as such !

Lots of experience and exercises in fixing naked edges is what I want to be looking at, wherever they may be.

My V5 rhino tips on usb stick (thanks SimplyRhino) probably doesnt deal with resolving and fixing things. Tutorial tasks such as teacher would have set us, with talk through on why to split here or untrim there etc, would be good.


The surface was originally made as a loft that went only as far as the red line. Then
it was matched to the two base surfaces and then extended. Since the base surfaces are pretty much flat you can expect that extending the surface should still leave the edges on the base surfaces.