Я работаю над проектом для какого-то дружелюбного клиента.
В моем веб-приложении я могу добавлять и редактировать маркеры на карте Google.
Что я хочу сделать дальше, так это позволить пользователю рисовать некоторые фигуры и подсчитывать количество маркеров внутри этой фигуры.
Проблема, с которой я столкнулся, заключается в том, что если пользователь меняет местоположение маркера, как я могу обновить этот счетчик, не вызывая какой-либо метод в 3 разных местах.
Чтобы рисовать фигуры, я думал об этом:
https://developers.google.com/maps/documentation/javascript/examples/drawing-tools
Однако мне не удалось найти способ получения ссылки нарисованной фигуры для сохранения в переменной.
И я увидел какую-то похожую проблему, но не совсем такую, как моя проблема:
как рассчитать количество маркеров внутри многоугольника в картах Google
Проблема с приведенной выше ссылкой заключается в том, что автор выполняет итерацию по всем маркерам на карте, и я не уверен, что все пройдет гладко, скажем, 5000 маркеров или даже больше. Также он / она рисует многоугольник без инструментов рисования, поэтому он кажется немного закодированным.
Итак, подведем итог, что я хочу решить:
- Разрешение пользователю рисовать фигуры на карте
- Динамическое изменение некоторого счетчика в пользовательском интерфейсе, показывающее текущее количество маркеров в этой конкретной форме
- обновление счетчика, если пользователь решает переместить маркер за пределы фигуры
- удаление фигуры, если пользователь хочет
- также с учетом проблем с производительностью (если есть)
- (если возможно, один счетчик на форму, если пользователь хочет считать в нескольких местах)