Я хочу построить что-то вроде this для Нидерландов. У меня есть название провинций, и вы щелкаете одним из них, и это должно громко его границы и отображать его, поэтому установите правильные границы. Вот мой код:Google Maps получает kml от fusiontable и отображает их
var FT_TableID = "19lLpgsKdJRHL2O4fNmJ406ri9JtpIIk8a-AchA";
var CountryName = "Netherlands";
google.load('visualization', '1', {
'packages': ['corechart', 'table', 'geomap']
});
jQuery(document).ready(function() {
var mapProp = {
center: new google.maps.LatLng(52.24730, 5.36449),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
jQuery("span").click(function() {
var name = jQuery(this).text();
//map.fitBounds(gpolygons[id].bounds);
var queryStr = {
select: 'kml_4326',
from: FT_TableID,
where: "'name_0' = '" + CountryName + "' AND 'name_1' = '" + name + "'"
};
var query = new google.visualization.Query('http://www.google.com/fusiontables/gvizdata?tq=' + queryStr);
var FT_Options = {
suppressInfoWindows: true,
query: query
};
layer = new google.maps.FusionTablesLayer(FT_TableID, FT_Options);
layer.setMap(map);
});
});
рабочего пример также на codepen: http://codepen.io/anon/pen/JXvXjb
Моей проблема: Он отображает границы и данные Kml всего во вьюпорте, а не только выбранная области. Что-то с неправильным запросом? Также я хочу, чтобы, как в примере с geocodezip, порт представления установлен в выбранную область. Для этого мне нужны данные boundsdata и установите его с bounds.extend()
и map.fitBounds(bounds)
. Но откуда я могу получить эти данные?