OSM in Website einbinden

Mit welchem HTML-Code kann OSM in eine Website so eingebunden werden, dass a) in der Website ein Ausschnitt aus der lokalen Kartendarstellung als Bild (irgendein Grafikformat) statisch angezeigt wird, und bei Klick auf das Bild ein Fenster aufgeht, in dem nur der Kartenausschnitt (also möglichst ohne den linken Menu-Balken und die Reiter oben) von OSM gezeigt wird und in diesem gezoomt und gescrollt werden kann? b) in der Website ein Ausschnitt aus der lokalen Kartendarstellung nur der Kartenausschnitt von OSM dynamisch gezeigt wird und in diesem direkt gezoomt und gescrollt werden kann? Danke, Markus

http://wiki.openstreetmap.org/index.php/OpenLayers

Ich habe mir die Sache auch endlich mal angeschaut und muss zugeben, dass ich damit nicht klarkomme. Auf der von Dir angegebenen Seite, PHerison, sind ja zwei Beispiele verlinkt. http://wiki.openstreetmap.org/index.php/OpenLayers_Simple_Example Das erste mit dem statischen Marker ist okay. Das funktioniert und kann entsprechend angepasst werden, obgleich mir aufgefallen ist, dass der Marker etwas daneben liegt, wenn man die Koordinaten-Angaben aus Potlatch übernimmt (L-Taste). Und auch die aus den Viewern passen nicht ganz. Komische Sache. Jedenfalls kann man das hinkriegen mit der genauen Position, wenn man mit den lat/lon-Werten etwas rumspielt. http://wiki.openstreetmap.org/index.php/Openlayers_POI_layer_example Aber dann gibt´s da noch das zweite Beispiel. Das ist aber irgendwie der Wurm drin, denn da passt nichts zueinander. Wenn man es öffnet, werden zwei Marker gesetzt. Wunderbar. Verwendet wurden die Mercator-Koordinaten. Nun habe ich mal im Viewer die lat/lon-Koordinaten dieser beiden Punkte bestimmt und mit Hilfe der entsprechenden Seite in Mercator-Koordinaten umgewandelt - die haben aber nicht sehr viel mit den Werten zu tun, die im Script stehen. Dann kam zwischenzeitlich wohl OpenLayers2.6 raus, in dem man auch direkt lat/lon verwenden kann, und es wurde ein entsprechendes Beispiel eingefügt. Das aber passt weder zur Darstellung in der Karte noch zu den Mercator-Werten. Und vor allem: Wenn man das mal probiert, wird gar nichts angezeigt. Entweder ist 2.6 also doch noch nicht aktiv, oder die eingebundenen Files sind nicht die richtigen. Denn die Syntax stimmt laut OpenLayers-Seite. Das ist aber auch alles, was man da rausbekommt. Den Rest kann man im Sinne der Beispiele knicken. Meine Frage also: Hat schon mal jemand das Beispiel mit den POIs erfolgreich an die eigenen Vorgaben angepasst? Wenn ja, wie? Danke, Kristian

Hier wurde mal vor einiger Zeit ein Link angegeben der zu funktionier scheint: http://geggus.net/sven/plan/ In dem Beispiel hat der Benutzer aber leider allen interessanten Code in eine Datei markers.js gesteckt und die ist nicht runter ladbar. Ich habe auch mal das zweite Beispiel mit der Textdatei probiert bin aber auch nicht viel weiter gekommen.

view-source:http://geggus.net/sven/plan/js/markers.js Habe es mir aber nicht naeher angesehen, ob da was brauchbares drin steht. [EDIT]: Funktioniert nicht BBCode :frowning: Einfach

view-source:http://geggus.net/sven/plan/js/markers.js

als URL eintippen und Du hast den Quelltext.

Das funktioniert nicht. Ich hab das schon mit dem Browser probiert. Alle gelisteten Klassen können runtergeladen werden, nur nicht diese.

Ich schrieb ja, dass ich es mir nicht naeher angesehen habe… :open_mouth: Was da zurueckkommt ist der HTML-Code der Fehlerseite (“Objekt nicht gefunden!”). Da hat der Autor wohl einen kaputten Verweis in seinem HTML. Daraus folgt: Die .js-Datei ist fuer die Funktion nicht noetig… :roll_eyes:

