|
楼主 |
发表于 2016-8-14 14:35:31
|
显示全部楼层
- // 计算距离的方法
- Model.prototype.distancer = function(row) {
- //获取您现在所在的经纬度
- var lat1 = locationData.val("curLat");
- var lng1 = locationData.val("curLng");
- //获取订单所在的经纬度
- var lat2 = row.val("curLat");
- var lng2 = row.val("curLng");
- var R = 6378137.0;
- function Rad(d) {
- return d * Math.PI / 180.0;// 经纬度转换成三角函数中度分表形式。
- }
- // 计算距离
- function GetDistance(lat1, lng1, lat2, lng2) {
- var radLat1 = Rad(lat1);
- var radLat2 = Rad(lat2);
- var a = radLat1 - radLat2;
- var b = Rad(lng1) - Rad(lng2);
- var s = 2 * R * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
- var s1 = Math.round(s) / 1000;
- var s2 = s1.toFixed(2);
- return s2;
- }
- return GetDistance(lat1, lng1, lat2, lng2) + "km";
- };
复制代码 |
|