OpenStreetMap pour les cyclistes

Introduction

Tâches fréquentes

Identifier un node/way dans Id

Passer en mode édition, sélectionner l'élément, et taper CTRL+i

Tagger une rue avec un DSC

Avec Id (dans un navigateur, donc), il suffit de…

  1. passer en mode édition,
  2. sélectionner la way,
  3. dans la section Bike Lanes (FR?), définir Left side = opposite_lan (bande cyclable) ou track (piste cyclable avec séparation)

Avec JOSM, voici comment 1) récupérer les DSC existants, en les corrigeant si nécessaire et 2) tagger des rues équipées de DSC.

Pour la précision, il est préférable d'indiquer de quel côté se trouve le DSC (cycleway:left), mais il arrive que ça ne soit pas spécifié. De même, on peut se contenter d'indiquer que le DSC se trouve du côté opposé à la direction de la rue (opposite), mais on peut spécifier son type (lane ou track). Il faut donc étendre la recherche à ces possibilités:

[out:json][timeout:25];
 
(
way["cycleway:left"~"opposite|opposite_lane|opposite_track"]({{bbox}});
way["cycleway"~"opposite|opposite_lane|opposite_track"]({{bbox}});
);
 
out body;
>;
out skel qt;

Si l'on fait une recherche dans un pays où l'on roule à gauche, il faudrait étendre la recherche à "cycleway:right".

De plus, il peut arriver qu'une rue en sens unique ait été dessinée dans le mauvais sens, auquel cas on peut étendre la rechercher à celles-ci en utilisant "oneway=-1" (puis en profiter pour corriger ces erreurs dans OSM…)

Récupérer tous les panneaux "Céder-le-passage-au-feu" via OverpassTurbo

[out:json][timeout:25];
(
  relation["restriction:bicycle"="give_way"];
);
out body;
>;
out skel qt;

Ajouter un panneau "Céder-le-passage-au-feu"

Son nom officiel est M12.

La manip est plus simple avec l'éditeur dédié JOSM écrit en Java, mais peut être effectuée directement dans un navigateur via l'éditeur en ligne Id.

Avec JOSM

https://josm.openstreetmap.de/wiki/Introduction

  1. Utiliser Overpass pour lancer une requête et récupérer les feux tricolores dans la commune, puis copier le fichier GPX dans le smartphone
  2. Sur le terrain, éditer le fichier en conséquence
  3. De retour à la base, copier le GPX modifié dans l'ordi
  4. Lancer JOSM
  5. ouvrir le fichier GPX où se trouve la carte des carrefours équipés d'un M12 tel que vérifié sur le terrain, le convertir en couche data
  6. supprimer la couche du fichier GPX, qui ne sert plus à ce stade
  7. afficher le fond de carte OSM via le menu Imagery, éventuellement la version noir et blanc vu la petite taille des points affichés par JOSM
  8. si nécessaire, désactiver l'affichage View > Wireframe view
  9. zoomer sur un M12
  10. via File > New Layer, ajouter une nouvelle couche qui accueillera les éditions
  11. Downloader les donnés avec File > Download in current view
  12. En maintenant la touche Shift appuyée, cliquer successivement sur la way qui mène à ce feu, le feu tricolore et la way qui en part ; l'ordre est important, puisqu'il détermine celui dans lequel les éléments seront affichés dans la boîte de dialogue ci-dessous
  13. ajouter une nouvelle relation via Presets > Relations > Turn Restriction
  14. éditer le tag restriction:bicycle=give_way
  15. à la way qui mène au feu, indiquer role=from, au feu, indiquer le role=via, et à la way qui en part, indiquer le role=to
  16. Avec Shift+A, activer la "couche GPX", supprimer le feu traité, et passer au suivant. Note : on peut sélectionner plusieurs points d'un coup, soit en les sélectionnant l'un après l'autre avec SHIFT+clics souris, soit en sélectionnant une zone avec SHIFT+maintien touche gauche de la souris
  17. à faire de temps en temps : repasser sur la couche "éditions", et uploader les données via File > Upload data
  18. Répondre "Survey" à la question "Specify the data source for the changes".

Notes :

Résumé des étapes:

Pour afficher les objets modifiés : https://josm.openstreetmap.de/wiki/Styles/Modified

On peut se simplifier un peu la tâche en ajoutant la Relation de type Restriction dans la barre d'outils. Encore mieux : se créer un Preset et l'ajouter à la barre d'outils :

