[OSM-dev-fr] Outil pour manipuler les données OSM

yvecai yvecai at gmail.com
Mar 15 Mar 10:47:07 GMT 2011


On 15. 03. 11 09:22, rldhont wrote:
> Le 15/03/2011 09:19, yvecai a écrit :
>> On 15. 03. 11 08:22, rldhont wrote:
>>> Le 14/03/2011 22:59, yvecai a écrit :
>>>> Pour www.pistes-nordiques.org, je découpe les ways à chaque 
>>>> intersection pour permettre ensuite à l'utilisateur du site de 
>>>> sélectionner une à une les différentes sections et de faire son 
>>>> propre topo.
>>>> J'ai fait un script en Python qui travaille directement sur le XML 
>>>> avec Etree pour çà, mais c'est un peu l'usine à gaz pour conserver 
>>>> les relations intactes.
>>>>
>>>> Y-aurait-il un outil mieux adapté? J'ai pas trop d'idée, et aucune 
>>>> expérience en SQL, mais pourrais-je faire çà directement avec 
>>>> Postgresql ?
>>>
>>> Il y a rien de plus simple ;-)
>>>
>>> En fait il te faut 3 tables :
>>> * nodes
>>> * ways
>>> * way_nodes
>>>
>>> La table way_nodes possèdent 3 colonnes :
>>> * way_id
>>> * node_id
>>> * sequence (index du node dans le way)
>>>
>>> Et donc avec cette table tu peux facilement sélectionner tous les 
>>> noeuds qui sont des intersections, des débuts et des fins, et donc 
>>> tous les segments.
>> Ben avec python, j'ai bien du faire des 'tables' pour accélérer le 
>> traitement. La question pourrait se reformuler comme suit:
>> Est-ce qu'avec un peu de connaissance en SQL je peux réussir à 
>> découper un way en deux avec un outil pour Postgreql, si oui lequel.
>
>
> Dans quel sens 'découper' ?
> Obtenir la nouvelle géométrie ? obtenir la nouvelle séquence des nodes ?
A partir d'un way, en faire deux.

    way0 ( node 1, node2, node3)
    relation0 ( way0)

vers:

    way1(node1, node2)
    way2(node2, node3)
    relation0(way1, way2)

et supprimer way0
Yves
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.openstreetmap.org/pipermail/dev-fr/attachments/20110315/900a6f0e/attachment.html>


Plus d'informations sur la liste de diffusion dev-fr