Problem with "fillet" command in Gh

I have been having the problem with the process of some of the commands like “fillet” , “join”, “loft” etc. I think i have been having the problem understanding Data tree which is preventing me to properly fillet, or join lines.
I have attached a file in which i had offset one of the face’s edges on the outer side and next step i tried to fillet the corners but i couldnot understand the concept.

error.gh (8.7 KB)

The logic of the whole file is fairly circuitous, why not just plug the rectangle directly into [Offset]?

The reason [Fillet] is not working in your file is because you have four disjoint line segments. Fillet works on the kinks in individual curves. The reason you have four disjoint line segments is because you offset the four edges of a brep.

One way to solve this (apart from getting rid of all the brep stuff in the middle and just offsetting the rectangle directly) would be to insert a [Join Curves] component in between [Deconstruct Brep] and [Offset]. You’ll also have to set the [Offset] Corner type to something other than ‘none’ (probably ‘sharp’), otherwise you’ll still get four disjoint line segments.

None of this is related to Data trees though.

error.gh (13.7 KB)

I exploded the brep for other story of the algorithm :slight_smile:
And Thanks, that worked for the me .
But,
What if i were to fillet random sets of lines (not coming from the “offset” cmd) … like in the pict, how can they be connected ?

Well, if you have a bunch of loose lines your first problem is getting them into a single closed curve. This isn’t trivial, although if you can make simplifying assumptions on a per-case basis it is possible.

If the final shape you’re after is a convex polygon then you can extend the lines, intersect them and find the polygon from the intersection points. However depending on the exact positions of the line segments, it could be that a single extension length is not enough freedom to solve it this way.

convexhull.gh (6.6 KB)

Ideally the [Connect Curves] component would have connection type that used line extensions, but it only has position continuity.

thanks that will work perfect .

As a newbie, I found this post very helpful.

Here is an example of the circuitous code to fillet distinct intersecting curves for anyone else looking.

2 curve fillet.gh (21.1 KB)