Rhino Fillet edges VS another Program

Hi All
What is the cause of the problem?

Fillet edges-2.3dm (4.7 MB)

Hello-- Rhino intersects the fillets at the sharp corners, presumably to keep the corner sharp as on the input.

Obviously that does not play well here since the extended fiiets do not fully intersect - a linear extension might work better but the extensions would need too be very long.

image

I do not know if it is possible to wrap the fillet on sharp corners as in your example - it may be, I’ll ask.
RH-65975 FilletEdge: Handle inside corners

-Pascal

workarround 1 fast and dirty

do a very tiny fillet arround 10x document tolerance
do the desired fillet.
depend on the data usage - this should be fine for 99% of the cases

workarround 2 more work but precise
use _filletSrf (extend = no )
build a
_revolve
_trim _join

1 Like

@pascal
inside corners only have a circular solution for a special case:
the edge has to be rectangular to a planar surface.

as soon as we go freeform it s getting complicated

the red (initial edge) blue and cyan curve do not meet at one point…

do a fillet for the red edge (workarround 1) and you get something acceptable.

insideEdge_impossible.3dm (5.6 MB)

before you have time for this special case, i ll have something else…
wait…

Sure, I don’t thinik it needs to have a circular outer rail - but I’ll leave that to the developer.

-Pascal

nice
to see that one special case finally made it to be found by filletEdge.
great
(at the left, 4 surfaces meet at one point at the edge to fillet, a small section is needed - blue in my screenshot)
thanks for this (Rh7 update ?)

but the other case still is not found by _filletEdge
(middle)

if a surface is touched by the fillet, but is not part of the edge
_filletEdge fails.

the red fillet is not found by _filletEdge it has to be done manually by _filletSrf

it would be possible to detect:
if the rolling ball touches additional edges - they might have to be analysed as well.
latest if filleting / trimming the edge fails, it should be possible to analyse the offsets of the surfaces.
all corresponding surface offsets that intersect are affected by the fillet

somehow the algorithms are already there:
applying _offsetSrf (to the back) 20
applying _offsetSrf (outside) 20

the fillet is there…

maybe this helps to improve _filletEdge
thanks, kind regards - tom

1 Like

Yep - this is behind probably a large majority of failure cases.
-Pascal