Calculate the minimum distance between two given c

2019-09-11 15:55发布

问题:

I'm trying to find a way to calculate the minimum distance between two given circular arcs.

I found a solution in this link. It seems true but I don't know why that is correct!Can anyone prove it right?

回答1:

The solution you refer to works because it is based on the properties of arks:

  1. An arc is a part of the circle
  2. Minimum distance is always reached either at the endpoints or at the perpendicular because it minimizes the distance (objective function). Think of two circles - minimal is always perpendicular to both.
  3. Perpendicular to the arc always crosses the center of the arc because radius is always perpendicular to the circle
  4. Perpendicular case is when straight line that connects centers crosses both of arcs when they are convex to each other
  5. Endpoint case is when the line from the prev. item does not cross both arcs - then minimum of distance is reached on the endpoints closest to the line between the centers.