我正在开展地理定位项目。我想确定哪个是距离我的位置最近的4个点。如下图所示:
箭头红色:USER的位置(我可以很容易地在屏幕上找到他的位置)
蓝点:我需要确定哪一点是4越靠近用户。
在这里,它将是红色的。我也可以轻松地在屏幕上获得他们的位置。我只需要数学公式来了解有关的4个点。
感谢您的宝贵帮助!
答案 0 :(得分:1)
问题解决了:
我首先使用每个点的基本方程计算距离:
sqrt((Xb-Xa)² + (Yb-Ya)²)
然后我对每个点的结果进行排序(升序):
Object[] a = distance.entrySet().toArray();
Arrays.sort(a, new Comparator() {
public int compare(Object o1, Object o2) {
return ((Map.Entry<Integer, Double>) o1).getValue()
.compareTo(((Map.Entry<Integer, Double>) o2).getValue());
}
});
刚刚为前4名做了一次,得到了我最接近的4分。 ez pz :)!