fengmap.FMNavigation 类
FMNavigation 导航相关的控制类,封装了自动设置起始点标注,路径分析,模拟导航,导航动画的功能。
实例化
clearAll
clearAll
()
清空导航类中的起始点标注,定位标注及路径线
locate
locate
(
-
coord
-
[angle]
)
用于真实导航,设置定位系统所返回的真实定位坐标,内部自动路径约束,同时触发walking事件,返回如下结果: {remain: 到终点的剩余距离, walk: 已经走过的距离, distanceToNext: 是下一个转角处的距离, angle: 当前路线与正北方向的角度, index: 当前路段的索引, point: 路径约束后的点, groupID, 当前的楼层id}
参数:
名称 | 类型 | 标记 | 描述 |
---|---|---|---|
coord
| JSON | 定位系统返回并经过坐标转换后的地图坐标点如:{x:1,y:1,groupID:1} | |
[angle] |
Float | 可选的 | 角度值,如:45,可选 |
locateNoConstraint
locateNoConstraint
(
-
coord
-
cc
-
[angle]
)
用于真实导航,设置定位系统所返回的真实定位坐标,内部无路径约束,同时触发walking事件,返回如下结果: {remain: 到终点的剩余距离, walk: 已经走过的距离, distanceToNext: 是下一个转角处的距离, angle: 当前路线与正北方向的角度, index: 当前路段的索引, point: 路径约束后的点, groupID, 当前的楼层id} 此方法与locate的区别为内部不在内部自动计算约束
参数:
名称 | 类型 | 标记 | 描述 |
---|---|---|---|
coord
| fengmap.MapCoord | 定位系统返回并经过坐标转换后的地图坐标点 | |
cc
| Json | 根据coord坐标,通过约束方法naviConstraint计算的约束后的对象。 | |
[angle] |
Float | 可选的 | 角度值,如:45,可选 |
pathConstraint
pathConstraint
(
-
coord
)
JSON
全路网路径约束
参数:
名称 | 类型 | 标记 | 描述 |
---|---|---|---|
coord
| JSON | {x: ,y: , groupID: } |
Returns:
{coord: , distance:, road:, angle} coord: 垂点的坐标 {x:, y:, groupID}, distance: 指定点与垂点的距离, road: 当前的点所在路段, angle: 所在路段与正北方向的角度值
setEndPoint
setEndPoint
(
-
options
-
noMarker
)
fengmap.FMImageMarker
设置终点
参数:
名称 | 类型 | 标记 | 描述 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options
| Json | endPoint参数对象
|
|||||||||||||||||||||||||||||
noMarker
| Bool | 不自动生成Marker对象, 默认为false |
Returns:
FMImageMarker 表示添加成功的imageMarker对象
setStartPoint
setStartPoint
(
-
options
-
noMarker
)
fengmap.FMImageMarker
设置起点
参数:
名称 | 类型 | 标记 | 描述 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options
| Json | endPoint参数对象
|
|||||||||||||||||||||||||||||
noMarker
| Bool | 不自动生成Marker对象, 默认为false |
Returns:
FMImageMarker 表示添加成功的imageMarker对象
simulate
simulate
()
设置完起始点后,开始模拟导航,调用此方法会自动画线,不需要在调用drawNaviLine方法
stop
stop
()
停止模拟导航
complete
模拟导航完成事件
示例:
//导航路径结束事件
navi.on('complete', function() {
//模拟导航结束
console.log('navigation complete');
});
crossGroup
模拟导航中跨层事件
示例:
//路径跨楼层事件
navi.on('crossGroup', function(groupID) {
//groupID 改变了
});
walking
导航正在进行中的事件,模拟导航中会持续自动调用,真实导航下,通过方法locate回调。
示例:
// 设置导航事件
navi.on('walking', function(data) {
//导航实时规划中,data为当前的导航数据
console.log(data);
});