Openlayers Mobile und Clustering

Hi zusammen und guten Morgen!

Zu folgendem Thema habe ich ein wenig gesucht, aber nichts brauchbares gefunden. Vorab: Ich will keine Lösung gebaut, nur eine Info ob es überhaupt geht:

Ich habe insgesamt zwei Openlayers Kartenanwendungen, welche auf den gleichen Kartenbestand zugreifen. Die eine Karte ist für die Desktop-Darstellung, die andere nutzt die Openlayers Mobile Bibliothek.

Desktop: http://l-11.de/index.php/karte
Mobile: http://l-11.de/mapApp/mobile_map.php

Auf der Desktop-Karte konnte ich ohne große Probleme die Cluster-Strategie nutzen. Klar, dabei gab es ein paar Hürden mit den angezeigten Attributen zu nehmen, aber es war kein großes Problem - soll heißen: Ich weiß mittlerweile wie ich es zu machen habe.
Starte ich aber in der mobilen Karte damit, dass ich die Cluster-Strategie dem Punktlayer zuweise, läd die init() schon direkt nicht mehr. Kann an meiner Unfähigkeit liegen, oder daran, dass es aus irgendwelchen Gründen mit der mobilen Bibliothek nicht funktioniert…

Hat vielleicht jemand eine Idee oder einen Tipp?

Danke euch!
Viele Grüße,
Freddy

Hi Freddy und willkommen im Forum,

die mobile Version von OL enthält nur einen kleinen Teil der ganzen OL-Bibliotheken, um nicht unnötig viel Ballast mitzuschleppen. Welche Bibliotheken das sind, wird beim Build angegeben, gesteuert durch diese Datei: http://trac.osgeo.org/openlayers/browser/trunk/openlayers/build/mobile.cfg

Da steht “OpenLayers/Strategy/Fixed.js” drin, aber keine der anderen Strategien aus http://trac.osgeo.org/openlayers/browser/trunk/openlayers/lib/OpenLayers/Strategy .

Falls Du OL-mobile verwenden willst, aber trotzdem Cluster verwenden willst, musst Du OpenLayers auf deinem Server hosten und deine eigene mobile Version basteln. Dazu nimmst du “OpenLayers/Strategy/Cluster.js” in deine “mobile.cfg” auf und befolgst die Readme (einfach nach der Änderung “python build.py mobile OpenLayers-mobile.js” aufrufen).

Vielleicht fehlen dir dann noch weitere Elemente, die musst Du so lange in die Konfiguration aufnehmen und build.py laufen lassen, bis es geht.

Grüße, Max

Hi Max,

vielen Dank für die schnelle Antwort. Das klingt alles absolut plausibel! Ich werde das direkt mal nach Feierabend ausprobieren und dann nochmal bescheid geben, ob und wie es geklappt hat.

Grüße,
Freddy