6 votes

Carte hors ligne avec itinéraire - iOS

Je suis en train de travailler sur un projet qui concerne une application de carte hors ligne. J'ai utilisé MapBox pour la cartographie hors ligne. Je peux ajouter des annotations sur cette carte et tracer des lignes.

Mais j'ai besoin d'une carte hors ligne avec itinéraire. J'étais fatigué de trouver une bibliothèque de routage hors ligne ou un moteur de routage hors ligne à intégrer dans Xcode.

Nous vous remercions si l'un d'entre vous a un indice ou un exemple de projet/code pour mettre en œuvre cette solution.

Note : Ce site La question est liée à la mienne. Personne n'a répondu à cette question non plus

Merci.

4voto

Daniel Points 14150

Hors ligne implique l'absence d'internet, l'iPhone est toujours capable, dans la plupart des cas, d'obtenir la position actuelle de l'utilisateur grâce au GPS. Cela signifie que vous pouvez être certain de pouvoir trouver l'emplacement actuel de l'utilisateur hors ligne.

Le problème avec le routage hors ligne est que le téléphone est stupide, il ne se souvient que de la quantité x de MB de données en termes de tuiles à afficher.

Le routage est quelque chose de complètement différent, il prend un point A et un point B et détermine le chemin le plus court, le plus rapide, le moins cher ou tous ces chemins entre A et B.

Il faut beaucoup plus que des tuiles pour y parvenir, après tout, si vous pensez en termes de MVC, les tuiles ne sont que des vues de décharge, elles ne savent pas grand-chose de ce qui les entoure, sauf ce qu'elles contiennent. C'est le "contrôleur" qui calcule les itinéraires, et pour cela, vous devez être en possession de toutes les données couvrant la zone souhaitée pour le routage.

Pour chaque service de cartographie, vous trouverez un itinéraire différent, peut-être pas en termes de chemin réel, mais en termes de temps estimé, d'effort, etc. Ce que cela signifie, c'est que si vous avez vos propres cartes (hors ligne dans une base de données), c'est à vous d'utiliser ces données, et vous devez donc créer votre propre algorithme de routage, ce qui, j'en suis sûr, n'est pas ce que vous voulez faire.

Quelles sont donc vos options ? Pour l'instant, ce n'est tout simplement pas possible dans la mesure où vous le souhaitez. Même si vous disposez d'une base de données de cartes hors ligne, vous avez toujours besoin d'un algorithme de routage.

0voto

Anshad Rasheed Points 1543

Dans le cas d'une utilisation hors ligne, vous pouvez également obtenir l'emplacement actuel en utilisant uniquement le GPS et vous pouvez tracer des lignes de superposition de l'emplacement actuel au point intéressant pour lequel vous devez faire quelques calculs.

0voto

Umamaheswari Points 11

Vous pouvez créer des itinéraires hors ligne en utilisant la bibliothèque Graphhopper et en créant des données graphiques qui contiennent des noms de rue, des itinéraires et des bords. Les données du graphique sont prises dans un fichier .pbf qui peut être pris par (Use this : http://download.geofabrik.de ) et utiliser les commandes (dans le Terminal) qui ont été données par ( https://github.com/graphhopper/graphhopper-ios/tree/master/graphhopper-ios-sample ) pour convertir les .pbf en données graphiques. Ensuite, nous pouvons faire un routage hors ligne avec ses instructions (tout est donné dans l'exemple de graphhopper iOS).s'il vous plaît se référer à cela soigneusement. parce que j'ai fait et terminer mon projet avec succès.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X