我想知道如何计算放置在地图上的许多标记之间的距离,然后将最近的标记位置作为文本返回。现在假设我在地图上标记了15个位置。如果用户检查,应用程序应检查每个标记的距离,然后它应返回最近的标记。
答案 0 :(得分:2)
你可以通过这种方式找到坐标之间的距离
Location locationA = new Location("point A");
locationA.setLatitude(location.getLatitude());
locationA.setLongitude(location.getLongitude());
Location locationB = new Location("point B");
locationB.setLatitude(lat2);
locationB.setLongitude(lng2);
distance = locationA.distanceTo(locationB);
Log.v("log", "distance "+distance);
然后检查哪个点的距离最短。
修改强>
所以计算当前位置和每个标记之间的距离,并将这些距离保存在数组中,然后检查哪个索引具有短值,这样就可以确定哪个标记最接近当前位置