Scaled version of closed curves

Grasshopperbarbs_v1.3dm (216.9 KB)
barbs plate.gh (11.6 KB)
Hi everyone,
I have a big rhino file of two layers of closed curves. These closed curves are basically two straight lines and a 180 degree arc. The curves of the two layers just a little bit shifted and are almost overlapping but I would like to make a scaled version of paired combinations of these curves, over the outer edges of both curves combined.
A part of the file looks like this:

The result I want to get will look like this:

I tried this in grasshopper with Scale NU but I got stuck on a lot of issues:

  • The way I sort the data is clearly not workable for the larger file, I should get the closest curves in pairs combined.
  • The arc I get is not 180 degree with its own radius as in the picture I would like to get.

There is probably a much better way to solve it than I did this.
I would really appreciate some help in this topic, thanks in advance!

Expecting help without posting your geometry at the very least :question: Your code too, if you want anyone to start with that.

3. Attach minimal versions of all the relevant files

Thanks for your feedback.
The files are now added:
Grasshopperbarbs_v1.3dm (223.7 KB)
barbs plate.gh (11.6 KB)

There are several unfortunate aspects to this geometry (I didn’t look at your code).

  1. The pairs of curves are not organized as pairs.
  2. Some extraneous “barb” geometry was mixed in with the curve layers.
  3. Your “Desired for all curves” geometry was mixed in with the curve layers (and mis-labeled).
  4. Your “Desired for all curves” geometry shows a closed curve surrounding each pair but the curved ends are not defined, either as a radius or otherwise.

I used a fillet, though it is obviously incorrect. The purple group is garbage cleanup and pair matching. The white group creates the closed curve surrounding each pair, erroneous fillet and all.


barbs plate_2024Feb24a.gh (22.0 KB)

P.S. Here is something that more closely matches your “Desired for all curves” geometry (white group):


barbs plate_2024Feb24b.gh (24.2 KB)

1 Like

@Joseph_Oster
Wow thanks Joseph, this is amazing.
The one with the filletted corners is the one I am using now and its perfect.
Also very understandable code