Given the coordinates of a circle and a point on it, its radius, and an angle, how do I find the coordinates of another point?

68 Views Asked by At

I have a circle of radius R with coordinates (Rx,Ry). I also have a point on this circle with coordinates (Ax,Ay).

Given an angle N which separates A from B, how can I calculate (Bx,By)?

It doesn't matter which B I calculate, I need both.

Thank you very much for your time.

2

There are 2 best solutions below

0
On BEST ANSWER

The (up to) two points $B$ can be obtained from $A$ by rotating it around the circle’s center: $$\begin{align}B_x &= R_x+(A_x-R_x)\cos(\pm N)-(A_y-R_y)\sin(\pm N) \\ B_y &= R_y+(A_x-R_x)\sin(\pm N)+(A_y-R_y)\cos(\pm N).\end{align}$$ Choose the sign of $N$ consistently throughout. You can find a detailed description of this rotation along with other methods to accomplish it in this answer.

0
On

Recall that a circle can be described with the x-coordinate being $r\cos(\theta)$ and the y-coordinate $r\sin(\theta)$. You can use this to calculate the angle of A using inverse trig of the point. Once you get that angle, you can add the given angle N to this angle and then B will be given by $(r\cos(\theta),r\sin(\theta)).$