计算地图上两点间距离

2020-03-19  本文已影响0人  my木子
export function getDistance(plon1, plat1, plon2, plat2) {
  var radLat1 = plat1 * Math.PI / 180.0
  var radLat2 = plat2 * Math.PI / 180.0
  var radLon1 = plon1 * Math.PI / 180.0
  var radLon2 = plon2 * Math.PI / 180.0

  var a = radLat1 - radLat2
  var b = radLon1 - radLon2

  var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)))

  // 6378137为地球半径
  var distance = (Math.round(s * 6378137 * 10000) / 10000) / 1000
  return distance
}

上一篇 下一篇

猜你喜欢

热点阅读