<html><head><meta http-equiv="Content-Security-Policy" content="script-src 'self'; img-src * data:;"></head><body style="line-height: initial; background-image: initial; background-color: rgb(255, 255, 255);"><div id="response_container" style="outline: none" contenteditable="false"> <div name="BB10" dir="auto" style="width: 100%; font-size: initial; font-family: Calibri, "Slate Pro", sans-serif, sans-serif; color: rgb(31, 73, 125); padding: initial; text-align: initial; background-color: rgb(255, 255, 255);"> Bonjour </div><div name="BB10" id="BB10_response_div" dir="auto" style="width: 100%; font-size: initial; font-family: Calibri, "Slate Pro", sans-serif, sans-serif; color: rgb(31, 73, 125); padding: initial; text-align: initial; background-color: rgb(255, 255, 255);"><br></div><div name="BB10" id="BB10_response_div" dir="auto" style="width: 100%; font-size: initial; font-family: Calibri, "Slate Pro", sans-serif, sans-serif; color: rgb(31, 73, 125); padding: initial; text-align: initial; background-color: rgb(255, 255, 255);">Quid de l'algorithme de Douglas-Peucker ? C'est efficace pour éliminer le bruit. Quant à l'appliquer sur autre chose qu'une <u>unique</u> ligne <u>non fermée</u> cela demandera un peu d'adaptation.</div> <div name="BB10" dir="auto" style="width: 100%; font-size: initial; font-family: Calibri, "Slate Pro", sans-serif, sans-serif; color: rgb(31, 73, 125); padding: initial; text-align: initial; background-color: rgb(255, 255, 255);"> <br style="display:initial"></div> <div id="blackberry_signature" name="BB10" dir="auto"> <div name="BB10" dir="auto" style="font-size: initial; font-family: Calibri, "Slate Pro", sans-serif, sans-serif; color: rgb(31, 73, 125); padding: initial; text-align: initial; background-color: rgb(255, 255, 255);">LeTopographeFou</div> </div></div><div id="_original_msg_header"> <table width="100%" style="border-spacing: 0px; display: table; outline: none; background-color: white;" contenteditable="false"> <tbody><tr><td colspan="2" style="padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"> <div class="hasInlineEdits" style="border-right: none; border-bottom: none; border-left: none; border-top: 1pt solid rgb(181, 196, 223); padding: 3pt 0in 0in; font-family: Tahoma, "BB Alpha Sans", "Slate Pro"; font-size: 10pt;"> <div id="from"><b>De:</b>fl.infosreseaux@gmail.com</div><div id="sent"><b>Envoyé:</b>23 août 2016 8:00 AM</div><div id="to"><b>À:</b>talk-fr@openstreetmap.org</div><div id="reply_to"><b>Répondre à:</b>talk-fr@openstreetmap.org</div><div id="subject"><b>Objet:</b>Re: [OSM-talk-fr] Extraire une géométrie représentative d'une relation</div></div></td></tr></tbody></table><div style="border-right: none; border-bottom: none; border-left: none; border-top: 1pt solid rgb(186, 188, 209); display: block; padding: initial; font-size: initial; text-align: initial; background-color: rgb(255, 255, 255);"></div> <br> </div><!--start of _originalContent --><div name="BB10" dir="auto" style="line-height: initial; outline: none; background-image: initial;" contenteditable="false"><div dir="ltr"><div><div><div><div><div>En fait, je donnais un exemple et le but est de trouver une méthode pour toutes les relations.<br></div>Toutes n'ont pas de membre avec le role line.<br><br></div>On peut se demander ce qu'est une géométrie représentative (je raisonne tout haut)<br></div>Le périmètre qui encadre tous les membres par exemple, mais trop "grossier".<br></div>Ou alors la concaténation des plus gros membres de la relation<br></div><div>Il doit surement y avoir d'autres moyens de l'exprimer<br></div><div><br>Dans mon exemple, on devrait être capable de retrouver la forme de la ligne qui constitue le plus gros de la relation en éliminant le "bruit" aux extrémités provoqué par des objets proches les uns des autres au regarde de l'étendue de la relation.<br></div><div>Mais surtout il ne faut travailler que sur la géométrie des membres, dès qu'on passe aux attributs, ca revient à définir des règles spécifiques dont je ne veux pas.</div><div><br></div><div>Pas sur que ce soit plus clair :)<br></div></div><div style="display: block;" class="elided-text"><br clear="all"><div><div><div dir="ltr"><b>François Lacombe</b><br><br>fl dot infosreseaux At gmail dot com<br><a href="http://www.infos-reseaux.com">www.infos-reseaux.com</a><br><a href="http://www.twitter.com/InfosReseaux">@InfosReseaux</a></div></div></div>
<br><div style="display: block;" class="elided-text">Le 22 août 2016 à 16:45, Christian Quest <span dir="ltr"><<a href="mailto:cquest@openstreetmap.fr">cquest@openstreetmap.fr</a>></span> a écrit :<br><blockquote style="margin:0 0 0 0.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<p>Dans overpass une requête permet de ne sélectionner que les
membres portant un certain rôle dans la relation:</p>
<p>rel(<a href="http://www.openstreetmap.org/relation/5430194">5430194</a>);<br>
way(r:"line");<br>
(._;>;);out skel;<br>
</p>
<p>Après il faut en récupérer la version geojson...<br>
</p><div><div>
<br>
<div>Le 22/08/2016 à 15:25, François Lacombe
a écrit :<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>Bonjour Philippe, Guillaume,<br>
<br>
</div>
Personne n'est a coté de la plaque ;)<br>
<br>
</div>
Cependant, seule la méthode m’intéresse.<br>
</div>
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é.<br>
<br>
</div>
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.<br>
<div>
<div>
<div>
<div>
<div>Voir ici : <a href="http://www.openstreetmap.org/relation/5430194">http://www.openstreetmap.org/<wbr>relation/5430194</a><br>
</div>
<div>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.<br>
</div>
<div>
<div>
<div style="display: block;" class="elided-text"><br>
</div>
<div style="display: block;" class="elided-text">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 :'(<br>
</div>
<div style="display: block;" class="elided-text"><br>
</div>
<div style="display: block;" class="elided-text">François<br>
<br>
</div>
<div style="display: block;" class="elided-text">
<div style="display: block;" class="elided-text">Le 22 août 2016 à 14:45,
Philippe Verdy <span dir="ltr"><<a href="mailto:verdy_p@wanadoo.fr">verdy_p@wanadoo.fr</a>></span>
a écrit :<br>
<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
<div dir="ltr">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)
<div>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).</div>
<div>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 !<br>
<div><br>
</div>
</div>
</div>
<div style="display: block;" class="elided-text"><br>
<div style="display: block;" class="elided-text">
<div>
<div>Le 22 août 2016 à 14:30,
François Lacombe <span dir="ltr"><<a href="mailto:fl.infosreseaux@gmail.com">fl.infosreseaux@gmail.com</a>></span>
a écrit :<br>
</div>
</div>
<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
<div>
<div>
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>Bonjour à tous,<br>
<br>
</div>
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.<br>
<br>
</div>
Existe-t-il une méthode
générique pour convertir
une relation OSM en
geojson ?<br>
</div>
Cela reviendrait à convertir
la relation en géométrie
simple (points / polyline).<br>
<br>
</div>
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.<br>
</div>
Après on peut les envoyer sur
open event db.<br>
<br>
</div>
Mais il peut y avoir des tonnes
d'autres usages à cela, sans se
limiter à cet exemple.<br>
<div>
<div>
<div>
<div>
<div>
<div><br>
</div>
<div>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...<br>
</div>
<div><br>
<br>
</div>
<div>Merci par avance
pour vos retours<br>
<br>
</div>
<div>François<br>
</div>
<div>
<div><br>
<br>
--<br clear="all">
<div>
<div>
<div>
<div dir="ltr"><b>François
Lacombe</b><br>
<br>
fl dot
infosreseaux
At gmail dot
com<br>
<a href="http://www.infos-reseaux.com">www.infos-reseaux.com</a><br>
<a href="http://www.twitter.com/InfosReseaux">@InfosReseaux</a></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
</div>
</div>
______________________________<wbr>_________________<br>
Talk-fr mailing list<br>
<a href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a><br>
<a href="https://lists.openstreetmap.org/listinfo/talk-fr">https://lists.openstreetmap.or<wbr>g/listinfo/talk-fr</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<br>
______________________________<wbr>_________________<br>
Talk-fr mailing list<br>
<a href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a><br>
<a href="https://lists.openstreetmap.org/listinfo/talk-fr">https://lists.openstreetmap.or<wbr>g/listinfo/talk-fr</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>______________________________<wbr>_________________
Talk-fr mailing list
<a href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a>
<a href="https://lists.openstreetmap.org/listinfo/talk-fr">https://lists.openstreetmap.<wbr>org/listinfo/talk-fr</a>
</pre>
</blockquote>
<br>
<br>
</div></div><font color="#888888"></font><pre>--
Christian Quest - OpenStreetMap France</pre>
</div>
<br>______________________________<wbr>_________________<br>
Talk-fr mailing list<br>
<a href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a><br>
<a href="https://lists.openstreetmap.org/listinfo/talk-fr">https://lists.openstreetmap.<wbr>org/listinfo/talk-fr</a><br>
<br></blockquote></div><br></div>
<!--end of _originalContent --></div></body></html>