//index.js //获取应用实例 const app = getApp() Page({ data: { name1: "请输入发货地址" , name2: "请输入收货地址" }, onLoad1: function () { var that = this ; wx.chooseLocation({ success: function (res) { // name 位置名称 // address 详细地址 // latitude 纬度,浮点数,范围为 - 90~90,负数表示南纬 // longitude 经度,浮点数,范围为 - 180~180,负数表示西经 console.log(res); var name = res.name; var address =res.address; var latitude = res.latitude; var longitude = res.longitude; that.setData({ name1:name, address1:address, la1:latitude, lo1:longitude }) } }) }, onLoad2: function () { var that = this ; wx.chooseLocation({ success: function (res) { // name 位置名称 // address 详细地址 // latitude 纬度,浮点数,范围为 - 90~90,负数表示南纬 // longitude 经度,浮点数,范围为 - 180~180,负数表示西经 console.log(res); var name = res.name; var address = res.address; var latitude = res.latitude; var longitude = res.longitude; that.setData({ name2: name, address2: address, la2: latitude, lo2: longitude }) } }) }, onLoad3: function (options) { //[0: (39.928712, 116.393345),1: (39.928722, 116.393853)] 举个栗子 this .distance(39.928712, 116.393345,39.928722, 116.393853) }, distance: function (la1, lo1, la2, lo2) { var La1 = la1 * Math.PI / 180.0; var La2 = la2 * Math.PI / 180.0; var La3 = La1 - La2; var Lb3 = lo1 * Math.PI / 180.0 - lo2 * Math.PI / 180.0; var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(La3 / 2), 2) + Math.cos(La1) * Math.cos(La2) * Math.pow(Math.sin(Lb3 / 2), 2))); s = s * 6378.137; //地球半径 s = Math.round(s * 10000) / 10000; this .setData({ s:s }) // return s console.log( "计算结果" ,s) }, }) |
地图两点 的能位置获取了 计算算距离的代码也找到了
但接下来的就不会了 求教。。。。
我也遇到类似问题了,如何得到拖拽地图上起始和结尾两点的位置信息