So schneiden Sie die Stadtteilmenge (eine beliebige Beziehung) aus OSM-Daten

Früher musste ich eine saubere Stadt-Teilmenge aus OSM-Rohdaten abrufen (weil sie so praktisch, kompakt und einfach wunderschön ist). Zu meiner Überraschung fand ich kein fertiges Rezept, weshalb ich ein wenig ins Schwitzen kam, um diese Aufgabe zu erledigen.

In Anbetracht des Vorstehenden betrachte ich es als meine Pflicht, meine Erfahrungen zu teilen.

Chisinau OSM

Angenommen, ich möchte eine Chisinau-Untergruppe erhalten (warum? ... dort ist es warm, mein Haus ist da, meine Mutter ist da)

Natürlich interessieren wir uns nicht für Planet.osm , aber es gibt Geofabrik , aber dort ist der Planet in ziemlich große Shmatka geschnitten - http://download.geofabrik.de/europe/moldova.html

Die Stadtgrenze befindet sich also in den Rohdaten .

Es ist einfach, eine Deponie aus der Beziehung zu erhalten. Wir tun dies entweder von Hand oder mit einem geeigneten Dienstprogramm, beispielsweise diesem .

III ... jetzt kommt die Osmose ins Spiel .

Wir haben das Osm von ganz Moldawien und die begrenzte Reichweite von Chisinau. Dies reicht aus, um die Website der Stadt aus einer unformatierten XML-Datei (OSM) abzurufen:

osmosis --read-xml file="moldova.osm" --bounding-polygon file="kishinev.poly" --write-xml file="kishinev.osm" 

Ebenso können Sie Daten aus der PBF-Datei (Protocolbuffer Binary Format) ausgraben:

 osmosis --read-pbf file="moldova.osm.pbf" --bounding-polygon file="kishinev.poly" --write-xml file="kishinev.osm" 

Hier können Sie etwas mehr über Osmose lesen .

Nun, die fertige Teilmenge muss dringend in JOSM geöffnet oder in ein persönliches Projekt importiert werden!

Chisinau JOSM

UPD:


Wie zverik bemerkte, wird all dies mit * osmium-tool * ( von Docks ) viel einfacher zu tun sein.
1. Laden Sie den Länderdatensatz herunter
2. Extrahieren Sie die Stadtgrenze daraus
 osmium getid -r -t moldova-latest.osm.pbf r1691801 -o kishinev-boundary.osm 

3. Extrahieren Sie die Stadt aus dem Datensatz
 osmium extract -p kishinev-boundary-with-tags.osm moldova-latest.osm.pbf -s simple -o kishinev.osm 


Achten Sie auf Flak- s einfach
Dies ist eine Extraktionsstrategie, und es gibt nur drei davon:
1. -s einfach - Straßen entlang der Grenze trimmen
2. -s complete_ways - Grenzstraßen nicht kürzen ( Standard )
3. -s smart - Grenzstraßenabhängigkeiten extrahieren

Das Format der Ausgabedatei wird durch die Erweiterung im Befehl bestimmt.

OSMIUM ist ein äußerst leistungsfähiges, praktisches und nützliches Werkzeug, das angenehm zu bedienen ist.

Source: https://habr.com/ru/post/de463251/


All Articles