model-action 1.0.23 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +8 -4
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -0
- package/dist/modules/Action.d.ts +5 -14
- package/dist/modules/Action.d.ts.map +1 -0
- package/dist/modules/Action.js +1 -10
- package/dist/modules/Action.js.map +1 -0
- package/dist/modules/Building.d.ts +28 -0
- package/dist/modules/Building.d.ts.map +1 -0
- package/dist/modules/Building.js +70 -0
- package/dist/modules/Building.js.map +1 -0
- package/dist/modules/Camera.d.ts +37 -0
- package/dist/modules/Camera.d.ts.map +1 -0
- package/dist/modules/Camera.js +110 -0
- package/dist/modules/Camera.js.map +1 -0
- package/dist/modules/Environment.d.ts +22 -0
- package/dist/modules/Environment.d.ts.map +1 -0
- package/dist/modules/Environment.js +53 -0
- package/dist/modules/Environment.js.map +1 -0
- package/dist/modules/Focus.d.ts +12 -0
- package/dist/modules/Focus.d.ts.map +1 -0
- package/dist/modules/Focus.js +22 -0
- package/dist/modules/Focus.js.map +1 -0
- package/dist/modules/Poi.d.ts +45 -62
- package/dist/modules/Poi.d.ts.map +1 -0
- package/dist/modules/Poi.js +117 -88
- package/dist/modules/Poi.js.map +1 -0
- package/dist/modules/Routing.d.ts +23 -31
- package/dist/modules/Routing.d.ts.map +1 -0
- package/dist/modules/Routing.js +62 -63
- package/dist/modules/Routing.js.map +1 -0
- package/dist/modules/Scene.d.ts +12 -15
- package/dist/modules/Scene.d.ts.map +1 -0
- package/dist/modules/Scene.js +26 -15
- package/dist/modules/Scene.js.map +1 -0
- package/dist/modules/Status.d.ts +59 -0
- package/dist/modules/Status.d.ts.map +1 -0
- package/dist/modules/Status.js +91 -0
- package/dist/modules/Status.js.map +1 -0
- package/dist/modules/Track.d.ts +65 -22
- package/dist/modules/Track.d.ts.map +1 -0
- package/dist/modules/Track.js +128 -20
- package/dist/modules/Track.js.map +1 -0
- package/dist/modules/VideoFusion.d.ts +1 -0
- package/dist/modules/VideoFusion.d.ts.map +1 -0
- package/dist/modules/VideoFusion.js +1 -0
- package/dist/modules/VideoFusion.js.map +1 -0
- package/dist/modules/Window.d.ts +1 -0
- package/dist/modules/Window.d.ts.map +1 -0
- package/dist/modules/Window.js +1 -0
- package/dist/modules/Window.js.map +1 -0
- package/package.json +1 -1
- package/src/index.ts +7 -4
- package/src/modules/Action.ts +4 -25
- package/src/modules/Building.ts +103 -0
- package/src/modules/Camera.ts +175 -0
- package/src/modules/Environment.ts +81 -0
- package/src/modules/Focus.ts +33 -0
- package/src/modules/Poi.ts +194 -117
- package/src/modules/Routing.ts +96 -85
- package/src/modules/Scene.ts +43 -21
- package/src/modules/Status.ts +150 -0
- package/src/modules/Track.ts +259 -30
- package/src/modules/VideoFusion.ts +0 -122
- package/src/modules/Window.ts +0 -40
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 状态操作方法
|
|
3
|
+
*/
|
|
4
|
+
import { Action } from "./Action";
|
|
5
|
+
export class StatusAction extends Action {
|
|
6
|
+
/**
|
|
7
|
+
* 切换指定ID的模型、POI等的状态
|
|
8
|
+
* @param infos 状态信息数组,包含id和state
|
|
9
|
+
* @param options 可选参数
|
|
10
|
+
* @param options.isLocation 是否定位到第一个ID对应的设备,默认false
|
|
11
|
+
* @param options.type 变换状态的类型,如"POI"
|
|
12
|
+
*/
|
|
13
|
+
static statusChange(infos, options) {
|
|
14
|
+
const data = {
|
|
15
|
+
infos
|
|
16
|
+
};
|
|
17
|
+
// 如果提供了 isLocation,则添加(默认false,所以只有为true时才添加)
|
|
18
|
+
if ((options === null || options === void 0 ? void 0 : options.isLocation) !== undefined) {
|
|
19
|
+
data.isLocation = options.isLocation;
|
|
20
|
+
}
|
|
21
|
+
// 如果提供了 type,则添加
|
|
22
|
+
if (options === null || options === void 0 ? void 0 : options.type) {
|
|
23
|
+
data.type = options.type;
|
|
24
|
+
}
|
|
25
|
+
const param = {
|
|
26
|
+
cmd: "status",
|
|
27
|
+
data
|
|
28
|
+
};
|
|
29
|
+
// 生成描述信息
|
|
30
|
+
let msg = '切换状态';
|
|
31
|
+
if (options === null || options === void 0 ? void 0 : options.type) {
|
|
32
|
+
msg = `切换${options.type}状态`;
|
|
33
|
+
}
|
|
34
|
+
if (infos.length === 1) {
|
|
35
|
+
msg += ` - ID: ${infos[0].id}, 状态: ${infos[0].state}`;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
msg += ` - 共${infos.length}个设备`;
|
|
39
|
+
}
|
|
40
|
+
// 使用类型断言调用sendParam,因为StatusType不严格符合SendParam(缺少action字段)
|
|
41
|
+
this.sendParam(param, msg);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* 设置设备为正常状态
|
|
45
|
+
* @param id 设备ID
|
|
46
|
+
* @param options 可选参数
|
|
47
|
+
*/
|
|
48
|
+
static setNormal(id, options) {
|
|
49
|
+
this.statusChange([{ id, state: 'normal' }], options);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* 设置设备为报警状态
|
|
53
|
+
* @param id 设备ID
|
|
54
|
+
* @param options 可选参数
|
|
55
|
+
*/
|
|
56
|
+
static setAlarm(id, options) {
|
|
57
|
+
this.statusChange([{ id, state: 'alarm' }], options);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 设置设备颜色
|
|
61
|
+
* @param id 设备ID
|
|
62
|
+
* @param color 颜色值,格式如 "FFFFFF" 或 "93050C"(不需要#前缀)
|
|
63
|
+
* @param options 可选参数
|
|
64
|
+
*/
|
|
65
|
+
static setColor(id, color, options) {
|
|
66
|
+
// 移除可能的#前缀
|
|
67
|
+
const colorValue = color.startsWith('#') ? color.slice(1) : color;
|
|
68
|
+
this.statusChange([{ id, state: `color=${colorValue}` }], options);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* 批量设置多个设备的状态
|
|
72
|
+
* @param statusMap 状态映射,key为设备ID,value为状态值(normal | alarm | color值)
|
|
73
|
+
* @param options 可选参数
|
|
74
|
+
*/
|
|
75
|
+
static batchSetStatus(statusMap, options) {
|
|
76
|
+
const infos = [];
|
|
77
|
+
for (const id in statusMap) {
|
|
78
|
+
if (statusMap.hasOwnProperty(id)) {
|
|
79
|
+
const state = statusMap[id];
|
|
80
|
+
// 如果state是颜色值(6位十六进制),自动添加color=前缀
|
|
81
|
+
let finalState = state;
|
|
82
|
+
if (/^[0-9A-Fa-f]{6}$/.test(state) && !state.startsWith('color=')) {
|
|
83
|
+
finalState = `color=${state}`;
|
|
84
|
+
}
|
|
85
|
+
infos.push({ id, state: finalState });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
this.statusChange(infos, options);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=Status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Status.js","sourceRoot":"","sources":["../../src/modules/Status.ts"],"names":[],"mappings":"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"}
|
package/dist/modules/Track.d.ts
CHANGED
|
@@ -1,33 +1,76 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 轨迹方法
|
|
3
3
|
*/
|
|
4
|
-
import { Action
|
|
5
|
-
type
|
|
6
|
-
type
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
4
|
+
import { Action } from "./Action";
|
|
5
|
+
export type PathModuleType = 'Edit' | 'PathTracer';
|
|
6
|
+
export type RolerType = 'Person' | 'Camera' | 'UAV';
|
|
7
|
+
export type PathDrawBaseType = 'BaseOnRoadNet' | 'BaseOnPathEditInfo';
|
|
8
|
+
export type PathStyleType = 'Arrow' | string;
|
|
9
|
+
export interface RolerMoveParam {
|
|
10
|
+
rolerMoveAlongPath?: boolean;
|
|
11
|
+
rolerType?: RolerType;
|
|
12
|
+
viewFollow?: boolean;
|
|
13
|
+
moveSpeed?: number;
|
|
14
|
+
pauseAtPoint?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface PathStyle {
|
|
17
|
+
color: string;
|
|
18
|
+
styleType: PathStyleType;
|
|
19
|
+
width: number;
|
|
20
|
+
}
|
|
21
|
+
export interface PathPoint {
|
|
22
|
+
id: string;
|
|
23
|
+
}
|
|
24
|
+
export interface PathEditParam {
|
|
25
|
+
searchRangeAtPathPoint?: number;
|
|
26
|
+
searchDeviceType?: string;
|
|
27
|
+
}
|
|
14
28
|
export declare class TrackAction extends Action {
|
|
15
29
|
/**
|
|
16
|
-
*
|
|
17
|
-
* @param
|
|
30
|
+
* 请求三维绘制路径
|
|
31
|
+
* @param pathId 自定义轨迹ID,后面删除的时候用,如果之前有编辑路径,这里就使用编辑路径的时候传入的路径 pathId
|
|
32
|
+
* @param pathDrawBaseType 绘制方式:BaseOnRoadNet 基于路网,使用C++寻路;BaseOnPathEditInfo 基于编辑路径生成的点画路径,不基于路网
|
|
33
|
+
* @param points 路径点数组
|
|
34
|
+
* @param roadNetId 路网的ID,pathDrawBaseType = BaseOnRoadNet的时候,需要传值,如果场景就一个路网,也可以不用传
|
|
35
|
+
* @param rolerMoveParam 沿路径移动的信息
|
|
36
|
+
* @param pathStyle 路径样式
|
|
37
|
+
*/
|
|
38
|
+
static trackAdd(pathId: string, pathDrawBaseType: PathDrawBaseType, points: PathPoint[], roadNetId?: string, rolerMoveParam?: RolerMoveParam, pathStyle?: PathStyle): void;
|
|
39
|
+
/**
|
|
40
|
+
* 显隐销毁路径
|
|
41
|
+
* @param action 操作类型:show 显示 | hide 隐藏 | remove 删除
|
|
42
|
+
* @param pathId 自定义轨迹ID,同前面,自定义的ID
|
|
43
|
+
* @param module 显隐、删除哪一部分:Edit 编辑的部分 | PathTracer 根据设备点动态生成的路径部分,如果不传,则整个显隐或者删除
|
|
44
|
+
*/
|
|
45
|
+
static trackShowHideRemove(action: 'show' | 'hide' | 'remove', pathId: string, module?: PathModuleType): void;
|
|
46
|
+
/**
|
|
47
|
+
* 移动中更新移动参数
|
|
48
|
+
* @param pathId 自定义轨迹ID
|
|
49
|
+
* @param rolerMoveParam 沿路径移动的参数
|
|
50
|
+
*/
|
|
51
|
+
static trackUpdateMovingParam(pathId: string, rolerMoveParam: RolerMoveParam): void;
|
|
52
|
+
/**
|
|
53
|
+
* 在生成的路径上面移动 - 开始移动
|
|
54
|
+
* @param action 操作类型:start 开始移动
|
|
55
|
+
* @param pathId 自定义轨迹ID
|
|
56
|
+
* @param rolerMoveParam 沿路径移动的参数
|
|
57
|
+
*/
|
|
58
|
+
static trackMove(action: 'start', pathId: string, rolerMoveParam: RolerMoveParam): void;
|
|
59
|
+
/**
|
|
60
|
+
* 在生成的路径上面移动 - 停止或重启
|
|
61
|
+
* @param action 操作类型:stop 停止移动 | restart 重启移动
|
|
18
62
|
*/
|
|
19
|
-
static
|
|
63
|
+
static trackMove(action: 'stop' | 'restart'): void;
|
|
20
64
|
/**
|
|
21
|
-
*
|
|
22
|
-
* @param
|
|
23
|
-
* @param
|
|
65
|
+
* 开启路径编辑
|
|
66
|
+
* @param pathId 自定义轨迹ID,前端配置界面提供数据,为空或者不传,UE自动生成一个
|
|
67
|
+
* @param pathName 路径名称,前端配置界面提供数据,非必须
|
|
68
|
+
* @param pathEditParam 路径编辑参数,前端配置界面提供数据
|
|
24
69
|
*/
|
|
25
|
-
static
|
|
70
|
+
static trackBeginEdit(pathId?: string, pathName?: string, pathEditParam?: PathEditParam): void;
|
|
26
71
|
/**
|
|
27
|
-
*
|
|
28
|
-
* @param {*} data
|
|
29
|
-
* @param {*} pathId 自定义轨迹ID
|
|
72
|
+
* 停止路径编辑
|
|
30
73
|
*/
|
|
31
|
-
static
|
|
74
|
+
static trackEndEdit(): void;
|
|
32
75
|
}
|
|
33
|
-
|
|
76
|
+
//# sourceMappingURL=Track.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Track.d.ts","sourceRoot":"","sources":["../../src/modules/Track.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAa,MAAM,UAAU,CAAC;AAM7C,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,YAAY,CAAA;AAGlD,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAA;AAGnD,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,oBAAoB,CAAA;AAGrE,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,CAAA;AAG5C,MAAM,WAAW,cAAc;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAGD,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,aAAa,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,aAAa;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAqBD,qBAAa,WAAY,SAAQ,MAAM;IACnC;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CACX,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,gBAAgB,EAClC,MAAM,EAAE,SAAS,EAAE,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,cAAc,EAC/B,SAAS,CAAC,EAAE,SAAS;IA+BzB;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CACtB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,cAAc;IA6B3B;;;;OAIG;IACH,MAAM,CAAC,sBAAsB,CACzB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc;IAmBlC;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,IAAI;IACvF;;;OAGG;IACH,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IA2ClD;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CACjB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,aAAa;IAiCjC;;OAEG;IACH,MAAM,CAAC,YAAY;CAatB"}
|
package/dist/modules/Track.js
CHANGED
|
@@ -4,44 +4,152 @@
|
|
|
4
4
|
import { Action } from "./Action";
|
|
5
5
|
export class TrackAction extends Action {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
* @param
|
|
7
|
+
* 请求三维绘制路径
|
|
8
|
+
* @param pathId 自定义轨迹ID,后面删除的时候用,如果之前有编辑路径,这里就使用编辑路径的时候传入的路径 pathId
|
|
9
|
+
* @param pathDrawBaseType 绘制方式:BaseOnRoadNet 基于路网,使用C++寻路;BaseOnPathEditInfo 基于编辑路径生成的点画路径,不基于路网
|
|
10
|
+
* @param points 路径点数组
|
|
11
|
+
* @param roadNetId 路网的ID,pathDrawBaseType = BaseOnRoadNet的时候,需要传值,如果场景就一个路网,也可以不用传
|
|
12
|
+
* @param rolerMoveParam 沿路径移动的信息
|
|
13
|
+
* @param pathStyle 路径样式
|
|
9
14
|
*/
|
|
10
|
-
static
|
|
15
|
+
static trackAdd(pathId, pathDrawBaseType, points, roadNetId, rolerMoveParam, pathStyle) {
|
|
16
|
+
const data = {
|
|
17
|
+
action: "add",
|
|
18
|
+
pathId,
|
|
19
|
+
pathDrawBaseType,
|
|
20
|
+
points,
|
|
21
|
+
};
|
|
22
|
+
// 如果绘制方式是基于路网,且提供了路网ID,则添加
|
|
23
|
+
if (pathDrawBaseType === 'BaseOnRoadNet' && roadNetId) {
|
|
24
|
+
data.roadNetId = roadNetId;
|
|
25
|
+
}
|
|
26
|
+
// 如果提供了沿路径移动参数,则添加
|
|
27
|
+
if (rolerMoveParam) {
|
|
28
|
+
data.rolerMoveParam = rolerMoveParam;
|
|
29
|
+
}
|
|
30
|
+
// 如果提供了路径样式,则添加
|
|
31
|
+
if (pathStyle) {
|
|
32
|
+
data.pathStyle = pathStyle;
|
|
33
|
+
}
|
|
11
34
|
const param = {
|
|
12
35
|
cmd: "path",
|
|
13
|
-
|
|
36
|
+
data
|
|
37
|
+
};
|
|
38
|
+
this.sendParam(param, '请求三维绘制路径');
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* 显隐销毁路径
|
|
42
|
+
* @param action 操作类型:show 显示 | hide 隐藏 | remove 删除
|
|
43
|
+
* @param pathId 自定义轨迹ID,同前面,自定义的ID
|
|
44
|
+
* @param module 显隐、删除哪一部分:Edit 编辑的部分 | PathTracer 根据设备点动态生成的路径部分,如果不传,则整个显隐或者删除
|
|
45
|
+
*/
|
|
46
|
+
static trackShowHideRemove(action, pathId, module) {
|
|
47
|
+
const data = {
|
|
48
|
+
action,
|
|
14
49
|
pathId
|
|
15
50
|
};
|
|
16
|
-
|
|
51
|
+
// 如果提供了模块类型,则添加
|
|
52
|
+
if (module) {
|
|
53
|
+
data.module = module;
|
|
54
|
+
}
|
|
55
|
+
const param = {
|
|
56
|
+
cmd: "path",
|
|
57
|
+
data
|
|
58
|
+
};
|
|
59
|
+
const actionMap = {
|
|
60
|
+
show: '显示路径',
|
|
61
|
+
hide: '隐藏路径',
|
|
62
|
+
remove: '删除路径'
|
|
63
|
+
};
|
|
64
|
+
this.sendParam(param, actionMap[action]);
|
|
17
65
|
}
|
|
18
66
|
/**
|
|
19
|
-
*
|
|
20
|
-
* @param
|
|
21
|
-
* @param
|
|
67
|
+
* 移动中更新移动参数
|
|
68
|
+
* @param pathId 自定义轨迹ID
|
|
69
|
+
* @param rolerMoveParam 沿路径移动的参数
|
|
22
70
|
*/
|
|
23
|
-
static
|
|
71
|
+
static trackUpdateMovingParam(pathId, rolerMoveParam) {
|
|
72
|
+
const data = {
|
|
73
|
+
action: 'updateMovingParam',
|
|
74
|
+
pathId,
|
|
75
|
+
rolerMoveParam
|
|
76
|
+
};
|
|
24
77
|
const param = {
|
|
25
78
|
cmd: "path",
|
|
26
|
-
action: "getRoadNet",
|
|
27
|
-
rnId,
|
|
28
79
|
data
|
|
29
80
|
};
|
|
30
|
-
this.sendParam(param, '
|
|
81
|
+
this.sendParam(param, '更新移动参数');
|
|
31
82
|
}
|
|
32
83
|
/**
|
|
33
|
-
*
|
|
34
|
-
* @param
|
|
35
|
-
* @param
|
|
84
|
+
* 在生成的路径上面移动
|
|
85
|
+
* @param action 操作类型:start 开始移动 | stop 停止移动 | restart 重启移动
|
|
86
|
+
* @param pathId 自定义轨迹ID(仅 start 时需要)
|
|
87
|
+
* @param rolerMoveParam 沿路径移动的参数(仅 start 时需要)
|
|
36
88
|
*/
|
|
37
|
-
static
|
|
89
|
+
static trackMove(action, pathId, rolerMoveParam) {
|
|
90
|
+
const data = {
|
|
91
|
+
action
|
|
92
|
+
};
|
|
93
|
+
// start 操作需要 pathId 和 rolerMoveParam
|
|
94
|
+
if (action === 'start') {
|
|
95
|
+
if (!pathId || !rolerMoveParam) {
|
|
96
|
+
throw new Error('start 操作需要提供 pathId 和 rolerMoveParam');
|
|
97
|
+
}
|
|
98
|
+
data.pathId = pathId;
|
|
99
|
+
data.rolerMoveParam = rolerMoveParam;
|
|
100
|
+
}
|
|
101
|
+
// stop 和 restart 不需要 pathId 和 rolerMoveParam
|
|
38
102
|
const param = {
|
|
39
103
|
cmd: "path",
|
|
40
|
-
action: "add",
|
|
41
|
-
pathId,
|
|
42
|
-
type: "BaseOnRoadNet",
|
|
43
104
|
data
|
|
44
105
|
};
|
|
45
|
-
|
|
106
|
+
const actionMap = {
|
|
107
|
+
start: '开始移动',
|
|
108
|
+
stop: '停止移动',
|
|
109
|
+
restart: '重启移动'
|
|
110
|
+
};
|
|
111
|
+
this.sendParam(param, actionMap[action]);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* 开启路径编辑
|
|
115
|
+
* @param pathId 自定义轨迹ID,前端配置界面提供数据,为空或者不传,UE自动生成一个
|
|
116
|
+
* @param pathName 路径名称,前端配置界面提供数据,非必须
|
|
117
|
+
* @param pathEditParam 路径编辑参数,前端配置界面提供数据
|
|
118
|
+
*/
|
|
119
|
+
static trackBeginEdit(pathId, pathName, pathEditParam) {
|
|
120
|
+
const data = {
|
|
121
|
+
action: 'beginEdit'
|
|
122
|
+
};
|
|
123
|
+
// 如果提供了 pathId,则添加
|
|
124
|
+
if (pathId) {
|
|
125
|
+
data.pathId = pathId;
|
|
126
|
+
}
|
|
127
|
+
// 如果提供了 pathName,则添加
|
|
128
|
+
if (pathName) {
|
|
129
|
+
data.pathName = pathName;
|
|
130
|
+
}
|
|
131
|
+
// 如果提供了 pathEditParam,则添加
|
|
132
|
+
if (pathEditParam) {
|
|
133
|
+
data.pathEditParam = pathEditParam;
|
|
134
|
+
}
|
|
135
|
+
const param = {
|
|
136
|
+
cmd: "path",
|
|
137
|
+
data
|
|
138
|
+
};
|
|
139
|
+
this.sendParam(param, '开启路径编辑');
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* 停止路径编辑
|
|
143
|
+
*/
|
|
144
|
+
static trackEndEdit() {
|
|
145
|
+
const data = {
|
|
146
|
+
action: 'endEdit'
|
|
147
|
+
};
|
|
148
|
+
const param = {
|
|
149
|
+
cmd: "path",
|
|
150
|
+
data
|
|
151
|
+
};
|
|
152
|
+
this.sendParam(param, '停止路径编辑');
|
|
46
153
|
}
|
|
47
154
|
}
|
|
155
|
+
//# sourceMappingURL=Track.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Track.js","sourceRoot":"","sources":["../../src/modules/Track.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VideoFusion.d.ts","sourceRoot":"","sources":["../../src/modules/VideoFusion.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAgB,SAAS,EAAE,MAAM,UAAU,CAAC;AAEnE,KAAK,qBAAqB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;AACjG,KAAK,eAAe,GAAG;IACnB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC/B,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CACnC,GAAG,SAAS,CAAA;AAGb,qBAAa,iBAAkB,SAAQ,MAAM;IACzC;;;;;;;OAOG;IACH,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,GAAE,eAAe,CAAC,MAAM,CAAU,EAAE,OAAO,GAAE,eAAe,CAAC,SAAS,CAAS;IAYtK;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC;IAU9E;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,UAAU,GAAE,OAAe,EAAE,QAAQ,GAAE,OAAe,EAAE,SAAS,GAAE,OAAO,GAAG,QAAkB;IAYpJ;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,UAAU,GAAE,OAAe,EAAE,QAAQ,GAAE,OAAe,EAAE,SAAS,GAAE,OAAO,GAAG,QAAkB;IAYnJ;;;OAGG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC;IASzD;;OAEG;IACH,MAAM,CAAC,eAAe;CAOzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VideoFusion.js","sourceRoot":"","sources":["../../src/modules/VideoFusion.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,OAAO,EAAE,MAAM,EAAmC,MAAM,UAAU,CAAC;AAmBnE,MAAM,OAAO,iBAAkB,SAAQ,MAAM;IACzC;;;;;;;OAOG;IACH,MAAM,CAAC,eAAe,CAAC,KAA+B,EAAE,EAAyB,EAAE,OAAgC,MAAM,EAAE,UAAsC,KAAK;QAClK,MAAM,KAAK,GAAoB;YAC3B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,MAAM;YACd,KAAK;YACL,EAAE;YACF,IAAI;YACJ,OAAO;SACV,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,gBAAgB,CAAC,EAAyB,EAAE,GAA2B;QAC1E,MAAM,KAAK,GAAoB;YAC3B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,OAAO;YACf,EAAE;YACF,GAAG;SACN,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,CAAA;IAC7C,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,GAA2B,EAAE,aAAsB,KAAK,EAAE,WAAoB,KAAK,EAAE,YAAgC,OAAO;QAChJ,MAAM,KAAK,GAAoB;YAC3B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,OAAO;YACf,UAAU;YACV,SAAS;YACT,QAAQ;YACR,GAAG;SACN,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAA2B,EAAE,aAAsB,KAAK,EAAE,WAAoB,KAAK,EAAE,YAAgC,OAAO;QAC/I,MAAM,KAAK,GAAoB;YAC3B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,MAAM;YACd,UAAU;YACV,SAAS;YACT,QAAQ;YACR,GAAG;SACN,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAA+B;QACrD,MAAM,KAAK,GAAoB;YAC3B,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,SAAS;YACjB,KAAK;SACR,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe;QAClB,MAAM,KAAK,GAAG;YACV,GAAG,EAAE,aAAa;YAClB,MAAM,EAAE,KAAK;SAChB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;IACvC,CAAC;CACJ"}
|
package/dist/modules/Window.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Window.d.ts","sourceRoot":"","sources":["../../src/modules/Window.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAG,MAAM,UAAU,CAAC;AAEnC,qBAAa,YAAa,SAAQ,MAAM;IACpC;;;QAGI;IACJ,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM;IAY/B;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM;CAWnC"}
|
package/dist/modules/Window.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/modules/Window.ts"],"names":[],"mappings":"AACA;;;GAGG;AACH,OAAO,EAAE,MAAM,GAAG,MAAM,UAAU,CAAC;AAEnC,MAAM,OAAO,YAAa,SAAQ,MAAM;IACpC;;;QAGI;IACJ,MAAM,CAAC,OAAO,CAAC,QAAgB;QAC3B,MAAM,KAAK,GAAQ;YACf,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE;gBACF,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,UAAU;gBAChB,QAAQ;aACX;SACJ,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAgB;QAC5B,MAAM,KAAK,GAAQ;YACf,GAAG,EAAE,QAAQ;YACb,IAAI,EAAE;gBACF,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,UAAU;gBAChB,QAAQ;aACX;SACJ,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACnC,CAAC;CACJ"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
export { Action } from './modules/Action'
|
|
2
|
-
export { VideoFusionAction } from "./modules/VideoFusion";
|
|
3
|
-
export { PoiAction } from './modules/Poi'
|
|
4
2
|
export { TrackAction } from './modules/Track'
|
|
3
|
+
export { PoiAction } from './modules/Poi'
|
|
4
|
+
export { BuildingAction } from './modules/Building'
|
|
5
|
+
export { EnvironmentAction } from './modules/Environment'
|
|
6
|
+
export { RoutingAction } from './modules/Routing'
|
|
7
|
+
export { StatusAction } from './modules/Status'
|
|
8
|
+
export { CameraAction } from './modules/Camera'
|
|
9
|
+
export { FocusAction } from './modules/Focus'
|
|
5
10
|
export { SceneAction } from './modules/Scene'
|
|
6
|
-
export { WindowAction } from './modules/Window'
|
|
7
|
-
export { RoutingAction } from './modules/Routing';
|
package/src/modules/Action.ts
CHANGED
|
@@ -2,34 +2,13 @@ export type RequiredSome<T, K extends keyof T> = Required<Pick<T, K>> & Omit<T,
|
|
|
2
2
|
|
|
3
3
|
export interface SendParam {
|
|
4
4
|
cmd: string,
|
|
5
|
-
|
|
5
|
+
data: {
|
|
6
|
+
action: string,
|
|
7
|
+
[key: string]: any,
|
|
8
|
+
},
|
|
6
9
|
}
|
|
7
10
|
|
|
8
|
-
|
|
9
|
-
interface IdItem {
|
|
10
|
-
id: string;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export type IdList = IdItem[];
|
|
14
|
-
|
|
15
|
-
export type LocationItem = `X=${number},Y=${number},Z=${number}`
|
|
16
|
-
|
|
17
|
-
export type LocationList = Array<{
|
|
18
|
-
location: LocationItem
|
|
19
|
-
}>
|
|
20
|
-
|
|
21
11
|
export class Action {
|
|
22
|
-
/**
|
|
23
|
-
* 视角初始化
|
|
24
|
-
*/
|
|
25
|
-
static cameraInit() {
|
|
26
|
-
const param: SendParam = {
|
|
27
|
-
cmd: "cameraView",
|
|
28
|
-
action: "default",
|
|
29
|
-
};
|
|
30
|
-
this.sendParam(param, '视角初始化')
|
|
31
|
-
}
|
|
32
|
-
|
|
33
12
|
/**
|
|
34
13
|
* 发送到model
|
|
35
14
|
* @param {SendParam} param 发送的参数
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 建筑楼操作方法
|
|
3
|
+
*/
|
|
4
|
+
import { Action, SendParam } from "./Action";
|
|
5
|
+
|
|
6
|
+
type BuildingActionType = 'layer' | 'top' | 'HL' | 'Blur'
|
|
7
|
+
|
|
8
|
+
type BuildingType = SendParam & {
|
|
9
|
+
cmd: "building";
|
|
10
|
+
data: {
|
|
11
|
+
action: BuildingActionType;
|
|
12
|
+
buildingId: string;
|
|
13
|
+
floor?: string;
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export class BuildingAction extends Action {
|
|
19
|
+
/**
|
|
20
|
+
* 建筑分层
|
|
21
|
+
* @param buildingId 楼的唯一标识
|
|
22
|
+
* @param floor 第几层,-1 表示负一楼,0 表示退出分层
|
|
23
|
+
*/
|
|
24
|
+
static buildingLayer(buildingId: string, floor: string) {
|
|
25
|
+
const data: {
|
|
26
|
+
action: 'layer';
|
|
27
|
+
buildingId: string;
|
|
28
|
+
floor: string;
|
|
29
|
+
} = {
|
|
30
|
+
action: 'layer',
|
|
31
|
+
buildingId,
|
|
32
|
+
floor
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const param: BuildingType = {
|
|
36
|
+
cmd: "building",
|
|
37
|
+
data
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const floorDesc = floor === '0' ? '退出分层' : floor === '-1' ? '负一楼' : `第${floor}层`;
|
|
41
|
+
this.sendParam(param, `建筑分层 - ${floorDesc}`)
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* 掀顶
|
|
46
|
+
* @param buildingId 楼的唯一标识
|
|
47
|
+
*/
|
|
48
|
+
static buildingTop(buildingId: string) {
|
|
49
|
+
const data: {
|
|
50
|
+
action: 'top';
|
|
51
|
+
buildingId: string;
|
|
52
|
+
} = {
|
|
53
|
+
action: 'top',
|
|
54
|
+
buildingId
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const param: BuildingType = {
|
|
58
|
+
cmd: "building",
|
|
59
|
+
data
|
|
60
|
+
};
|
|
61
|
+
this.sendParam(param, '掀顶')
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* 高亮楼层
|
|
66
|
+
* @param buildingId 楼的唯一标识
|
|
67
|
+
*/
|
|
68
|
+
static buildingHighlight(buildingId: string) {
|
|
69
|
+
const data: {
|
|
70
|
+
action: 'HL';
|
|
71
|
+
buildingId: string;
|
|
72
|
+
} = {
|
|
73
|
+
action: 'HL',
|
|
74
|
+
buildingId
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
const param: BuildingType = {
|
|
78
|
+
cmd: "building",
|
|
79
|
+
data
|
|
80
|
+
};
|
|
81
|
+
this.sendParam(param, '高亮楼层')
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* 虚化楼
|
|
86
|
+
* @param buildingId 楼的唯一标识
|
|
87
|
+
*/
|
|
88
|
+
static buildingBlur(buildingId: string) {
|
|
89
|
+
const data: {
|
|
90
|
+
action: 'Blur';
|
|
91
|
+
buildingId: string;
|
|
92
|
+
} = {
|
|
93
|
+
action: 'Blur',
|
|
94
|
+
buildingId
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const param: BuildingType = {
|
|
98
|
+
cmd: "building",
|
|
99
|
+
data
|
|
100
|
+
};
|
|
101
|
+
this.sendParam(param, '虚化楼')
|
|
102
|
+
}
|
|
103
|
+
}
|