SlippyMap Generator

Hab ich bisher noch nie gebraucht. Aber versuchs doch mal mit:

http://dev.openlayers.org/releases/OpenLayers-2.7/doc/apidocs/files/OpenLayers/Map-js.html#OpenLayers.Map.getExtent

Hallo,

zunächst herzlichen Dank für dieses Werkzeug!
Wenn man mehrere Marker gesetzt hat, deren Inhalte sich ändern können, möchte man seine Eingaben speichern, um sie später nur zu ändern. Das wäre leichter, wenn im -Tag des Generators unter action der komplette URI stände. Bitte ergänzen, dann braucht man nach dem “Abschicken” nur die Seite zu speichern und bei Bedarf wieder starten.

Dank und Gruß Norbert

Erledigt.

Hallo,
ich will (und werde) eine Slippy Map, die ich mit diesem Generator generiert habe in eine neue HP einbauen. Das funktioniert auch alles.
Folgendes Problem existiert noch:

Die Hp hat Frames. Man kann das Nachladen einer Seite mit <a target"xx… in eine bestimmten Frame erzwingen. Das klappt auch für die Map.

Es gibt aber einen Home-Link, der die Anfangsseite der HP wieder zeigen soll. Wenn ich die Map geladen habe und dann den Home-Link aufrufe, wird die Anfangsseite richtig geladen, aber immer so, als gelte mit target="top… . Die Frames werden also gesprengt.

Ich vermute dieses Verhalten irgendwo in den js Dateien, kann aber nichts finden, weil ich nichts davon verstehe. In der map.css scheint auch nichts zu sein

Weiß jemand Bescheid?

Danke für Antworten
Frank

Hallo Frank, kann ich mir das mal anschauen? Darf ich fragen wieso Du (noch) mit frames arbeitest?
Gruss zapfen

Hallo Zapfen,
gestern war wohl mein Rechner ermüdet. Heute früh macht er jedenfalls alles richtig. Auf Deutsch: Dieses Posting hat sich von selbst erledigt.

Warum ich (noch) mit Frames arbeite? Weil ich mir das mal so beigebracht habe. Ich mache alles in HTML und finde Frames praktisch und komfortabel. Zum Umlernen habe ich auch keine Lust mehr.

Ich schicke Dir die Zugangsdaten zu HP per Mail. Vom 5.5.-13.5.09 bin ich nicht da.

Danke für die Antwort
Frank

Hallo … ,

Sehr schön und hilfreich!

Ich versuche grad, den generierten Code zu verstehen und für meine Bedürfnisse anzupassen
Dazu habe folgende Fragen:

  • Die Karte wird ja in einem neuen Tab geöffnet. Nun möchte ich gern von Dort wieder zur aufrufenden Seite zurückspringenkönnen. Wie mache ich das?

  • Wenn ich, statt die Karte in einem neuen Tab, diese lieber
    a) als Popup-Fenster oder
    b) als eingebundene Slippy-Map auf der aktiven Seite anzeigen möchte
    wie mache ich das?

  • Ich habe einen Marker am Ziel, und einen Marker am Bahnhof. Nun möchte ichm dass bei MouseOver am Bahnhof
    a) das Popup erscheint und
    b) gleichzeitig eine GPX-Datei, die den Weg vom Bahnhof zum Ziel zeigt.
    Wie mache ich das?

Gruss, Markus

wer kann helfen?
Gruss, Markus

Ob die Karte in einem neuen Tab geöffnet wird, kommt doch darauf an wie du sie verlinkst?

a) Mit JavaScript ein Popup öffnen und die Karte als zu öffnende Seite angeben
b) Benötigt etwas mehr Handarbeit. Du musst das Karten-Div an der entsprechenden Stellen einfügen, im Head der Seite das JavaScript einfügen und das CSS anpassen.

Das Popup erscheint ja auch so schon, die GPX-Datei wird allerdings schwerer. Wenn bei allen Markern auf der Karte das gleiche GPX angezeigt werden soll, dann könntest du vermutlich einfach die addMarker-Funktion dahingehend ergänzen, dass der GPX-Layer aktiviert/deaktiviert wird wenn man über den Marker fährt. Soll es je nach Marker eine andere GPX-Datei sein, könntest du der addMarker-Funktion einen weiteren Parameter hinzufügen, der den jeweiligen GPX-Layer angibt (der natürlich vorher schon erstellt sein muss und einer Variable zugewiesen, im Moment ist das bei der GPX-Funktion im Generator nicht der Fall).

Gruß

Hallo … ,

Bei mir heisst der Aufruf für die mit dem Generator erzeugte Karte:
OpenStreetMap-Karte
Nun hätte ich gern in der Karte einen Link, mit dem ich wieder zur aufrufenden Seite zurück komme. Wie mache ich das?

Ich bin leider kein Programmierer. Ich stelle mir einen Code-Block vor, den man einbaut und dann funktioniert alles mit einem Aufruf mit Parametern (so wie in Wikimedia - und hoffentlich bald in Wikipedia).

Klingt gut. Kannst Du mal ein Beispiel machen?

Gruss, Markus

@dt2:
ich habe mit Deinem “kleinen Script” herumgespielt und es reicht für meine Zwecke (separate Slippy Map mit einer eingezeichneten Wanderroute) völlig aus. Das Script ist prima!!

Das Problem ist, dass meine Route nicht ganz klein ist und sich außerdem erweitert. Ich kann also nicht die Route in einem Rutsch aufnehmen, von Dir berechnen lassen und die fertige Karte herunterladen. Ich muss in mehreren (vielen) Arbeitsschritten gehen.

Du wirfst verständlicherweise die übergebenen Variablen nach Abschluss der Arbeit weg. Das ist aber nicht gut für mich.

Mein Wunsch ist also:
Es soll eine Möglichkeit geben, die Variablen als Datei auf den eigenen Rechner zu laden und zu sichern (“Speichere Schnappschuss der Karte”). Dann kann man unterbrechen und z.B. die GPX Datei in Ordnung bringen. Danach kommt man wieder auf Deine Seite und findet einen Button “Hochladen Kartenstatus”. Man lädt hoch und die Arbeit geht weiter. Dein Rechner ist von einem Wust an Dateien entlastet und muss “nur” die Rechenzeit und den Datenverkehr verkraften.

Bitte denke drüber nach!
Frank

P.S. Das Ganze macht allerdings nur Sinn, wenn Deine Anwendung nicht nur eine Fingerübung ist, sondern dauerhaft (Mindestens drei Jahre) zur Verfügung steht

Eigentlich ‘berechnet’ das Script garnichts, sondern fügt nur den OpenLayers-Code für die GPX-Datei automatisch hinzu. Wenn sich bei dir nur die GPX-Datei ändert, kannst du vermutlich den OpenLayers-Code behalten und nur die Datei austauschen.

Eine Export-/Importfunktion ist schon geplant, wann ich allerdings dazu kommen steht natürlich in den Sternen. Du kannst als Notbehelf allerdings auch einfach die aktuelle Seite bei dir lokal speichern (Firefox: Datei - Seite speichern unter…). Wenn du dann weitermachen willst lokal aufrufen und Formular abschicken und du landest wieder auf der Easymap-Seite. Da alle Einstellungen über das Formular übergeben werden, sollte das funktionieren, probier es doch einfach mal aus. Sicherlich ist das nicht besonders schön und wenn sich das Formular mal ändert funktioniert es auch nicht mehr unbedingt. Aber erstmal besser als nichts.

Gruß

Hallo,

bin gerade dabei, ein kleines Veranschaulichungs-Projekt mit easymap-Hilfe von Google-Maps auf OSM umzustellen. Hat ein Mitleser die mit easymap erstellten Seiten mal mit einem neueren Internet-Explorer (Version 7 oder 8) getestet? Bin eigentlich schon lange von Windows fort, habe zu Testzwecken aber noch W2K mit IE6 (neuere IE gibt’s dafür nicht), und da kommt ein leeres Anzeigefeld mit Meldung “Seite kann wegen Fehlern nicht angezeigt werden”. Firefox und Opera hauen erwartungsgemäß hin.

Nun surft kaum jemand mehr mit IE6, und die seltsame Scriptverarbeitung der alten IE-Versionen ist legendär, ich muss aber mit IE-Anwendern mit neueren Versionen rechnen. Bis ich an einen XP- oder Vista-Rechner komme, dauert seine Zeit - wäre nett, wenn schon positive oder negative Erfahrungen gemeldet werden könnten.

Was anderes: Beim Ansehen des vom Generator erzeugten Codes findet man heraus, wie man auf der OSM-Oberfläche selbstgefertigte Marker-Symbole für ausgewählte Punkte anzeigen kann; habe ich noch nirgendwo dokumentiert gesehen. (Händische Nachbearbeitung der HTML-Datei erforderlich.)

