Finding the coordinates on the edge of a circle

Ian Vink picture Ian Vink · Jan 19, 2010 · Viewed 33.7k times · Source

Using C#:

How do I get the (x, y) coordinates on the edge of a circle for any given degree, if I have the center coordinates and the radius?

There is probably SIN, TAN, COSIN and other grade ten math involved... :)

Answer

David M picture David M · Jan 19, 2010

This has nothing to do with C#. There is just some elementary mathematics involved.

x = x0 + r * cos(theta)
y = y0 + r * sin(theta)

theta is in radians, x0 and y0 are the coordinates of the centre, r is the radius, and the angle is measured anticlockwise from the x-axis. But if you want it in C#, and your angle is in degrees:

double x = x0 + r * Math.Cos(theta * Math.PI / 180);
double y = y0 + r * Math.Sin(theta * Math.PI / 180);