Utiliser des itinéraires Google Maps sur un GPS Garmin? (Partie 2)

Avertissement

Avant tout, merci de lire cet article.


J'ai publié il y a quelques temps un premier article sur GMapToGPX. Mais il faut maintenant que j'explique comment je suis parvenu à faire un itinéraire un peu plus complexe.

La problématique

Lorsque nous réalisons un itinéraire, si c'est pour aller du point A au point B sans modification de notre part, le GPS fait cela très bien. Mais si je veux faire ce trajet en passant par des routes de mon choix, c'est un peu plus complexe.

Pour faire l'itinéraire, relisez l'article "Utiliser des itinéraires Google Maps sur un GPS ?". En suivant la technique jusqu'au bout, j'ai eu la mauvaise surprise de voir non pas 1 itinéraire composé de plusieurs WAYPOINT mais bien plusieurs itinéraires... Damned... D'où peut bien venir le problème !

Le problème est dans le fichier...

(Pour les puristes, nous sommes en face d'un code XML.)

En analysant le texte, je me suis rendu compte de quelque chose de troublant. Alors que dans mon esprit l'itinéraire était considéré comme une seule "route", il semble que l'exportateur en ait créé un certain nombre.

Chaque route est composée d'une définition, d'un nom et de points de route.

Exemple:


<rte>
<name>route0</name>
<cmt>Avenue Albert 1er/N275 to Ruelle à l'Buse</cmt>
<desc>Avenue Albert 1er/N275 to Ruelle à l'Buse</desc>
<rtept lat="50.72201" lon="4.51628">
<name>GRTP-001</name>
<cmt>Prendre la direction sud sur Avenue Albert 1er/N275 vers Rue Albert 1er/N275 </cmt>
<desc>Prendre la direction sud sur Avenue Albert 1er/N275 vers Rue Albert 1er/N275 </desc>
</rtept>
<rtept lat="50.70747" lon="4.52148">
<name>GMLS-001</name>
<cmt>Ruelle à l'Buse</cmt>
<desc>Ruelle à l'Buse</desc>
</rtept>
</rte>

  • <rte>...</rte>: ces balises encadrent une route
  • <name>...</name>: entre ces balises se trouve le nom de la route
  • <cmt>...</cmt> et <desc>...</desc>:dans mon cas, je retrouve la même info comme description et comme commentaire
  • <rtept>...</rtept>: définit un point de passage pour lequel nous aurons aussi un nom, un commentaire et une description.
A partir de là, il devient assez facile de modifier le fichier pour en faire ce que l'on veut: de x routes --> une seule. Pour cela, il va falloir effacer du fichier le début des définitions de chaque route sauf de la première et ne laisser que les points de passage. Dans mon exemple, en supposant que ce ne soit pas la première route, je vais effacer les lignes:

<rte>
<name>route0</name>
<cmt>Avenue Albert 1er/N275 to Ruelle à l'Buse</cmt>
<desc>Avenue Albert 1er/N275 to Ruelle à l'Buse</desc>

Et je vais rechercher aussi les lignes contenant
sauf la toute dernière. Un petit truc tout logique, dans le fichier, vous avez certainement remarqué que nous avions </rte>
directement suivi de <rte>. Cela rend l'effacement plus simple.

Mon exemple devient donc ceci:

<rtept lat="50.72201" lon="4.51628">
<name>GRTP-001</name>
<cmt>Prendre la direction sud sur Avenue Albert 1er/N275 vers Rue Albert 1er/N275 </cmt>
<desc>Prendre la direction sud sur Avenue Albert 1er/N275 vers Rue Albert 1er/N275 </desc>
</rtept>
<rtept lat="50.70747" lon="4.52148">
<name>GMLS-001</name>
<cmt>Ruelle à l'Buse</cmt>
<desc>Ruelle à l'Buse</desc>
</rtept>


Une fois cette opération terminée, vous pouvez enregistrer le fichier. Attention, certains de mes tests ont raté à cause de mon éditeur de texte. J'ai du chercher un éditeur qui me permettait d'enregistrer en UTF-8. (Le début du fichier signale bien: <?xml version="1.0" encoding="UTF-8"?> )

L'éditeur que j'ai utilisé est PSPad disponible sur www.pspad.com

Il reste maintenant à mettre le fichier dans le GPS... et à prendre la route.

Commentaires

Eric a dit…
Attention

J'ai oublié de préciser que la qualité de la navigation dépendait assez fort des cartes utilisées.

Google a utilisé une cartographie Télé-Atlas. Si votre GPS utilise une autre cartographie, il se pourrait que vous rencontriez des problèmes.

Posts les plus consultés de ce blog

Utiliser des itinéraires Google Maps sur un GPS Garmin ?

Voir le temps restant pour mon impression 3D

RaspBerry Pi: découverte