compute-distance.js 507 B

123456789101112131415
  1. export default {
  2. methods: {
  3. space(lat1, lng1, lat2, lng2) {
  4. var radLat1 = lat1 * Math.PI / 180.0;
  5. var radLat2 = lat2 * Math.PI / 180.0;
  6. var a = radLat1 - radLat2;
  7. var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
  8. var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
  9. Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
  10. s = s * 6378.137;
  11. s = Math.round(s * 10000) / 10000; // 单位千米
  12. return s.toFixed(2) // 保留两位小数
  13. },
  14. }
  15. }