利用高德api判斷 經緯度點是否在某個區域范圍內


主要是利用 數學計算庫api AMap.GeometryUtil.isPointInRing

通過判斷返回值的true false來判斷
lnglat是該點的經緯度:
lnglarArr是該區域的周邊經緯度點的集合,

lnglarArr可以通過 AMap.DistrictSearch 來獲取

 AMap.plugin('AMap.DistrictSearch', function () {
  var districtSearch = new AMap.DistrictSearch({
    level: 'district',
    subdistrict: 0,
    extensions: 'all'
  })

  // 搜索所有省/直轄市信息
  districtSearch.search('蕭山區', function (status, result) {
    console.log("status, result===", status, result)
    var bounds = result.districtList[0].boundaries;
    let latlngArr = []
    for (var i = 0; i < bounds.length; i += 1) {
      let arr = JSON.parse(JSON.stringify(bounds[i]));
      arr.map(item => {
        latlngArr.push([item.lng, item.lat])
      })
    }

    var isPointInRing = AMap.GeometryUtil.isPointInRing(lnglat, latlngArr)
    console.log("isPointInRing", isPointInRing)
  })
})

附上api鏈接:
AMap.DistrictSearch: https://lbs.amap.com/api/javascript-api/reference/search#m_AMap.DistrictSearch
AMap.GeometryUtil: https://lbs.amap.com/api/javascript-api/reference/math


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM