224.map6-路线搜索
来源:互联网 发布:淘宝网什么时候搞活动 编辑:程序博客网 时间:2024/05/19 13:16
驾车路线
package com.ldw.zbqq;import java.util.ArrayList;import java.util.List;import com.baidu.mapapi.map.BaiduMap;import com.baidu.mapapi.map.BitmapDescriptor;import com.baidu.mapapi.map.BitmapDescriptorFactory;import com.baidu.mapapi.model.LatLng;import com.baidu.mapapi.overlayutil.DrivingRouteOverlay;import com.baidu.mapapi.search.core.SearchResult;import com.baidu.mapapi.search.route.DrivingRoutePlanOption;import com.baidu.mapapi.search.route.DrivingRouteResult;import com.baidu.mapapi.search.route.OnGetRoutePlanResultListener;import com.baidu.mapapi.search.route.PlanNode;import com.baidu.mapapi.search.route.RoutePlanSearch;import com.baidu.mapapi.search.route.TransitRouteResult;import com.baidu.mapapi.search.route.WalkingRouteResult;import android.os.Bundle;import android.widget.Toast;/* * 驾车路线搜索 */public class DrivingRouteOverlayDemo extends BaseActivity {private RoutePlanSearch routePlanSearch;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);search();}private void search() {// 单例 RoutePlanSearch,路线搜索routePlanSearch = RoutePlanSearch.newInstance();//监听routePlanSearch.setOnGetRoutePlanResultListener(new MyListener());DrivingRoutePlanOption drivingOption = new DrivingRoutePlanOption();PlanNode from = PlanNode.withLocation(hmPos);// 创建起点PlanNode to = PlanNode.withLocation(new LatLng(22.5522335,114.1061785));// 创建终点drivingOption.from(from);// 设置起点drivingOption.to(to);// 设置终点//设置经过路线List<PlanNode> nodes = new ArrayList<PlanNode>();nodes.add(PlanNode.withCityNameAndPlaceName("华侨城", "世博园"));drivingOption.passBy(nodes);drivingOption.policy(DrivingRoutePlanOption.DrivingPolicy.ECAR_DIS_FIRST);// 设置策略routePlanSearch.drivingSearch(drivingOption);}class MyListener implements OnGetRoutePlanResultListener{@Overridepublic void onGetDrivingRouteResult(DrivingRouteResult result) {if (result == null|| SearchResult.ERRORNO.RESULT_NOT_FOUND == result.error) {Toast.makeText(getApplicationContext(), "未搜索到结果", 0).show();return;}DrivingRouteOverlay overlay = new MyDrivingOverlay(baiduMap);baiduMap.setOnMarkerClickListener(overlay);// 把事件传递给overlayoverlay.setData(result.getRouteLines().get(0));// 设置线路为第一条overlay.addToMap();overlay.zoomToSpan();}@Overridepublic void onGetTransitRouteResult(TransitRouteResult result) {}@Overridepublic void onGetWalkingRouteResult(WalkingRouteResult result) {}}class MyDrivingOverlay extends DrivingRouteOverlay{public MyDrivingOverlay(BaiduMap arg0) {super(arg0);}@Overridepublic BitmapDescriptor getStartMarker() {//覆写此方法以改变默认起点图标return BitmapDescriptorFactory.fromResource(R.drawable.icon_st);}@Overridepublic BitmapDescriptor getTerminalMarker() {//覆写此方法以改变默认终点图标return BitmapDescriptorFactory.fromResource(R.drawable.icon_en);}}}
公交路线
package com.ldw.zbqq;import android.os.Bundle;import android.widget.Toast;import com.baidu.mapapi.map.BaiduMap;import com.baidu.mapapi.map.BitmapDescriptor;import com.baidu.mapapi.map.BitmapDescriptorFactory;import com.baidu.mapapi.model.LatLng;import com.baidu.mapapi.overlayutil.DrivingRouteOverlay;import com.baidu.mapapi.overlayutil.TransitRouteOverlay;import com.baidu.mapapi.search.core.SearchResult;import com.baidu.mapapi.search.route.DrivingRouteResult;import com.baidu.mapapi.search.route.OnGetRoutePlanResultListener;import com.baidu.mapapi.search.route.PlanNode;import com.baidu.mapapi.search.route.RoutePlanSearch;import com.baidu.mapapi.search.route.TransitRoutePlanOption;import com.baidu.mapapi.search.route.TransitRouteResult;import com.baidu.mapapi.search.route.WalkingRouteResult;/* * 公交路线 */public class TransitRouteOverlayDemo extends BaseActivity {private RoutePlanSearch routePlanSearch;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);search();}private void search() {routePlanSearch = RoutePlanSearch.newInstance();routePlanSearch.setOnGetRoutePlanResultListener(new MyListener());TransitRoutePlanOption transitOption = new TransitRoutePlanOption();PlanNode from = PlanNode.withLocation(hmPos);// 创建起点PlanNode to = PlanNode.withLocation(new LatLng(22.5522335,114.1061785));// 创建终点transitOption.from(from);transitOption.to(to);transitOption.city("深圳");transitOption.policy(TransitRoutePlanOption.TransitPolicy.EBUS_WALK_FIRST);routePlanSearch.transitSearch(transitOption);}class MyListener implements OnGetRoutePlanResultListener{@Overridepublic void onGetDrivingRouteResult(DrivingRouteResult result) {}@Overridepublic void onGetTransitRouteResult(TransitRouteResult result) {if (result == null|| SearchResult.ERRORNO.RESULT_NOT_FOUND == result.error) {Toast.makeText(getApplicationContext(), "未搜索到结果", 0).show();return;}TransitRouteOverlay overlay = new TransitRouteOverlay(baiduMap);baiduMap.setOnMarkerClickListener(overlay);// 把事件传递给overlayoverlay.setData(result.getRouteLines().get(0));// 设置线路为第一条overlay.addToMap();overlay.zoomToSpan();}@Overridepublic void onGetWalkingRouteResult(WalkingRouteResult result) {}}class MyDrivingOverlay extends DrivingRouteOverlay{public MyDrivingOverlay(BaiduMap arg0) {super(arg0);}@Overridepublic BitmapDescriptor getStartMarker() {//覆写此方法以改变默认起点图标return BitmapDescriptorFactory.fromResource(R.drawable.icon_st);}@Overridepublic BitmapDescriptor getTerminalMarker() {//覆写此方法以改变默认终点图标return BitmapDescriptorFactory.fromResource(R.drawable.icon_en);}}}
步行路线搜索
package com.ldw.zbqq;import android.os.Bundle;import android.widget.Toast;import com.baidu.mapapi.model.LatLng;import com.baidu.mapapi.overlayutil.WalkingRouteOverlay;import com.baidu.mapapi.search.core.SearchResult;import com.baidu.mapapi.search.route.DrivingRouteResult;import com.baidu.mapapi.search.route.OnGetRoutePlanResultListener;import com.baidu.mapapi.search.route.PlanNode;import com.baidu.mapapi.search.route.RoutePlanSearch;import com.baidu.mapapi.search.route.TransitRouteResult;import com.baidu.mapapi.search.route.WalkingRoutePlanOption;import com.baidu.mapapi.search.route.WalkingRouteResult;/* * 步行路线 */public class WalkingRouteOverlayDemo extends BaseActivity {private RoutePlanSearch routePlanSearch;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);search();}private void search() {routePlanSearch = RoutePlanSearch.newInstance();routePlanSearch.setOnGetRoutePlanResultListener(new MyListener());WalkingRoutePlanOption walkOption = new WalkingRoutePlanOption();PlanNode from = PlanNode.withLocation(hmPos);// 创建起点PlanNode to = PlanNode.withLocation(new LatLng(22.5522335,114.1061785));// 创建终点//走老路默认选择最优路径walkOption.from(from);walkOption.to(to);routePlanSearch.walkingSearch(walkOption);}class MyListener implements OnGetRoutePlanResultListener{@Overridepublic void onGetDrivingRouteResult(DrivingRouteResult result) {}@Overridepublic void onGetTransitRouteResult(TransitRouteResult result) {}@Overridepublic void onGetWalkingRouteResult(WalkingRouteResult result) {if (result == null|| SearchResult.ERRORNO.RESULT_NOT_FOUND == result.error) {Toast.makeText(getApplicationContext(), "未搜索到结果", 0).show();return;}WalkingRouteOverlay overlay = new WalkingRouteOverlay(baiduMap);baiduMap.setOnMarkerClickListener(overlay);// 把事件传递给overlayoverlay.setData(result.getRouteLines().get(0));// 设置线路为第一条overlay.addToMap();overlay.zoomToSpan();}}}
阅读全文
0 0
- 224.map6-路线搜索
- 发起路线规划搜索示例
- ★【插头DP | 搜索】【NOI2010】旅行路线
- 百度地图:标注驾车路线搜索
- 百度地图之驾车路线的搜索
- 百度地图之公交换乘路线搜索
- 路线
- 路线
- 路线
- 路线
- 路线
- 路线
- Android 百度地图之全局搜索周边搜索全国搜索城市路线规划(升级版)
- 邻域搜索路线与二维元胞自动机
- 百度地图之六标注行走路线搜索
- 百度地图之行走路线的标识搜索
- 百度地图开发第四天(标注行走路线搜索)
- Android学习笔记之百度地图(驾车路线搜索及RouteOverlay步行路线搜索及RouteOverlay)
- Find All Duplicates in an Array,leetcode,442
- Android自定义View的属性,attr format取值类型
- OC基础-类的点语法15
- twin primes. serial and parallel
- iOS 关键字 copy,assign,strong,retain,weak,readonly,readwrite,nonatomic,atomic,unsafe_unretained的使用与区别
- 224.map6-路线搜索
- /proc/$pid/environ?
- 225.map7-定位
- iOS 最新 APP 提交上架流程~(打包 ipa)
- spark性能优化:数据倾斜调优
- spark性能优化:数据倾斜调优
- BSidesSF-2017-pinlock-150
- swift3自定义下拉刷新控件(二)QQ弹簧效果
- 树上取数