<?xml version="1.0" encoding="UTF-8"?>
<presets xmlns="http://josm.openstreetmap.de/tagging-preset-1.0"
  icon="oneclick.png"
  fr.shortdescription="Ajout M12"
  fr.description="Preset pour simplifier un peu l'ajout d'une relation panneau M12">
  
  <item name="FR:M12 Turn Restriction" fr.name="M12 relation Turn Restriction" icon="presets/vehicle/restriction/give_way.svg" type="relation">
                <label text="Edit route" fr.text="Edition route" />
        
    <label text="---------------------------" />
 
                <key key="type" value="relation"/>
                <key key="restriction:bicycle" value="give_way"/>
    <key key="source" value="Survey" />
                <roles>
                        <role key="from" text="from" requisite="required" type="way" member_expression="highway"/>
                        <role key="via" text="via" requisite="required" type="node" member_expression="traffic_signal"/>
                        <role key="to" text="to" requisite="required" type="way" member_expression="highway"/>
                </roles>
        </item>
</presets>
Infos

Directement via un navigateur (Id)

  1. VRAIMENT NECESSAIRE ? Si la way sur laquelle est posé le feu tricolore est une route bidirectionnelle tracée à l'aide d'un way unique, la scinder en deux ways disinctes afin de pouvoir ensuite les sélectionner individuellement
  2. Sélectionner le feu, et y ajouter une relation (+ > Choose a parent relation > flèche vers le bas > New relation…) définie par ces tags:

    type=restriction
    restriction:bicycle=give_way
    name = (si le carrefour contient plusieurs M12, donner un nom à cette relation afin de pouvoir facilement la retrouver dans les étapes suivantes)

    All members > Traffic Signals
    role=via
     
  3. IMPORTANT Enregistrer la modification dans OSM, afin de rendre la relation visible dans les étapes suivantes; pour le moment (août 2019), iD ne permet pas de sélectionner immédiatement les ways from/to pour terminer de caractériser la relation
  4. De retour en mode édition, sélectionner la way par laquelle arrive le cycliste, ajouter la relation de restriction précédement créée en cliquant sur All Relations > "+" ("Choose a parent relation"), et définir son rôle comme "from"
  5. Sélectionner la way vers laquelle le cycliste pourra se diriger après le feu, ajouter la relation de restriction précédement créée, et définit son rôle comme "to"
  6. Enregistrer la modification.

Un moyen de se simplifier — un peu — la vie lorsque l'on rajoute plusieurs carrefours équipés de M12 : 1) commencer par ajouter une relation Restriction à tous les feux tricolores équipés de M12 en donnant à chaque fois un nom qui permet de les distinguer, 2) tout enregistrer dans OSM en un seul changeset, puis 3) ajouter les ways from/to à chacun des feux.

Résumé des étapes:

Infos

Expurger la carte des campings d'Archie's Campings

Ici, on suppose que l'utilisateur souhaite effectuer un voyage à vélo et ne garder des fichiers Archie's Campings que les campings à proximité d'un itinéraire. Il y aura donc deux fichiers GPX.

Infos

QuickOSM = plugin QGIS

Format Shapefile = format très couramment utilisé avec les logiciels SIG

Avec JOSM

Version 10327

  1. Avec File > Open, ouvrir le fichier GPX qui contient le parcours vélo. Si la trace est difficile à voir, dans la fenêtre Layers, faire un clic-droit sur la trace, sélectionner "Custom track drawing" et "Customise colour". Pour afficher une carte en fond d'écran, cliquer dans le menu Imagery. Pour déplacer la carte, maintenir appuyé le bouton droit de la souris
  2. Avec File > Open, ouvrir le fichier GPX qui contient les campings. Il est ajouté dans la fenêtre Layers sous le nom "Markers from…". La carte peut être difficile à voir si le nom des POI est affiché : pour les masquer, faire un clic-droit sur la couche POI dans la fenêtre Layers, et choisir "Show Text/Icons"
  3. Dans la fenêtre Layers, sélectionner ce nouvel item, faire un clic-droit et sélectionner "Convert to data layer". Ignorer le message d'avertissement

    À ce stade, les campings sont difficiles à voir : dans la fenêtre Layers, masquer la carte en cliquant sur l'icône en forme d'œil à gauche de la carte
     
  4. Dans le menu principal, cliquer sur File > New Layer
  5. Dans la fenêtre Layers, faire un clic-droit sur l'item "Converted from: Markers from…", et sélectionner Activate
  6. Dans la barre d'outils, sélectionner l'outil Lasso afin de sélectionner les campings le long de la trace
  7. Dans le menu Edit, choisir "Merge Selection", et cliquer sur OK. Dans la fenêtre d'avertissement, cliquer sur Continue
  8. Dans la fenêtre Layers, faire un clic-droit sur l'item "Data Layer 1", cliquer sur Activate
  9. Faire un nouveau clic-droit sur cet item, et sélectionner "Export to gpx"
  10. Copier le fichier dans le GPS et vérifier que la trace + campings apparaissent comme prévu. On peut aussi vérifier sur Internet en envoyant le GPX vers un site comme GPS Visualizer.

