3
$\begingroup$

Given

  • a circle with radius $r$ centered on the origin at (0,0)

and, in polar coordinates:

  • a start point, at radial distance $p$ (with $ 0 < p < r$) from the origin, and angle $\alpha$

  • an end point on the circle boundary at radial distance $r$ from the origin and angle $\beta$

how can I construct a curve segment that satisfies the following constraints:

  • it starts at the start point, aligned with angle $\alpha$ (radially outwards)
  • it ends at the end point, aligned with angle $\beta$ (radially outwards)
  • the curve stays within the circle area (intersects the circle boundary only once, at the end point)
  • between the start and end points, the radial distance of points on the curve from the (0,0) origin is non-decreasing (ideally, strictly increasing)
  • the maximum curvature is minimized

?

Without loss of generality, the angle $\alpha$ can be assumed to be 0, because only the angle difference between $\alpha$ and $\beta$ matters.

problem visualization

Does a function or algorithm for this exist?

This is a variation of this question that only considered the start point being placed at the center of the circle. The solution there only works when $ p = 0 $.

An example of curves that fulfill the first three constraints, and most the fourth, but only the straight lines the last (and happen to have their start point at the center).

curves in a circle example

$\endgroup$
3
  • 1
    $\begingroup$ I know how you could physically determine this curve: take a flexible band (like the blade on a bandsaw), orient it perpendicularly to the plane of the circle (to form a little "wall"), clamp one end at the START point (starting outward) and the other end at the END point (properly oriented). The band will describe a curve that satisfies the curvature constraint. Assuming your band does not pierce the circle, you can reduce the curvature by replacing your band with a slightly longer one... and longer... and longer... until the band pierces the circle. "Physical" computation! $\endgroup$ Commented Oct 11 at 18:49
  • 1
    $\begingroup$ Recommendation for improved question posting: Note that it is only the difference in angles that matters. Thus you could simplify the problem specification by setting $\alpha = 0$. $\endgroup$ Commented Oct 11 at 18:55
  • $\begingroup$ My suspicion is the solution can be found by taking two circles of equal radius passing through the two ends tangent to the required directions, sized also to be tangent to each other. Or, if the circle through the start would extend beyond the original bounding circle, then shrink the common radius to make it tangent to the bounding circle instead, and connect it to the other circle with a common tangent line. $\endgroup$ Commented Oct 17 at 3:53

0

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.