地图工具(个人记录)

189 阅读1分钟

1.高德经纬度转化成百度

const gdToBd = (lon, lat) => {
  const x = lon, y = lat, pi = Math.PI, x_pi = pi * 3000.0 / 180.0
  const z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi)
  const theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi)
  const tempLon = z * Math.cos(theta) + 0.0065
  const tempLat = z * Math.sin(theta) + 0.006
  const gps = {tempLon, tempLat}
  return gps
}

2.百度经纬度转化成高德

const bdToGd = (lon, lat) => {
  const x = lon - 0.0065, y = lat - 0.006, pi = Math.PI, x_pi = pi * 3000.0 / 180.0
  const z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi)
  const theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi)
  const tempLon = z * Math.cos(theta)
  const tempLat = z * Math.sin(theta)
  const gps = {tempLon, tempLat}
  return gps
}

3.百度地图坐标拾取

http://api.map.baidu.com/lbsapi/getpoint/

4.高德地图坐标拾取

https://lbs.amap.com/tools/picker