Rechercher des objets dans l'enveloppe externe d'un multipolygone

Bonjour,
J’ai voulu récupérer les îles et récifs ayant un nom en Mer Rouge. Il existe un multipolygone « Mer Rouge », j’ai cru l’affaire pliée avec OverPassTurbo :
(place=islet OR place=island OR natural=reef) AND name=* in « Mer Rouge »
Sauf qu’il me manque plein d’objets car de nombreuses îles sont des ways tagués à la fois place=island et natural=coastline, membres inner du multipolygone : comme ils sont les trous, ils sont exclus…
Et moi qui croyais que les trous faisaient partie du gruyère :confused:
Je n’ai pas trouvé de solution dans OverPassTurbo et j’avoue ne pas manipuler les requêtes OverPass brutes. Si je prends la Bbox comprenant la Mer Rouge je récupère en plus des centaines d’îlots sur les fleuves.

Si quelqu’un a une solution simple et élégante (surtout simple :wink: ?

Bonjour.

Malheureusement Overpass ne génère pas de surface (type area) correspondant à l’enveloppe extérieure des multipolygones. Une approche possible est de récupérer tous les ways référencés en tant que inner par le multipolygone, puis les îles et ilôts référençant ces ways. C’est ce que fait cette requête : overpass turbo

Le résultat n’est pas complet, mais cela est apparemment dû aux données. Par exemple le way Way: 14212044 | OpenStreetMap mériterait un place=island. Les îles qui manquent au nord-ouest font partie du Golfe de Suez, si tu en as besoin la requête est assez simple à compléter : n’hésite pas à demander.

Antoine.

1 Like

En attendant j’ai fait « à la papatte » avec l’outil que je maîtrise :

  • chargé les membres dans Josm
  • supprimé les outer
  • supprimé ceux sans nom
  • exporté en geoJson
  • ajouté dans ma couche uMap
    Comme c’est une donnée très statique je ne vais pas faire une MAJ toutes les semaines, mais je reste preneur d’une solution plus classe, pour la beauté et mon instruction…

Merci,
j’ai dû faire mon 2e post en même temps que ta réponse. Je vois qu’on a eu une approche similaire mais pas avec les mêmes outils. Je vais étudier ta requête avec attention !