Hallo!

ich habe eine Frage zur Google Maps API...

Im Prinzip dreht es sich um folgende Kombination:

ich möchte eine Karte mit persönlichen, vordefinierten Markern setzen
und gleichzeitig dort ein geocoding (vom Benutzer der Karte)
durchführen lassen. Beide Kartensysteme habe ich schon unabhängig
laufen lassen: eine Karte mit geocoding, und eine andere Karte mit den
eigenen Markern. Nun möchte ich aber, dass beides innerhalb einer <div
id=map_canvas ...></div> angezeigt wird. Hierzu habe ich bereits
folgende Codeschnipsel herausgesucht:

Für das Suchen der Adresse folgender Code:


    var map = null;
    var geocoder = null;

    function initialize() {
      if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
        geocoder = new GClientGeocoder();
      }
    }

    function showAddress(address) {
      if (geocoder) {
        geocoder.getLatLng(
          address,
          function(point) {
            if (!point) {
              alert(address + " not found");
            } else {
              map.setCenter(point, 13);
              var marker = new GMarker(point);
              map.addOverlay(marker);
              marker.openInfoWindowHtml(address);
            }
          }
        );
      }
    }


und für das Anzeigen der eigenen Marker folgenden Code:

var map;
var icon0;
var newpoints = new Array();

function addLoadEvent(func) {
        var oldonload = window.onload;
        if (typeof window.onload != 'function'){
                window.onload = func
        } else {
                window.onload = function() {
                        oldonload();
                        func();
                }
        }
}

addLoadEvent(loadMap);
addLoadEvent(addPoints);

function loadMap() {
        map = new GMap2(document.getElementById("map"));
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        map.setCenter(new GLatLng( 49.699693, 8.656469), 11);
        map.setMapType(G_NORMAL_MAP);

           icon0 = new GIcon();
           icon0.image = "markers/1.png";
           icon0.inconSize = new GSize(20,20);
           icon0.iconAnchor = new GPoint(9, 34);
           icon0.infoWindowAnchor = new GPoint(9, 2);
           icon0.infoShadowAnchor = new GPoint(18, 25);


           icon1 = new GIcon();
           icon1.image = "markers/2.png";
           icon1.inconSize = new GSize(20,20);
           icon1.iconAnchor = new GPoint(9, 34);
           icon1.infoWindowAnchor = new GPoint(9, 2);
           icon1.infoShadowAnchor = new GPoint(18, 25);

}

function addPoints() {

           newpoints[0] = new Array(49.7030, 8.60766 , icon0, 'Auerbach',
'Berliner Ring 160 <br/> Frequenz: 2.4 GHz');
           newpoints[1] = new Array(49.6928, 8.61461 , icon0, 'Auerbach',
'Weiherhausstadion <br/> (Flutlichtmast) <br/> Frequenz: 2.4 GHz');
           newpoints[2] = new Array(49.6901, 8.59381 , icon0, 'Bensheim', 'Am
Schlachthof 6 <br/> (Trafostation) <br/> Frequenz: 2.4 GHz');
           newpoints[3] = new Array(49.6812, 8.61991 , icon0, 'Bensheim',
'Beauner Platz 4 <br/> (Flutlichtmast) <br/> Frequenz: 2.4 GHz');
           newpoints[4] = new Array(49.6716, 8.60300 , icon0, 'Bensheim', 'An
der Riedwiese <br/> Frequenz: 2.4 GHz');


        for(var i = 0; i < newpoints.length; i++) {
                var point = new GPoint(newpoints[i][1],newpoints[i][0]);
                var popuphtml = newpoints[i][4] ;
                var marker = createMarker(point,newpoints[i][2],popuphtml);
                map.addOverlay(marker);
        }
}

function createMarker(point, icon, popuphtml) {
        var popuphtml = "<div id=\"popup\">" + popuphtml + "<\/div>";
        var marker = new GMarker(point, icon);
        GEvent.addListener(marker, "click", function() {
                marker.openInfoWindowHtml(popuphtml);
        });
        return marker;
}


Wie gesagt, beide Karten funktionieren unabhängig voneinander, jedoch
bekomme ich es nicht hin, innerhalb einer Karte a) die Suchadresse als
Marker anzeigen zu lassen und gleichzeitig b) die persönlichen Marker
anzeigen zu lassen.

Hier sind meine Fähigkeiten von Javascript auch schon am Ende und
daher hoffe ich, dass mir jemand hier helfen kann...

Versucht habe ich bereits, beide Scripte direkt in eine HTML-Datei
einzubinden und eben entsprechend die map-id gleichzuhalten. (bei
Adresssuche ist es ja momentan "map_canvas" und bei Markeranzeige ist
es nur "map") Aber sobald das zusammengeführt ist, bekomme ich gar
keine Karte angezeigt...

Vielen Dank schonmal für die Hilfe,
Alex

-- 
You received this message because you are subscribed to the Google Groups 
"Google Maps API V2" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-maps-api?hl=en.

Reply via email to