Skip to content

Route

此类表示一条驾车、步行或骑行路线。

方法

方法返回值描述
getNumSteps()Number返回路线包含的关键点个数
getStep(i: Number)Step返回索引指定的关键点,驾车和步行适用。索引0表示第一个关键点
getDistance(format: Boolean)String | Number返回路线距离,当format为false时仅返回数值
getIndex()Number返回本路线在方案中的索引位置
getPolyline()Polyline返回路线对应的覆盖物,仅当结果自动添加到地图上时有效
getPath()Array<Point>返回路线的地理坐标点数组
getRouteType()RouteType返回路线类型,可区分是驾车还是步行线路

示例

ts
// 创建路线规划实例(以驾车路线为例)
const drivingRoute = new BMapGL.DrivingRoute(map, {
  onSearchComplete: (results: BMapGL.DrivingRouteResult) => {
    // 获取第一条方案
    const plan = results.getPlan(0);
    
    // 获取第一条路线
    const route = plan.getRoute(0);
    
    // 获取路线关键点数量
    const numSteps = route.getNumSteps();
    
    // 获取第一个关键点
    const firstStep = route.getStep(0);
    
    // 获取路线距离(带单位)
    const distance = route.getDistance(true); // 例如:"2.5公里"
    
    // 获取路线距离(仅数值)
    const distanceValue = route.getDistance(false); // 例如:2500
    
    // 获取路线在方案中的索引
    const index = route.getIndex();
    
    // 获取路线覆盖物
    const polyline = route.getPolyline();
    
    // 获取路线坐标点数组
    const path = route.getPath();
    
    // 获取路线类型
    const routeType = route.getRouteType();
    if (routeType === BMapGL.RouteTypes.DRIVING) {
      console.log('这是驾车路线');
    } else if (routeType === BMapGL.RouteTypes.WALKING) {
      console.log('这是步行路线');
    }
  }
});

基于 MIT 许可发布