2014-02-17 133 views
0

我正在使用KML。我生成了以下適用於Google地球的KML,但對於Google地圖無法正常工作。Google地球和Google地圖KML不匹配

問題是所有圖標都沒有顯示出來。所有在URL中輸入的圖標都是32x32。

http://theinternallight.com/KML/GetAllCountryScalars%20(47).kml

任何人能告訴我什麼,我做錯了。

由於提前

+0

是否所有[圖標透明](http://theinternallight.com/KML/IconLatLong/-70-175.png)? – geocodezip

回答

0

KML時不能正確顯示,檢查的第一件事情是,如果KML符合標準。 KML中元素的順序具有嚴格的順序和Style元素,例如,必須位於Point幾何體之前,因此KML無效。具有元素排序的KML地標的正確結構可以在here找到。

這裏是在原KML使用不正確的排序找到一個例子:

<Placemark> 
    <Point> 
     <coordinates>180,-5,0</coordinates> 
    </Point> 
    <Style id="-5180.png"> 
     <IconStyle> 
      <Icon> 
       <href>http://theinternallight.com/KML/IconLatLong/-5180.png</href> 
      </Icon> 
     </IconStyle> 
    </Style> 
</Placemark> 
從嚴格的XML透視爲「id」屬性必須是以字母數字字符開頭的有效NCNAME數據類型不

另外「 - 「,但爲了簡化您只需從地標內的內嵌樣式中刪除」id「屬性 - 這些都不是必需的。

可以,而這改寫如下:

<Placemark> 
    <Style> 
     <IconStyle> 
      <Icon> 
       <href>http://theinternallight.com/KML/IconLatLong/-5180.png</href> 
      </Icon> 
     </IconStyle> 
    </Style> 
    <Point> 
     <coordinates>180,-5,0</coordinates> 
    </Point> 
</Placemark> 

你應該再改變使用加爾多斯KML Validator驗證KML。如果您想要一個獨立的命令行KML驗證程序,那麼您可以使用工具。

+0

我已經驗證了KML,並且它是Galdos KML Validator祝賀 –

+0

奇怪,但KML仍然無效。嘗試XML驗證。您可以在這裏查看KML地標的結構https://developers.google.com/kml/documentation/kmlreference#placemark – JasonM1