Convertendo SHP para OSM

From OpenStreetMap Wiki
Jump to: navigation, search

Essa página relata as experiências do usuário Nighto para converter shapefiles (.shp) para o formato do OSM.

Os shapefiles foram convertidos para .osm usando o Ogr2osm.

(Não consegui rodar o Ogr2osm no Windows, vide este problema. Enquanto isso, recomendo a utilização de uma máquina virtual com o Ubuntu.)

Instalando o ogr2osm.py no Ubuntu

sudo apt-get install python-gdal git
git clone git://github.com/pnorman/ogr2osm.git
cd ogr2osm
git submodule update --init

Instruções antigas

(O passo a passo a seguir é de 2010 e instalará uma versão antiga.)

Para instalar o ogr2osm no Ubuntu:

sudo apt-get install python-gdal libgdal-perl libproj-dev gdal-bin dbview openjdk-7-jre-headless
wget http://svn.openstreetmap.org/applications/utils/import/ogr2osm/ogr2osm.py
wget http://svn.openstreetmap.org/applications/utils/import/ogr2osm/SimpleXMLWriter.py

Rodando o ogr2osm com os parâmetros adequados para converter os shapefiles do IPP

(Caso converta .shp de outras fontes, YMMV)

python ogr2osm.py -p "+proj=utm +zone=23 +south +ellps=GRS67 +towgs84=-66.87,4.37,-38.52" --encoding=iso-8859-1 arquivo.shp

Dividindo o .osm gerado em .osm menores a partir de um bbox

Como alguns arquivos são muito grandes (o quadras.osm ficou com mais de 400MBs!) é preciso extrair bounding boxes (separar um retângulo) para edição no JOSM. Para isso, baixe o osmosis e obtenha as quatro coordenadas limite do bbox (o jeito mais fácil é usando a opção Exportar no OSM), e então:

java -Xmx1048m -cp "osmosis-0.35/osmosis.jar:osmosis-0.35/lib/default/*" org.openstreetmap.osmosis.core.Osmosis --read-xml-0.5 \
enableDateParsing=no file=Quadras.osm --migrate --bounding-box top=-22.92297 left=-43.18026 bottom=-22.92849 right=-43.17241 \
completeWays=yes completeRelations=yes --write-xml file=teste-catete.osm