2015-02-05 59 views
0

如果從KML負載點文件來縮放的矢量層POI在OpenLayer 3

var layerPOI = new ol.layer.Vector({ 
    source: new ol.source.KML({ 
    projection: projection, 
    url: 'data/KML/mydata.kml' 
    }) 
}) 

我該怎麼辦所有負載點(POI)和加載特性的完整列表(從數據/ KML/mydata.kml) ?我認爲,例如,到表 - 在地圖視圖(顯示層),我可以是已經

非常感謝您的回答

回答

0

ol.source.KML有一個方法getFeatures(),讓你在你的KML所有功能。然後您可以使用功能上的getProperties()get()來讀取屬性。

+0

非常感謝。但元素'GEOMTERY'返回Object。我試圖獲得有關點的其他信息,但我不能 - 請仍然幫忙。還有更多來自KML文件的標籤 - 例如,點樣式 - 如何確定顯示的圖標。非常感謝 – eXMarty 2015-02-07 22:44:41

0

(部分)溶液:

allPOIs = layerPOI.getSource().getFeatures(); 
// or if define a source separatly 
// allPOIs = sourcePOI.getFeatures(); 
onePOI = allPOIs[0]; // first element in Array 
propertiesOfOnePOI = onePOI.getKeys(); 

propertiesOfOnePOI.forEach(function (elementName, elementIndex){ 
    console.log("element index: " + elementIndex + " | element name: " + elementName + " | element value: " + onePOI.get(elementName)); 
}); 

但元件GEOMTERY返回Object。 我嘗試獲取有關點的其他信息,但我不能 - 還有更多來自KML文件的標記 - 例如,點樣式 - 如何確定顯示的圖標?

請仍幫忙;)