PseudoSlippy

From MapbenderWiki

Jump to: navigation, search

User:Christoph Baudson (Module maintainer)

Contents

Description

english

A pseudo slippy map for Mapbender

A "slippy map" is an interactive map with an intuitive user interface: The user can simply navigate around in the map, while new parts of the map (typically, tiles) are added dynamically. The map as a whole doesn't have to be reloaded, which gives the user the illusion that the map is fully available all of the time.

Mapbender is only able to display untiled map services (OGC WMS). Due to this restriction, it is not feasible to preload or cache images efficiently: There are no rigid zoom levels, and this makes the amount of possible map images infinite. The downside is that moving around on the map is not a seamless experience for the user. There are a few things that can be done about this, unless you abandon untiled WMS and use tiled maps. I would recommend using OpenLayers for tiled maps.

But this is what can be done: The old map image could be kept until the new one is loaded, to avoid a blank map. The old image could also be adjusted while the new map is loaded, so the extent of the old map is correct in respect to the extent of the new map: Practically, this means that the old image could be moved when navigating via "center" or the "navFrame" buttons, or could be enlarged or shrinked when zooming.

Each new map requests generates a new div, which is positioned according to the old extent of the map. Once the map is loaded, the div becomes visible. The animation effects are simply done by jQuery's animate function. After the animation is finished, the div of the previous map is removed.

Demo

Video

Support the future development

To integrate this funtionality in future Mapbender version there is still development needed. If you are interested in this functionality, please write a mail to mapbender@osgeo.org or leave a comment in the Mapbender-Issue-Tracker (login is needed). There you will find a list with the tasks which are still open.

http://trac.osgeo.org/mapbender/ticket/444


deutsch

Alternative Kartendarstellung
Mapbender jetzt auch mit "Pseudo-Slippy-Map"

"Slippy Maps" sind den meisten Nutzern aus Google.maps und ähnlichen Anwendungen bekannt. Sie suggerieren wesentlich flüssigere Navigation durch einen scheinbar "fließenden" Kartenaufbau. Der Benutzer kann in der Karte navigieren, während zusätzlich benötigte Kartensegmente (in der Regel Kacheln) dynamisch hinzugeladen werden. Die Karte muss nicht komplett neu geladen werden, damit entsteht ein fließender Übergang zwischen den jeweiligen Kartenansichten.

Mapbender ist bisher nur in der Lage, ungekachelte OGC-WMS-Dienste darzustellen. Wegen dieser Einschränkung ist ein effizientes Caching oder Vorladen der Kartenbilder derzeit kaum möglich. Aufgrund der vielfältigen Navigationsmöglichkeiten ohne feste Zoomstufen ist die Anzahl der möglichen Kartenbilder bei jeder Naviagation in der Karte unendlich. Allerdings kann durch einige Anpassungen eine Slippy Map in Ansätzen suggeriert werden, daher wird diese Funktion korrekterweise als Pseudo Slippy Map bezeichnet: Das alte Kartenbild kann so lange angezeigt werden, bis das neue Kartenbild vollständig geladen ist, um ein weißes Kartenfenster zu vermeiden. Zudem kann das alte Kartenbild bei einer Navigationsaktion (zentrieren) animiert verschoben, oder bei einem Zoom animiert vergrößert oder verkleinert werden.

Technischer Hintergrund

In Mapbender heißt dies, dass jeder neue Request ein neues DIV-HTML-Element generieren muss, das im Bezug zum alten Kartenausschnitt positioniert wird. Sobald diese neue Karte geladen ist, wird das DIV-Element sichtbar gemacht. Die alte Karte dagegen wird sofort nach dem Request animiert, also entweder verschoben, vergrößert oder verkleinert. Diese Animationseffekte werden von der JavaScript-Bibliothek jQuery übernommen. Nachdem diese Animation beendet ist, wird die alte Karte schließlich gelöscht.

Demo

Hier finden Sie eine prototypische Implementation einer Pseudo-SlippyMap in Mapbender: http://tinyurl.com/pseudoslippymap


Weiterentwicklung

Um diese Funktion in einer neuen Mapbender-Version verfügbar zu machen, ist noch Entwicklungsaufwand von Nöten. Falls Sie an dieser Funktion interessiert sind, schreiben Sie an mapbender@osgeo.org oder hinterlassen Sie einen Kommentar im Mapbender-Issue-Tracker (Login erforderlich). Dort finden Sie eine auch Liste mit noch offenen Punkten.

http://trac.osgeo.org/mapbender/ticket/444

Weitere Informationen zum Mapbender Projekt finden Sie unter http://www.mapbender.org

Halten Sie sich über die Entwicklungen auf dem Laufenden. Tragen Sie sich in die Mapbender Userliste ein (http://www.mapbender.org/Mapbender_Mailing_Lists).


Element vars

  • slippy - 1 = Activates an animated, pseudo slippy map


Prerequisites

  • none

Files

  • .


SQL

Use this sql statement to insert this module in the corresponding gui / Mit diesem SQL kann das Modul in die entsprechende GUI eingefügen werden:

Demo

Views
Personal tools