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('这是步行路线');
}
}
});