lunes, julio 19, 2010

Acceso abierto a google maps desde Open Layers

Ya se puede acceder con OpenLayers a las nuevas capas de Google Maps API V.3., para las que no es necesario disponer de una clave.
Para ello hay que incorporar el siguiente script a nuestra página:



Por el momento tenemos que utilizar el API de OpenLayers que se encuentra en la siguiente dirección:



La forma de construir las capas difiere un poco de la versión anterior y se debe hacer como se indica a continuación:

var gphy = new OpenLayers.Layer.Google(
"Google Physical",
{type: google.maps.MapTypeId.TERRAIN}
);

var gmap = new OpenLayers.Layer.Google(
"Google Streets", // the default
{numZoomLevels: 20}
);

var ghyb = new OpenLayers.Layer.Google(
"Google Hybrid",
{type: google.maps.MapTypeId.HYBRID, numZoomLevels: 20}
);

var gsat = new OpenLayers.Layer.Google(
"Google Satellite",
{type: google.maps.MapTypeId.SATELLITE, numZoomLevels: 22}
);

Las nuevas capas vienen en la proyección Spherical Mercator por lo que tendremos que transformar las coordenadas de Latitud y Longitud a dicha proyección:

map.setCenter(new OpenLayers.LonLat(10.2, 48.9).transform(
new OpenLayers.Projection("EPSG:4326"),
new OpenLayers.Projection("EPSG:900913")
), 5);

A futuro OpenLayers prepara una nueva capa OpenLayers.Layer.Google.v3 que vendrá preconfigurada con la proyección Spherical Mercator a la manera de las capas de OSM.

Puedes consultar un ejemplo completo en el siguiente enlace: google-v3.html

Para consultar información ampliada sobre el tema puedes ojear las siguientes páginas:
Google Maps V3 for OpenLayers
Google Maps Javascript API V.3

Publicado por Santiago Higuera
http://ingemoral.es/wordpress

Visto en: http://blog-idee.blogspot.com

No hay comentarios.: