如何从 Openlayers 3 中的矢量图层获取特征

How to get features from vector layer in Openlayers 3

我正在尝试从我的矢量图层中获取特征。矢量图层由通过 Geoserver 加载的 GeoJSON 文档组成。我尝试了 vector.features 但没有成功。有人可以帮忙吗?

OL3 的架构区分了一层和它们的来源。因此,要访问图层的功能,您首先必须访问图层的源代码。这是通过以下方式完成的:

var source = layer.getSource();

如果是矢量图层,您将得到一个 ol.source.Vector 对象。从这个对象,您可以通过以下方式访问您的功能:

var features = source.getFeatures();

此外,您还可以通过 getFeatureById(id) 或 getFeaturesAtCoordinate(coordinate) 访问特殊功能。有关详细信息,请参阅 api 文档 http://openlayers.org/en/v3.4.0/apidoc/ol.source.Vector.html