js 判断gps是否超出设定范围
var CKposition = { //经纬度转换成三角函数中度分表形式 rad: function (d) { return d * Math.PI / 180.0; }, // 根据经纬度计算距离,参数分别为第一点的纬度,经度;第二点的纬度,经度 getDistance: function (lat1, lng1, lat2, lng2) { var radLat1 = CKposition.rad(lat1); var radLat2 = CKposition.rad(lat2); var a = radLat1 - radLat2; var b = CKposition.rad(lng1) - CKposition.rad(lng2); var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2))); s = s * 6378.137; // EARTH_RADIUS; s = Math.round(s * 10000) / 10000; //输出为公里 return s * 1000; }, //判断两点是否超出半径范围 checkInside: function (lat1, lng1, lat2, lng2, r) { var realr = CKposition.getDistance(lat1, lng1, lat2, lng2); return r >= realr; } }
转自https://www.cnblogs.com/feiquan/p/11338691.html