Osmosis

Aus Enduro4ever
Zur Navigation springen Zur Suche springen

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
  • Marinas(noch unvollständig)

in polygons: Z.279 leisure=marina [0x9 resolution 18]

--way-key-value keyValueList="leisure.marina,natural.sea" --used-node --write-xml marina.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 verwendet statt des Poly File ein angegebenes Quadrat.

Offroad:

--bounding-box top=53.171082 left=12.197485 bottom=51.884308 right=14.313812

Um Brandenburg:

--bounding-box top=53.696022 left=11.076513 bottom=51.229538 right=14.859729

Links