All links of one day
in a single page.
<Previous day - Next day>

rss_feedDaily RSS Feed
floral_left The Daily Shaarli floral_right
——————————— Tuesday 17, January 2023 ———————————

Contribuer à la carte géographique OpenStreetMap avec JOSM : quelques notes

OpenStreetMap (OSM) : carte géographique libre et collaborative.
JOSM : logiciel codé en Java d'édition de cette carte. Installation.


Renommer une voie

Sur la carte OSM, j'ai identifié une voie (une rue) qui ne change pas de nom au bon endroit. Le cadastre, les plaques de rue et la Base Adresse Nationale sont cohérentes et en désaccord avec OSM.

Notons que Google Maps procède à un changement de nom de la voie à autre mauvais endroit, en sus d'écorcher le nom de la voie.

Pour corriger :

  • Découper la voie au bon endroit (outil split way) : sélectionner un nœud (point) qui constitue la voie puis appuyer sur la touche « p » du clavier. Dans mon cas, un nœud était disponible là où je devais couper, mais sinon, il faut déplacer un nœud existant puis arrondir le tracé s'il ne correspond plus à la courbure de la voie en cliquant sur l'une des petites croix du tracé. Lors de la coupe, JOSM demandera quel segment doit conserver l'historique des modifications, les attributs, etc., sachant que le segment 1 est celui à gauche de la coupure. Évidemment, il faut choisir le segment qui ne sera pas renommé, celui qui correspond déjà à la réalité ;

  • Joindre / fusionner deux segments de voie pour en faire une seule voie (outil combine way : clic sur un segment, maintenir la touche « ctrl » du clavier, clic sur le deuxième segment, relâcher « ctrl », puis touche « c » du clavier. JOSM demandera les attributs (nom, type de voie, etc.) et l'appartenance des relations qu'il faut conserver. Pour les attributs : garder ceux qui correspondent à la réalité, ceux qui appartiennent au segment originellement bien nommé. Pour les relations : tout conserver (surtout les frontières / limite / boundary), sauf celle de type « associatedStreet » qui correspond au segment mal nommé (penser à supprimer cette relation après la fusion depuis le panneau de droite de JOSM) ;

  • Avant d'envoyer tes modifications dans la base de données d'OSM, vérifie attentivement les membres de toutes les relations et tous les attributs des voies découpées / fusionnées, etc. Notamment, si, lors d'une fusion de voie, tu as eu un message « Change directions? », assure-toi de la cohérence d'un attribut « oneway » ou de son absence : il indique le sens de circulation, et il est utilisé par les calculateurs d'itinéraires. Lire ci-dessous.


Ajouter un nœud

  • Pour un nœud que tu positionneras à la main, je l'ai déjà écrit, il faut utiliser l'outil Draw Nodes en double-cliquant à l'endroit où ajouter le nœud. Raccourci clavier : « a » ;

  • Pour ajouter un nœud à des coordonnées GPS précises connues à l'avance, utiliser l'outil Add Node. Raccourci clavier : « D » (donc « maj » + « d »).


Créer une relation de type « associatedStreet »

  • Sélectionner les objets qui seront membres de la relation (rue, numéros de voie, etc.). Pas forcément tous (il sera possible de les ajouter par la suite), mais au moins un (il n'est pas possible de créer une relation sans membre) ;

  • Comme d'habitude avec OSM, le type d'un objet est défini… par un attribut « type ». Il suffit donc de créer une relation (depuis le panneau « relations » à droite), et d'ajouter un attribut « type » avec la valeur « associatedStreet » ;

  • Autres attributs d'une relation « associatedStreet ») :
    • « name » = très généralement le nom de la voie ;

    • « ref:FR:FANTOIR » = en France, identifiant de la voie dans le référentiel français FANTOIR. Pour le trouver : BANO, FANTOIR brut, saisir le code INSEE (pas postal) d'un bled, identifier la voie et prendre le code de la colonne « Fantoir OSM ». Note : le fichier FANTOIR publié par le gouvernement ne contient pas toutes les voies (y compris celles qui existent depuis des décennies). L'API FANTOIR les contient : curl 'https://plateforme.adresse.data.gouv.fr/api-fantoir/communes/<code_INSEE_bled>/voies.csv'. Code à utiliser dans OSM = colonnes code_commune + code_rivoli + cle_rivoli.
  • Ajouter les objets sélectionnés à l'étape 1 comme membres de la relation.


Sens de circulation

Quand on trace une voie dans JOSM, le tracé est orienté (au sens d'un graphe orienté) : du premier nœud créé pour le tracé vers le dernier nœud du tracé. D'où les flèches que l'on voit sur un tracé quand on clique dessus.

Le sens du tracé ne détermine pas forcément le sens de circulation de la voie. Ce qui compte, c'est l'attribut « oneway » de cette voie :

  • Absence = « no » (parfois « 0 », mais ça me semble être déprécié) : double sens ;

  • Présence + « yes » (parfois « 1 », mais ça me semble être déprécié) : sens unique qui suit celui du tracé ;

  • Présence + « -1 » : sens unique, inversé par rapport à celui du tracé.

Sources : 1, 2, 3.


Explication erreurs

Sens de quelques erreurs retournées par le validateur de JOSM :

  • « Incomplete multipolygon relation » : une relation contient des voies « incomplètes ». C'était déjà le cas avant mon intervention, donc je l'ai ignoré ;

  • « House number too far from street » : un bâtiment membre d'une relation de type « associatedStreet » est trop loin de la voie membre de cette relation. Dans mon cas, la voie était découpée en plusieurs segments, et tous les segments n'étaient pas membres de la relation correspondante à cette voie.

D'autres erreurs expliquées.

-