所以我在ArrayList中随机生成了5个标记但是我想计算标记之间的距离并且只显示彼此相距500米的标记,可以编码到目前为止:
ArrayList<Marker> ArrM = new ArrayList<Marker>();
for (int i = 0; i < 5; i++){
Marker marker = mMap.addMarker(
new MarkerOptions()
.position(computeOffset(mLatLng,ranDist,newRandomHeading))
.visible(true)
.title("Marker"));
ArrM.add(marker);
}
上面的代码成功地创建了5个随机放置在给定半径周围的标记,但是我只想显示彼此相差500米的标记,我得到了3个标记,相距500米,但怎么能我只展示其中的2个?
答案 0 :(得分:0)
您可以使用具有函数的Google Maps Android API实用程序库来计算两个LatLng之间的距离:
http://googlemaps.github.io/android-maps-utils/
SphericalUtil中的computeDistanceBetween()是您应该在代码中使用的函数。
请阅读以下文档以获取更多详细信息
https://developers.google.com/maps/documentation/android-api/utility/#spherical
希望它有所帮助!