Alle meine Grenzen

2011-06-26 10:20

Manchmal benötigt man die Polygone einer Grenze. Durch OpenStreetMap und ein Script aus der OSM-Community lässt sich das sehr schnell bewerkstelligen.

Das Script ist mittels svn co http://svn.openstreetmap.org/applications/utils/gary68 schnell auf den eigenen Rechner befördert.

Nun brauchen wir noch Daten, genauer gesagt ein .osm-File, für unser Unterfangen. Ich kann mir solche Dateien direkt auf OSM erzeugen lassen, indem ich den Punkt Export wähle. Ist leider für große Ausschnitte unbenutzbar, weshalb ich mir eine entsprechende Datei für Hessen von hier besorgt habe.

Nun kann man loslegen. Naja, vorausgesetzt man hat bereits die entsprechenden Perl-Module installiert. Es müssen vorhanden sein Math::Polygon, IO::Compress, Compress::Bzip und GD. Meckert GD mit der Meldung Could not find gdlib-config in the search path, dann gibts hier Abhilfe.

Gut, wir haben nun alles was wir benötigen und können loslegen. Ich habe mir vorher noch einen Unterordner mit Namen hessen erstellt, in welchem ich meine Dateien ausgegeben haben möchte.

Der folgende Aufruf erzeugt mir aus der entpackten .osm-Datei Polygon- und Bild-Dateien (als PNG) mit den Grenzen. Außerdem bekomme ich ein großes Bild mit einer Übersicht erstellt. Wichtig ist der Punkt -ignoremissing, damit auch unvollständige Pfade verarbeitet werden.

perl boundaries.pl -in=../hessen.osm -html=hessen.html \

-csv=hessen.csv -poly -polybase=./hessen/hessen_poly \

-pics -picsize=1024 -bigpic -bigpicsize=20480 -ignoremissing

Nach ca. 5 Minuten ist dann das Script bei mir beendet und ich kann die Ergebnisse weiterverarbeiten.