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

2 Likes

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

1 Like

This is interesting to me, cause I have a client that has lots of geometry like that, which is a bit more complicated in shape – I’ll try sharing some samples later.

I like to see the dilemma focused on here in this case. I believe this is also something very similar to lots of geometry one of my particular clients has much of. I’ll try sharing samples of that too if necessary.

I’m grateful to see focus on these scenarios :beers:

This is a workflow I’ve yet to learn successfully. I hope to learn this technique better, even though it seems to be a ‘loophole’, I’m glad to see signs of Rhino’s abilities to achieve unprecedented feats I believed were possible.

It’s beautiful :smiling_face_with_three_hearts:

I also think there’s probably a couple other ways it could fillet that though :thinking: or maybe I’m not seeing the planar (low curvature) upper shape at first hahah. It threw me off.

That’s cool. I like to see that junction with the triangular surface with zero edge length adjacent to that joint near the fillet. I have very similar geometry I’ve dealt with for decades.