[opengeodb] Google-Map-Integration

Martin Trautmann traut at gmx.de
Son Dez 16 08:32:39 CET 2007


Robert Böck wrote:
> Hallo Martin,
> 
> Martin Trautmann wrote:

> Ein paar Controls schaden auch nicht:
> 
>      map.addControl(new GSmallMapControl());
>      map.addControl(new GMapTypeControl());
> 
> Und dann einen Marker setzen:
> 
>      var myplace = new GMarker(new GLatLng(48.1500, 11.5833));
>      map.addOverlay(myplace);
> 
> Die Geokoordinaten musst du dann eben entsprechend richtig einsetzen.
> Das war's auch schon, ist keine Hexerei. Ist natürlich alles ausbaubar.

Übergebe ich hier eine ganze Liste an Markern? Vermutlich möchte ich 
denen ja auch noch weitere Text-Info mitliefern.


>> Recht gut gemacht finde ich z.B. 
>> http://www.geonames.org/maps/showOnMap?q=haslach
>>
>> Dort gefällt mir auch besonders gut der move-Befehl.
> 
> Sorry, ich kann dir nicht ganz folgen. Was für einen move-Befehl meinst du?

Folge dem Link.
Warte, bis die Marker angezeigt werden.
Klicke auf einen der Marker, so dass die "Sprechblase" angezeigt wird.
Sieh dir dort die Fußzeile mit den blauen Befehlen an:

  _zoom move edit history tag delete alternate names perma link semantic 
web rdf_

Klicke auf den zweiten Befehl davon: Move

Links erscheint der Text:
move Haslach
   1. point mouse to location (or gps)
   2. save new coordinates

Klicke also auf der Karte an die passende Stelle auf der Karte. Es 
erscheint ein neuer Marker und eine rote Linie zwischen altem und neuem 
Marker, ausserdem eine Sprechblase mit der Möglichkeit, diese Korrrektur 
abzuspeichern.


> Naja, die Google Maps API ist eigentlich recht gut dokumentiert und mit
> Beispielen bestückt.

Man muss sich eben die Zeit nehmen, das zu lesen und zu verstehen.


>> Die Rohdaten für google maps sollten nach Möglichkeit schon direkt im 
>> HTML übergeben werden, das ich selbst zusammengebaut habe - denn dann 
>> würde ich mir den Umweg über PHP sparen und die Daten gerne gleich mit 
>> perl aus den Rohdaten zusammenfischen.
> 
> So ganz weiß ich immer noch nicht, was du willst, aber
> ich denke, jetzt kommst du schon ein Stückchen weiter.

Obiges Beispiel http://www.geonames.org/maps/showOnMap?q=haslach zeigte 
dir schon alle Suchergebnisse zu Haslach - entsprechend möchte ich alle 
Suchergebnisse einer Anfrage anzeigen. Von daher braucht man z.B. auch 
entweder einen Befehl, um die optimale Zoomstufe über die Resultate von 
Google ermitteln zu lassen, oder man braucht eine eigene Umrechnung, um 
aus den min/max-Werten der Resultate die Zoomstufe abzuleiten.

Schönen Gruß
Martin