百度地图开放平台
更新时间: 2026/09/08 10:06
室内路线规划
下载开发文档
注:自V3.6.0起,原内置覆盖物(Overlay)相关代码开源,SDK中不再集成,需要开发者自行实现,下载使用。

覆盖物开源代码中提供了一些由基础覆盖物组合而成的高级覆盖物,包括用于显示POI数据、路线规划结果、公交路线详情的覆盖物。
IndoorRouteOverlay/TransitRouteOverlay/WalkingRouteOverlay/BikingRouteOverlay/DrivingRouteOverlay/MassTransitRouteOverlay/ 以上源码在BaiduMapsApiDemo工程(Eclipse开发环境)和BaiduMapsApiASDemo工程(Android Studio开发环境)com.baidu.mapapi.overlayutil包下。 在进行路线规划Overlay绘制时根据开发环境选择开源工程添加至项目中使用。

室内路线规划简介

室内路线规划可以根据室内步行路线的起终点信息,通过IndoorRouteOverlay类画出室内步行路线图层,包括起终点和转弯点。支持开发者自定义起终点和转弯点图标。
自V4.1起,新增室内路线规划,目前仅支持起点、终点坐标位于同一室内图上的路线规划,即起终点须位于同一商场内,不支持起终点分别位于两个商场。

室内路线规划示例
1. 创建路线规划检索实例
mSearch = RoutePlanSearch.newInstance();
2. 创建路线规划检索监听器
OnGetRoutePlanResultListener listener = new OnGetRoutePlanResultListener() {
......
@Override
public void onGetIndoorRouteResult(IndoorRouteResult indoorRouteResult) {
//创建IndoorRouteOverlay实例
IndoorRouteOverlay overlay = new IndoorRouteOverlay(mBaiduMap);
if (indoorRouteResult.getRouteLines() != null && indoorRouteResult.getRouteLines().size() > 0) {
//获取室内路径规划数据(以返回的第一条路线为例)
//为IndoorRouteOverlay实例设置数据
overlay.setData(indoorRouteResult.getRouteLines().get(0));
//在地图上绘制IndoorRouteOverlay
overlay.addToMap();
}
}
......
};

注:需要将下载并解压后的BaiduMapsApiASDemo或BaiduMapsAPIDemo工程根据开发环境选择并添加到您的项目中才可以使用以上Overlay功能。

3. 设置路线规划检索监听器
mSearch.setOnGetRoutePlanResultListener(listener);
4. 准备起终点数据
IndoorPlanNode startNode = new IndoorPlanNode(new LatLng(39.917380, 116.37978), "F1");
IndoorPlanNode endNode = new IndoorPlanNode(new LatLng(39.917239, 116.37955), "F6");
5. 发起路线规划检索
mSearch.walkingIndoorSearch(new IndoorRoutePlanOption()
.from(startNode)
.to(endNode));
6. 释放检索实例
mSearch.destroy();

效果如图:

上一篇

市内公交路线规划

下一篇

骑行导航
本篇文章对您是否有帮助?