Hallo,
in Sachen OSM bin ich bisher nur in den einfachsten Tätigkeiten wie Mapping und Datenerfassung unterwegs gewesen. Jetzt würde ich gerne mal etwas weiterschauen.
Hier interessiert mich zunächst einmal, wie eigentlich die ganzen Spezialkarten auf Basis von OSM entstehen. Ich meine hiermit Wanderkarte, Fahrradkarte, ÖPNV-Karte etc. Wie werden die entsprechenden Daten/POIs aus dem Gesamtdatenbestand herausgesucht und entsprechend gehighlightet? Mit welchem Programm wird so was gemacht?
Vielen Dank für eine kurze Anleitung.
Im Prinzip ist das immer gleich:
Man holt sich das geographische Gebiet, für das man die Karte machen möchte
Filtert die Daten ( keine Parkbänke!)
dann formatiert man die Daten auf das Zielprogramm um oder rendert sie zur Darstellung auf einem Bildschirm
Die Karten, die Du bei dem OSM-Tileservern findest, dürften fast alle mit der Verarbeitungskette PostgreSQL/PostGIS-Datenbank mit Mapnik-Renderer erstellt werden. PostgreSQL ist deshalb beliebt, weil es mit PostGIS eine Erweiterung hat, die recht einfach geometrische Abfragen ermöglicht (“Schneiden sich diese Flächen?”, “alle Punkte in der Nähe von Bächen”). Ausserdem haben wir mit osm2pgsql ein recht schönes Werkzeug, OSM-Daten in eine rendererfreundliche Form zu bringen und diese Datenbank regelmässig mit der OSM-Datenbank zu synchronisieren (also z.B. alle Änderungen der letzten Minute oder des letzten Tages einzuspielen).
Der Mapnik-Stil (z.B. der der opentopomap) besteht dann aus einer Sammlung von Abfragen an diese Datenbank, z.B. alle Strommasten (hier ungefähr bei Zeile 330 “select from point where power IN (‘tower’,‘pole’)”) und einer Vorschrift, wie man das auf die Grafik bringt. Hier steht, dass bei Zomlevel 15 ein Icon namens “powertower.png” gemalt werden soll. Wollte der Stylist der Karte eine “Strommastenkarte” erstellen, hätte er die Stellen einfach schon ab Zoomlevel 12 mit fetten roten Symbolen markiert und damit eine “Spezialkarte” erzeugt.
Bei Straßen ist das ganze natürlich wesentlich komplizierter, da muss man dann nach Straßenklasse, Zoomstufe, Brücke/Tunnel unterscheiden. Im deutschen Stil beschäftigen sich die ersten 100 Zeilen mit der Darstellung von Wendekreisen… Im Prinzip sehen diese Stile alle irgendwie gleich aus, es geht lediglich darum, für die Zielgruppe unnötige Dinge wegzulassen, unauffällig darzustellen (alle Straßen einheitlich hellgrau), oder erst bei hohen Zoomstufen zu rendern. Und manche Dinge besonders hervorzuheben, z.B. Wanderwege bei einer Wanderkarte rot malen.
Manche Dinge werden von den Standardfunktionen von osm2pgsql nicht unterstützt, dann muss man das in der Datenbank durch eine zusätzliche Verarbeitung der Daten vor dem Rendern erledigen. Z.B. falls man Wege markieren möchte, die Mitglied einer Fernwanderweg-Relation sind.
Für den heimischen Gebrauch ist das ganze ein bisschen kompliziert (ausser man kann schon ganz gut Datenbanken bändigen und hat Freude daran…). Zum unkomplizierten Rumspielen, wie man Daten aus der Datenbank rausbekommt, finde ich overpass turbo ganz nett (z.B. die Strommasten). Zum Rendern eigener Karten wurde tilemill schon genannt, Maperitive (hier im Forum auch unbedingt nach MaperAtive suchen…) wird auch gerne genommen.