@olezhenka

Как найти ближайший объект если знать только его градусы?

У меня есть окружность и два объекта.
uQF8NroH-ds.jpg

При клике мне нужно определить ближайший объект с помощью их градусов. Я написал что-то типа:
Math.abs(A_deg - click_deg) > Math.abs(B_deg - click_deg) ? B_deg : A_deg

Здесь условие такое — где меньше осталось градусов, значит, этот объект ближе и его использую, но потом возникла очевидная проблема которую я ожидал и думал решу каким-то простым дополнительным условием:

красная - градусы клика, остальные это объекты
0_0OstLlU4I.jpg

Но чет повводил разные условия и никак не могу правильно определять ближайший объект.
  • Вопрос задан
  • 130 просмотров
Решения вопроса 1
rockon404
@rockon404
Frontend Developer
var diff = Math.min(Math.abs(x - y), 360 - Math.abs(x - y));

Можно переписать в виде функции:
var getDiff = (x, y) => Math.min(Math.abs(x - y), 360 - Math.abs(x - y));

Демо.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
avalon.tech Санкт-Петербург
от 100 000 руб.
Bosco Internet Boutique Москва
от 130 000 до 150 000 руб.
16 авг. 2018, в 20:57
2500 руб./за проект
16 авг. 2018, в 19:25
5000 руб./за проект
16 авг. 2018, в 17:28
25000 руб./за проект