Android studio 百度地图开发Marker绑定事件计算两点距离

Posted 生活没有if-else

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android studio 百度地图开发Marker绑定事件计算两点距离相关的知识,希望对你有一定的参考价值。

android studio 百度地图开发(6)Marker绑定事件、计算两点距离

email:chentravelling@163.com

      开发环境:win7 64位,Android Studio,请注意是Android Studio,使用的导航SDK版本:3.1.0

一.Maker绑定点击事件

 /**
         * 为百度地图中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 百度地图开发Marker绑定事件计算两点距离的主要内容,如果未能解决你的问题,请参考以下文章

Android studio 百度地图开发查询周边服务(加油站)

Android studio 百度地图开发之2022地图显示与定位

Android studio 百度地图开发Marker绑定事件计算两点距离

android studio下百度地图sdk的初体验

Android studio 百度地图开发(10)语音播报的问题:能正常导航,但是无法语音播报

Android Studio之高德地图实现定位和3D地图显示