I have found that I need to precalculate the atan values of slope but am unsure how to go about this given the amount of variance in the values involved.

the slope is calculated by this:

slope = (kCentreY - theLocation.y) / (kCentreX - theLocation.x);

the centre values are the centre of the circle and the location is where a point is touched on the circle.

given the fact the point of touch can be anywhere the slope value can have a huge range.

It has been suggested to to this in 1 degree increments but when I look through this I am getting lost?

could someone shove me in the right direction