Class: FMNaviDriveAnalyser

FMNaviDriveAnalyser

FMNaviDriveAnalyser 是可分析最短路径、最快路径并返回分析结果的车行路径类。可独立于地图工作, 支持Web Worker 和 Node。属于 fengmap.analyser.min.js

new fengmap.FMNaviDriveAnalyser(options, success, failed)

构造方法

Name Type Description
options object

参数对象

Name Type Description
map fengmap.FMMap

当使用地图对象初始化时,直接使用地图对象的数据内存构建分析器,可节约内存。

mapID string

地图ID

appName string

地图应用名称,通过蜂鸟云后台创建

key string

地图应用密钥,通过蜂鸟云后台获取

mapURL string

离线地图数据资源路径,在线调用不用设置。NodeJS环境下只支持离线加载,必须设置该参数。

tile boolean

是否使用分层数据默认为true

success requestCallback

创建成功的回调,使用route方法需要该回调触发后进行。

failed requestCallback

创建失败的回调。

Methods

inherited constraintTrack(constraintPts){array}

通过传入定位点的约束点数组, 返回经过插值后的约束点数组

Name Type Description
constraintPts array

通过路径约束, 定位点对应的约束点数组, 约束点的信息具体参见pathConstraint(coords)方法的返回结果

Returns:
Type Description
array 插值后的约束点数组

inherited dispose()

释放fengmap.FMNaviAnalyser对象应用和内存占用。

inherited pathConstraint(coords){object}

全路网路径约束

Name Type Description
coords object

{x: ,y: , level: ,buildingID:} 指定点坐标, 当不存在buildingID时,默认为园区。

Returns:
Type Description
object {coords: , distance:, angle, road: } 约束点信息,具体如下 coords: object, 指定点到最近路径的垂点坐标 {x:, y:, level}, 最近的路径为约束路径 distance: number, 指定点与垂点的距离, angle: number, 约束路径与正北方向的角度值 road: object, 约束路径的信息 buildingID: 当不存在buildingID时,默认为园区

route(request, success, failed)

根据已加载的fengmap.FMMap导航分析。

Name Type Description
request object

参数对象

Name Type Description
start object

{x,y,level,buildingID} 起始坐标点, 当不存在buildingID时,默认为园区。

dest object

{x,y,level,buildingID} 结束坐标点, 当不存在buildingID时,默认为园区。

mode fengmap.FMNaviMode

代表最优路径/最短路径的枚举类型。

viapoints array

[{x,y,level,buildingID,order, ...},...]途经点数组,x,y,level为途经点坐标必须参数内容;当不存在buildingID时默认为园区,途经点在子地图内时buildingID必填;order为可选参数,用于指定途径点的到达顺序,数值越小优先级越高;此外,还可以增加途经点扩展信息。

success requestCallback

计算成功回调,返回计算结果result。

Name Type Description
distance number

路线总距离。

buildings array

按照起终点顺序依次经过的建筑、楼层和距离信息数组。

buildings[].distance number

建筑内路线的距离。

buildings[].levels array

建筑内按照起终点顺序路线所经过的楼层level数组。

buildings[].buildingID string

建筑ID.

subs number

路线分段数据。

viapoints array

可以到达的途经点集合,可以通过和参数传入的途经点数组内容比对,判断途径点是否成功经过。

subs[].distance number

路段的距离。

subs[].buildingID string

路段所在的建筑ID。

subs[].levels array

路段经过的楼层,含两个元素的数组,当元素值不相等的时候,标志着是跨层路段。

subs[].instruction object

路段描述信息{'zh':中文描述内容,'en':英文描述内容}。

subs[].transfer fengmap.FMNaviTransfer

路段换乘节点枚举值, 详情参考FMNaviTransfer。仅存在换乘时才返回。

subs[].waypoint object

路段途经信息。

Name Type Description
direction object

路段地理方向和相对方位描述。{'zh':[中文方向,中文方位],'en':[英文方向,英文方位]}。

points array

路段坐标点集合,可用于路线绘制和约束计算。

subs[].viapoint array

路段经过的途经点,与传入参数内容一致。

failed requestCallback

计算失败回调,返回 fengmap.FMRouteResult 枚举。

inherited setObstructions(obstructions)

设置路径计算障碍数据。

Name Type Description
obstructions Array

fengmap.FMNaviObstruction 障碍数据集合。