Multiple offset by length

Hi

Is it possible to do multiple offsets with divide length as a parameter?


offset by length.gh (16.2 KB)

Between the inner hexagon and the outer one, I want to to offset similar to the divide length that the larger hexagons have more offsets and the smaller ones less, but each offset have around the same distance.

Thanks


offset by length_2021Oct22a.gh (27.4 KB)

1 Like

DivLength doesn’t work well in this case because the lines are not consistent length so the point count varies on the innermost offset. Using Divide Curve instead is more predictable because all lines get the same number of points.


offset by length_2021Oct22b.gh (29.0 KB)

1 Like

Thank you so much Joseph, it needs to be the first option though, since the shape needs to be filled with uniform sized geometry

Just one more question if possible
Is there a way to divide by length, or fit uniform circles in this matter without the overlaps?

offset by length_2021Oct22C.gh (34.2 KB)

Oh, right! How about this then? Culling the polylines that don’t have the right number of points?


offset by length_2021Oct22c.gh (26.0 KB)

Hah. I don’t know.

1 Like

This seems to work great as well!

I started to do this conditionally by comparing the distance between the last point and first point in each ring but found that the condition was always ‘False’, so just used Shift List to remove the last point on each ring. But as you can see that leaves gaps at the end of many rings.


offset by length_2021Oct22d.gh (29.8 KB)

So instead of using DivLength for this, I divided the ring lengths by the desired separation to get number of points and used Divide Curve instead (again). Looks better to me? But there is nothing to prevent adjacent circles from overlapping in either of these solutions.


offset by length_2021Oct22e.gh (29.7 KB)

1 Like

Thank you so much, It’s still really great, and will be ok for the purpose!
Much obliged!