高德,百度,腾讯坐标系转换

发布时间 2023-10-29 21:23:29作者: 霖薇暮
const PI = 3.1415926535897932384626433832795
const x_pi = PI * 3000.0 / 180.0
//百度转高德/腾讯
function latlonFormat1(loaction) {
  var lon = loaction.split(",")[0]
  var lat = loaction.split(",")[1]
  var x = lon - 0.0065;
  var y = lat - 0.006;
  var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi)
  var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi)
  var bdLon = z * Math.cos(theta)
  var bdLat = z * Math.sin(theta)
  return bdLon + ',' + bdLat
}
//高德/腾讯转百度
function latlonFormat2(loaction) {
  var lon = loaction.split(",")[0]
  var lat = loaction.split(",")[1]
  var x = lon;
  var y = lat;
  var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi)
  var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi)
  var bdLon = z * Math.cos(theta) + 0.0065
  var bdLat = z * Math.sin(theta) + 0.006
  return bdLon + ',' + bdLat
}