Рекомендации по использованию API изохрон

Сглаживание и точность

Вы можете настроить внешний вид и точность выходных полигонов с помощью параметров polygon_fidelity и enable_smoothing . Хотя эти параметры независимы друг от друга, они работают вместе, определяя конечную форму.

  • polygon_fidelity : Разрешение. Управляет размером базовых ячеек сетки (ячейок S2), используемых для расчета достижимой площади.
    • LOW : Использует более крупные ячейки сетки. Лучше всего подходит для покрытия больших площадей без пробелов, что позволяет получить обобщенную форму.
    • MEDIUM : Сбалансированная точность.
    • HIGH : Использует ячейки сетки меньшего размера. Обеспечивает более плотное прилегание к дорожной сети, но может создавать пустые участки или «дыры» там, где дорожная сеть разрежена.
    • По умолчанию: Если параметр не указан, сервис динамически выбирает уровень точности в зависимости от запрошенной продолжительности поездки.
  • enable_smoothing : Эстетический параметр. Определяет, сглаживаются ли острые края ячеек сетки, заданные параметром fidelity.
    • false (Raw): Возвращает точный геометрический расчет. Края отображаются неровными или ступенчатыми, отражая ячейки сетки. Лучше всего подходит для аналитической точности, например, для строгих проверок на соответствие точек многоугольнику.
    • true (Сглаженный): Применяет алгоритм постобработки для скругления углов. Лучше всего подходит для визуального отображения на картах.

Как они взаимодействуют: параметр Fidelity задает базовый уровень детализации , на основе которого работает алгоритм сглаживания.

  • Высокоточная обработка + сглаживание: создает детализированную, органично выглядящую форму, точно повторяющую оконечности дорог.
  • Низкая точность + сглаживание: Создает широкую, обобщенную форму «пятна».

Размер полезной нагрузки и рендеринг

Крупные изохроны могут содержать тысячи координат, а полезная нагрузка может составлять от 300 до 500 килобайт.

  • Пропускная способность: Имейте в виду, что размер JSON-ответа значителен для запросов на максимальную продолжительность.
  • Рендеринг: Рендеринг чрезвычайно детализированных полигонов влияет на производительность. Рекомендуется использовать параметр enable_smoothing или клиентские библиотеки упрощения, чтобы уменьшить количество вершин для отображения.

Обработка ошибок

Для ошибок сервера 5xx следует реализовать логику повторных попыток с экспоненциальной задержкой. Однако не следует повторять попытки при ошибках клиента 4xx без изменения параметров:

  • INVALID_ARGUMENT (400) : Убедитесь, что ваша продолжительность положительна и находится в пределах лимита для выбранного режима, который составляет не более 3600 секунд для режима DRIVE или 7200 секунд для других режимов.
  • NOT_FOUND (404) : Точка начала координат не была привязана к дороге. Попробуйте переместить координаты ближе к известной улице или убедитесь, что регион поддерживается.