Ich verwende die Google Maps API v3, um eine Gruppe von Standorten für eine bestimmte Stadt zu generieren. Ich möchte, dass die Karte an der durchschnittlichen Position aller Standorte zentriert wird. Um dies zu tun, ich lade LatLng Objekte aller Standorte ich auf der Karte in ein Array markieren möge genannt locations
und mit dem folgenden Code:Google Maps-API-Grenzen Fehler
if(locations.length > 1)
{
var bounds = new google.maps.LatLngBounds(locations[0], locations[1]);
for(var x = 2; x < locations.length; x++) bounds.extend(locations[x]);
var center = bounds.getCenter();
}
else var center = locations[0];
jedoch in Tests, habe ich diesen Code zu definieren, die Standorte Array:
var locations = [];
locations.push(new google.maps.LatLng(50.11658, 8.68552));
locations.push(new google.maps.LatLng(50.10026, 8.66941));
locations.push(new google.maps.LatLng(50.10989, 8.68822));
locations.push(new google.maps.LatLng(50.11074, 8.68269));
locations.push(new google.maps.LatLng(50.1040552, 8.6936269));
locations.push(new google.maps.LatLng(50.110206, 8.6818686));
locations.push(new google.maps.LatLng(50.10957, 8.69077));
und bekam ein verrücktes Ergebnis für center
. Wenn ich den ersten Ort entferne (den bei 50.11658, 8.68552), funktioniert der Code. Wenn ich es so verschiebe, dass es nicht der erste Ort ist, der in das Array geschoben wird, funktioniert der Code. Ich habe keine Ahnung, warum oder wie dieser Ort diesen Fehler produzieren würde oder könnte!