Как найти широту и долготу, попадающую на путевые точки с помощью Google API

У меня есть группа лат и лонг, которые являются остановками автобуса.

Мне нужно найти для пользователя широту и долготу, падающую по маршруту.

Найти ссылку на мою демоверсию Codepen

Я рисую маршрут, используя точки и полилинии. С помощью containLocation() Функция "Я могу найти пользователя" падает по маршруту. Но это работает где-то в полилиниях. Мне нужно, чтобы это работало на путевых точках.

Если вы щелкнете рядом с полилинией, вы получите красный круг или синий треугольник. Красным цветом обозначена точка, не попадающая на маршрут. Синий указывает, что точка падает на маршруте

Любая помощь будет оценена.

1 ответ

Я попробовал ваш пример, и ваш код не соответствует логике, которую вы описываете, это потому, что вы используете неправильный containLocation() Метод это, чтобы увидеть, если ваше местоположение находится внутри многоугольника.

Поскольку вы используете полиин, вы должны использовать google.maps.geometry.poly.isLocationOnEdge() метод вместо. См. Справочник по Google Maps JavaScript API V3

Что касается возможности щелкать или очень близко к путевой точке, что невозможно, потому что нет вариантов сделать объект путевой точки не щелкающим, как с маркерами в данный момент.

Другие вопросы по тегам