Can set tolerance for naked edges?


#1

When I import step files that have been created in other modelers, these sometimes have naked edges. I can sometimes clean these with “Analyze\Edge tools\Join 2 naked edges”. When I do so Rhino will indicate the join tolerance between the edges. This is often very small (1e-5 or 1e-6).

Is there some way (either during import or afterwards) to instruct Rhino to ignore naked edges that are less than a certain value (for example, ignore anything less that 1e-4) or, alternately, automatically try to join all naked edges so that I don’t have to do this manually? (In some cases I can’t even manually join the naked edges. This means that I have to delete the offending surfaces and try to recreate them. This can be time consuming and may not accurately reflect the original model.)

Note: Rhino v. 2.0

Thanks,
Don C.


(Wim Dekeyser) #2

I’ll probably get some of this wrong (I always do) but someone will come in and correct me :wink: (Jim?)

Rhino will try to join the imported surfaces (and try to trim surfaces with the imported trimming curves) according to your document tolerance settings. So if you find out what the error is (as you do), you could modify your tolerances before importing. Note that for V2 ‘things’ need to be within tolerance distance whereas for later versions, the distance can be twice the tolerance as things meet in the middle.

Now, you probably have set your document tolerances to what they are for a reason and you might not want to model as sloppy as what the imported geometry dictates. You could change the document settings again after import but as soon as you want to change the imported geometry, you will run into naked edges again. Basically if you need your tolerances set to what you have them, and have to work on the imported geometry, and cannot live with naked edges for any reason, you will have to rework the things manually. But very often the imported step files have enough underlaying surface area that you can just untrim the surfaces and retrim without having to delete and try to recreate them from scratch.


(Pascal Golay) #3

Hi Don - if you find edges unjoined but within or very near Rhino’s file tolerance (CrvDeviation on the edges can help find this, as well as JoinEdges) , can you please post the step file? Or upload it for tech@mcneel.com to my attention (Pascal)

Upload here: http://www.rhino3d.com/upload

STEP import will try to use the step file’s own tolerance in V5 not Rhino’s tolerance.

thanks,

-Pascal


#4

Wim –

I have tried setting the tolerance in document properties to a fairly large value (0.01). Then if I “File\Open” step file then the tolerance is reset to 0.0001. I don’t know if this is a Rhino tolerance or if this tolerance is contaNakedEdge100b.3dm (423.8 KB) ined in the step file. If, instead, I do “File\Import” step file then the tolerance remains at 0.01. In either case, however, the step file loads with 4 naked edges.

I can’t upload the original step file because it is proprietary. However, attached is a 3dm section that contains the naked edges. If I do "\Analyze\Curve\Deviation’, the two left edges have max deviations of ~0.0001 and the two right edges have max deviations of ~0.0004.

The model does not change if I try untrimming (apparently nothing to untrim).

Don C.


(Pascal Golay) #5

Hi Don- you can fix this thing- here’s what I see: File tolerance .0001 and edges .0003 apart, so changing tolerance to .001 lets the not quite circular edges join. There is another problem in the center, tapered cylinder- it is split into two halves and the location of the split is just slightly off a neighboring edges and this makes for a naked edge there, so: Extract the two half cylinders (the tapered ones) Delete one, untrim the other and then Split > Isocurve Direction=U snapping to the circular edges where it has to join the rest. Delete the two end pieces and Join the rest.

-Pascal

\