Pude hacer esto usando el público World Country Boundaries.kml Fusion Table.
Lo necesitará agregar como Fusion Table Layer a su mapa.
En primer lugar inicializar un mapa está reducida a la derecha, centrado para que podamos ver la mayoría de los países:
var map = new google.maps.Map(document.getElementById('map-canvas'), {
center: new google.maps.LatLng(30,0),
zoom: 2,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
A continuación añadir el FusionTablesLayer
:
var world_geometry = new google.maps.FusionTablesLayer({
query: {
select: 'geometry',
from: '1N2LBk4JHwWpOY4d9fobIn27lfnZ5MDy-NoqqRpk'
},
map: map,
suppressInfoWindows: true
});
que tiene este aspecto:
Con respecto a:
¿Existe una posibilidad a desaparecer los países al otro, que no se utilizan?
Si nos fijamos en the Fusion Table verá que hay columnas para Name
y ISO_2DIGIT
. Podemos filtrarlos pasando una condición where
al FusionTablesLayer
, e.g:
query: {
select: 'geometry',
from: '1N2LBk4JHwWpOY4d9fobIn27lfnZ5MDy-NoqqRpk',
where: "ISO_2DIGIT IN ('US', 'GB', 'DE')"
},
para dar:
Alguien tenía una pregunta similar (http://stackoverflow.com/questions/2956355/highlight-polygon-and-tint-rest-of-map-using-google-maps/2958856#2958856) hace un tiempo . Si tiene las coordenadas para el borde, puede invertir un polígono usando el método en mi respuesta a esa pregunta. Si no tiene las coordenadas para el borde, probablemente pueda encontrarlas en algún lugar de la web, o dibujar el borde usted mismo usando google maps "Mis lugares" y obtener las coordenadas. – Mark