2011-11-21 138 views
0

我已經通過JavaScript中的谷歌地圖API玩弄(我也有新的JavaScript)。 我已經嘗試通過以下的API示例添加信息窗口和標記到地圖中。谷歌地圖API - 添加KML圖層到地圖

我想要做的是覆蓋一個KML文件到地圖愛爾蘭 - 我搜索的KML文件融合表包含了愛爾蘭的縣邊界的信息。

KML文件從一個融合表這裏走來: http://www.google.com/fusiontables/DataSource?dsrcid=935280&search=ireland+counties&cd=0

我把它導出爲KML文件,並將其上傳到一個公共網站(見JavaScript的 - 我不能發佈超過2個鏈接)

我試圖加載KML文件在下面的鏈接 - 這地圖我選擇出現,但KML覆蓋沒有。 http://songsaboutsuperheroes.com/index.html

我試過使用鏈接到融合表ID,並沒有與運氣。 我也嘗試使用KML網絡鏈接,並沒有運氣。

所以我想直接加載就像我在教程見過的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); 
} 

回答

1

這工作 - 我訪問的直接持有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); 
+0

縮進四個空格代碼格式化它。 – Amy

0
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');