Está usted en Indice > Construcción > Lenguajes > JavaScript > Lecciones y Paso a Paso > CountryPoints, paises por puntos para Google Maps
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

CountryPoints, paises por puntos para Google Maps

Cómo montar un fichero Javascript con todos los puntos necesarios para colorear paises en Google Maps sin necesidad de usar ficheros KML.

Llevo un días recopilando datos y uniendo puntos geográficos para montar un fichero Javascript con todos los puntos necesarios para colorear paises en Google Maps sin necesidad de usar ficheros KML.

Usando de base el estandar ISO 3166-1 de codigos de paises, he montado un fichero JS de (892kb) con todos los puntos necesarios para pintar los paises sobre mapas de Google Maps usando GPolygon(). Se que es una matada, pero la velocidad de creación de poligonos es más rápido que la carga de fichero KML, aunque estos son más potentes y ofrecen más posibilidades.

Ejemplo

var map = null; // MAPA
    var points = [];    // Puntos pintados
    var code = "ES"; // Espana
    // Opciones del poligono
    var opt = {
lineColor: "#ff0000", // Contorno del pais
lineWidth: 1, // Tamano la linea de contorno
lineOpacity: 1, // Opacidad de la linea de contorno
backgroundColor: "#ff0000", // Color del fondo
backgroundOpacity: 0.2 // Opacidad del fondo.
    };
// Funcion que pinta poligonos
function paintPais(code, mapa) {
var coords = country[code].coord;
for (var x in coords) {
points[code] = new GPolygon(coords[x], opt.lineColor, opt.lineWidth, opt.lineOpacity, opt.backgroundColor, opt.backgroundOpacity);
GEvent.addListener(points[code], "click", function(a){alert("PAIS: " + pais.desc);});
mapa.addOverlay(points[code]);
}
}

window.onload = function() {
    if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
      map.setCenter(new GLatLng(0, 0), 3);
      if (country[code]) paintPais(code, map);
      }
}

Demo

He montado un pequeño script con Google Maps para poder testearlo y ver como funciona. ¿Como usarlo? Para poder usar el script simplemente tenemos que linkarlo en nuestro <head /> justo debajo de la llamada a Google Maps.

<script src="http://maps.google.com/maps?file=api&v=2&key={KEY}" type="text/javascript"></script>
<script src="http://countrypoints.googlecode.com/files/countrypoints.js" type="text/javascript"></script>

Al formar parte de Google Code, delegamos en Google el tiempo de carga del fichero, y ya que es grande no nos viene mal abusar de sus servidores

El secreto

Si le echamos un vistazo al fichero, vemos que este está compuesto de objetos que forman parte del objeto country y que contienen los puntos necesarios para pintar los contornos de los paises.



Usuarios que han visto este tema también han visto...

- Pequeños trucos de JavaScript
- Contadores de Fecha
- Listas con descripción en HTML
- Refresco de imágenes para Webcam en JavaScript
- Tabla de colores con Javascript


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad






Cursos de Community Manager

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2011 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 13-02-2012 a las 11:09:12