Rolling circle against a curvy curve

OK, so I want to roll a circle against the blue curve (see picture below). Looking for a good strategy for staying in contact with the curve at all times.

More specifically, I want to push the circle in the arrow direction, moving the center specific distances, say 2 or 10 mm (+/- from the current position), and calculate the movement in the other (perp) direction based on that “push distance”.

I tried make a “radius distance offset curve” from the blue profile curve for the circle center to follow, but the offset curve becomes self intersected (see red messy curve).

There’s probably a smart strategy also for this.

Roll_strategy_FORUM.gh (18.9 KB)

TIA,
// Rolf

A different way of looking at it…?

Roll_strategy_2018Jan29a.gh (12.3 KB)

Erratic path for the circle’s center, similar to yours:

Roll_strategy_2018Jan29b.gh (15.2 KB)

1 Like

Since the original curve is not completely convex, by definition there are areas where while being tangent, the circle will intersect with it in other areas.
Are you thinking of making it behave as a physical object? (meaning meeting two criteria: 1) being tangent 2) at no time intersect with the curve. Like a bicycle wheel that will never touch the bottom of small holes in the ground-)

Arghh, sorry for the RIL component…

Minimal solution… I like to see different takes. The backsliding centerpoint is a nasty twist to a seemingly simple problem.

Kind of, yes.

There’s probably several analytical approaches which I’s trying to avoid being sunken into

// Rolf

Hello did you try clipper which is very good at offset?
In order to suppress little holes … Offset 2 times.

Forgot to say that, although a nice minimalistic solution, the circle must never intersect the curve, which it unfortunately does in this case.

// Rolf