zoukankan      html  css  js  c++  java
  • 百度地图添加覆盖物与给定两点路线规划

    final LatLng ll = new LatLng(latiide, longitude);
                    BitmapDescriptor descriptor = BitmapDescriptorFactory
                            .fromResource(marker);
                    OverlayOptions options = new MarkerOptions().position(ll).icon(
                            descriptor);
                    mBaiduMap.addOverlay(options);

    路线规划:

          mMapView = (MapView) findViewById(R.id.bmapView);
            mBaiduMap = mMapView.getMap();
            search = RoutePlanSearch.newInstance();
            search.setOnGetRoutePlanResultListener(listener);

            //需要规划的两点
            PlanNode st = PlanNode.withLocation(new LatLng(39.931867, 116.395645));
            PlanNode ed = PlanNode.withLocation(new LatLng(39.915267, 116.40355));

             search.walkingSearch(new WalkingRoutePlanOption().from(st).to(ed));

    当然好有他的事件:

    OnGetRoutePlanResultListener listener = new OnGetRoutePlanResultListener() {
            public void onGetWalkingRouteResult(WalkingRouteResult result) {
                // 获取步行线路规划结果
                if (result == null || result.error != SearchResult.ERRORNO.NO_ERROR) {
                    Toast.makeText(DaoHangActivity.this, "抱歉,未找到结果",
                            Toast.LENGTH_SHORT).show();
                }
                if (result.error == SearchResult.ERRORNO.AMBIGUOUS_ROURE_ADDR) {
                    // 起终点或途经点地址有岐义,通过以下接口获取建议查询信息
                    // result.getSuggestAddrInfo()
                    return;
                }
                if (result.error == SearchResult.ERRORNO.NO_ERROR) {

                    // route = result.getRouteLines().get(0);
                    WalkingRouteOverlay overlay = new MyWalkingRouteOverlay(
                            mBaiduMap);
                    mBaiduMap.setOnMarkerClickListener(overlay);
                    routeOverlay = overlay;
                    overlay.setData(result.getRouteLines().get(0));
                    overlay.addToMap();
                    overlay.zoomToSpan();
                }

            }

            public void onGetTransitRouteResult(TransitRouteResult result) {
                // 获取公交换乘路径规划结果
            }

            public void onGetDrivingRouteResult(DrivingRouteResult result) {
                // 获取驾车线路规划结果
            }

        };
    自定义起点终点 图标:

        private class MyWalkingRouteOverlay extends WalkingRouteOverlay {

            public MyWalkingRouteOverlay(BaiduMap baiduMap) {
                super(baiduMap);
            }

            @Override
            public BitmapDescriptor getStartMarker() {
                if (useDefaultIcon) {
                    return BitmapDescriptorFactory.fromResource(R.drawable.icon_st);
                }
                return null;
            }

            @Override
            public BitmapDescriptor getTerminalMarker() {
                if (useDefaultIcon) {
                    return BitmapDescriptorFactory.fromResource(R.drawable.icon_en);
                }
                return null;
            }
        }

  • 相关阅读:
    南京师范大学2021年高等代数考研试卷
    有限阶全图边图两种颜色后同色三角形数量最少为?(2019年清华大学丘成桐数学英才班)
    关于三个变元的正整数解(2019年清华大学丘成桐数学英才班)
    [Oracle工程师手记]归档日志产生量太大时的简易分析手段
    [Oracle 工程师手记] 如何查看 FRA 的使用率
    [Oracle数据库工程师手记] Data Guard broker 与 ORA-32701
    [Oracle工程师手记]CRSD 进程与 password 文件
    [oracle 工程师手记]RMAN duplicate 发生ORA-19504、ORA-17502、ORA-15001、ORA-27140 错误的解决过程
    [Oracle工程师手记] 备份恢复双城记(三)
    [Oracle工程师手记] 备份恢复双城记(二)
  • 原文地址:https://www.cnblogs.com/yc3120/p/3912607.html
Copyright © 2011-2022 走看看