2016-08-05 71 views
2

我試圖找出所有可見(視)層上的特徵的OpenLayers所有功能3.獲得從3的OpenLayers視

我能找到一個單一的功能,如果我添加點擊事件到地圖如下。但是我無法找到在視口中可見的所有功能。任何人都可以幫忙嗎?

map.on('click', function(evt) { 
     var feature = map.forEachFeatureAtPixel(evt.pixel, 
      function(feature, layer) { 
       return feature; 
      }); 
}); 

回答

2

我建議你首先獲取視圖的程度:

var extent = yourMap.getView().calculateExtent(yourMmap.getSize()); 

然後得到這個程度內的所有功能:

yourVectorSource.forEachFeatureInExtent(extent, function(feature){ 
    // do something 
}); 
+0

感謝您的回答。那正是我想要的。 – Vamsi