在使用Google Map API的時候,有時會使用KML格式來做套疊(overlay)的動作,然而剛開始在使用kml的時候,必須要注意一些限制或細節;以下是我曾經卡關後所得出的經驗:
也就是不能使用內部網路的URL,真要這樣的話,還是放在自己公司的公開網站或找個空間放檔比較好;只想在內部網站用Google Map的大德們,其實這已經是違反Google Mape API免費使用之下的條款了,使用API必須為公開、不額外收費的。
KML最大為10MB,kmz則是3MB;其實如果用到或超過容量上限,常常都是製作不好的kml(例如軟體匯出、轉換來的),就算是well-format,效能也會因此不好,試想要套疊一個圖層內容,必須要等待下載10MB的資料之後才能動作,這樣怎麼會好用?
單檔最多10個Network Links,1000個圖徵(feature)。
有時候套疊錯誤是因為kml也許是外國的gis軟體匯出的,所以可能是ansi編碼,由於我們常常會使用中文內容,建議還是順手用記事本把它改成UTF-8編碼,以免debug到哭..
強烈建議使用「英文檔名」,即便已將檔名做過Url字元編碼,也是會有問題。
補充說明:
有些人會認為在Google Earth上可以開的KML,給Google Map用就可以,但若真的去做,會發現不一定可行,其最大的原因是兩個API所支援的KML標籤不一樣,Google Map支援的較少。最常見的誤解就是覺得Google Earth可以透過KML套疊WMS(Network Link),但目前為止Google Map API v3是沒辦法的,而想在Google Map API上套疊WMS的話,又是另一篇故事了....
其他還有些更detail的限制及相關資源,可自行參考以下資料:
請教kml檔案內建立的景點可以讓網路上的人搜尋到嗎?謝謝
回覆刪除有沒有什麼地方需要設定?
謝謝你
就我先前所了解的,可能是沒辦法的;把kml內的相關景點資訊做成網頁,讓搜尋引擎找得到是可行的方向之一。
回覆刪除