Varios dispositivos emiten su señal cada 30 segundos, y la aplicación muestra las localizaciones en un mapa que permite al usuario saber donde está el autobús en cualquier instante.
Hasta la captura y visualización muy bien – Pero en seguida hemos detectado un problema: Debido a los edificios altos presente en algunas de las rutas y el margen de error de los mismo dispositivos, muchas veces los autobuses aparecen en medio de bloques de edificios, o volando sobre parques y playas.
La solución ha sido recurrir a las matemáticas del instituto: Usando el teorema de Pitágoras, calculamos la distancia en linea recta entre cada punto del itinerario trazado y la posición devuelta por el GPS. Una vez obtenida, las ordenamos de menor a mayor distancia, y colocamos el autobús en la posición “correcta” más cercana.
____
Teorema de Pitágoras : «la suma de los cuadrados de los catetos es igual al cuadrado de la hipotenusa»
Aunque para distancias mayores de unos metros, conviene usar el formula Haversine que calcula distancias entre dos puntos sobre esferas.