gpt4 book ai didi

java - ArcGIS Java ServiceFeatureTable 查询始终仅返回 1 个要素

转载 作者:行者123 更新时间:2023-11-30 06:09:30 24 4
gpt4 key购买 nike

我正在尝试使用arcgis-java(ArcGIS Runtime)查询ArcGIS Online要素图层,如下所示:

ServiceFeatureTable featureTable = new ServiceFeatureTable(this.SERVICE_FEATURE_URL);
QueryParameters query = new QueryParameters();
query.setWhereClause("1=1");
query.setReturnGeometry(true);
ListenableFuture<FeatureQueryResult> queryFeaturesAsync = featureTable.queryFeaturesAsync(query);
try {
FeatureQueryResult result = queryFeaturesAsync.get();
Iterator<Feature> iterator = result.iterator();
if (iterator.hasNext()) {
Feature feature = iterator.next();
System.out.println(feature.getAttributes());
System.out.println(feature.getGeometry());
}
} catch (Exception e) {
e.printStackTrace();
}

但它总是只返回一个特征,即使该层有超过 1 个特征。我怎样才能获得多个功能?

我也尝试设置 setMaxFeatures 但没有效果。

最主要的是我没有创建FeatureLayerMapView对象,也没有在MapView上添加FeatureLayer。我只想查询 ServiceFeatureTable

最佳答案

我认为它会返回所有功能,但您只查看第一个功能。尝试更改if:

if (iterator.hasNext()) {

同时:

while (iterator.hasNext()) {

关于java - ArcGIS Java ServiceFeatureTable 查询始终仅返回 1 个要素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50585203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com