OEPNV-Karte in OpenLayers

Frank Jäger frank at fotodrachen.de
Sa Feb 21 13:51:21 CET 2009


Hallo,
ich möchte auf meiner Homepage mit Startposition auf einen Ort die 
verschiedenen Darstellungen von OSM-Daten zeigen.

Auf http://www.fotodrachen.de/osm_lemgo.htm sind das neben "Mapnik" und 
"Osmarender" zur Zeit die "Radkarte" und (als Overlay) die "MaxSpeed-Karte".
Später sollen noch die "Wanderkarte" und ein "OSM-WMS" mit UMN-Mapserver 
dazu kommen und was sich noch so entwickelt.

Seit einiger Zeit kämpfe ich nun damit, die "ÖPNV-Karte" dort einzubauen.
Hier unsere Salzufler "Paulinchen-Bahn":
http://www.öpnvkarte.de/?lat=52.09205&lon=8.75324&zoom=15
(Sie wird gerade wieder flott gemacht, denn ab 1. März fährt sie wieder)

Das Besondere daran ist:
Bis zur Zoom-Stufe 13 ist es ein vorgerenderter gekachelter Dienst.
Da der kleine Server damit überlastet wäre, auch für alle feinen 
Zoomstufen Kacheln auf Vorrat zu rendern und zu speichern, übernimmt ab 
Zoom 14 ein WMS (Web Map Service). Der rendert erst auf Anforderung. 
Nicht als Kacheln sondern den kompletten aktuellen Karteninhalt.

Also "Ein Thema" in der Auswahl = 2 Dienste.

Dieser Sonderfall ist bei OpenLayers nicht vorgesehen.
Ich versuche, das über Events abzufangen und zwischen Zoom 13 und 14 
zwischen den beiden Diensten zu wechseln, möglichst unmerklich für den 
Anwender.
Da ich mich mit Java etwas schwer tue und wenig Erfahrung mit OpenLayers 
habe, bekomme ich es bisher nicht hin.

Der erreichte Zustand ist in folgenden (versteckten) Entwicklungsversionen:

http://www.fotodrachen.de/osm_lemgo_dev.htm
http://www.fotodrachen.de/javascripts/map_dev.js

Ich lasse Informationen über die Events in eine Firebug-Console ausgeben.

Auf der Originalseite werden keine anderen Themen gezeigt.
Es gibt daher keinen LayerSwitcher. Es braucht nur der Base-Layer 
gesetzt werden. Hier muss man aber beim Umschalten überwachen, ob "das 
Thema" gerade eingeschaltet ist.

Kann einer von euch erkennen, was ich hier falsch mache?

Manchmal erscheinen beide Einträge im Layer-Switcher.
Manchmal sind sie augeschaltet, obwohl die Karte sichtbar ist.
Zoomt man rein (>13) und dann wieder raus, wird der gekachelte Service 
nicht mehr angezeigt.

-- 
Frank Jäger

   |\__
(:> __)(
   |/        http://www.FOTODRACHEN.de



More information about the OSM mailing list