Ich habe möglicherweise einige hundert Tracks und möchte diese in einer Karte darstellen. Lade ich alle gleichzeitig, so mache ich LayerSwitcher und Browser unglücklich.
Ein Objekt der Klasse OpenLayers.Control.TrackLoader
lädt einmalig eine Indexdatei
vom Server und lädt dann jeweils die Tracks, die im dargestellten Kartenausschnitt liegen,
und entfernt Tracks, die nicht mehr im Kartenausschnitt liegen.
Wenn mehr Tracks vorliegen als das konfigurierbare Maximum zulässt, so werden die vom Benutzer sichtbar gemachten bevorzugt, die weiteren Plätze werden in der Reihenfolge der Tracks in der Indexdatei vergeben.
Beim automatischen Update werden neue Tracks an das Ende der Trackliste angehängt, um einen Eingriff in die Layerverwaltung von OpenLayers.Map zu vermeiden. Ein manueller Update (Update-Knopf) löscht zuerst alle Track-Layer, und erzeugt sie dann in der Index-Reihenfolge neu. Dabei werden die Trackdaten zu allen Layern neu vom Server geladen.
Als Beispiel habe ich die OSM-Daten zu den 17 Wegen des Kölner Eifelvereins genutzt, die das Gebiet östlich von Köln erschließen und vorbildlich markiert sind.
Zum Selbermachen: HTML-Code mit Erklärung. Gibts auch in Premium.
Ultra-Deluxe-Version (mit Popups) nur gegen Aufpreis.