[OSM-talk-fr] Ne récupérer que les données d'une commune

Nicolas Dumoulin nicolas_openstreetmap.org at dumoulin63.net
Mar 4 Jan 07:29:40 UTC 2011


Re,

On avait déjà évoqué l'utilité de découper des données selon un polygone lors 
des premiers imports du bâti. L'intérêt étant de travailler quartier par 
quartier sur des zones denses.
En fait, c'est également très pratique au niveau d'une commune. En effet, lors 
de l'import du bâti par exemple, il est intéressant de ne travailler que sur 
les données de la commune en cours pour vérifier si des building=yes existent 
déjà, ou bien pour mettre à jour des bâtiments déjà existants.

Bref, je n'avais alors pas lu de solution, mais il en existe une. Il suffit 
d'utiliser osmosis avec un fichier polygone
http://wiki.openstreetmap.org/wiki/Osmosis/Polygon_Filter_File_Format
Pour construire le fichier polygone, on peut le faire à la main dans JOSM ou 
bien télécharger les chemins d'une relation (limites de commune par exemple). 
Il faut bien veiller à ce que les données au final ne constituent qu'un chemin 
et n'ait aucune étiquette. Puis il faut utiliser la moulinette en perl qu'on 
trouve ici :
http://trac.openstreetmap.org/browser/applications/utils/osm-extract/polygons

Il suffit ensuite d'utiliser osmosis pour extraire les données incluses dans ce 
polygone à partir de données téléchargées sur une zone plus grande ou de 
l'extrait geofabrik de votre région :
http://download.geofabrik.de/osm/europe/france/
Exemple de commande d'extraction :
osmosis --rb auvergne.osm.pbf  --bp file=ludesse.poly completeWays=yes --used-
node --write-xml file=ludesse.osm.bz2

Au final, il faut avoir perl et java installé sur sa machine, et passer 
quelques minutes à récupérer les données. Le tout pourrait bien sûr être 
automatisé dans JOSM :-)

À toutes fins utiles …

-- 
Nicolas Dumoulin
http://wiki.openstreetmap.org/wiki/User:NicolasDumoulin




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