Osmosis: Unterschied zwischen den Versionen

Aus Enduro4ever
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Osmosis ist ein Java Tool zur Verarbeitung von OSM Daten. Insbesondere soll hier auf dessen Fähigkeiten zur Extraktion von gefilterten Date…“)
 
Zeile 33: Zeile 33:
 
==Filtern==
 
==Filtern==
 
Es können Daten, sog. [http://wiki.openstreetmap.org/wiki/Map_features Map Features] mittels entsprechender Filtermechanismen ausgelesen werden, z.B.:
 
Es können Daten, sog. [http://wiki.openstreetmap.org/wiki/Map_features Map Features] mittels entsprechender Filtermechanismen ausgelesen werden, z.B.:
 +
 +
bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations
 +
 +
und:
  
 
*Gewässer
 
*Gewässer
bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --tf accept-ways waterway=* natural=water --tf reject-ways highway=* --used-node --write-xml water.osm
+
  --tf accept-ways waterway=* natural=water --tf reject-ways highway=* --used-node --write-xml water.osm
 
*Marschland
 
*Marschland
bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --tf reject-ways highway=* --way-key-value keyValueList="wetland.*,natural.mud,landuse.mud,natural.marsh,landuse.marsh,natural.wetland,landuse.wetland,natural.mud,landuse.mud" --used-node --write-xml wetland.osm
+
  --tf reject-ways highway=* --way-key-value keyValueList="wetland.*,natural.mud,landuse.mud,natural.marsh,landuse.marsh,natural.wetland,landuse.wetland,natural.mud,landuse.mud" --used-node --write-xml wetland.osm
 
*Eisenbahn unbenutzt
 
*Eisenbahn unbenutzt
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --way-key-value keyValueList="railway.abandoned,railway.disused" --used-node --write-xml railunused.osm  
+
  --way-key-value keyValueList="railway.abandoned,railway.disused" --used-node --write-xml railunused.osm  
 
*Eisenbahn benutzt
 
*Eisenbahn benutzt
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --way-key-value keyValueList="railway.rail,railway.light_rail,railway.narrow_gauge,railway.preserved" --used-node --wx rail.osm  
+
  --way-key-value keyValueList="railway.rail,railway.light_rail,railway.narrow_gauge,railway.preserved" --used-node --wx rail.osm  
 
*Bahnübergänge
 
*Bahnübergänge
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" completeWays=yes --tf reject-ways --tf reject-relations --node-key-value keyValueList="railway.crossing,railway.level_crossing"  --wx crossings.osm  
+
  completeWays=yes --tf reject-ways --node-key-value keyValueList="railway.crossing,railway.level_crossing"  --wx crossings.osm  
 
*Autobahnen
 
*Autobahnen
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --way-key-value keyValueList="highway.motorway,highway.motorway_link" --used-node --wx motorway.osm  
+
  --way-key-value keyValueList="highway.motorway,highway.motorway_link" --used-node --wx motorway.osm  
 
*Brücken
 
*Brücken
 
**Strassenbrücken(ohne Autobahnen)
 
**Strassenbrücken(ohne Autobahnen)
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --tf accept-ways highway=* --tf reject-ways highway=motorway,motorway_link --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_str.osm  
+
  --tf accept-ways highway=* --tf reject-ways highway=motorway,motorway_link --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_str.osm  
 
**Autobahnbrücken
 
**Autobahnbrücken
  bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations --tf accept-ways highway=motorway_link,motorway --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_autob.osm  
+
  --tf accept-ways highway=motorway_link,motorway --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_autob.osm
 
+
**Eisenbahnbrücken
 
+
--tf accept-ways railway=* --tf reject-ways railway=tram --way-key-value keyValueList="bridge.yes,tunnel.yes" --used-node --write-xml brdg_rail.osm  
  
 +
==Zusammenführen==
 +
../../../osmosis/bin/osmosis.bat --rx brdg_autob.osm --rx brdg_rail.osm --rx brdg_str.osm --merge --merge --wx bridge.osm
  
 
Die Option --bounding-box top=53.171082 left=12.197485 bottom=51.884308 right=14.313812 verwendet statt des Poly File ein angegebenes Quadrat.
 
Die Option --bounding-box top=53.171082 left=12.197485 bottom=51.884308 right=14.313812 verwendet statt des Poly File ein angegebenes Quadrat.

Version vom 9. Juli 2012, 06:54 Uhr

Osmosis ist ein Java Tool zur Verarbeitung von OSM Daten.

Insbesondere soll hier auf dessen Fähigkeiten zur Extraktion von gefilterten Daten eingegangen werden:

Poly Files

  • Region auswählen mittels Poly-Files
    • Z.B. im Mapsource eine Route um die zu wählende/auszuschließende Region zeichnen und als GPX Datei speichern,
    • Unter Geocaching Dresden die Route zu einem Poly-Format konvertieren lassen, wobei auch Bereiche subtrahiert werden können(!). Hier ein Beispiel für eine Region Brandenburg ohne den Stadtkern von Berlin:

stadt.poly:

OhneStadtkern
1
   11.257995329797268 53.572945771738887
   14.745570290833712 53.572945771738887
   14.804556760936975 51.358598582446575
   11.228502094745636 51.345123834908009
   11.257995329797268 53.572945771738887
END
!2
   13.433060646057129 52.613096237182617
   13.636822700500488 52.550568580627441
   13.712075930088758 52.487453855574131
   13.558443272486329 52.46721382252872
   13.543910980224609 52.348673343658447
   13.414055267348886 52.38614983856678
   13.263030052185059 52.374894618988037
   13.190138339996338 52.433366775512695
   13.17908763885498 52.51664400100708
   13.296424727886915 52.585252225399017
   13.334921384230256 52.630392713472247
   13.433060646057129 52.613096237182617
END
END

Filtern

Es können Daten, sog. Map Features mittels entsprechender Filtermechanismen ausgelesen werden, z.B.:

bin/osmosis.bat --rx brandenburg.osm.bz2 --bp file="stadt.poly" --tf reject-relations

und:

  • Gewässer
 --tf accept-ways waterway=* natural=water --tf reject-ways highway=* --used-node --write-xml water.osm
  • Marschland
 --tf reject-ways highway=* --way-key-value keyValueList="wetland.*,natural.mud,landuse.mud,natural.marsh,landuse.marsh,natural.wetland,landuse.wetland,natural.mud,landuse.mud" --used-node --write-xml wetland.osm
  • Eisenbahn unbenutzt
--way-key-value keyValueList="railway.abandoned,railway.disused" --used-node --write-xml railunused.osm 
  • Eisenbahn benutzt
--way-key-value keyValueList="railway.rail,railway.light_rail,railway.narrow_gauge,railway.preserved" --used-node --wx rail.osm 
  • Bahnübergänge
completeWays=yes --tf reject-ways --node-key-value keyValueList="railway.crossing,railway.level_crossing"  --wx crossings.osm 
  • Autobahnen
--way-key-value keyValueList="highway.motorway,highway.motorway_link" --used-node --wx motorway.osm 
  • Brücken
    • Strassenbrücken(ohne Autobahnen)
--tf accept-ways highway=* --tf reject-ways highway=motorway,motorway_link --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_str.osm 
    • Autobahnbrücken
--tf accept-ways highway=motorway_link,motorway --way-key-value keyValueList="bridge.yes" --used-node --write-xml brdg_autob.osm 
    • Eisenbahnbrücken
--tf accept-ways railway=* --tf reject-ways railway=tram --way-key-value keyValueList="bridge.yes,tunnel.yes" --used-node --write-xml brdg_rail.osm 

Zusammenführen

../../../osmosis/bin/osmosis.bat --rx brdg_autob.osm --rx brdg_rail.osm --rx brdg_str.osm --merge --merge --wx bridge.osm

Die Option --bounding-box top=53.171082 left=12.197485 bottom=51.884308 right=14.313812 verwendet statt des Poly File ein angegebenes Quadrat.

Links