User:Ajoessen/Osmosis

From OpenStreetMap Wiki
Jump to: navigation, search

Nachfolgend werden einige Batchdateien für osmosis wiedergegeben.

OSM-Extrakte aus Geofabrik-Extrakten herstellen

Als Quelle werden hier wahlweise die osm.bz2, osm oder osm.pbf-Dateien verwendet.

osmpbf2osm.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf --write-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm

wandelt das pbf-Format in normales osm-Foramt um; für Programme, die pbf noch nicht unterstützen.

nrw-relationen.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.bz2 --tf reject-nodes --tf reject-ways --tf accept-relations type=route,line,network --write-xml nrw-relationen.osm

schneidet alle Routen- und Netzwerkrelationen aus, zur Weiterverarbeitung in Routenlisten

nrw-grenzen.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.bz2 --tf accept-ways boundary=administrative --used-node --tf accept-relations boundary=administrative --write-xml nrw-grenzen.osm

schneidet alle Grenzrelationen fürs Rendern mit Kosmos aus

osmpower.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm --tf accept-ways power=* --tf accept-relations route=power --used-node --write-xml power.osm

schneidet alle Hochspannungsleitungen samt Relationen und Umspannwerke aus, fürs Rendern mit Kosmos

boundingbox.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm --bb left=8.13 right=8.49 bottom=51.1 top=51.29 --write-xml Schmallenberg.osm

schneidet einen Rechteckbereich aus dem nrw-osm-file

osmpbf-boundingbox.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat -v --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf --bb left=6.715 right=6.725 bottom=51.25 top=51.26 --write-xml Moenchenwerth.osm

Bei Verwendung des pbf-Formats ist die Abfrage wesentlich schneller durch.

oepnv.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf  --tf accept-nodes amenity=bus_station highway=bus_stop,tram_stop public_transport=platform,stop_position --tf reject-ways --tf reject-relations outPipe.0=POI --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf  --tf accept-relations type=route_master,route --used-way --used-node outPipe.0=Relationen  --merge inPipe.0=POI inPipe.1=Relationen --wx oepnv.osm

filtert alle ÖPNV-typische Relationen, zusätzlich Bus- und Starenbahnhaltestellen, die neben den Straßen liegen, fürs Rendern mit Kosmos oder Mapnik

road.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf --tf accept-ways highway=road --used-node --tf reject-relations --write-xml road-nrw.osm

liefert alle Wege, die lediglich als road getaggt sind.

HSK-Bushalte.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm --tf accept-nodes highway=bus_stop --tf reject-ways --tf reject-relations --bb left=7.86 right=8.97 bottom=51.09 top=51.55 --write-xml HSK-Bus.osm

liefert alle Bushaltestellen in einem Rechteckbereich

nametag.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pbf D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm.pbf   --nkv  keyValueList="name.Mindergangelt" --write-xml name1.osm

hier wird als Alternative zum tag-Filter der node-key-Filter verwendet.

OSM-Daten in lokale PostgreSQL-Datenbank einladen und auslesen

osmosisdbneu.bat

%ProgramFiles%\PostgreSQL\8.4\bin\createdb -U postgres -E UTF8 -O osmuser osmosisdb
%ProgramFiles%\PostgreSQL\8.4\bin\createlang -U postgres plpgsql osmosisdb
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "%ProgramFiles%\PostgreSQL\8.4\share\contrib\postgis-1.5\postgis.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "%ProgramFiles%\PostgreSQL\8.4\share\contrib\postgis-1.5\spatial_ref_sys.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "%ProgramFiles%\PostgreSQL\8.4\share\contrib\_int.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "%ProgramFiles%\PostgreSQL\8.4\share\contrib\hstore.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "D:\Karten\OpenStreetMap\osmosis\script\pgsnapshot_schema_0.6.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "D:\Karten\OpenStreetMap\osmosis\script\pgsnapshot_schema_0.6_action.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "D:\Karten\OpenStreetMap\osmosis\script\pgsnapshot_schema_0.6_bbox.sql"
%ProgramFiles%\PostgreSQL\8.4\bin\psql -U postgres -d osmosisdb -f "D:\Karten\OpenStreetMap\osmosis\script\pgsnapshot_schema_0.6_linestring.sql" 

legt eine neue "snapshot-Schema"-Datenbank für osmosis an

osmosis2db.bat

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-xml file=bbox.osm --write-pgsql user="osmuser" database="osmosisdb"

lädt die osm-Datei in die Datenbank

osmosisdb-power.bat:

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pgsql user="osmuser" database="osmosisdb" validateSchemaVersion="no" --dd --tf accept-ways power=* --tf accept-relations route=power --used-node --write-xml power.osm

liest die Hochspannungsdaten aus der Datenbank

osmosisdb-boundingbox.bat:

D:\Karten\OpenStreetMap\osmosis\bin\osmosis.bat --read-pgsql user="osmuser" database="osmosisdb" --dbb left=6.478 right=6.706 bottom=51.285 top=51.406 --write-xml Krefeld.osm

schneidet einen Bereich aus den Datenbankbeständen. Dies geht um einiges schneller als das ausschneiden aus dem osm-File. Dafür dauert das Einladen in die Datenbank ein wenig...