Donc , pour résumer, comment n'obtenir que les *ways* membres de la relation et surtout leur géométrie ? (pour importer dans PostGIs, ou visionner dans QGis)

Mon but est de comprendre ces requêtes pour en faire d'autres sur des données plus fréquemment mises à jour.

Là je veux juste obtenir un multipolygone de l'ancienne Bourgogne, comme je le fais par exemple avec QuickOSM dans QGis, mais là uniquement en ligne de commande.

Merci

Samy

Le 11/09/2017 à 13:53, Philippe Verdy a écrit :


Le 11 septembre 2017 à 13:04, marc marc <[email protected] <mailto:[email protected]>> a écrit :

    Mais en ligne de commande si :

    1) récupérer le minimum contenant les infos souhaitées :
    wget -O bourgogne.osm
    'http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][
    
<http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][>"disused:admin_level"=4];out;'

    2) filtrer pour ne garder que la relation, les chemins et le nom
    cat bourgogne.osm | egrep '(<relation id|<member type="way" |<tag
    k="name")'

    On peux bien sur combiner les 2 :
    wget -O -
    'http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][
    
<http://overpass-api.de/api/interpreter?data=rel[name=Bourgogne][>"disused:admin_level"=4];out;'
    | egrep '(<relation id|<member type="way" |<tag k="name")' >
    bourgogne.osm


Atention ce egrep supprime trop de choses, tu n'obtiendra pas un fichier OSM valide, ni valide en XML - pour la vadlité XML il faut ajouter les balises de fermeture et ajouter un objet racine englobant le tout (et faire attention aux attributs des tags qui peuvent être sur des lignes séparées et il manquera alors des ">" pour terminer les tags d'ouverture)
- mais pour OSM cet objet racine doit en plus suivre le schéma OSM).

Bref ce que tu obtiens c'est juste un objet plus ou moins indenté mais pas sûr d'avoir tous les attributs.

De plus rien n'interdit à Overpass de renvoyer du XML compacté (sans aucun saut de ligne ni indentation).

Bref il vaut mieux utiliser un vrai filtre XML basé sur le DOM après parsing.

Noter aussi que XML/OSM n'est pas le seul format de sortie possible pour Overpass. XML est un peu "verbeux" avec ses tags de fermeture. D'autres formats possibles sont CSV, Turtle, ... Overpass permet de construire son format de sortie adhoc (utilisant la syntaxe de formatage pour le CSV). On a des exemples sur le wiki.


_______________________________________________
Talk-fr mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/talk-fr


_______________________________________________
Talk-fr mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/talk-fr

Répondre à