Pour rendre les waypoints plus visibles sur la carte:

Avec QGIS

En date de mai 2017, le site ne permet au mieux que de récupérer un fichier par pays, ce qui dans le cas de la France par exemple, donne un fichier GPX de plus de 9.000 waypoints.

Avec l'application QGIS, voici comment expurger la liste en ne gardant que les campings à quelques kilomètres d'un itinéraire en GPX:

  1. Install and launch QGIS Desktop (with or without GRASS). It's a heavy application, so it may take a while to load
  2. Install the POI Exporter plug-in
  3. Vector > GPS > GPS Tools > Browse: Choose POIs GPX file (Unselect all and keep Waypoints; If POIs are also available as polygons, you'll need to turn those into waypoints)
  4. Vector > GPS > GPS Tools > Browse: Choose track GPX file (Unselect all and keep Tracks; If routes are also available, you'll have to merge the two into a single item after converting them into shapefiles)
  5. Right-click on waypoints item > Save as > ESRI Shapefile, use original name (eg. if waypoints.gpx > Choose "waypoints")
  6. Remove original item (waypoints)
  7. Right-click on track item > Save as > ESRI Shapefile, use original name (eg. if tracks.gpx > Choose "tracks")
  8. Remove original item (tracks)

    At this point, you should only have two items, the shapefiles made from the original GPX items
     
  9. Vector > Geoprocessing Tools > Fixed distance buffer: In the "Input layer", choose the tracks item; The Distance parameter depends on the layer CRS units (Coordinate Reference System), so you'll have to experiment or google for the right way to fill this parameter (eg. in WGS84, try 0,05), or convert the layer into a meter-based CRS
  10. Vector > Geoprocessing Tools > Intersection: Select the waypoints item as source, Intersects, Reference features = Buffer > Apply
  11. Click on the button in the lower right-hand button ("Create layer with list of items"): You should have the waypoints item filtered in this new layer
  12. To save the layer as a GPX file, select it in the list, and click on the POI Exporter icon in the toolbar

Notes

Avec un script Python

Trouver comment manipuler des fichiers GPX, et calculer la distance les points des campings et les points qui constituent une trace.

Import libraries

- Shapely: http://toblerity.org/shapely/manual.html

- Geopandas: http://geopandas.org ; "Geometric operations are performed by shapely"

Comment préparer un cyclovoyage

Voici une façon de procéder pour créer une carte qui comporte à la fois le parcours et les choses à voir, hébergements, lieux de restauration et boutiques vélos:

  1. Google My Maps (GMM) offre un moteur de recherche plus puissant qu'OSM; pour cette raison, il est plus agréable à utiliser comme alternative à Umap pour créer une carte des choses à voir et des hébergements
  2. À l'aide d'OverpassTurbo, lancer une requête pour récupérer toutes les boutiques vélo dans la région, puis importer le fichier dans une nouvelle couche dans GMM. Utile en cas d'avarie.

    Note :
    - pour un affichage plus simple, expurger le fichier des sections "Extended Data"

    - utiliser "center" pour convertir en nodes les lieux dessinés sous forme de ways:

    [out:json][timeout:25];
    (
    node[shop=bicycle]({{bbox}});
    way[shop=bicycle]({{bbox}});
    );

    out center;

    Faire de même pour les supermarchés, et lieux d'hébergement
  3. Dans une autre fenêtre, dessiner un parcours à l'aide de Ride with GPS, qui, outre d'être un assez bon routeur, offre la possibilité d'utiliser différents fonds de carte (Google, OSM, etc.), ce qui a son utilité lorsqu'on hésite sur la qualité d'un passage en zone rurale. Exporter ce parcours, puis l'importer dans la carte dans une nouvelle couche afin de pouvoir afficher/masquer chaque section indépendamment

    On peut aussi profiter du fond de carte OpenCycleMap pour dessiner un parcours qui suit une véloroute : les données dans OSM sont moins propres parce que pas pensées pour proposer un parcours complet.

    Important : la version gratuite ne permet pas de modifier la couleur d'un parcours a posteriori. Comme le rouge est la couleur par défaut, qui est la couleur également utilisée par les véloroutes dans OpenCycleMap, changer de couleur avant de commencer à dessiner un parcours
     
  4. Le site IBPIndex permet d'analyser un parcours et d'ajouter en waypoints toutes les côtes : il suffit de downloader le résultat en GPX, puis de l'importer dans une nouvelle couche dans GMM
  5. Le cas échéant, en utilisant JOSM, expurger le fichier de campings d'Archie pour ne garder que ceux proches du parcours, puis importer ce fichier dans une nouvelle couche.
    Alternative dans GMM moins performante mais plus simple : utiliser la touche SHIFT/Maj et le bouton gauche de la souris pour sélectionner plusieurs points et les supprimer d'un coup 
  6. Une fois les différentes couches créées, on peut soit tout downloader sous la forme d'un seul fichier KML, soit downloader chaque couche dans un KML différent. À ce mois de mai 2017, l'application Maps.me pour Android ne sait pas gérer un KML avec plusieurs couches : il faut donc importer chaque couche indépendamment.

Récupérer les boutiques vélos et ne garder que celles proches du parcours

  1. Lancer une requête "shop=bicycle" dans OverpassTurbo en utilisant "out center;" pour convertir les polygones (ways) en nodes; télécharger au format GPX
  2. Fusionner les fichiers; éventuellement, supprimer les sections ExtendedData
  3. Dans GMM, downloader le parcours en KML, et le convertir en GPX
  4. Ouvrir parcours + boutiques dans JOSM, et expurger avec le lasso les boutiques trop éloignées
  5. Enregistrer le GPX expurgé et l'importer dans une nouvelle couche dans GMM

Manipuler un fichier GPS

Fusionner plusieurs fichiers GPS

Ouvrir plusieurs fichiers GPX, réorganiser les tracks/segments pour qu'ils soient cohérents, puis fusionner le tout pour obtenir une track avec un seul segment

Fusionner plusieurs tracks

GPX Editor

Modifier le sens des segments pour que l'itinéraire aille dans un seul sens

Fusionner plusieurs petits segments en un seul

Couper une trace (trk) qui contient un seul segment en tronçons de 80km

À la date de mai 2017, la seule solution trouvée est JaVaWa RTWtool:

  1. Ouvrir fichier, et sélectionner le fichier GPX
  2. Settings > Split: indiquer la distance (80 km)
  3. De retour dans la fenêtre principale, dans la partie Tracks, modifier Modification et choisir "Split (80km)"
  4. Convert

Si l'on veut, GPSVisualizer permet de découper en plusieurs fichiers le fichier GPX généré par RTWtool.

Autres logiciels testés sans succès: GpsTrackEditor (1.15 beta build 141), Gpx Editor (1.6.18.1649), GpsPrune (18.6 Build 343: Track > Split track into segments > Distance limits = 80km : "The track could not be split"), et GPSBabel (le paramètre "sdistance" a une utilisation un peu différente: "input track will be split into several tracks if the distance between successive track points is greater than the distance given as a parameter.").

Logiciels

JOSM

GPX Editor

Testing

1. Mettre à jour lien sur Sourceforge "GPX Editor Web Site" sur Sourceforge. https://sourceforge.net/projects/gpxeditor/

http://www.knackes.com/blog/index.php?2008/11/20/193-gpx-editor-1070

Manque:

3. A quoi sert Edit > Merge all tracks? Dans quel cas peut-on l'utiliser sans que ça donne n'importe quoi?

Edit > Rename Tracks: "Débordement d'entier." Comment utiliser cette fonction?

Impossible de renommer segment: Difficile de déplacer un segment d'une track dans une autre puisqu'elles s'appellent toutes "Track Segment #1". De même difficile, difficile de modifier leur ordre dans une track par drag 'n drop (pas de changement de forme de curseur : au dessus ou en dessous de l'item destination?).

Pourquoi pas de fonction "Merge All Segments into One Track"?

Sélectionner plusieurs folders (tracks) > Delete : Pas supprimées. F5 pour rafraîchir : sans résultat. On doit supprimer chaque folder/track manuellement.

Si on enregistre sous un nom de fichier existant, pas de confirmation avant écrasement.

GpsPrune

"GpsPrune is a [Java] program for loading, displaying and editing data from GPS receivers."

The User guide is a non-free PDF/ebook, but there's a howto.

Point - any point. It can contain any number of fields, but must have at least latitude and longitude.

Waypoint - a special type of point, which has a name. These generally appear in any order, often alphabetical. They are shown in Prune as a black square, and the names are listed on the left panel. Waypoints are not used for distance calculations by Prune, apart from in the "View -> Distances" dialog. When they're exported to Google Earth, each waypoint appears as a yellow pushpin with a name.

Track point - a point which is part of a track, which means that it doesn't have a name. The order in which track points appear is important, because the order defines the track. Track points are shown in Prune as blue squares, and points within the same track segment are joined together with a blue line. When they're exported to Google Earth, the line appears as a red line but the individual points aren't shown. Track points may have altitudes and may have timestamps, and may have other fields too.

Route point - some programs also distinguish between route points and waypoints, but a route is just an ordered list of waypoints, so Prune doesn't treat route points separately.

Si les traces se suivent, permet de fusionner des fichiers GPX en un seul, voire fusionner les segments en un seul.

GpsTrackEditor

Version la plus récente : 1.15 beta (build 141) de 2015.

Chaque élément dans la liste Tracks correspond à une section "<trkseg>" dans le fichier, et chaque élément dans la liste Points correspond à un "<trkpt>" dans le fichier.

Pour fusionner plusieurs <trk> en un seul, les sélectionner tous puis cliquer sur Merge.

Pour fusionner tous les <trkseg> en un seul, les sélectionner tous puis choisir Restructuring > Join.

Pour scinder un trkseg en deux, sélectionner un point, faire un clic-droit puis sélectionner Restructuring > Add break.

Note : même avec des traces qui se suivent, l'option Merge ne respecte l'ordre. Et la fonction Join dit Only consecutive track segments can be joined.". Essayer avec GpsPrune.

Quand on ouvre plusieurs fichiers GPX et que les parcours sont en sens inverse, il suffit de renommer les fichiers dans le bon ordre avant de les importer dans GTE.

GTE ne permet pas de fusionner plusieurs fichiers GPX en un seul : utiliser un batch avec GpsBabel.

Q&R

Impossible copier ou drag 'n dropper un segment d'un fichier dans un autre?

Seule solution, Google My Maps? GMM limite un fichier GPX à 5MB, mais le même fichier en KML est accepté.

Si bizarreries type spaghettis, ouvrir fichier dans GTE et ajouter timestamps au préalable. Si toujours NOK, vérifier que, dans le fichier, les segments se suivent dans chaque track, et que les tracks se suivent.

Impossible copier coordonnées d'un point dans presse-papier?

Comment annuler une restructuration (Track > Restructure)?

Impossible déplacer trace dans l'arborescence?

Pas possible passer de la carte à l'arborescence par CTRL+TAB?

Dans la liste Points, impossible sélectionner partie avec Shift pour supprimer plusieurs points?

Work-around: Maintenir touche Del appuyée, en faisant attention à ne pas dépasser (pas de CTRL-Z pour annuler : pour restorer les points supprimés par erreur, pas de raccourci clavier : il faut faire un clic droit sur chaque point puis Restore)

Note: Del = temporaire; Shift+Del = définitif

Après avoir sélectionné plusieurs fichiers, quelle différence entre Merge et Join? Que se passe-t-il si on clique sur Save As?

Si on sélectionner plusieurs segments dans une trace: Merge crée une nouvelle trace, avec les segments toujours distincts; Restructuring > Join crée une nouvelle trace où les segments sont effectivement fusionnés en un seul. Parfois, la fonction Join génère des effets étranges sur la carte (pas de fonction Undo?)

Merge = Save As = n'importe quoi (plat de spaghettis)

Join: "Only consecutive track segments can be joined."

"Adjust Time: Some points of a track do not have valid timestamps."

Cela se produit quand au moins un des <trkpt> ne possède pas de timestamp.

Pas de Undo/CTRL+Z?

Dans Tracks, signification triangle vs. ? vs. ??

Comment sélectionner une partie d'une track, et supprimer le reste ou le copier dans un autre fichier? Pas possible dessiner rectangle avec souris

TO CHECK

OSM ajouter un M12 via Id https://www.youtube.com/watch?v=TQyPGEQ0A2k

Que faire si une des deux ways est longue? Faut-il couper juste avant/après pour que la relation concerne juste le bon segment?

Josm : comment fermer carte une fois données modifiées et enregistrées? File > Delete Layer

TEMP

OpenCycleMap

Cycle.travel

Maps.me

 

Ajouter des infos dans OSM

linéaire cyclable

Impasse ouverte

Parking vélo

Dénivelé dans OSM?

M12

Ressources