javascript 从Openlayers 3视口获取所有要素

zf2sa74q  于 2023-08-02  发布在  Java
关注(0)|答案(1)|浏览(143)

我试图找出Openlayers 3中一个层上所有可见的功能(视口)。
我能够找到一个单一的功能,如果我添加一个点击事件的Map,这是如下所示。但我无法找到视口中可见的所有特征。有人能帮忙吗?

  1. map.on('click', function(evt) {
  2. var feature = map.forEachFeatureAtPixel(evt.pixel,
  3. function(feature, layer) {
  4. return feature;
  5. });
  6. });

字符串

pes8fvy9

pes8fvy91#

我建议你先了解一下视图的范围:

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

字符串
然后获取此范围内的所有要素:

  1. yourVectorSource.forEachFeatureInExtent(extent, function(feature){
  2. // do something
  3. });

相关问题