first commit
This commit is contained in:
34
socketEnd/utils/utils.js
Normal file
34
socketEnd/utils/utils.js
Normal file
@@ -0,0 +1,34 @@
|
||||
class utils {
|
||||
|
||||
/**
|
||||
* 计算两经纬度点之间的距离(单位:米)
|
||||
* @param {*} lat1 纬度1
|
||||
* @param {*} lng1 经度1
|
||||
*
|
||||
* @param {*} lat2 纬度2
|
||||
* @param {*} lng2 经度2
|
||||
* @returns
|
||||
*/
|
||||
|
||||
caculateLL(lng1, lat1, lng2 = 117.325426, lat2 = 31.794477) {
|
||||
var radLat1 = (lat1 * Math.PI) / 180.0;
|
||||
var radLat2 = (lat2 * Math.PI) / 180.0;
|
||||
var a = radLat1 - radLat2;
|
||||
var b = (lng1 * Math.PI) / 180.0 - (lng2 * Math.PI) / 180.0;
|
||||
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;
|
||||
s = Math.round(s * 10000) / 10;
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = new utils();
|
||||
Reference in New Issue
Block a user