Может быть, у кого-то был подобный опыт по этой дилемме, и он может помочь мне здесь ...
По сути, у меня есть элемент canvas, на котором я рисую несколько прямоугольников в цикле, используя
context.fillRect (x, y, width, height)
Теперь я хочу, чтобы некоторые прямоугольники были горячими точками и отвечали на события щелчка. Я могу узнать точные (x, y) события щелчка, используя event.layerX
и event.layerY
.
Учитывая, что я знаю следующее:
- точный х, у клика
- x, y, ширина и высота каждого прямоугольника
как узнать, произошло ли событие щелчка внутри периметра определенного прямоугольника или нет ?
и
в каком прямоугольнике произошло событие щелчка 0n?
Есть ли математическая формула для этого?
Любая помощь будет высоко ценится, и если я не достаточно ясен, дайте мне знать ...
Спасибо
EDIT
Нет ли лучшего способа, чем перебрать все прямоугольники и проверить их положение и размеры?