theHacker

sieht vor lauter Ads den Content nicht mehr
Teammitglied
ID: 69505
L
20 April 2006
22.682
1.316
Moin.

Ich bin grad dran, ein wenig mit OpenLayers zu experimentieren.
Mein Ziel is, einen Weg in die Karte einzuzeichnen.

Alle Google-Versuche haben mich nur zu sowas geführt.
Grundsätzlich ist es das, was ich will; aber es wäre schön, wenn ich die Koordinaten direkt in den JavaScript-Teil schreiben könnte und nicht erst eine (pro Ebene) separate Datei anlegen müsste. Die Marker im Beispiel kann ich ja auch direkt in meinem JavaScript erzeugen.

Die Doku von OpenLayers is nicht sonderlich hilfreich. Sie redet zwar von "URL to a GML file", aber ich bin nicht überzeugt, dass es wirklich keinen anderen Weg gibt.

Kennt sich wer aus?
 
Auskennen tu ich mich mit OpenLayers nicht, aber wenn ich auf solche Hürden stoße, und es keinen anderen Weg gibt, würd ich zunächst schauen, die Lib so zu erweitern geht, dass ich die Daten auch in Form eines Strings übergeben kann, anstatt diese von einer URL zu laden. Diesen String könnte man dann mittels JS (+AjaxCall) zusammen schustern.

Aber wie gesagt, ich kenn OpenLayers nicht, und weiß daher nicht mal, ob der Code nicht obfuscated ist.

Ich weiß ja auch nicht was Du vor hast, ob du die "Route" dynamisch erzeugen und/oder ändern willst, o.ä. Aber da wäre es denkbar, dass Du die Anforderungen an den Server schickst, dieser temporär das GPX file erstellt und Du es bei "onSuccess" vom Server lädst (und dann siehe Beispiel mittels map.removeLayer() + map.addLayer() aktualisierst).

Gruß
 
[...] die Lib so zu erweitern geht, dass ich die Daten auch in Form eines Strings übergeben kann, anstatt diese von einer URL zu laden.
Ich bin nicht wirklich ein JavaScript-Profi. Hab den Code zwar durchgelesen und das wird schön per XMLRequest gemacht. Und da funktioniert - durch Ausprobieren rausgefunden - nur eine Dateiangabe oder eine http-Adresse. Relative Dateiangaben oder file-Angaben frisst das Ding nicht.
Ich weiß ja auch nicht was Du vor hast, ob du die "Route" dynamisch erzeugen und/oder ändern willst, o.ä.
Die Routen werden dynamisch auf dem Server erzeugt und sollen nur visualisiert werden.
Aber da wäre es denkbar, dass Du die Anforderungen an den Server schickst, dieser temporär das GPX file erstellt [...]
So in etwa hab ich das auch gelöst und werds wohl auch so beibehalten. Ich weiß auch nicht, wie viele Routen, d.h. wie viele Layer, später angezeigt werden müssen.

Ich generiere mittels Java erst die nötigen GPX-Files und danach schreib ich das XHTML-File, was dann OpenLayers und die nötigen GPX-Files einbindet.
(Der Code sieht zum :sick: aus, weils in Java keine Heredoc-Syntax gibt)

Später soll das Ganze dann mittels JSP gelöst werden

  • Client sendet Anforderung an den Server
  • Server berechnet Routen
  • Server generiert Ergebnisfiles und schickt einen Link raus
  • Client kann den Link aufrufen und das Ergebnis ansehen