Der Grund dürfte sein, dass es dieses JS-File nicht gibt :wink: “markers.js” ist einfach eine Zeilen-Leiche, die zu löschen vergessen wurde. Wenn Du Dir den Klumpatsch lokal runterlädst, klappt es aber noch immer nicht sofort, weil sich das OpenLayers.js, dieses Miststück ;-), sich noch andere Dateien einbindet, die Genosse Sven natürlich auch alle liegen hat. Abhilfe schafft, die Datei (wie eigentlich auch üblich) direkt von OpenLayers einzubinden (http://www.openlayers.org/api/OpenLayers.js). Damit hat man immer die aktuellste Version am Start und vor allem auch keinen eigenen Server-Traffic damit. Nach dieser kleinen Modifikation läuft das Skript. Nur das Bild des Hauses hatte ich vergessen :wink: Mit anderen Worten: Alles ist da, man muss es nur finden. Das ist nun die nächste Aufgabe :wink: Kristian

Hilft euch das: http://wiki.openstreetmap.org/index.php/OpenLayers_Marker ? Das ist fast das selbe wie beim Sven. Gruß Jonas

Danke für den Hinweis, John, aber das ist o.g. statische Beispiel, nicht aber das mit den “dynamischen” Markern, die erstens mehrfach und zweitens klickbar sind.

Darf ich nochmal nachfragen nach einer “HowTo”-Anleitung: Bei mir öffnet ein Bike-Park als Sport- und Touristenattraktion. Auf deren Website wäre eine zoombare OSM-Karte hübsch. Nicht zuletzt als Werbung für OSM, denn die Biker haben meist ein GPS dabei… Aber ich weiss nicht wie es geht. Gruss, Markus

Ich will mir das Beispiel von Sven am WE nochmal genauer angucken. Zunächst habe ich die Files etwas aufgeräumt, damit sie lesbarer werden. Das hat mir aber auch nur bedingt geholfen. Irgendwann habe ich es dann sogar zum Laufen bekommen, musste aber feststellen, dass es sehr labil ist. Schon das erste Verschieben der Karte mit der Maus führt zu Bildfehlern, der Marker verschwindet für immer, und insgesamt läuft es sehr ruckelig und langsam. Der einzige Unterschied ist allerdings die oben schon genannte Einbindung der OpenLayers.js vom Server statt der lokalen Files. Kann das die beschriebenen Effekte verursachen und möglicherweise der Grund sein, warum Sven sich für die lokale Variante entschieden hat?

Hier gibts eine gleichlautende Anfrage und Ideen: http://wiki.openstreetmap.org/index.php/OpenLayers_Simple_Example http://wiki.openstreetmap.org/index.php/Openlayers_POI_layer_example Ein reiner Anwender wünscht sich natürlich ein How-To, also ein “Rezept”… Eine entsprechende Seite würde viel zur Verbreitung von OSM beitragen. Gruss, Markus

Wenn Du genau hinschaust, siehst Du, dass ich die beiden Links oben auch schon hingeschrieben hatte, was dafür spricht, dass sie nicht wirklich weitergeholfen haben.

Hallo Kristian,

ja, das geschieht manchmal, dass ich etwas zwar lese, und wenn ich es später woanders entdecke, mich nicht mehr erinnere es gelesen zu haben. Manchmal hilft es, jemandem einen Link zu schicken - hier war es doppelt gemoppelt. Sorry. Wenn Du - oder jemand anders - eine Lösung gefunden hat, schreibst Du dann ein HowTo im Wiki? Wäre super! Gruss, Markus

Ich bin bisher aus Zeitgründen nicht weitergekommen, aber wenn ich was habe, wird es zur Verfügung gestellt, klar.

Building Maps into Your Swing Application with the JXMapViewer heißt die Überschrift von Joshua Marinacci und beschäftigt sich mit der IDE Netbeans und der Swing Komponente JXMapViewer. Joshua erklärt Schritt für Schritt wie man die Daten von openstreetmap sinnvoll in eine einfache Java-Applikation einbinden kann. :wink: URL: 1) http://today.java.net/pub/a/today/2007/10/30/building-maps-into-swing-app-with-jxmapviewer.html 2) http://today.java.net/pub/a/today/2007/11/13/mapping-mashups-with-jxmapviewer.html

Hi und herzlich willkommen im Forum. Danke für den Tipp. Gibt es das Ganze auch in einer deutschen Übersetzung? Ich denke da kommen einige ganz schön ins schleudern… (ich eingeschlossen) :confused: Georg

Es gibt keine deutsche Übersetzung dieser beiden Webseiten, zumindestens ist mir keine bekannt. Ich könnte die wichtigsten Sätze übersetzen, ist nicht schwer. Das braucht aber ne Weile, denke mal das ich es heute nicht mehr schaffen werde. Die Webseite vom Sven gefällt mir gut, versuche gerade lokal die Anwendung nachzubauen. Schaue mal wie weit ich heute noch damit komme, werde ansonsten heute abend meine Ergebnisse hier zeigen. :slight_smile:

Naja, Java ist ja gut und schön, aber es geht ja hier eher um die simple Einbindung in die Webseite mittels der OpenLayers-JavaScript-Bibliothek & Co. Habe übrigens noch nicht weiter probieren können bisher :frowning: