路径分析插件
路径分析就是在场景中设置一个起点和一个终点,在这之间进行驾车路径分析,在这途中还可添加一个或多个途经点。
路径分析有四种类型:最快路线、最短路线、避开高速和步行路线。可以根据需求有选择的进行使用。
1. 功能说明
路径分析插件主要功能就是,根据需求来确定行驶路线。具体功能可参考后续方法,其中有详细的介绍和使用。
2. 构造
在SDK中实例化路径分析插件,代码示例如下:
const routePlugin = new ubm.RoutePlugin()
3. 类型
3.1 点类型
| 点类型 | 描述 |
|---|---|
| start | 起点 |
| end | 终点 |
| pathway | 途经点 |
3.2 路径分析类型
| 路径分析类型 | 描述 |
|---|---|
| fastest | 最快 |
| minimum | 耗时最少 |
| avoid-highways | 高速 |
| walk | 步行 |
4. 属性
| 属性 | 类型 | 可选 | 说明 |
|---|---|---|---|
| startMapPoint | IPoint | null | --- | 起点 |
| endMapPoint | IPoint | null | --- | 终点 |
| pathwayMapPointlist | [] | --- | 途径点位置信息列表 |
| distance | IPoint | null | --- | 行驶总路程 |
| duration | IPoint | null | --- | 行驶总时间 |
| directionsList | [] | --- | 行驶路线的步骤集合 |
4.1 起点
获取场景中的起点地图数据,代码示例如下:
const startMapPointData = routePlugin.model.startMapPoint()
4.2 终点
获取场景中的终点地图数据,代码示例如下:
const endMapPointData = routePlugin.model.endMapPoint()
4.3 途经点集合
获取场景中的途经点地图数据,代码示例如下:
const pathwayMapPointlistData = routePlugin.model.pathwayMapPointlist()
4.4 行驶总路程
获取场景中行驶的总路程,代码示例如下:
const distance = routePlugin.model.distance
4.5 行驶总时间
获取场景中行驶途中花费的时间,代码示例如下:
const duration = routePlugin.model.duration
4.6 行驶路线
获取场景中的行驶路线步骤集合,代码示例如下:
const directionsList = routePlugin.model.directionsList
5. 方法
| 方法 | 说明 |
|---|---|
| startTowPointClickEvent() | 开启场景点击获取场景点位置(起始点 结束点连点模式) |
| startOnePointClickEvent() | 开启场景点击获取场景点位置(起始点 结束点 途径点单点模式) |
| getRouteT() | 获取全部的路径信息 |
| pathwayPointListDelete() | 删除途径点列表项 |
| clearPointGraphic() | 清除所有选点存点以及线图形 |
| removeClickOn() | 删除场景点击监听 |
5.1 开始路径分析
startTowPointClickEvent(): void
开始路径分析,代码示例如下:
routePlugin.model.startTowPointClickEvent()
5.2 添加点
startOnePointClickEvent(type:string): void
参数type是点类型,值有start、end和pathway。
如在行进路线中添加一些途经点,代码示例如下:
routePlugin.model.startOnePointClickEvent("pathway")
注:一条路线只能设置一个起点和一个终点,重复设置则会使用最新的。
5.3 获取全部的路径信息
getRouteT(): void
使用天地图获取路径的全部信息,代码示例如下:
const message = await routePlugin.model.getRouteT()
5.4 删除途经点
pathwayPointListDelete(index: number): void
如删除第一位途经点,代码示例如下:
routePlugin.model.pathwayPointListDelete(0)
5.5 清除全部
clearPointGraphic(): void
清除场景中的全部路径分析,页面显示为初始状态,代码示例如下:
routePlugin.model.clearPointGraphic()
5.6 关闭路径分析
removeClickOn(): void
关闭路径分析,本质上是移除场景中的点击事件,代码示例如下:
routePlugin.model.removeClickOn()