高德地图是一个提供路径规划、地理编码、地图数据显示、点击选址、地图数据搜索等功能的服务。在进行地理定位的时候,选择了高德地图拾取坐标功能,因为该功能操作简单,可以快速地选择地理坐标,满足大部分开发者的需求。
一、功能介绍
高德地图拾取坐标功能主要是用来获取地理坐标的,该功能可以满足以下几点需求:
1、可以拾取位置坐标,快速的获取下一步操作需要的位置;
2、位置更加精确,可以保证开发者获得的坐标都是准确的,不会出现偏差或误差;
3、操作简单,只需要单击地图上的目标坐标点即可获取;
4、可以随时随地获取坐标,省去了繁琐的地址转换操作。
二、使用方法
高德地图拾取坐标功能的使用方法非常简单,只需要按照以下步骤操作即可:
1、进入高德地图网站,找到需要搜索的地点;
2、使用左键单击地图,选择目标坐标点;
3、在坐标信息框中获取坐标经纬度,进行下一步操作。
// 示例代码 // 地图初始化 var map = new AMap.Map('container', { zoom:11, center: [116.397428, 39.90923] }); // 地图拾取坐标 AMap.event.addListener(map, 'click', function(e){ document.getElementById('lnglat').value = e.lnglat.getLng() + ',' + e.lnglat.getLat(); });
三、调用api
高德地图拾取坐标功能可以通过调用api来实现,具体使用方式如下:
1、引入高德地图api,代码示例如下:
<script src="https://webapi.amap.com/maps?v=1.4.15&key=您申请的key值"></script>
2、新建地图对象,并进行参数初始化,代码示例如下:
var map = new AMap.Map('container', { resizeEnable: true, zoom: 11, center: [116.397428, 39.90923] });
3、添加鼠标单击事件监听器,获取坐标经纬度值,代码示例如下:
AMap.event.addListener(map, 'click', function(e){ document.getElementById('lnglat').value = e.lnglat.getLng() + ',' + e.lnglat.getLat(); });
四、常见问题
1、高德地图拾取的坐标与其他地图上表示的坐标有所不同,为什么?
因为不同地图采用的是不同坐标系,比如高德地图采用的是国测局坐标系(GCJ-02),而百度地图采用的是BD-09坐标系,所以两种坐标系表示的坐标是不一样的。
2、为什么获取的经纬度值与实际不符?
可能是因为地图上的点位不够准确所导致的,可以通过调整地图层级来提高定位精度。
3、如何实现双击定位?
可以使用AMap.event.addListener(map,’dblclick’,function(e){…})来实现双击定位。
五、总结
高德地图拾取坐标功能是一个方便、快捷、易用的工具,对于需要频繁进行地理定位的开发者而言,是个必不可少的插件。开发者只需要遵循上述步骤,即可轻松实现地理位置标注,提高开发效率。