I imagine there must be a proper way to do this, but I wasn't able to look up a good (or any) algorithm.
Imagine you're cutting something on a mill. You specify a trajectory for the cutting tool. You're interested in the edges of the tool as it goes along the trajectory. So imagine this tool path with this radius:
I have come up with a way to trace out the edge by taking derivatives of the trajectory, and then getting points on the circle perpendicular to the slope. I get something like this:
What if I just want the "envelope" of the edges? My edge traces do a loop/wrap-around when there are small turning radii. See what happens to the green edge when it hits the "armpit." The envelope would not include the inner loop.
I had another idea where I can use an image processing approach. So create a black and white image representing the trail of the circles, and then do an edge-find to get the envelope. The pixels can then be translated by to coordinates. I hesitate on this approach as it is not as mathematically "pure."
Thoughts?