Le 11 octobre 2017 à 08:32, David Marchal <pene...@live.fr> a écrit :

> Bonjour.
>
>
> Je viens de remarquer un bug sur l’import du GéoJSON du bâti : les
> polygones des bâtiments ne sont pas fermés, ce qui fait hurler JOSM ;
> apparemment, les bâtiments sont constitués d’une ligne dont le premier et
> le dernier point ont les mêmes coordonnées, mais ne sont pas le même point.
> Pour JOSM, le polygone n’est pas fermé.
>

Ce n'est PAS un bogue du GeoJSON fourni mais une limite de ce format qui ne
code pas les noeuds membres d'un way comme des entités séparées mais
représente les polygones fermés en indiquant seulement les même coordonnées
de fin que celle du début (ce n'est pas une obligation cependant car les
types "Polygon" et "MultiPolygon" d'un GeoJSON ne contiennent QUE des
chemins fermés pour représenter des surfaces, éventuellement avec des
"trous", et la fermeture est donc implicite; les chemins ouverts sont codés
en GeoJSON avec les types "LineString" ou "MultiLineString" pour les
graphes de lignes non nécessairement continues entre elles ; un "Polygon"
représente une surface connexe éventuellement trouée, un "MultiPolygon"
représente plusieurs de ces surfaces, par exemple des îles, y compris des
enclaves incluses dans une surface trouée et sans connexion de ces enclaves
avec la surface englobante)

Bref ce n'est pas une anomalie du fichier cadastral.

C'est plutôt un bogue (une limite) de l'extension d'import de GeoJSON, qui
crée des objets noeuds séparés pour chaque paire de coordonnées [x,y] dans
le GeoJSON sans les fusionner quand elles sont identiques.

C'est très facile à régler cependant: une fois le GeoJSON chargé, cliquer
sur "Valider" et le validateur de JOSM trouvera tous les noeuds superposés
créés par le plugin d'import de GeoJSON. Sélectionner ce groupe, et cliquer
sur "Corriger" pour fusionner un un clic ces noeuds.

Une autre limitation de l'import de GeoJSON dans JOSM est qu'un attribut
OSM "area=yes" n'est pas automatiquement ajouté à chacun des "Polygon"
GeoJSON importés: la surface importée devient alors une simple "ligne" dans
JOSM.

L'import de GeonJSON ne crée une relation OSM "type=multipolygon" que si un
des Polygon est "troué" (donc quand un "Polygon" contient plus d'un élément
dans son tableau "coordinates": le premier élément du tableau prendra dans
la relation créée par le plugin un rôle OSM "outer", et les suivants auront
un rôle OSM "inner"; dans un MultiPolygon, c'est le nombre d'éléments au
second niveau d'indice qui détermine si une relation OSM
"type=multipolygon" sera créée ou pas, un Multipolygone pouvant contenir
plusieurs "Polygon" troués ou pas...).

Pour un "MultiLineString" GeoJSON, le plugin d'import dans JOSM ne crée
aucune relation OSM "type=multipolygon", il crée juste des ways OSM séparés
(et là encore sans tenter de fusionner les noeuds superposés.

Bref GeoJSON représente différemment les géométries.
_______________________________________________
Talk-fr mailing list
Talk-fr@openstreetmap.org
https://lists.openstreetmap.org/listinfo/talk-fr
  • R... Vincent Privat
    • ... David Marchal
      • ... Christian Quest
        • ... ades_...@orange.fr
        • ... David Marchal
    • ... David Marchal
      • ... HELFER Denis (SNCF RESEAU / SIEGE SNCF RESEAU / DT GE APPUI PERFORMANCE)
        • ... David Marchal
          • ... Christian Quest
            • ... Vincent Privat
      • ... Philippe Verdy
  • R... Frédéric Rodrigo

Répondre à