Wanderwege weltweit

Werbung
Wanderwege weltweit
Entwicklung einer Overlay-Karte aus
OSM-Daten
Sarah Hoffmann
[email protected]
FOSSGIS 2011
Wanderwege weltweit – p. 1/22
OpenStreetMap
mehr als nur Strassen
Wanderwege weltweit – p. 2/22
Overlays
einfache Karten für Nischendaten
schnellere Verarbeitung:
benötigt Bruchteil der Daten
weniger Renderaufwand:
viele Kartenteile bleiben leer
einfachere Entwicklung:
vereinfachtes Karten-Design
Hardwareanforderungen minimieren
Wanderwege weltweit – p. 3/22
1. Teil: Technische Realisierung
Wanderwege weltweit – p. 4/22
Die klassische Renderkette
<xml>
sm
o
</xml>
l
sq
2p
planet.osm
DB
ik
n
ap
M
PostGIS
O
s
er
ay
L
en
p
Kartenteile
Web
Wanderwege weltweit – p. 5/22
Die klassische Renderkette
Engpässe
<xml>
Grösse der
Datenbank
sm
o
</xml>
l
sq
2p
planet.osm
DB
ik
n
ap
M
PostGIS
O
Berechung der
Geometrien
s
er
ay
L
en
p
Kartenteile
benötigter
Speicherplatz
Web
Wanderwege weltweit – p. 5/22
Overlay-Renderkette
<xml>
</xml>
osmo
s
planet.osm
is
OSM
Overlay
Mapn
ik
Open
Laye
Kartenteile
rs
Web
Wanderwege weltweit – p. 6/22
Datenimport mit Osmosis
Vorteile der eigenen OSM-Kopie:
eigenes Datamining
Änderung des Overlays ohne Neuimport
osm2psql vs. osmosis
Rohdaten, keine Geometrieberechnung
Daten vollständig
Aktualisieren ist einfacher als Neuimport
Wanderwege weltweit – p. 7/22
Die Overlay-Datenbank
Import mittels SQL
Beispiel: initialer Import der Wanderwegweiser
INSERT INTO hiking_posts
SELECT id,
tags->’name’,
tags->’ele’,
ST_Transform(geom, 900913) as way,
FROM nodes
WHERE tags->’tourism’ = ’information’ AND
tags->’information’ = ’guidepost’
Wanderwege weltweit – p. 8/22
Die Overlay-Datenbank
Import mittels SQL
Besipiel: Update der Wanderwegweiser
DELETE FROM hiking_posts
WHERE osm_id IN (SELECT id FROM actions
WHERE data_type=’N’)
SELECT id, tags->’name’, tags->’ele’,
Updateinformation
ST_Transform(geom, 900913) as way,
von osmosis
FROM nodes
WHERE tags->’tourism’ = ’information’ AND
tags->’information’ = ’guidepost’
AND id IN (SELECT id FROM actions
WHERE data_type=’N’ and action <> ’D’)
Wanderwege weltweit – p. 9/22
Die Overlay-Datenbank
Import mittels Python-Bibliothek
Vorverarbeitung
erweiterte Auswertung von Tags
(z.B. unterschiedliche Masseinheiten)
Geometrieberechung
(inkl. Reparatur von Polygonen)
Zusammenfassung von Wegen
Relationsauswertung
(inkl. Verschachtelung)
Wanderwege weltweit – p. 10/22
Rendering
vollständiges Offline-Rendering
iterativ vom niedrigsten zum höchsten Zoomlevel
Zoomlevel
Kontrolle auf vorhandene Daten vor Rendering
+
x
+
+
x
für Aktualisierung: Tabelle mit geänderten Geometrien
Wanderwege weltweit – p. 11/22
Darstellung mit OpenLayers
Webserver liefert “Datei nicht gefunden”-Fehler für
fehlende Kartenteile
transparente Bilder einbinden:
OpenLayers.Util.onImageLoadError = function() {
this.src = "transparent.png";
};
Wanderwege weltweit – p. 12/22
Aktualisierung der Wanderkarte
500
Minuten
400
300
200
100
0
Sep’10
Okt’10
Nov’10
Dez’10
Jan’11
Feb’11
Mar’11
Osmosis-DB
Overlay-Tabellen
Kartenteile
Server: AMD X2 Dual Core CPU 5600+, 2GB RAM, 500GB Festplatte
Wanderwege weltweit – p. 13/22
2. Teil: Entwicklung der Overlays
Wanderwege weltweit – p. 14/22
Overlay-Design
Farbwahl
Wanderwege weltweit – p. 15/22
Overlay-Design
Beschriftung
Wanderwege weltweit – p. 16/22
Überlappende Routen
Finden linarer
Segmente mit gleichen
Routen
Verteilung der Symbole
pro Segment
Wanderwege weltweit – p. 17/22
Beispiel: Franken
Wanderwege weltweit – p. 18/22
Regionalisierung
Beispiel Schweiz
lokale Routen innerhalb der Schweizer Grenze
Wanderwege weltweit – p. 19/22
Regionalisierung
Beispiel Niederlande
speziell getaggte Wegknoten
Wanderwege weltweit – p. 20/22
Zukunftsausblick
neuer Server in Planung
kürzere Updatezeiten und Rendering on demand
interaktivere Karte
Design bleibt das zentrale Problem.
Wanderwege weltweit – p. 21/22
Fragen
Referenzen:
OpenStreeMap http://www.openstreetmap.org
Wanderkarte: http://osm.lonvia.de/world hiking.html
S/W-Layer des Wikimedia-Toolservers: http://toolserver.org/tiles/bw-mapnik
osmosis: http://wiki.openstreetmap.org/wiki/Osmosis
Mapnik: http://www.mapnik.org
OpenLayers: http://www.openlayers.org
Alle Kartendaten by OpenStreetMap and Contributors(CC-by-SA 2.0)
Folien und Bilder by Sarah Hoffmann(CC-by-SA 3.0)
Wanderwege weltweit – p. 22/22
Herunterladen