高德地图-添加路线规划(自驾、步行...)
来源:互联网 发布:新倩女幽魂mac能玩吗 编辑:程序博客网 时间:2024/04/27 18:40
官方参考资料地址:(http://lbs.amap.com/api/android-sdk/guide/route-plan/drive/)
官方文档:http://a.amap.com/lbs/static/unzip/Android_Map_Doc/index.html
请注意:使用上述功能需要下载地图SDK,导入搜索功能的jar包。
Activity关键代码:
/*初始化 搜索路线所需的类*/ private void initRouteSearch() { RouteSearch routeSearch = new RouteSearch(this); routeSearch.setRouteSearchListener(this); if (shopLatitude != -1 && shopLongitude != -1) { fromAndTo = new RouteSearch.FromAndTo(new LatLonPoint(fromLatitude, fromLongitude), new LatLonPoint(shopLatitude, shopLongitude)); } }/*计算步行路线*/ private void calculateWalkRoute() { showProgress("正在加载..."); //初始化query对象,fromAndTo是包含起终点信息,walkMode是步行路径规划的模式 RouteSearch.WalkRouteQuery walkRouteQuery = new RouteSearch.WalkRouteQuery( fromAndTo, RouteSearch.WALK_DEFAULT); routeSearch.calculateWalkRouteAsyn(walkRouteQuery); } /*计算公交路线*/ private void calculateBusRoute() { showProgress("正在加载..."); // fromAndTo包含路径规划的起点和终点,RouteSearch.BusLeaseWalk表示公交查询模式// 第三个参数表示公交查询城市区号,第四个参数表示是否计算夜班车,0表示不计算,1表示计算 RouteSearch.BusRouteQuery busRouteQuery = new RouteSearch.BusRouteQuery( fromAndTo, RouteSearch.BUS_DEFAULT, "020", 1); routeSearch.calculateBusRouteAsyn(busRouteQuery); } /*计算自驾路线*/ private void calculateCarRoute() { showProgress("正在加载..."); // fromAndTo包含路径规划的起点和终点,drivingMode表示驾车模式// 第三个参数表示途经点(最多支持16个),第四个参数表示避让区域(最多支持32个),第五个参数表示避让道路 RouteSearch.DriveRouteQuery driveRouteQuery = new RouteSearch.DriveRouteQuery( fromAndTo, RouteSearch.DRIVING_MULTI_STRATEGY_FASTEST_SHORTEST_AVOID_CONGESTION, null, null, ""); routeSearch.calculateDriveRouteAsyn(driveRouteQuery); }@Override public void onBusRouteSearched(BusRouteResult busRouteResult, int i) { dismissProgress(); if (i==1000){ //添加的方式都一样,只是Overlay不一样; } } @Override public void onDriveRouteSearched(DriveRouteResult driveRouteResult, int i) { dismissProgress(); if (i==1000){ DrivingRouteOverlay drivingRouteOverlay = new DrivingRouteOverlay( this, aMap, drivePath, result.getStartPos(), result.getTargetPos()); aMap.clear(); drivingRouteOverlay.removeFromMap(); drivingRouteOverlay.addToMap(); drivingRouteOverlay.zoomToSpan(); } } @Override public void onWalkRouteSearched(WalkRouteResult walkRouteResult, int i) { dismissProgress(); if (i == 1000) {//1000代表成功 //在地图上绘制路径: WalkRouteOverlay walkRouteOverlay = new WalkRouteOverlay(this, aMap, walkPath, walkRouteResult.getStartPos(), walkRouteResult.getTargetPos()); aMap.clear(); walkRouteOverlay.removeFromMap();//去掉Overlay上所有的Marker。 walkRouteOverlay.addToMap();//将Overlay添加到地图上显示 walkRouteOverlay.zoomToSpan();//调整地图能看到起点和终点 } } @Override public void onRideRouteSearched(RideRouteResult rideRouteResult, int i) { }
2 0
- 高德地图-添加路线规划(自驾、步行...)
- 高德地图 步行路线规划 Walking
- Android 高德地图 步行 路线规划
- 【高德地图API】从零开始学高德JS API(五)路线规划——驾车|公交|步行
- 【高德地图API】从零开始学高德JS API(五)路线规划——驾车|公交|步行
- 百度地图--路线(步行)
- 高德地图路线规划
- 高德地图线路规划的接入使用(步行-公交-驾车)
- BaiduMap---百度地图官方Demo之路径规划功能(介绍公交,驾车和步行三种线路规划方法和自设路线方法)
- 百度地图api实现路线规划之步行驾车
- 高德地图api之路线规划(Route)
- android---高德地图(4)路线规划
- 高德地图——路线规划
- Android 高德地图驾车路线规划
- iOS高德地图sdk规划路线
- js-高德地图规划路线
- 高德地图之路线规划
- 高德地图实现路线规划
- Java时间日期格式的转换
- Java五个最常用的集合类之间的区别和联系
- 从一列数中筛除尽可能少的数使得从左往右看,这些数是从小到大再从大到小的。
- row_number() over (partition by idno order by id desc)
- 常用C语言字符串操作函数
- 高德地图-添加路线规划(自驾、步行...)
- 线段树—初始化与更改、查询
- 百度地图 java 根据地址获取经纬度
- 用highcharts做甘特图展示
- js的重载
- ## jdk8无法启动myeclipse10 ##
- unity C#通过经纬度 获得 国家 与 省份
- IPv6 OSPF and IPv6 BGP -- ipv6 unicast-routing
- 读取订单信息中增强table的写法