google-maps - google - mapas en android
¿Cómo crear un círculo en google map v3 con el mismo radio en todos los niveles de zoom? (2)
Estoy trabajando en la migración de código de mapa de v2 a v3.
En v2 he creado un círculo con la ayuda de GProjection y Overlay y se verá del mismo tamaño en todos los niveles de zoom.
En v3, google da una clase de círculo que creará un círculo en el mapa, pero cambiará en diferentes niveles de zoom.
Quiero crear un círculo que tenga el mismo tamaño en todos los niveles de zoom.
Quiero saber de otra manera en google map v3 porque puedo crear un círculo con el mismo tamaño para todos los niveles de zoom.
Gracias por adelantado.
Para crear círculos que tengan el mismo tamaño de píxel en la pantalla (en comparación con el mismo tamaño de área en coordenadas geográficas), tradicionalmente usaría un Marcador con un Icono personalizado con la forma de un círculo. Pero ahora puede ser más flexible y usar los Símbolos relativamente nuevos en v3.
var marker = new google.maps.Marker({
position: new google.maps.LatLng(-122.5,47.5),
icon: {
path: google.maps.SymbolPath.CIRCLE,
fillOpacity: 0.5,
fillColor: ''#ff0000'',
strokeOpacity: 1.0,
strokeColor: ''#fff000'',
strokeWeight: 3.0,
scale: 20 //pixels
}
});
Aparte: también puedes hacer animaciones geniales con estos símbolos: http://googlegeodevelopers.blogspot.com/2012/06/powerful-data-visualization-with.html
Utilizo este código para administrar los círculos de escalado y zoom en mi Google Map V3:
google.maps.event.addListener(iMap.map, ''zoom_changed'', function () {
for (var i = 0; i < iMap.circle.length; i++) {
var p = Math.pow(2, (21 - iMap.map.getZoom()));
iMap.circle[i].setRadius(p * 1128.497220 * 0.0027);
}
menu.hide();
});