Вам необходимо при каждом перемещении мыши ограничивать его прямоугольником между его текущим положением и ближайшей точкой на окружности.
Ближайшая точка на окружности получается
пусть (x, y) будет там, где находится мышь, (x 0 , y 0 ) будет источником
(x 0 -x, y 0 -y) - вектор от начала координат до указателя
d = sqrt ((x 0 -x) 2 + (y 0 -y) 2 ) - длина этого вектора
(N * (x 0 -x) / d, N * (y 0 -y) / d) - это точка на расстоянии N от начала координат вдоль линия, соединяющая начало координат с позицией мыши, то есть ближайшая точка на окружности к указателю мыши.