Mit der JavaScript-Bibliothek
erzeugte Karten bestehen aus einer oder mehreren "echten"
Karten als Basis-Layer und möglicherweise weiteren Daten, die in Overlay-Layern darüber
dargestellt werden. Das OpenLayers
OpenLayers.Control.LayerSwitcher
listet die Layers auf und erlaubt, die Kartengrundlage im Basis-Layer zu wechseln und die
Overlays ein- und auszuschalten.
Das OpenLayers.Control.LayerChanger
fügt dem LayerSwitcher
Funktionen hinzu. Sie können unter anderem:
- Layer zu Layer-Gruppen zusammenfassen,
- Layer-Gruppen verbergen und wieder darstellen,
- exklusive Layer definieren, von den jeweils nur maximal eines dargestellt wird,
- verbundene Layer definieren, die zusammen oder gar nicht dargestellt werden,
- eine Layer-Beschreibung als Tooltip anzeigen,
- die Transparenz der Layer verstellen,
- auf den Inhalt eines Layers zoomen,
- auch Controls in die Darstellung übernehmen,
- das Design des Bedienfeldes ändern und
- eigene Graphiken als Bedienknöpfe nutzen.
Die Idee zu einem Layerswitcher mit ausblendbaren Gruppen und exklusiven Layern stammt von Lutz, auf Empfehlung von Maxbe habe ich Tooltips und verbundene Layer ergänzt, und der Wunsch nach Zoom auf den Inhalt eines Layers erreichte mich von einem reinen OSM-Nutzer aus dem schönen Chiemgau.
Achtung: diese Klasse ist bisher nur mit Firefox (26.0), Chrome und Opera (12.16) getestet.
Zum Selbermachen: HTML-Code mit Erklärung.
Der LayerChanger
kann auch
Links zu anderen Karten darstellen.