Полярные координаты и круговой скраб игрока - PullRequest
0 голосов
/ 29 апреля 2020

У меня проблемы с позиционированием курсора в нужной точке этого кругового скруббера времени:

enter image description here

Я вычисляю угол по простой формуле : Math.atan2(y, x).

Это дает мне угол в радианах, затем я сопоставляю его с диапазоном [0, 1]. Этот диапазон обновляет прогресс игрока, который привязан обратно к позиции курсора (простая двунаправленная привязка).

Мне нужно просто набрать angle = 0rad, когда mouse.x = 0 и mouse.y >= radius.

Прямо сейчас угол установлен на 0, когда я нахожусь на mouse.x >= rootRadius, и mouse.y = 0.

Это изображение, возможно, добавляет больше понимания, мне трудно объяснить это простым способом однако это должно быть progress/angle = 0:

enter image description here

...