我的github

OpenLayers接收到返回的结果之后,也要进行坐标转换,从地理坐标转屏幕坐标,才能绘制图形。

还好,OpenLayers有这个功能,可以直接调用

/********定义select控制器***********/
var select = new ol.interaction.Select();
map.addInteraction(select);//map加载该控件,默认是激活可用的
select.on('select',function(e){
   console.log(e.selected);//打印已选择的Feature
});

如何自己实现呢?

利用ArcGIS Server REST提供的IdentifyTask接口

还有,例如多选。。。。

参考:https://www.cnblogs.com/klps/archive/2017/07/06/7125926.html

方法一:SELECT控制器

方法二:map的click事件

方法三:WMS图层的GetFeatureInfo

方法四:通过Geoserver的wfs查询

方法五:通过PostGIS实现点击查询

五种方法对比:前两种方法是针对矢量数据,一定要加到map的客户端,才能使用,如果是wms图层就不能用了。 第三种方法是wms图层,这时候前两种矢量方式没法处理,这时候用它就可以解决这个问题。 第四种方法不用加载到客户端显示,也能使用该方法查询。第五种方法则更进一步,就算服务没有发布,仅仅保存在数据库中,也能使用。第五种方法一般是用在数据量大时。

>>https://blog.csdn.net/u014529917/article/details/77504779圈选、框选、多边形选择

posted on 2020-12-02 14:31  XiaoNiuFeiTian  阅读(1160)  评论(0)    收藏  举报