javascript - 获取已定义坐标的图层和要素

标签 javascript openlayers openlayers-5

我已经定义了坐标。我需要知道是否有任何方法可以知道这些坐标中存在的图层或特征。这可能吗?

我使用了以下函数,但是这是针对 map 像素执行的,而我想要针对某些坐标

var result = ol_interaction_Snap.prototype.snapTo.call(this, pixel, pixelCoordinate, map);

    if (result.snapped) {
        var p = map.getPixelFromCoordinate(pixel);
        var feature = map.getFeaturesAtPixel(p);
        this.dispatchEvent(new mgis_ObjectEvent("aftersnap", feature));
    }
    return result;

最佳答案

使用getFeaturesAtCoordinategetFeaturesInExtent了解 map 的来源。
只需围绕您的坐标创建一个小范围即可。

var extent = ol.extent.boundingExtent([ coordinate ]);
extent = ol.extent.buffer(extent, .1); 
// test if features 
if (source.getFeaturesInExtent(extent).length) { 
... 
}

关于javascript - 获取已定义坐标的图层和要素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58306224/

相关文章:

javascript - 显示/隐藏多个 Div,并更改触发器的类

javascript - Alert() 改变了 OL3 Zoom 的功能

javascript - OpenLayers 动画 getView().fit()

javascript - 如何在 OpenLayers 中向矢量添加弹出框?

javascript - onsubmit ="submitForm();"和 onsubmit ="return submitForm();"有什么区别

javascript - 在突出显示的文本附近显示 div(模态)

javascript - OpenLayers - 如果从文件系统和 Web 服务器查看, map 缩放比例不同

javascript - 我们可以使用 html 标签和 css 来设置 openlayers 中的功能样式吗?

javascript - 如果 Vue.js :class ='' takes a boolean?,如何根据字符串将类添加到右侧导航元素