miniprogram 获取两点之间的距离(经纬度)

本文介绍了一种计算两点间经纬度距离的JavaScript函数,并提供了通过腾讯地图API获取特定地区边界坐标的方法。文中详细展示了如何使用这些函数来获取和处理地理坐标数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

getDistance: function (lat1, lng1, lat2, lng2) {

    lat1 = lat1 || 0;

    lng1 = lng1 || 0;

    lat2 = lat2 || 0;

    lng2 = lng2 || 0;

    var rad1 = lat1 * Math.PI / 180.0;

    var rad2 = lat2 * Math.PI / 180.0;

    var a = rad1 - rad2;

    var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;

    var r = 6378137;

    return (r * 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(rad1) * Math.cos(rad2) * Math.pow(Math.sin(b / 2), 2)))).toFixed(0)

  },

当然,也可以使用腾讯自家的https://lbs.qq.com/qqmap_wx_jssdk/method-calculatedistance.html
不过好像距离只能是10km以内

1202026-20181128172218457-1512842661.png
获取一个地区的经纬度数组集合

var finalArr=[];
  bdary.get("天河区",function(re){
    console.log(re.boundaries);
    let smallArr = re.boundaries[0].split(";");
    console.log(smallArr)
    for(let i of smallArr){
      var a = {};
      a.longitude = i.split(",")[0];
      a.latitude = i.split(",")[1];
      finalArr.push(a);
      
    };
    console.log(finalArr,123456);
  })

1202026-20181129103331046-712905680.png

1202026-20181128172550383-1243019674.png

转载于:https://www.cnblogs.com/cyany/p/10033436.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值