Map点击地图要素获取要素信息

贴个群号

WebGIS学习交流群461555818,欢迎大家。

源码

首先要知道的是我们给每一个图层添加到地图上面的时候,都会有一个专属的ID,例如下图中的
在这里插入图片描述
ID都是专属的,然后我们就可以为地图添加事件了,有的可能是click,有的可能要移入鼠标就要展示,展示的情况可以是popup,也可以是点击出来在别的地方显示什么信息,这里主要的是我们如何才能获取地图信息。

我们首先需要在每一个地图服务添加到地图上面的时候,给他一个方法,下面按照点击展示popup来举例说明。

这里面的click是点击事件,id是你上面添加图层的时候的专属唯一ID,后面的就是你鼠标点击的那个点,queryRenderedFeatures函数的介绍在下面,这个函数通过鼠标的那个经纬度(e.point就是经纬度,可以自己打印e来看一下),和图层ID,就可以获取到你的要素信息了。然后怎么组织features用来展示就看大家各自手段了。

this.map.on('click', id, function (e) {
   const features = self.map.queryRenderedFeatures(e.point, {
    layers: [id]
   })
}

需要注意的是可能有很多个地图要素比如点数据,堆到一起了,鼠标点了一下,他获取到很多数据,features里面的数据都是按照点击到的图层顺序来摆放的,我们只需要使用features[0]的数据就可以了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值