Convertir GPX en GeoJSON
Gratuit, privé et rapide : tout se passe dans votre navigateur, votre fichier GPX n'est jamais envoyé.
GPX en GeoJSON : pourquoi convertir ?
Le GPX est le moyen standard de sortir une randonnée, une sortie vélo ou une course enregistrée d'un appareil GPS, de Strava, de Garmin Connect ou de Komoot. Pour afficher cette sortie sur une carte Leaflet ou MapLibre, tracer un profil altimétrique avec D3, ou la charger dans PostGIS ou une autre base de données, c'est le GeoJSON qu'il vous faut. Ce convertisseur lit les waypoints, itinéraires et traces du GPX et les écrit sous forme d'entités GeoJSON, avec l'altitude de chaque point comme troisième coordonnée. Les fichiers GPX arrivent avec une longue liste de champs standard presque toujours vides, comme magvar, hdop ou link2_type ; seuls les champs qui contiennent une valeur sont conservés, pour que les propriétés restent propres. Tout se passe dans votre navigateur avec GDAL, et le fichier n'est pas envoyé.
Comment convertir GPX en GeoJSON
- Déposez votre fichier .gpx dans le cadre, ou cliquez pour le choisir.
- Vérifiez la trace sur la carte, et cochez la case si vous voulez aussi chaque point de trace avec son heure.
- Cliquez sur Convertir et téléchargez le fichier GeoJSON, ou un zip avec un fichier par type de données.
Ce qui change lors de la conversion
Un fichier GeoJSON par type de données
Un GPX peut contenir à la fois des waypoints, des itinéraires et des traces, avec des champs différents pour chacun. Ils deviennent des fichiers distincts nommés waypoints.geojson, routes.geojson et tracks.geojson dans un zip. Un fichier qui ne contient qu'une trace, comme la plupart des exports de Strava ou d'une montre, donne un seul GeoJSON nommé d'après le GPX.
Une trace est un MultiLineString
Une trace GPX se compose de segments, et un nouveau segment commence quand l'enregistrement a été mis en pause ou que le signal a été perdu. Pour conserver ces interruptions, chaque trace devient une seule entité MultiLineString avec une ligne par segment. Un itinéraire est un simple LineString et un waypoint un Point.
L'altitude comme troisième coordonnée
Les altitudes des balises ele deviennent la troisième valeur de chaque coordonnée, comme le permet la RFC 7946, par exemple [12.504, 55.77, 38]. Les cartes web l'ignorent, mais elle est là pour les profils altimétriques et les vues 3D. Les points sans altitude gardent deux valeurs, et l'altitude des waypoints est aussi conservée dans une propriété ele.
Les horodatages nécessitent les points de trace
Une ligne GeoJSON n'a pas de place pour une heure par point. Cochez « Inclure aussi chaque point de trace » pour obtenir un fichier supplémentaire, track_points.geojson, avec une entité Point par point enregistré et, comme propriétés, son heure, son altitude, le numéro de trace et le numéro de segment. Ce fichier peut être volumineux : une sortie vélo de deux heures enregistrée chaque seconde compte plus de 7 000 points.
Les extensions des appareils ne sont pas lues
La fréquence cardiaque, la cadence, la puissance et la température que les montres et compteurs vélo enregistrent comme extensions de chaque point ne font pas partie du résultat. Les noms, descriptions, symboles et types des waypoints sont conservés.
À propos des formats
GPX
Le GPX (GPS Exchange Format) est le format XML utilisé par les appareils et applications GPS comme Garmin, Strava et Komoot. Il enregistre des waypoints, des itinéraires et des traces, avec en option l'heure et l'altitude. La version 1.1 de 2004, publiée par TopoGrafix, est celle utilisée aujourd'hui.
- Un waypoint est un point isolé ; un itinéraire est une ligne prévue passant par quelques points ; une trace est le parcours enregistré, souvent des milliers de points.
- Les traces peuvent porter un horodatage et une altitude pour chaque point.
- Les coordonnées sont toujours une latitude et une longitude WGS84.
- Le GPX a un jeu de champs fixe (nom, description, symbole, type et quelques autres) ; tout le reste doit aller dans des extensions.
GeoJSON
Le GeoJSON est un format texte JSON pour les objets géographiques, normalisé en 2016 sous le nom RFC 7946. C'est le format natif des cartes web comme Leaflet, MapLibre et Mapbox, ainsi que de nombreuses API.
- Les coordonnées sont une longitude et une latitude WGS84 (dans cet ordre).
- Points, lignes et polygones peuvent être mélangés dans un même fichier.
- Les propriétés peuvent être n'importe quelle valeur JSON, sans limite de longueur pour les noms de champs.
Questions fréquentes
Mon GPX est-il envoyé ?
Non. Votre navigateur convertit le fichier sur votre propre appareil. Rien n'est envoyé à un serveur, ce qui garde privés votre adresse et vos horaires d'entraînement.
Pourquoi ai-je obtenu un zip ?
Votre GPX contient plus d'un type de données, par exemple des waypoints et une trace. Chaque type devient un fichier GeoJSON distinct. Le GeoJSON peut mélanger points et lignes dans un même fichier : vous pouvez donc les fusionner plus tard si votre carte a besoin d'un seul fichier.
Puis-je ouvrir le GeoJSON dans geojson.io ou QGIS ?
Oui. Le résultat suit la RFC 7946 en longitude et latitude WGS84, que geojson.io, QGIS, Leaflet, MapLibre et GitHub savent tous lire.
Et les points d'itinéraire ?
Les points d'un itinéraire sont déjà les sommets de la ligne de l'itinéraire : ils ne sont donc pas écrits une seconde fois comme entités distinctes.