Dans overpass une requête permet de ne sélectionner que les membres portant un certain rôle dans la relation:

rel(5430194 <http://www.openstreetmap.org/relation/5430194>);
way(r:"line");
(._;>;);out skel;

Après il faut en récupérer la version geojson...


Le 22/08/2016 à 15:25, François Lacombe a écrit :
Bonjour Philippe, Guillaume,

Personne n'est a coté de la plaque ;)

Cependant, seule la méthode m’intéresse.
En effet il y a déjà quelques outils qui parviennent à présenter graphiquement une relation mais j'ai besoin de l'implémenter de mon côté.

Relativement à l'exemple du résultat d'OSM.org. Il n'emploie pas une géométrie unique. Il affiche tous les objets de la relation et c'est vite le fouillis, en plus de devoir être découpé pour être intégré dans du geojson.
Voir ici : http://www.openstreetmap.org/relation/5430194
Je m'attends à récupérer une ligne toute simple sans les deux polygones aux extrémités. C'est la seule géométrie "simple" et représentative qu'on puisse exploiter sans faire appel à des FeatureCollections ou autre.

Et ça me semble très dur de trouver une méthode générique qui puisse faire cette synthèse parce qu'il semble qu'il y ait autant de possibilités que de cas :'(

François

Le 22 août 2016 à 14:45, Philippe Verdy <[email protected] <mailto:[email protected]>> a écrit :

    Le site web OSM le fait déjà quand on "explore" une relation: ça
    télécharge un jeu de données JSON permettant le rendu vectoriel de
    l'objet sélectionné par dessus le fond de carte. La Wikipédie
    francophone le fait aussi sur ses cartes (mais elle requête son
    propre serveur pour obtenir aussi des POIs géolocalisés sur
    Wikipédia ou des photos géolocalisées sur Commons)
    Attention en cas d'inclusion dans un script web : l'API ne doit
    pas surcharger le serveur interrogé (on a vu le problème ces
    jours-ci sur Overpass API avec des centaines de milliers de
    requêtes par heure au lieu de quelques dizaines habituellement,
    deux serveurs Overpass API sont tombés plusieurs fois de suite,
    peut-être à cause d'un script d'un réseau publicitaire abusif ou
    d'une appli non-officielle type Pokemon).
    Bref gérer des caches sur votre serveur et éviter de faire des
    requêtes automatiques en boucle par le client sur chaque page web
    du site ou chaque page de l'appli mobile, respecter les protocoles !


    Le 22 août 2016 à 14:30, François Lacombe
    <[email protected] <mailto:[email protected]>> a
    écrit :

        Bonjour à tous,

        Avec la récente mise en place et adoption croissante d'open
        event database, je me pose une question que certains ont déjà
        du résoudre.

        Existe-t-il une méthode générique pour convertir une relation
        OSM en geojson ?
        Cela reviendrait à convertir la relation en géométrie simple
        (points / polyline).

        Le besoin est d'attribuer une géométrie représentative à des
        événements dégagés par des ouvrages décrit avec une relation.
        Après on peut les envoyer sur open event db.

        Mais il peut y avoir des tonnes d'autres usages à cela, sans
        se limiter à cet exemple.

        J'aimerais éviter les scripts avec des if/else à rallonge pour
        cibler tel ou tel type de relation, à la recherche de tel ou
        tel objet qui au final n'est pas forcé de se trouver là où on
        l'attend, etc...


        Merci par avance pour vos retours

        François


        --
        *François Lacombe*

        fl dot infosreseaux At gmail dot com
        www.infos-reseaux.com <http://www.infos-reseaux.com>
        @InfosReseaux <http://www.twitter.com/InfosReseaux>

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



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




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


--
Christian Quest - OpenStreetMap France

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

Répondre à