In some relatively simple models, I have been getting too many naked edges where it seems they shouldn't be. I have been able somewhat to reduce the problem by beginning with lines and curves and using loft and sweep to generate surfaces. Are there any tips to avoid generating naked edges? And to fix ones that you do generate (beyond using Join/Join Edge)?
This is an older wiki article on creating "closed solids" for STL e..., but it does have some info on things to watch out for when modeling/joining...
And perhaps some info on how tolerances can play a role might be useful...
Anything like sweeps, trims etc. on freeform curves and surfaces are all tolerance based, and those tolerances can add up to your surfaces not joining...
Thank you for those tips.
As a general approach, it is always easier to manage naked edges during the modeling process than to try to clean them up later.
Pursuant to that, when I'm modeling and know I need closed edges and no Naked edges, I set up a display mode that colors naked edges in an ugly color automatically, then I know at a glance if I have a problem that needs fixing or not.
John Brock - Rhinoceros Tech Support
Seattle - USA
Thanks to everyone who has given me tips. Here are two things I've found:
1. Joining as you build (from http://wiki.mcneel.com/rhino/faqclosedsolids ) is really helpful.
2. Sweep2 often works better than Loft to create a closing surface that has to meet more than two other edges, especially if those edges are edges of surfaces converging toward the closing surface.
Don't forget MatchSrf as well.
And one more tip: Trim creates more problems than using Split and deleting the unwanted portion of a surface.
Hmm, it shouldn't, unless you're unaware of say Trim's feature where it can auto-extend straight lines. There's something up with that. Are your file tolerances set appropriately?
I haven't rigorously compared Trim and Split, so the above is my impression after thrashing about to get my model working. I did come across a McNeel article tending to imply that using Split/delete is often a better practice than using Trim: http://tips.rhino3d.com/2008/06/trimming-or-splitting-surfaces.html , saying:
Trimmed surfaces are sometimes tricky because, once they are trimmed there are certain commands you can't use on the trimmed edges. Useful commands that allow to create or maintain continuity, such as _MatchSrf or _Symmetry become useless.
A possible workaround to this issue is, if appropriate to the situation, to _Untrim the trimmed edge and then to _Split the surface using the command line Isocurve option. This option allows you to keep the same geometry structure for your surface. If you turn ctrl pts on (F10), you'll see all points lie on the surface edge. You can erase the unwanted split part of the surface and use any command you want on the resulted surface!
This has nothing really to do with a difference between Split and Trim, it has to do with trimming or splitting with an isocurve as distinct from an arbitrary curve. Split has the ability to use a surface isocurve directly to do its work, and trim does not- you'd have to ExtractIsocurve, for example, and then use that as a cutter in Trim, but the results will not be different if the surface is then shrunk back with ShrinkTrimmedSrf.
That's a generalization I would be hesitant to make in most cases it should give the same result.
Some of it depends on what type of object you're trimming and what you're trimming it with. There are different intersector functions in Rhino. If it's a surface-curve or curve-surface combination, the curve-surface intersection function will be used. If it's surface-surface, the surface intersector will be used. The two can give slightly different results, which is why sometimes you can succeed in trimming surfaces with curves when you can't with another surface.
In general if you have two surfaces it is best to try to trim them with each other - this generally will result in a trim within tolerance and a successful join. When the surface/surface trim/split doesn't work, there is already a problem. If you can successfully trim the surfaces with curves , good, but that is the moment to look and see if the resulting trim actually is close enough to be able to be joinable.