<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p>Je ne suis pas sûr que ça donne un résultat pertinent et surtout
en ne définissant pas clairement ce que tu veux en sortie je pense
qu'on peut sortir plein de choses bien variées. Si tu veux
précisément la géométrie de la ligne sans les autres objets de la
relation (même cas pour une ligne de bus) il faut filtrer sur le
rôle et éventuellement le type de géométrie (linestring ou
polygon).<br>
</p>
<p>Avec postgis, un ST_Buffer négatif, permet de virer ces
excroissances... mais ça marchera sur ce type de géométrie pas
forcément sur d'autres.</p>
<p>Il y a aussi une fonction "squelette" dans postgis, elle permet
par exemple d'avoir une ligne médiane d'un polygone.</p>
<p>Pour le placement de textes, c'est utile, ça permet d'avoir des
textes qui suivent la forme globale plutôt que d'être placé à
l'horizontal, mais je n'ai pas encore essayé d'utiliser ça pour
les rendus.</p>
<p>Bref, vaste sujet ;)<br>
</p>
<br>
<div class="moz-cite-prefix">Le 23/08/2016 à 16:59, François Lacombe
a écrit :<br>
</div>
<blockquote
cite="mid:CAG0ygLepOfOpz+UOL_ELSqheDrBrgxuBYkhiT+W=-HYr_XzW8w@mail.gmail.com"
type="cite">
<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.<br>
<br>
</div>
<div>Pas sur que ce soit plus clair :)<br>
</div>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div class="gmail_signature" data-smartmail="gmail_signature">
<div dir="ltr"><b>François Lacombe</b><br>
<br>
fl dot infosreseaux At gmail dot com<br>
<a moz-do-not-send="true"
href="http://www.infos-reseaux.com" target="_blank">www.infos-reseaux.com</a><br>
<a moz-do-not-send="true"
href="http://www.twitter.com/InfosReseaux"
target="_blank">@InfosReseaux</a></div>
</div>
</div>
<br>
<div class="gmail_quote">Le 22 août 2016 à 16:45, Christian
Quest <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:cquest@openstreetmap.fr" target="_blank">cquest@openstreetmap.fr</a>></span>
a écrit :<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<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 moz-do-not-send="true"
href="http://www.openstreetmap.org/relation/5430194"
target="_blank">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 class="h5"> <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 moz-do-not-send="true"
href="http://www.openstreetmap.org/relation/5430194" target="_blank">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 class="gmail_extra"><br>
</div>
<div class="gmail_extra">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 class="gmail_extra"><br>
</div>
<div class="gmail_extra">François<br>
<br>
</div>
<div class="gmail_extra">
<div class="gmail_quote">Le 22 août
2016 à 14:45, Philippe Verdy <span
dir="ltr"><<a
moz-do-not-send="true"
href="mailto:verdy_p@wanadoo.fr"
target="_blank">verdy_p@wanadoo.fr</a>></span>
a écrit :<br>
<blockquote class="gmail_quote"
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 class="gmail_extra"><br>
<div class="gmail_quote">
<div>
<div>Le 22 août 2016 à
14:30, François Lacombe
<span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:fl.infosreseaux@gmail.com" target="_blank">fl.infosreseaux@gmail.com</a>></span>
a écrit :<br>
</div>
</div>
<blockquote
class="gmail_quote"
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
data-smartmail="gmail_signature">
<div dir="ltr"><b>François
Lacombe</b><br>
<br>
fl dot
infosreseaux
At gmail dot
com<br>
<a
moz-do-not-send="true"
href="http://www.infos-reseaux.com" target="_blank">www.infos-reseaux.com</a><br>
<a
moz-do-not-send="true"
href="http://www.twitter.com/InfosReseaux" target="_blank">@InfosReseaux</a></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
</div>
</div>
<span>______________________________<wbr>_________________<br>
Talk-fr mailing list<br>
<a
moz-do-not-send="true"
href="mailto:Talk-fr@openstreetmap.org" target="_blank">Talk-fr@openstreetmap.org</a><br>
<a
moz-do-not-send="true"
href="https://lists.openstreetmap.org/listinfo/talk-fr" rel="noreferrer"
target="_blank">https://lists.openstreetmap.or<wbr>g/listinfo/talk-fr</a><br>
<br>
</span></blockquote>
</div>
<br>
</div>
<br>
______________________________<wbr>_________________<br>
Talk-fr mailing list<br>
<a moz-do-not-send="true"
href="mailto:Talk-fr@openstreetmap.org"
target="_blank">Talk-fr@openstreetmap.org</a><br>
<a moz-do-not-send="true"
href="https://lists.openstreetmap.org/listinfo/talk-fr"
rel="noreferrer"
target="_blank">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 moz-do-not-send="true" href="mailto:Talk-fr@openstreetmap.org" target="_blank">Talk-fr@openstreetmap.org</a>
<a moz-do-not-send="true" href="https://lists.openstreetmap.org/listinfo/talk-fr" target="_blank">https://lists.openstreetmap.<wbr>org/listinfo/talk-fr</a>
</pre>
</blockquote>
</div></div><span class="HOEnZb"><font color="#888888"><pre cols="72">--
Christian Quest - OpenStreetMap France</pre>
</font></span></div>
______________________________<wbr>_________________
Talk-fr mailing list
<a moz-do-not-send="true" href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a>
<a moz-do-not-send="true" href="https://lists.openstreetmap.org/listinfo/talk-fr" rel="noreferrer" target="_blank">https://lists.openstreetmap.<wbr>org/listinfo/talk-fr</a>
</blockquote></div>
</div>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre wrap="">_______________________________________________
Talk-fr mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Talk-fr@openstreetmap.org">Talk-fr@openstreetmap.org</a>
<a class="moz-txt-link-freetext" href="https://lists.openstreetmap.org/listinfo/talk-fr">https://lists.openstreetmap.org/listinfo/talk-fr</a>
</pre>
</blockquote>
<pre class="moz-signature" cols="72">--
Christian Quest - OpenStreetMap France</pre></body></html>