Google maps api - добавить слой kml к карте

Я играю с Google Maps api через javascript (я также новичок в javascript). Я экспериментировал с добавлением информационных окон и маркеров на карту, следуя примерам api.

То, что я хочу сделать, - наложить файл KML на карту Ирландии - и я искал таблицы слияния для файла KML, содержащего информацию для границ графств Ирландии.

Файл kml пришел из таблицы слияния: http://www.google.com/fusiontables/DataSource?dsrcid=935280&search=ireland+counties&cd=0

Я экспортировал его в файл kml и загрузил его на общедоступный сайт (см. Javascript - я не могу разместить более двух ссылок)

Я пытаюсь загрузить файл kml по ссылке ниже - эта карта, которую я выбрал, появляется, но наложение KML нет. http://songsaboutsuperheroes.com/index.html

Я пробовал использовать ссылку на ID таблицы слияния и не повезло с этим. Я также пытался использовать ссылку KML Network и не повезло с этим.

Поэтому я пытаюсь загрузить файл KML напрямую, как я видел в учебниках. Может ли кто-нибудь указать мне в правильном направлении - я не уверен, что я делаю неправильно - спасибо заранее!

Вот Javascript, который я использую:

function initialize() {

 var latlng = new google.maps.LatLng(53.36942,-6.378288);

 var myOptions = {
 zoom: 7 ,
 center: latlng,
 mapTypeId: google.maps.MapTypeId.ROADMAP
 };


 var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 


 var myLayer = new google.maps.KmlLayer(
 'http://songsaboutsuperheroes.com/Ireland_Counties.kml');
 myLayer.setMap(map);
 }
2 ответа

Это работает - я получил доступ к таблице слияния, которая содержит данные kml:

var latlng = new google.maps.LatLng(53.36942,-6.378288);

var myOptions = {
 zoom: 7,
 center: latlng,
 mapTypeId: google.maps.MapTypeId.ROADMAP
 };


var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 
layer = new google.maps.FusionTablesLayer(935280, {
 suppressInfoWindows: true
 });

layer.setQuery("select geometry,name_1 from 935280");
layer.setMap(map);


var kmlUrl = 'http://www.yoursite.com/YOUR_KML_FILE.kml';

 var KML_single = new google.maps.KmlLayer(kmlUrl, {color:"#4385F1" } );


 KML_single.setMap(map);


 EXML_single = new GeoXml("EXML_single", map, kmlUrl, {
 sidebarid:"sidebar",
 iwwidth:280

 }); 
 EXML_single.parse('SOME LOADING TEXT HERE');

licensed under cc by-sa 3.0 with attribution.