收藏
回答

怎么使用百度地图API?

根据项目需要使用百度地图进行上班打卡,后台提供了公司的坐标,需要小程序端调用百度接口获取经纬度,再与后台的经纬度比较计算出打卡距离,想问小程序使用百度地图,如何用两个经纬度计算距离?小程序的计算距离用的是 calculateDistance ,想问调用百度地图怎么写呢?

回答关注问题邀请回答
收藏

2 个回答

  • 0
    0
    03-26

    我做过类似的打卡,小程序用的腾讯地图,pc端用的百度地图,他俩的坐标系不一样,我们是后端算法转换的。两个经纬度计算距离网上有,可以搜搜。

    03-26
    有用
    回复 4
    • 古道儒风
      古道儒风
      03-26
      现在在小程序里用百度地图获取了经纬度了,然后如何用百度地图的经纬度去计算距离呢?
      03-26
      回复
    • 0
      0
      03-26回复古道儒风
      搜一下js两个经纬度计算距离
      03-26
      回复
    • 0
      0
      03-26回复古道儒风
      function getDistanceFromLatLonInKm(lat1, lon1, lat2, lon2) {
        const R = 6371; // 地球平均半径,单位为公里
        const dLat = (lat2 - lat1) * (Math.PI / 180);
        const dLon = (lon2 - lon1) * (Math.PI / 180);
        const lat1Rad = lat1 * (Math.PI / 180);
        const lat2Rad = lat2 * (Math.PI / 180);
        const a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
                  Math.sin(dLon / 2) * Math.sin(dLon / 2) * Math.cos(lat1Rad) * Math.cos(lat2Rad);
        const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
        const d = R * c;
        return d;
      }
      // 使用示例
      const distance = getDistanceFromLatLonInKm(48.8588, 2.2945, 48.8535, 2.347);
      console.log(distance); // 输出距离,单位为千米
      03-26
      回复
    • 古道儒风
      古道儒风
      03-26回复0
      谢谢,恩,我也是用了这个,不知道对不,
      03-26
      回复
  • NoBug
    NoBug
    03-26

    微信小程序里只能用腾讯地图组件吧,你可以把坐标点转换成腾讯地图的

    03-26
    有用
    回复 2
    • 古道儒风
      古道儒风
      03-26
      小程序可以使用百度地图,如果用腾讯的,那和百度获取的经纬度会有区别不
      03-26
      回复
    • 0
      0
      03-26回复古道儒风
      有区别,他俩坐标系不一样需要转换
      03-26
      回复
登录 后发表内容