首页 / 浏览问题 / WebGIS / 问题详情
超图FAQ:几何查询传递多个数据集,查询结果在地图上显示不全
971EXP 2022年08月05日
超图FAQ:几何查询传递多个数据集,查询结果在地图上显示不全

1个回答

超图FAQ:

【问题原因】由于查询结果的要素ID是直接获取的SmID生成,导致使用readFeatures读取出来的结果中,出现了ID重复的情况;将要素添加到Source中时,重复ID的要素被忽略不做添加,导致查询结果在地图上显示不全

【解决办法】将查询出的features做一个遍历,为每一个feature重新设置id。

var features = (new ol.format.GeoJSON()).readFeatures(serviceResult.result.features);
for (let i = 0; i < features.length; i++) {
  // 要素的id重复,需要重新设置要素的id
  features[i].setId(i);
}
var vectorSource = new ol.source.Vector({
  features: features,
  wrapX: false
});
971EXP 2022年08月05日
...