Почему я могу запросить изохрону для пешей или велосипедной прогулки продолжительностью до 2 часов, а поездка на автомобиле ограничена 1 часом?
Это ограничение основано на вычислительной сложности расчетов. Транспортное средство проезжает значительно большее расстояние, чем пешеход или велосипедист за то же время, что означает экспоненциальное расширение анализируемой дорожной сети. Время движения автомобиля ограничено максимум 1 часом (3600 секундами), чтобы гарантировать, что API сможет вернуть ответ в быстром синхронном окне реального времени, в то время как ходьба и езда на велосипеде поддерживаются в течение 2 часов (7200 секунд).
Как рассчитать изохрону входящего маршрута "поездка на работу" (путешествие в пункт назначения) и изохрону исходящего маршрута (путешествие из пункта отправления)?
В API версии 1 поддерживаются расчеты как входящего, так и исходящего трафика с использованием параметра travel_direction :
FROM(Исходящая): Рассчитывает зону, доступнуюfromисходящей точки в течение указанного временного лимита. Подходит для таких сценариев использования, как зоны доставки или зоны покрытия услуг.TO(Входящий маршрут): Рассчитывает зону, из которой можно добратьсяtoначальной точки в течение указанного времени. Подходит для таких приложений, как расчет времени поездки на работу или определение зон охвата вокруг центрального офиса или транспортного узла.
Иногда возвращаемый многоугольник выглядит угловатым или имеет зазубренные, ступенчатые края, особенно при длительном воздействии. Почему меняется уровень детализации?
API изохрон динамически корректирует разрешение сетки пространственных вычислений в зависимости от запрошенных параметров travel_duration и travel_mode :
- Более короткие сроки: Используйте высокоточную сетку с высоким разрешением, поскольку общая площадь невелика, что позволяет получить детальную границу.
- Увеличение продолжительности: Переход к более грубой сетке с более низким разрешением для эффективного покрытия обширной географической территории без существенных задержек.
Если вам требуется определенный, постоянный уровень детализации независимо от продолжительности, вы можете установить необязательный параметр polygon_fidelity в значение HIGH , MEDIUM или LOW
Почему при запросе изохроны для координат внутри парка, озера или крупного промышленного комплекса иногда возвращается ошибка "Не найдено"?
API изохрон рассчитывает время в пути, используя дороги и пешеходные дорожки. Если запрошенные вами исходные координаты не находятся на распознанной дороге, API должен «привязать» точку к ближайшему совместимому участку перед началом расчета.
Для каждого режима передвижения установлен определенный максимальный порог расстояния фиксации:
-
DRIVE: 200 метров (пешеходные дорожки не учитываются). -
BICYCLE: 180 метров. -
WALK: 150 метров.
Если ваши исходные координаты находятся дальше от допустимого, совместимого с режимом участка дороги, чем эти пороговые значения, привязка не удастся, и API вернет ошибку NOT_FOUND . Для решения этой проблемы убедитесь, что ваши координаты расположены близко к общественной улице или пешеходной дорожке.
При отображении GeoJSON-ответа на карте фигура отображается не в том месте, искажается или вообще не отображается. В чём причина?
Это почти всегда вызвано несоответствием порядка координат.
В соответствии со стандартом GeoJSON (RFC 7946), API изохрон возвращает координаты в порядке [longitude, latitude] . Однако многие SDK для работы с картами, включая JavaScript API Google Maps и различные мобильные компоненты карт, ожидают координаты или объекты LatLng в порядке [latitude, longitude] .
Если отображение карты некорректно, необходимо пройтись циклом по координатам в файле GeoJSON и транспонировать значения перед передачей их в SDK для работы с картами.
Почему внутри моего изохронного многоугольника есть пустые «отверстия», и можно ли вместо них получить сплошную фигуру?
«Ямы» обозначают участки, к которым в течение отведенного времени нет подходящих дорог. Это часто встречается в регионах с большими лесами, водоемами, аэропортами или частной собственностью, где движение транспортных средств или пешеходов невозможно.
Внешний API версии 1 не предоставляет параметр для автоматического удаления отверстий. Если вашему приложению требуется сплошная граница, например, для проверки вложенности точек в многоугольнике, вы можете:
- Установите параметр
polygon_fidelityв значениеMEDIUMилиLOW, чтобы побудить алгоритм к обобщению и объединению, преодолевая эти внутренние пробелы. - Используйте клиентскую ГИС-библиотеку (например, Turf.js) для анализа GeoJSON и извлечения только первого координатного кольца (внешней оболочки), отбрасывая все последующие внутренние кольца (отверстия).
Следует ли мне включить опцию enable_smoothing для пространственного анализа на стороне бэкэнда?
Нет. Параметр enable_smoothing предназначен исключительно для визуальной эстетики. Он сглаживает острые углы базовой расчетной сетки, чтобы форма на карте выглядела органично.
Сглаживание не рекомендуется для точного пространственного анализа, поскольку оно изменяет вершины и слегка сдвигает границы. Для вычислений на стороне сервера, запросов к базе данных или тестов "точка внутри многоугольника" оставьте параметр enable_smoothing в значении false , чтобы гарантировать использование математически точной вычисленной границы.