# Allgemein, Technik

Erstellen einer Isometrischen OSM-Karte

Immer wieder benötigt man 3D-Karten zur Veranschaulichung. Früher griff man noch oft zur Google Earth Karte, seit es OpenStreetMap gibt und auch Urheberrechtsverletzung immer größer geschrieben wird, muss man sich Abhilfe schaffen.

Bei meiner Suche im Internet bin ich bei Github auf osm-isometric-3d gestoßen. https://github.com/bitsteller/osm-isometric-3d

Es handelt sich hierbei um ein Webfrontend, sowie ein Script zur Erstellung von Isometrischen 3D Karten anhand der der Daten von OpenStreetMap.

Anhand eines Beispiels zeige ich, was benötigt wird bzw. wie man eine Karte erstellt.

Voraussetzung

  • Linux Kenntnisse
  • FTP-Server
  • Virtuelle Maschine mit Ubuntu 14.02 oder ähnlich

Vorbereitung

Das osm-isometric-3d-Script benötigt verschiedene Tools auf der Maschine mit eurem Linuxsystem. Ich habe ein minimales Server-System installiert und folgende Pakete hinzugefügt:

sudo apt-get install povray //Rendert das Bild u.v.m
sudo apt-get install git //Um das Projekt zu Clonen
sudo apt-get install python-setuptools python-keyring python-imaging-compat pyrss2gen //Python Tools
sudo apt-get install openjdk-7-jre icedtea-7-plugin //Java Runtime Envoirment
sudo apt-get install unzip //Entpackt Zip-Archive
sudo apt-get install g++ libexpat1-dev make expat libexpat1-dev//Zum erstellen von Osmosis

 Teil 1 – Notwendige Packete Osmosis

Per Git wird sich die aktuelle Version von osm-isometric-3d auf die lokale Maschine kopiert

git clone https://github.com/bitsteller/osm-isometric-3d

Download von Osmosis (http://wiki.openstreetmap.org/wiki/Osmosis#Latest_Stable_Version)

wget http://bretth.dev.openstreetmap.org/osmosis-build/osmosis-latest.zip

und per unzip entpacken

unzip osmosis-latest.zip

anschließend in der osm-isometroc-3d die Datei config.json.example mit einem Editor öffnen und den folgenden Eintrag editieren

nano make.py

und vergeben den Parameter je nachdem wohin wir osmosis entpackt haben

COMMAND_OSMOSIS = "/home/dome/osm-isometric-3d/osmosis/bin/osmosis"

 Teil 2 – Notwendige Packete Osm2Pov

Auch hier Kopieren wir uns wieder das Projekt aus Github

git clone https://github.com/bitsteller/osm2pov

wir wechseln in das Verzeichnis und erstellen uns aus der Quelle das Binary

./configure
make
make install

Anschließend passen wir wieder im make-Script die Verzeichnisse an:

nano make.py

und ändern die Einträge dementsprechend

COMMAND_OSM2POV = "osm2pov/osm2pov/osm2pov"
DIR_OSM2POV = "osm2pov/osm2pov"

 Teil 3 – Konfiguration erzeugen

Nach dem Kopieren der osm-isometric-3d haben sich im Verzeichnis zwei Dateien zu befinden. Diese müssen nach unseren Wünschen angepasst werden.

config.json.example -> config.json

Die Datei in “config.json” umbenennen.

{
	"version": 1,
	"website": "http://blablabla.de/osm", 
	"ftp": {
		"url": "blablabla.de", //URL eures FTP-Servers
		"user": "bitsteller", //FTP-Username
		"path": "osm" //FTP-Pfad für die OSM-Files
	}
}

cities.json.example -> cities.json

Auch die Datei wieder in “cities.json” umbenennen.

{
   "version": 1, 
   "cities": [
      {
         "city_id": "b", //ID für die Zuordnung/Aufruf
         "source": "http://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf", //Die Quelle für die OSM-Karte
         "name": "Berlin (excerpt)", //Beispiel für Berlin
         "area": { 
            "top": 52.58, //Abgrenzungen Oben 
            "bottom": 52.38, //Abgrenzungen Unten
            "right": 13.53, //Abgrenzungen Rechts
            "left": 13.28 //Abgrenzungen Links
         }
      }
	]
}

 

Teil 4 – Script ausführen

Nun ist es soweit, wir rufen den Script auf: (In unserem Fall b – Siehe cities.json)

make.py update b

als nächstes werden wir nach den FTP-Password gefragt. Anschließend ist erstmal Rechenleistung notwendig….

Die Ausgabe von osm-isometric-3d in der Konsole

Die Ausgabe von osm-isometric-3d in der Konsole