Я працюю над циферблатом, який обертається навколо кола.
Цей циферблат повинен дозволяти вам переміщувати мишу в будь-якій точці кола, щоб регулювати положення циферблата до точки на колі з таким же кутом, як і клацання. Наприклад, з набору номера зверху, якщо ви натиснули місце, показане рожевим внизу, я переміщу циферблат над цією точкою, але на колі.
Я знаю, як отримати положення точки на колі, заданому радіусом і кутом (у радіанах). Ось така формула :
x = Cos(angle) * radius + CenterX;
y = Sin(angle) * radius + CenterY;
Однак я хочу зробити щось протилежне - у мене є точка клацання, яку я хочу перетворити на точку на колі (куди йде регулятор управління). Я намагаюся використовувати цю точку (і заданий радіус), щоб визначити для неї кут у радіанах, щоб я міг розмістити регулятор на колі під одним кутом.
Чи є зручна формула, яку я можу використовувати для цього?
atan
скорочено arctan
, і atan2
є лише функцією, яка приймає окремі аргументи і робить поділ для вас.