高德地图地理编码与逆地理编码

高德地图地理编码与逆地理编码

概述

LBS地理编码的使用基于高德JS API提供的AMap.Geocoder服务插件
创建地理编码对象:

const AMap = (window as any).AMap
AMap.plugin('AMap.Geocoder', function() {
  var geocoder = new AMap.Geocoder({
    city: '全国' // city 指定进行编码查询的城市,支持传入城市名、adcode 和 citycode
  })

  // 使用geocoder做地理/逆地理编码
})

此示例为异步加载插件,异步加载指的是在 JS API 加载完成之后,在需要使用到某个插件的时候,通过AMap.plugin方法按需引入插件,在plugin回调之后使用插件功能。
如果想同时引入多个插件通过AMap.plugin的第一个参数使用数组即可
注:确保在页面加载完成再调用window.AMap,否则可能出现undefined的情况

正向地理编码

功能简介:将地址信息转换为经纬度
方法:AMap.Geocoder的getLocation方法
示例:

AMap.plugin('AMap.Geocoder', function() {
  var geocoder = new AMap.Geocoder({
    city: '010' // city 指定进行编码查询的城市,支持传入城市名、adcode 和 citycode
  })
  
  var address = '北京市海淀区苏州街';

  geocoder.getLocation(address, function(status, result) {
    if (status === 'complete' && result.info === 'OK') {
      // result中对应详细地理坐标信息
    }
  })
})

在这里插入图片描述

地址信息支持对地标性名胜景区、建筑物名称解析为高德经纬度坐标。建筑最好包含省或市信息,可以避免解析到其他奇怪的位置。

逆向地理编码

功能简介:将经纬度转换为地址信息
方法:为AMap.Geocoder的getAddress方法
示例:

AMap.plugin('AMap.Geocoder', function() {
  var geocoder = new AMap.Geocoder({
    city: '010' // city 指定进行编码查询的城市,支持传入城市名、adcode 和 citycode
  })
 
  var lnglat = [116.396574, 39.992706]

  geocoder.getAddress(lnglat, function(status, result) {
    if (status === 'complete' && result.info === 'OK') {
        // result为对应的地理位置详细信息
    }
  })
})

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值