# How do you find an angle between two points on the edge of a circle?

I have a two points on the circle surface and I also know the center of the circle. I want to calculate the angle between those two points which are on the circle surface.

Is this formula is suitable to this situation?

$$\tan(\theta) = (y_2-y_1)/(x_2-x_1)$$

where $(x_1,y_1)$ are the one of the surface point $(x_2,y_2)$ is the other point on the surface.

-
Well, you should shift your circle first so that it's centered at the origin, before you can use the formula for the tangent of the difference of two angles... –  Ｊ. Ｍ. Aug 23 '12 at 11:44

You have an isosceles triangle.

You can use cosine formula for calculation the angle.

$$c^2 = a^2 + b^2 -2ab \cos(\alpha)$$

$a$ and $b$ are sides next to the angle $\alpha$, which are the radius of the center $r$. $c$ is the distance between the two points $P_1$ and $P_2$. So we get:

$$\left|P_1 - P_2\right|^2 = 2r^2-2r^2 \cos(\alpha)$$

$$\frac{2r^2-\left|P_1 - P_2\right|^2}{2r^2} = \cos(\alpha)$$

$$\alpha = \cos^{-1}\left(\frac{2r^2-\left|P_1 - P_2\right|^2}{2r^2}\right)$$

-