Finding a Coordinate on a circle using radius, angle, and origin I am trying to calculate a point on a circle using an angle and a different point.



With this picture, I know the origin O, the radius r, the angle A, and the point B. Now I want to find the point C. How could I do this? (Note: the origin is not at (0,0))
There are several different approaches you can take.  Since you're asking about trigonometry and polar coordinates, here's an approach:


Find the angle to B from the horizontal.
Find the angle to C by subtracting A.
Find C using its angle with r


The angle to B can be found with $\theta_B = \sin^{-1}(B_y/B_x)$ where $B_y$ is the $y$ coordinate of B.

Then the angle to C is $\theta_C = \theta_B - A$

Finally, $C = (C_x,C_y) = (r \cos(\theta_C), r \sin(\theta_C)) $

If your origin $O$ is not at $(0,0)$, you can shift the whole thing down so that $O$ is temporarily at $(0,0)$, then you just shift your result back by the opposite amount.
I will use $\alpha$ instead of $A$. suppose first that O(0,0). Note that every point on the circle has the coordinates $(R\cos\theta,R\sin\theta)$. If $\theta_B$ is the angle of point B, then the angle $\theta_C$ of point C is $\theta_C=\theta_B-\alpha$. Hence, the coordinates of $C$ are
$$
(R\cos(\theta_B-\alpha),R\sin(\theta_B-\alpha))
$$
that is
$$
(R\cos\theta_B\cos\alpha+R\sin\theta_B\sin\alpha,R\sin\theta_B\cos\alpha-R\cos\theta_B\sin\alpha)
$$
By setting $x_B=R\cos\theta_B$, $y_B=R\sin\theta_B$ we get
$$
(x_B\cos\alpha+y_B\sin\alpha,y_B\cos\alpha-x_B\sin\alpha)
$$
that is 
$$
\begin{pmatrix}
 \cos\alpha  &amp; \sin\alpha \\
 -\sin\alpha &amp; \cos\alpha \\
\end{pmatrix}
\begin{pmatrix}
   x_B \\ y_B
\end{pmatrix}
$$
in matrix form. Now, if $O\neq(0,0)$, say $O(o_1,o_2)$, then 
$$
\begin{pmatrix}
   o_1 \\ o_2
\end{pmatrix}+\begin{pmatrix}
 \cos\alpha  &amp; \sin\alpha \\
 -\sin\alpha &amp; \cos\alpha \\
\end{pmatrix}
\begin{pmatrix}
   x_B-o_1 \\ y_B-o_2
\end{pmatrix}
$$
is the desired coordinates.