Flutter – Polilíneas redibujadas a la ruta más corta

2 minutos de lectura

Me enfrento a un problema curioso con respecto a las polilíneas en Flutter usando el google_map_polyline paquete.

Cuando voy a dar un paseo y empiezo la ruta (usando el Localización paquete para asegurar coordenadas actualizadas) las polilíneas se siguen dibujando sin problema si la ruta es en línea recta o se aleja del destino.

Sin embargo, si mi ruta intenta volver al punto de inicio, en algún momento, toda la polilínea dibujada se vuelve a dibujar considerando mi punto actual y la ruta más corta al punto de origen, como si hubiera hecho otra ruta (la más corta a mi punto actual).

¿Alguien ya se enfrentó a algo así?

Gracias.

  • Si tuviera que adivinar, diría que hay un error en la forma en que determina cómo dibujar la ruta actual. Sin embargo, es casi imposible decirlo sin ver ningún código. Sin embargo, para ser justos, está utilizando un paquete de Google Maps de terceros cuya última versión es 0.2.0+1 y se ha marcado como descontinuado oficialmente. No solo es posible que tenga errores, sino que esperaría que lo fuera.

    – Abion47

    7 mayo 2020 a las 19:09

  • @ Abion47 como dije, estoy usando el google_map_polyline para generar las polilíneas y establecerlas en el objeto GoogleMap (el paquete Polylines usa puntos de inicio y final para calcular la ruta que se dibujará). Tal vez esto sea un error, porque la ruta se vuelve a dibujar por completo si mi posición actual se acerca a la posición inicial (por lo tanto, no puedo hacer una ruta circular y esperar que se dibuje un “círculo” porque cuando me estoy acercando al punto de partida, la ruta se redibuja al camino más corto).

    – León

    8 de mayo de 2020 a las 9:27

  • Si todo lo que está haciendo es proporcionar un punto de inicio y final, entonces parece que el error podría ser obra suya. No he usado este paquete, pero parece que construye líneas que formulan la distancia más corta entre los dos puntos dados. Eso significa que si camina en círculo, la distancia más corta entre su posición inicial y su posición actual no reflejará su ruta general una vez que pase aproximadamente el punto medio. Haga que esto funcione de la manera que desea, deberá tomar muestras periódicas de la posición actual y dibujar las polilíneas varias veces para mostrar la ruta completa.

    – Abion47

    8 mayo 2020 a las 18:37

¿Ha sido útil esta solución?