Grüße, Thomas

Test auf einem XP-Rechner mit IE7 ergab auch leere Anzeige, nach Überprüfung den Skriptfehler “Zeile 857, Zeichen 1: ‘this.handlers.click’ ist Null oder kein Objekt.” Offenbar ein Problem mit der OpenLayers.js, das hier sicher nicht lösbar ist.

Gruß Thomas

Hallo dt2,

habe mir dein Tool zum erzeugen einer Slippy Map Seite angeschaut.
Kann nur sagen Wow - Super – Danke. Werde deinen Dienst mit Sicherheit öfters mal benutzen.

stefan

Hallo dt2,

ich bin heute auf Dein Tool gestoßen. Super und vielen Dank. Ich habe jetzt nicht alle Beiträge intensiv gelesen. Hast Du auch den Code zum Erstellen der herunterladbaren Map erklärt bzw zur Verfügung gestellt?
Was muß man tun, um das Ganze (erstellen der MAP) auf einem lokalen Server laufen zu lassen?

Vielen Dank für Dein Tool
Achim

Moin!

ich wollte die Lagebeschreibung unseres Vereins mit der OSM-Karte versehen und habe dafür den Code vom SlippyMap Generators in die bestehende Seite [1] eingebunden. Die sich dann ergebende Datei [2] habe ich hochgeladen - aber irgendwie ist da noch etwas fasch gelaufen.

Die Karte wird zwar angezeigt - dafür sitzen die Schalter allerdings falsch, es wird die Scrollleiste auf der rechten Seite des FF3-Browers nicht mehr angezeigt, die Fahne fehlt und der nachfolgende Text.

Kann mir einer sagen voran das liegen könnte - die Seite ist mit Tabellen aufgebaut.

Gruß Jan :slight_smile:

[1] korrekt mit alter Karte http://www.phv-luebeck.de/deu/anfahrt.php

[2] OSM-Karteneinbindung: http://www.phv-luebeck.de/deu/anfahrt_osm.php

Hallo dt2,

was noch fehlt ist, dass man die gezeichnete Karte als GPX Datei speichern könnte. Hast du da einen TIPP?

MfG
Achim

Der Code besteht aus PHP und JavaScript. Der JavaScript Code ist technisch bedingt natürlich offen, den PHP Code habe ich nicht veröffentlicht, da er doch etwas durcheinander und überhaupt nicht dokumentiert ist. Wenn du es unbedingt brauchst, könnte ich es dir natürlich schicken. Allerdings weiß ich nicht ob du dann damit klarkommst.

Die Ausgabe des Generators ist als eigenständige Seite konzipiert, da sowas am einfachsten einzubinden ist. Wenn du es in eine bestehende Seite einbauen willst, funktioniert das nicht ohne weiteres. Eigentlich hast du es ja schon korrekt eingebunden, allerdings wirkt das CSS falsch.

Versuch es doch mal damit den Inhalt der map.css dadurch zu ersetzen (ohne Garantie ;)):


@charset "utf-8";

#map {
  height: 400px;
  width: 100%;
  padding: 0;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 1em;
  color: #000;
}
.olFramedCloudPopupContent {
    font-size: 0.8em;
    font-family: Verdana, sans-serif;
}
#descriptionToggle {
    display: none;
} 
#description {
    display: none;
}
 
#attribution {
    display: none;
}

#layer {
    display: none;
}

.hide { display: none; }

Prinzipiell ist das einfach alles ausgeschaltet was nicht funktioniert, wenn man es in einer vorhandenen Seite eingebunden hat. Zudem ist die Größe entsprechend beschränkt.

Dafür ist das eigentlich nicht gedacht. Würde ich natürlich gerne einbauen, aber ob ich dazu komme ist fraglich. Eine Strecke auf der Karte einzeichnen und als GPX speichern kannst du z.B. hier: http://topo.geofabrik.de/

Hallo dt2,

…der Hintergrund ist, dass ich auf meinem Lokal laufenden Server die GPX Dateien verwalten und generieren möchte. Leider habe ich nur den ISS in Verbindung mit aspx. Aber deine Formulardaten habe ich schon mal in einer C# Routine drin. Falls du mir das PHP zur Orientierung schicken könntest, wäre das super.

Vielen Dank
Achim