我正在尝试从Mapbox样式层获取所有功能。我找到了querySourceFeature()方法。但是,我无法获得确切的来源。这里是Mapbox文档中的简单代码块。

我不使用GeoJsonSource进行样式设置,我的意思是不添加任何GeoJsonSouce。因此,“ source”变量返回“ null”,我不知道应该用什么代替GeoJsonSource和“ population-source”。

GeoJsonSource source = style.getSourceAs("population-source");
List<Feature> features = source.querySourceFeatures(Expression.get("population"));


综上所述,我想从Mapbox样式中获取所有功能。

最佳答案

为了获得样式层作为源,我们应该使用VectorSource()

VectorSource source = style.getSourceAs("composite");

“ composite”是“ style.json”中图层的源变量。

对于querySourceFeatures(),我们应该给出layerSource(String[])Expression

List<Feature> all_features = source.querySourceFeatures(source_layers,Expression);

“ source_layers”是“ style.json”中图层的源层变量。

09-27 20:38