· ArcGIS對KML的支援
ArcGIS 10中支援KML 2.2.0版本。
1. ArcToolbox輸出KML
我們可以通過ArcToolbox中的“To Kml”工具箱将地圖或圖層輸出為KML格式。比如使用“Map To Kml”工具,如圖 12所示:
圖 12 使用ArcToolbox導出KML
這樣導出的KML為KMZ檔案,如果在Google Earth中直接打開導出的KMZ檔案,可以看到在Google Earth中顯示的地圖和MXD中的基本一緻。“基本一緻”表示還稍有不同,比如在圖 13中藍色的多邊形對象在導出KML并加載到Google Earth[1]後會被下層的多邊形覆寫而導緻不可見。不過,這個是Google Earth的問題,因為從圖層屬性中可以看到,這些藍色多邊形所在的“Lakes”圖層資料都存在,可惜沒被正确顯示,如圖 14的對比效果。
圖 13 ArcMap中顯示的地圖效果
圖 14 Google Earth中顯示KML的覆寫問題
由于我們選擇了導出矢量的資料,是以如果解壓縮導出的KMZ檔案,可以看到其中隻包含了一個doc.kml檔案,有興趣可以自己打開這個XML檔案對照KML标準看一下。如果導出圖檔格式,KMZ中将會包含一個輸出的圖檔,在doc.xml則是簡單地将這個圖檔引用進來,這樣的KML在Google Earth中顯示并放大後會出現如圖 16的鋸齒。
圖 15 Google Earth中顯示ArcGIS導出的矢量KML
圖 16 導出圖檔結果的KML在Google Earth中放大的效果
2. ArcGIS Server釋出KML服務
在ArcGIS Server中,通過勾選KML這個Capability可以啟用服務的KML通路,如圖 17。
圖 17 ArcGIS Server釋出KML服務
當釋出完這個KML服務後,我們就可以直接向ArcGIS Server的REST接口發送傳回KMZ格式的請求,然後将這個請求的位址添加到Google Earth的網絡連結中。
圖 18 将ArcGIS Server釋出的KML服務添加到Google Earth的效果
[1] 版本:5.1