4
$\begingroup$

How can I calculate the arc between two circles? The arc must be tangent to the two points on the circles.

Here is a picture illustrating it. I'm trying to code and calculate the orange arc and the blue arc.

circle arcs

The points B, F, D, and E can be changed by the user and dynamically update.

  • 0
    Is AC supposed to be a circle arc? If it isn't, the question seems ill-posed. If it is, then the circles implied by those two arcs are concentric to the circle implied by AC, and it should be straightforward to figure out what their radii are.2010-11-04
  • 0
    I don't think that it necessarily HAS to be a circle, but I'm thinking that it might only be possible to calculate them if the arcs are part of a bigger circle. Do you know how to calculate it in that case?2010-11-04
  • 0
    I don't think BE can be a circular arc in general. You have four constraints (2 incidence and 2 tangency), but a circle is defined by only three. In particular, imagine if the user moved point E to coincide with point D -- what could the arc BE look like?2010-11-04
  • 0
    On the other hand, if you are okay with specifying only *one* of the two points (i.e. if the user moves B, E moves correspondingly), then there is a solution as a circular arc.2010-11-04
  • 0
    If points F, E, B, and D are meant to be independent, then there is no reason to expect that they be circle arcs. You can however construct a cubic segment, since each segment has to satisfy four constraints: two points to pass through and the corresponding slopes at those points, and a cubic is uniquely determined by four parameters.2010-11-05

2 Answers 2