Afficher la limite extérieure de 2 relations accolées

Bonjour,

Je cherche à afficher plusieurs régions contiguës sur Umap, mais sans afficher les limites propres de chaque région.

Sur cette carte (exemple), je voudrais pouvoir montrer uniquement la limite extérieure de l’ensemble “Bretagne + Pays-de-Loire + Centre Val-de-Loire”.

https://framacarte.org/fr/map/framatest_2268#7/47.066/3.395

J’ai compris comment afficher les 2 relations via OverPass Turbo, mais cela affiche aussi les limites de chaque relations.

[out:json];
// gather results
(
  (
  relation["name"="region1"];
  relation["name"="region2"];
  relation["name"="region3"];
  )
);
// print results
out body;
>;
out skel qt;

Je me doute qu’il y a une astuce pour faire LA bonne requêtre OverPass, mais je ne n’arrive pas à m’en sortir avec la doc d’OverPass :frowning:

Salut,

A vrai dire je ne sais pas si ce que tu cherche à faire est vraiment faisable (facilement en tout cas). Ce que tu décris ressemble à une Union ou une Fusion dans les SIG, sauf que Overpass ne manipule (il me semble) pas la géométrie des données OSM, c’est plutôt un outil de filtrage.

La doc d’overpass parle bien d’Union, de Différence et d’Intersection mais pour avoir essayé l’Union je ne comprend pas vraiment ce que ça recouvre dans le cadre d’overpass, en tout cas ça ne donne pas ce que tu cherches ou alors je l’ai mal utilisé.

Bonjour,
Si tu maitrises un peu JOSM, tu peux en détourner l’usage pour récupérer ce que tu veux, soit en récupérant les régions puis en les fusionnant, soit en passant par comcommaker (http://comcommaker.openstreetmap.fr/) pour générer directement l’union. Par contre, comcom ne descend pas jusqu’à la région, il va falloir sélectionner département par département.
Et évidemment, ne rien envoyer de JOSM vers les serveurs OSM !
JB.

Merci pour les réponses :slight_smile:

@Sefoun Sans parler de géométrie, j’attendais à pouvoir faire une requête OSM type type :

“relation 1 + relation 2, exclure tous les nœuds qui appartiennent à la fois la relation 1 et la relation 2”

C’est pas exactement ce que je cherche, mais ça s’en approcherait à 99%.

@JBosm Je maîtrise pas du tout Josm :frowning: Mais alors pas du tout.

Je vais tenter de virer tous les nœuds en double à partir du résultats de ma requête OverPass :confused:

Bonjour,

Justement je cherchais à comprendre les opérateurs d’intersections et de différences d’Overpass.
Voici mon résultat pour des communes: 3 communes, en déduire le périmètre.
C’est itératif, donc on peut en ajouter.
Si quelqu’un a des idées d’optimisation, je suis preneur.


Bruno

http://overpass-turbo.eu/s/hfg

[out:json][timeout:120];

//sélection de la commune de Pornic
relation[boundary=administrative][name=Pornic];
//les way de Pornic dans le résultat intermédiaire
way(r)->.resultat; 


// **** Ajout de chauvé
relation[boundary=administrative][name="Chauvé"];
way(r)->.a ;


// intersection de resultat avec a
way.resultat.a->.diff;
// le nouveau résultat est la réunion des 2 intersections (!)
( 
  (.resultat; - .diff) ;
  (.a; - .diff) ;
 )->.resultat;

// **** Ajout de Préfailles
relation[boundary=administrative][name="Préfailles"];
way(r)->.a ;

// intersection de resultat avec a
way.resultat.a->.diff;
// le nouveau résultat est la réunion des 2 intersections (!)
( 
  (.resultat; - .diff) ;
  (.a; - .diff) ;
 );


//Le résultat précédant (_) est réuni avec ses nodes
(._;>;);

out skel qt;

@BrunoC Ça marche super bien ! Et c’est à 90% ce que je cherchais à faire.

Comme idée d’amélioration :

Là quand on exporte depuis OverPass Turbo, ça donne une FeatureCollection avec énormément de Feature de geometry LineString.

À l’import dans Umap, on voit bien la forme, mais le visualisateur de données affiche chaque Feature. Pas très pratique : / Cf. carte ci-dessous :

https://framacarte.org/fr/map/framatest_2268#6/48.857/4.592

Je sais pas si c’est faisable, mais l’idéal serait une requête qui à l’export donne une FeatureCollection avec une Feature unique, de geometry MultiPolygon

Tu as essayé un export gpx ?

Bruno

J’ai testé un export GPX et un autre KML, toujours le même résultat :confused:

Umap affiche chacune des ways comme une entrée à part, plutôt qu’une relation unique qui contiendrait toutes les ways.