2D metaball like connection between distort forms


(Edward) #1

Is there a component that connects two 2D surfaces like with metaballs (see image)?

metaball like connection 01.gh (12.2 KB)

(David Rutten) #2

If you’re looking to end up with circular arcs, then no, that’s not how metaballs work. Given your drawing I think that you’re after is a Connolly Boundary, which is a notoriously difficult curve/surface to compute.

If however you’re only ever dealing with two circles between which you wish to create the arcs, then some reasonably straightforward trig will get you there, but as soon as circles start to interfere with each other it becomes impossibly complicated.

(Laurent Delrieu) #3

@DavidRutten, it seems quite simple to solve that with a good offset. As usual Polyline Offsetclipper is used (Edit it works with Rhino)

The trick here is to group well circles in branches. So @Edward I didn’t reuse your script. The second trick is to offset in one direction then in the other. By default Clipper is doing the 2 ways. It is very important to have grouped curves in one branches. If not Clipper will merge offseted curves.

group circles with arcs.gh (20.5 KB)
group circles with arcs.gh (22.8 KB)

I was a bit negative it works with Rhino offset.

(Edward) #4

Thank you for your reply.
I did not know the term Connolly Boundary before.

(Edward) #5

Thanks Laurent! Clipper-mazing! :grinning:

How to get from intersecting curves to a mesh?
(Laurent Delrieu) #6

You are welcome.
Clipper is more reliable than Rhino Offset but just for polyline. Offset in 2 directions is something always useful to smooth curves.

(David Rutten) #7

Cool. I guess since offsetting circles and arcs is about as trivial as lines, you might even come up with an analytic solution to this without the need to discretise the inputs.