如何才能找到最近的地方从给定的数据当前位置。当前位置、最近、地方、数据

由网友(扬言不负你)分享简介:我的位置的地址列表。从我目前的位置,我需要得到最近的地方,必须证明它在地图上。我怎样才能从我的当前位置最近的地方。首先,我会得到我的当前位置经纬度和长期再怎么我会得到最近的地方。 I have list of location address. from my current location, i need to...

我的位置的地址列表。从我目前的位置,我需要得到最近的地方,必须证明它在地图上。我怎样才能从我的当前位置最近的地方。首先,我会得到我的当前位置经纬度和长期再怎么我会得到最近的地方。

I have list of location address. from my current location, i need to get the nearest place and have to show it on map. How can i get nearest place from my current location. First i will get my current location lat and long then how i will get nearest place.

感谢

推荐答案

您有您的当前位置的纬度的经度所以只要找到你的当前位置,并使用这个公式,并显示地址以最短的​​距离位置的地址geopoints列表之间的距离。

You have your current location latitude an longitude so just find out distance between your current location and list of location address geopoints using this formula and display address with shortest distance.

private double distance(double lat1, double lon1, double lat2, double lon2) {
        // haversine great circle distance approximation, returns meters
        double theta = lon1 - lon2;
        double dist = Math.sin(deg2rad(lat1)) * Math.sin(deg2rad(lat2))
                + Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2))
                * Math.cos(deg2rad(theta));
        dist = Math.acos(dist);
        dist = rad2deg(dist);
        dist = dist * 60; // 60 nautical miles per degree of seperation
        dist = dist * 1852; // 1852 meters per nautical mile
        return (dist);
    }

    private double deg2rad(double deg) {
        return (deg * Math.PI / 180.0);
    }

    private double rad2deg(double rad) {
        return (rad * 180.0 / Math.PI);
    }
阅读全文

相关推荐

最新文章