本章向您介绍 JS API 中坐标系转换,其中包含如下内容:地图容器坐标与经纬度的互换
经纬度与地图平面坐标的互换
经纬度与三维坐标的互换
地图容器坐标与经纬度的互换
真实世界中的地理位置是使用经纬度进行描述,然而当地图被抽象到浏览器的页面里时,真实的地址位置则需要转换为地图容器像素坐标,反之亦然。容器坐标与经纬度坐标关系如下图所示:
通过下面 Map 对象上的两个接口,您可以进行容器坐标与经纬度互转,这个在鼠标进行点击标记地理位置时很常用:
1. 容器坐标转经纬度坐标 map.containerToLnglat
// 容器坐标,原点为左上角
var px = 600;
var py = 300;
// 构造成 Pixel 对象后传入
var pixel = new AMap.Pixel(px, py);
var lnglat = map.containerToLngLat(pixel); // 获得 LngLat 对象
2. 经纬度坐标转容器坐标 map.lngLatToContainer
// 地理经纬度坐标
var lon = 116.4;
var lat = 39.9;
// 构造成 LngLat 对象后传入
var lnglat = new AMap.LngLat(lon, lat);
var pixel = map.lngLatToContainer(lnglat); // 获得 Pixel 对象
经纬度与平面地图像素坐标的互换