Hallo Leute,
brauche mal wieder eure Hilfe. Diesmal hab ich ein Problem mit Markern in Google-Maps. Hoffe es hat schon jemand Erfahrung damit gesammelt. Google gibt leider keine Hilfreiche Lösungen für mein Problem aus.
Zur Vorgehensweiße...
Kunden können in einer Map ein Polygon mit belieb vielen Knoten-Punkte (Koordinaten) erstellen. Nach Erstellung des Polys möchte ich einen einfachen Marker in dessen Zentrum setzen. Soweit kein Problem. Wenn allerding die Größe des Polys oder die Positionen der Poly-Knoten geändert wird, soll der zentrierte Marker in das neu berechnete Zentrum gesetzt werden. Funktioniert soweit alles prima, bis auf daß, das der alte zentrierte Marker sich nicht löschen lässt. Somit tauchen nach jeder Änderung weitere Marker auf. Hat jemand eine Lösung hierfür?
Hier meine Funktion mit welcher ich den Marker setze:
Alles anzeigen
Laut den Google-Treffern die ich gefunden habe, sollte ich mit "map.removeOverlay(marker);" den Marker löschen Können. Geht aber nicht.
"map.clearOverlays();" kann ich leider nicht nutzen, da sonst auch mein Polygon entfernt wird.
Hoffe es kann mir Jemand helfen.
Grüße KMD
brauche mal wieder eure Hilfe. Diesmal hab ich ein Problem mit Markern in Google-Maps. Hoffe es hat schon jemand Erfahrung damit gesammelt. Google gibt leider keine Hilfreiche Lösungen für mein Problem aus.
Zur Vorgehensweiße...
Kunden können in einer Map ein Polygon mit belieb vielen Knoten-Punkte (Koordinaten) erstellen. Nach Erstellung des Polys möchte ich einen einfachen Marker in dessen Zentrum setzen. Soweit kein Problem. Wenn allerding die Größe des Polys oder die Positionen der Poly-Knoten geändert wird, soll der zentrierte Marker in das neu berechnete Zentrum gesetzt werden. Funktioniert soweit alles prima, bis auf daß, das der alte zentrierte Marker sich nicht löschen lässt. Somit tauchen nach jeder Änderung weitere Marker auf. Hat jemand eine Lösung hierfür?
Hier meine Funktion mit welcher ich den Marker setze:
Quellcode
- function setMarker()
- {
- var sum_lat = 0;
- var sum_lng = 0;
- var val_coords = document.getElementById("koordinaten").value;
- var lines = val_coords.split("; ");
- for (var i=0; i<lines.length; i++) {
- if(i < (lines.length-1)){
- var lineArray = lines[i].split(", ");
- sum_lng = sum_lng + parseFloat(lineArray[0]);
- sum_lat = sum_lat + parseFloat(lineArray[1]);
- }
- }
- center_lng = sum_lng/(i-1);
- center_lat = sum_lat/(i-1);
- center_lng = center_lng.toFixed(6);
- center_lat = center_lat.toFixed(6);
- // MARKER SETZEN
- centerMarker = new GLatLng(center_lat, center_lng);
- marker = map.addOverlay(new GMarker(centerMarker));
- }
Laut den Google-Treffern die ich gefunden habe, sollte ich mit "map.removeOverlay(marker);" den Marker löschen Können. Geht aber nicht.
"map.clearOverlays();" kann ich leider nicht nutzen, da sonst auch mein Polygon entfernt wird.
Hoffe es kann mir Jemand helfen.
Grüße KMD