算法(经纬度计算)

function position(a, b) {
    var radLat = [rad(a[1]), rad(b[1])],
        radLon = [rad(a[0]), rad(b[0])],
        minus = [
            radLat[0] - radLat[1],
            radLon[0] - radLon[1]
        ],
        s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(minus[0] / 2), 2) +
        Math.cos(radLat[0]) * Math.cos(radLat[1]) * Math.pow(Math.sin(minus[1] / 2), 2)));
    return s * 6371393;

    function rad(d) {
        return d * Math.PI / 180;
    }
}

你可能感兴趣的:(算法(经纬度计算))