高德地图判断坐标是否在可视区域内

这篇文章介绍了如何利用地图API的getBounds方法获取地图的可视区域边界,然后创建LngLat对象来定义西北和东南坐标,进一步构建Bounds对象。通过Rectangle创建矩形围栏,并使用polygon.contains()判断点是否在区域内。同时,监听moveend事件以更新边界坐标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

getBounds() 获取可视区域边界 文档链接

   let northwest = this.map.getBounds().getNorthWest() // 西北坐标
   let eastsouth = this.map.getBounds().getSouthEast() // 东南坐标
   let southWest = new AMap.LngLat(northwest.lng, northwest.lat)
   let northEast = new AMap.LngLat(eastsouth.lng, eastsouth.lat)
   // 创建Bounds获取围栏
   let bounds = new AMap.Bounds(southWest, northEast)
   // 创建围栏
   let polygon = new AMap.Rectangle({
        bounds: bounds
      })
   // 判断坐标是否在矩形上 polygon.contains() 返回true或false 
   polygon.contains(new AMap.LngLat(lng, lat)

备注

// 使用moveend事件刷新可视边界坐标
map.on('moveend', this.mapMoveend)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值