Llamo a getBounds() directamente después de una llamada a fitBounds(), y pensé que obtendría un límite válido a medida que el mapa se recentraliza y se acerca para ajustarse a los límites. Lamentablemente, getBounds() regresa a cero.Google Maps map.getBounds() inmediatamente después de una llamada a map.fitBounds
El código para reproducir este es el siguiente:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<style>
#map {
width: 800px;
height: 400px;
}
</style>
</head>
<body>
<div id='map'></div>
<script>
var myLatlng1 = new google.maps.LatLng(-38.397, 150.644);
var myLatlng2 = new google.maps.LatLng(-34.897, 150.844);
var myLatLngBounds = new google.maps.LatLngBounds(myLatlng1, myLatlng2);
var myOptions = {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng(0, 0),
zoom: 0
}
var map = new google.maps.Map(document.getElementById("map"), myOptions);
map.fitBounds(myLatLngBounds);
console.log(map.getMapTypeId());
console.log(map.getZoom());
console.log(map.getBounds());
</script>
</body>
</html>
¿Hay algo que me falta? No he podido encontrar nada en los documentos sobre esta situación. El más cercano que consigue es una nota en getBounds que dice:
Si el mapa aún no se ha inicializado (es decir, mapType sigue siendo nula), o en el centro y el zoom no se han establecido, entonces el resultado es nulo.
Tenga en cuenta que getZoom no está definido, también. ¿FitBounds() no establece este valor?
EDIT He actualizado el código con un zoom y un centro predeterminados, según las sugerencias de Marcelo.
comas que faltan después HOJA DE RUTA – Marcelo
fija la coma. –