【发布时间】:2021-04-26 16:33:39
【问题描述】:
预期效果
当用户单击多边形要素(县、地区或邻里/市镇)或使用“绘制”小部件时,仪表板卡片会显示queryFeatures() 返回的相交点要素的数量(见下文)。
localitiesLayer.queryFeatures(query).then(function(results) {
var queriedLocalities = results.features;
if (queriedLocalities.length > 0) {
var fossilsFound = queriedLocalities.length;
}
}
问题
即使选择了超过 2000 个点要素,返回的相交要素的最大数量也是 2000 个。
在下面的照片中,只有“该地区有 2000 个化石遗址!”当应该返回超过 3,000 个特征时。
疑难解答
当不是查询 localitiesLayer 要素图层,而是查询要素图层 view 时,此问题已得到解决。这引入了无法解决的问题,即queryFeatures 返回的位置数量取决于缩放级别(详见API Reference for queryFeatures of FeatureLayerView)。
由于我似乎无法使用服务器端查询,我需要了解为什么会发生这种看似任意的数字。
起初我认为这与要素之间可能存在的拓扑问题有关,但为什么这会影响 Draw 小部件生成的多边形?在写这个问题之前,我还在所有要素图层上运行了集成工具,以确保没有任何不重合的多边形。
问题
为什么即使超过 2,000 个点要素与选定的多边形相交,queryFeatures() 上的 localitiesLayer 返回的要素上限仍为 2,000?
为什么使用要素图层视图进行查询可以解决此问题(尽管如上所述不是解决此问题的有效方法)?
【问题讨论】:
标签: javascript arcgis-js-api esri-maps