Suavizado y fidelidad
Puedes personalizar la apariencia y la precisión de los polígonos de salida con los parámetros polygon_fidelity y enable_smoothing. Si bien estas opciones son independientes, funcionan en conjunto para determinar la forma final.
polygon_fidelity: Resolución. Controla el tamaño de las celdas de cuadrícula subyacentes (celdas S2) que se usan para calcular el área alcanzable.LOW: Usa celdas de cuadrícula más grandes. Es ideal para cubrir áreas grandes sin espacios, lo que da como resultado una forma generalizada.MEDIUM: Precisión equilibrada.HIGH: Usa celdas de cuadrícula más pequeñas. Da como resultado un ajuste más preciso a la red de rutas, pero puede producir áreas vacías o "agujeros" donde la red de rutas es escasa.- Predeterminado: Si no se especifica, el servicio selecciona de forma dinámica la fidelidad según la duración del viaje solicitada.
enable_smoothing: La estética. Controla si se redondean los bordes afilados de las celdas de cuadrícula definidas por la fidelidad.false(sin procesar): Muestra el cálculo geométrico exacto. Los bordes aparecen dentados o escalonados, lo que refleja las celdas de cuadrícula. Es ideal para la precisión analítica, como las pruebas estrictas de punto en polígono.true(suavizado): Aplica un algoritmo de posprocesamiento para redondear las esquinas. Es ideal para la visualización en mapas.
Cómo interactúan: La fidelidad establece el detalle de referencia sobre el que actúa el algoritmo de suavizado.
- Alta fidelidad + suavizado: Produce una forma detallada y de aspecto orgánico que sigue de cerca los finales de las rutas.
- Baja fidelidad + suavizado: Produce una forma de "mancha" amplia y generalizada.
Tamaño de la carga útil y renderización
Las isócronas grandes pueden contener miles de coordenadas, y las cargas útiles pueden tener entre 300 y 500 kilobytes.
- Ancho de banda: Ten en cuenta que el tamaño de la respuesta JSON es significativo para las solicitudes de duración máxima.
- Renderización: La renderización de polígonos extremadamente detallados afecta el rendimiento.
Considera usar el parámetro
enable_smoothingo las bibliotecas de simplificación del cliente para reducir el recuento de vértices para la visualización.
Manejo de errores
Implementa una lógica de reintento con retirada exponencial para los errores del servidor 5xx.
Sin embargo, no vuelvas a intentar los errores del cliente 4xx sin cambiar los parámetros:
INVALID_ARGUMENT (400): Verifica que la duración sea positiva y esté dentro del límite para el modo seleccionado, que es de 3,600 segundos como máximo para DRIVE o de 7,200 segundos para otros modos.NOT_FOUND (404): El punto de origen no se ajustó a una ruta. Intenta acercar la coordenada a una calle conocida o asegúrate de que se admita la región.