Filleting only selected sharp corners of a curve

according to the options we have with “Fillet Edge”, i would like to have the same possibilities wih the fillet(curve) component.

for a present scenario i need to only fillet the convex corners of the shown curve, but i could also adress the concerned corners via member component.
i could not find a component to allow this differentiation while filleting. any suggestions for a simple but stable workaround?


i attached a simple definition with just the curve and the points.
fillet_some_corners.gh (3.3 KB)

Hi @brt1,

You can isolate the desired, external corners by drawing the convex hull of all the corner points. Only the external corner points lie on the hull curve. I then use Anemone to recursively fillet each desired curve corner.

As long as there’s differentiation between convex/external and concave/internal points, this should do the trick!

fillet_some_corners_2.gh (10.1 KB)

2 Likes

fillet_some_corners_convex.gh (14.8 KB)

In case if you don’t want to use anemone you can try this tool. I’m not sure how stable it is.

Best,

Mahan

1 Like

recursively” is not correct here. Anemone is using simple iteration (looping) to repeatedly fillet a curve one vertex at a time. This is necessary because Fillet acts on only one value of ‘t’ at a time, producing a separate copy of the filleted curve for each value. I understand why but it’s still unfortunate, unexpected behavior.

thanks for your suggestions!
anemone looks good, but in this specific case it´s desirable to work with standard-gh-components.
i quickly tested mahan´s solution and it seems to work fine. there will be situations where some fillets fail (when exceeding a certain radius or when the original pentagons get too close, …), but for for my needs as an “inhouse solution” its stable enough.
so thanks again

I just realized there are some expectional cases that can not be done by the hull convex method. I explain the error in D1. I develpoed a new method which fix this problem and the method is explained in D2. You can find the code in the file attached here.

Best,
Mahan

fillet_some_corners_convex _2.gh (13.5 KB)

thanks again!
i will take a closer look and test some cases. from what i see by now, both solutions work for my needs here.