标签:
Android studio 百度地图开发(6)Marker绑定事件、计算两点距离
email:chentravelling@163.com
开发环境:win7 64位,Android Studio,请注意是Android Studio,使用的导航SDK版本:3.1.0。
/** * 为百度地图中marker 增加点击监听函数 */ baiduMap.setOnMarkerClickListener(new BaiduMap.OnMarkerClickListener() { @Override public boolean onMarkerClick(Marker marker) { //响应点击事件 return false; } });
/** * 计算两点之间距离 * @param start * @param end * @return 米 */ public String getDistance(LatLng start,LatLng end){ double lat1 = (Math.PI/180)*start.latitude; double lat2 = (Math.PI/180)*end.latitude; double lon1 = (Math.PI/180)*start.longitude; double lon2 = (Math.PI/180)*end.longitude; //地球半径 double R = 6371; //两点间距离 km,如果想要米的话,结果*1000 double d = Math.acos(Math.sin(lat1)*Math.sin(lat2)+Math.cos(lat1)*Math.cos(lat2)*Math.cos(lon2-lon1))*R; if(d<1) return (int)d*1000+"m"; else return String.format("%.2f",d)+"km"; }
Android studio 百度地图开发(6)Marker绑定事件、计算两点距离
标签:
原文地址:http://blog.csdn.net/chentravelling/article/details/51058742