使用百度地图的总结

目前项目中用到百度地图根据经纬度画出路线:

mMapView.showZoomControls(false); // 隐藏放大缩小的加减号按钮
/**给百度地图给对应的坐标设置标注图*/
public void mark(double latitude,double longitude){
    //定义Maker坐标点
    LatLng point = new LatLng(latitude, longitude);
    //构建Marker图标
    BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.ic_launcher);
    //构建MarkerOption,用于在地图上添加Marker
    OverlayOptions option = new MarkerOptions().position(point).icon(bitmap);
    //在地图上添加Marker,并显示
    activity.mBaiduMap.addOverlay(option);
}
下面是转换经纬度的核心方法:
private void initData(List<LatLng> points) {
        rlocus(points);
    }

    private void rlocus(List<LatLng> points) {
//        List<LatLng> points = new ArrayList<>();
//        LatLng p1 = new LatLng(28.890605, 121.185981);  // 纬度 ,经度
//        LatLng p2 = new LatLng(28.884675, 121.186511);
//        LatLng p3 = new LatLng(28.883995, 121.199716);
//        LatLng p4 = new LatLng(29.71842, 120.265976);
//        LatLng p5 = new LatLng(28.884675, 121.186511);
//        LatLng p6 = new LatLng(28.884995, 121.199716);
//
//        points.add(p1);
//        points.add(p2);
//        points.add(p3);
//        points.add(p4);
//        points.add(p5);
//        points.add(p6);

        way(points);
    }

    private void way(List<LatLng> points) {
        PlanNode startPoint  = null ;
        PlanNode endPoint    = null ;
        ArrayList<PlanNode>   wayPoints  = null;
        for (int i = 0; i < points.size(); i++) {
            wayPoints = new ArrayList<>();
            PlanNode tempPoint  =  PlanNode.withLocation(points.get(i));    // 核心
            if( i == 0 ){
                startPoint =  tempPoint;
            }
            if( i == ( points.size() - 1)) {
                endPoint  =  tempPoint;
            }
            if( i!= 0  && i != (points.size() - 1)) {
                wayPoints.add(tempPoint);
            }
        }

        if (  points.size() == 1 || points.size()  ==  2) {
            mSearch.drivingSearch((new DrivingRoutePlanOption())
                    .from(startPoint)
                    .to(endPoint));
        }else {
            mSearch.drivingSearch((new DrivingRoutePlanOption())
                    .from(startPoint)
                    .passBy(wayPoints)
                    .to(endPoint));
        }
    }
http://download.csdn.net/detail/pengyu1801/9571009  源码下载网址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值