gisviewer-vue3-arcgis 1.0.202 → 1.0.204
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/es/index.d.ts +1 -1
- package/es/index.mjs +11 -10
- package/es/src/gis-map/gis-map.vue.d.ts +22 -14
- package/es/src/gis-map/gis-map.vue.mjs +101 -100
- package/es/src/gis-map/index.d.ts +19 -12
- package/es/src/gis-map/utils/signal-control-area-controller/district-controller.d.ts +7 -3
- package/es/src/gis-map/utils/signal-control-area-controller/district-controller.mjs +29 -25
- package/es/src/gis-map/utils/signal-control-area-controller/{index.d.ts → edit-area.d.ts} +2 -14
- package/es/src/gis-map/utils/signal-control-area-controller/{index.mjs → edit-area.mjs} +40 -162
- package/es/src/gis-map/utils/signal-control-area-controller/show-area.d.ts +68 -0
- package/es/src/gis-map/utils/signal-control-area-controller/show-area.mjs +806 -0
- package/es/src/types/index.d.ts +4 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/src/gis-map/gis-map.vue.d.ts +22 -14
- package/lib/src/gis-map/gis-map.vue.js +1 -1
- package/lib/src/gis-map/index.d.ts +19 -12
- package/lib/src/gis-map/utils/queue-length.js +1 -1
- package/lib/src/gis-map/utils/signal-control-area-controller/district-controller.d.ts +7 -3
- package/lib/src/gis-map/utils/signal-control-area-controller/district-controller.js +1 -1
- package/lib/src/gis-map/utils/signal-control-area-controller/{index.d.ts → edit-area.d.ts} +2 -14
- package/lib/src/gis-map/utils/signal-control-area-controller/edit-area.js +1 -0
- package/lib/src/gis-map/utils/signal-control-area-controller/show-area.d.ts +68 -0
- package/lib/src/gis-map/utils/signal-control-area-controller/show-area.js +1 -0
- package/lib/src/gis-map/utils/sketchView.js +1 -1
- package/lib/src/types/index.d.ts +4 -0
- package/package.json +2 -1
- package/lib/src/gis-map/utils/signal-control-area-controller/index.js +0 -1
package/es/index.d.ts
CHANGED
package/es/index.mjs
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { default as
|
|
1
|
+
import "core-js/stable/array/at";
|
|
2
|
+
import { default as l } from "./src/gis-map/utils/index.mjs";
|
|
3
|
+
import * as s from "./src/index.mjs";
|
|
3
4
|
import { GisMap as c } from "./src/gis-map/index.mjs";
|
|
4
|
-
const
|
|
5
|
-
install: (
|
|
6
|
-
for (const i in
|
|
7
|
-
|
|
8
|
-
const { gisviewerAssetsRoot:
|
|
9
|
-
|
|
5
|
+
const a = {
|
|
6
|
+
install: (o, t) => {
|
|
7
|
+
for (const i in s)
|
|
8
|
+
o.use(s[i]);
|
|
9
|
+
const { gisviewerAssetsRoot: e } = t;
|
|
10
|
+
o.config.globalProperties.$gisviewerAssetsRoot = e || "";
|
|
10
11
|
}
|
|
11
12
|
};
|
|
12
13
|
export {
|
|
13
14
|
c as GisMap,
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
l as MapUtils,
|
|
16
|
+
a as default
|
|
16
17
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import MapView from '@arcgis/core/views/MapView';
|
|
2
2
|
import SceneView from '@arcgis/core/views/SceneView';
|
|
3
|
-
import { IEditSignalControlAreaParams, IFindSumoParams, ILaneNumberParams, ILayerVisibleParams, ILookAtParams, IMaskParam, IOverlayParam, IQueueLengthParams, ISetMapCameraParams, ISetMapCenterParams, IShowGreenWaveBandParams, IShowOpenDriveFromFileParams, IShowSignalControlAreaParams, ISignalCountdownProps, ISplitOpenDriveLaneParams, IStartCrossBufferParam, IToggleTrafficInfoParams, IUnselectSumoParams } from '../types';
|
|
3
|
+
import { IEditSignalControlAreaParams, IFindSignalControlAreaParams, IFindSumoParams, ILaneNumberParams, ILayerVisibleParams, ILookAtParams, IMaskParam, IOverlayParam, IQueueLengthParams, ISetMapCameraParams, ISetMapCenterParams, IShowGreenWaveBandParams, IShowOpenDriveFromFileParams, IShowSignalControlAreaParams, ISignalCountdownProps, ISplitOpenDriveLaneParams, IStartCrossBufferParam, IToggleTrafficInfoParams, IUnselectSumoParams } from '../types';
|
|
4
4
|
import GreenWaveBandController from './utils/green-wave-band-controller';
|
|
5
5
|
import HoloFlow from './utils/holo-flow';
|
|
6
6
|
import MapInitializer from './utils/map-initializer';
|
|
@@ -8,7 +8,8 @@ import OpenDriveRenderer from './utils/open-drive-renderer';
|
|
|
8
8
|
import Overlay from './utils/overlay';
|
|
9
9
|
import QueueLength from './utils/queue-length';
|
|
10
10
|
import RoadConfigTool from './utils/road-config-tool';
|
|
11
|
-
import
|
|
11
|
+
import EditSignalArea from './utils/signal-control-area-controller/edit-area';
|
|
12
|
+
import ShowSignalArea from './utils/signal-control-area-controller/show-area';
|
|
12
13
|
import TrafficFlow from './utils/traffic-flow';
|
|
13
14
|
declare const _sfc_main: import("vue").DefineComponent<{
|
|
14
15
|
config: {
|
|
@@ -29,7 +30,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
29
30
|
overlay: Overlay;
|
|
30
31
|
queueLength: QueueLength;
|
|
31
32
|
openDriveRenderer: OpenDriveRenderer;
|
|
32
|
-
|
|
33
|
+
editSignalAreaController: EditSignalArea;
|
|
34
|
+
showSignalAreaController: ShowSignalArea;
|
|
33
35
|
greenWaveBandController: GreenWaveBandController;
|
|
34
36
|
showLogDiv: import("vue").Ref<boolean>;
|
|
35
37
|
appDataStore: import("pinia").Store<"appData", {
|
|
@@ -117,15 +119,21 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
117
119
|
status: number;
|
|
118
120
|
message: string;
|
|
119
121
|
}>;
|
|
120
|
-
showSignalControlArea: (params: IShowSignalControlAreaParams) => import("../types").IResult
|
|
121
|
-
clearSignalControlArea: () =>
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}
|
|
128
|
-
resetHighlightSignalControlArea: () =>
|
|
122
|
+
showSignalControlArea: (params: IShowSignalControlAreaParams) => Promise<import("../types").IResult>;
|
|
123
|
+
clearSignalControlArea: () => Promise<import("../types").IResult>;
|
|
124
|
+
setSignalControlAreaVisibility: (params: ILayerVisibleParams) => import("../types").IResult;
|
|
125
|
+
locateSignalControlArea: (params: IFindSignalControlAreaParams) => Promise<import("../types").IResult>;
|
|
126
|
+
highlightSignalControlArea: (params: IFindSignalControlAreaParams) => Promise<{
|
|
127
|
+
status: number;
|
|
128
|
+
message: string;
|
|
129
|
+
}>;
|
|
130
|
+
resetHighlightSignalControlArea: () => Promise<{
|
|
131
|
+
status: number;
|
|
132
|
+
message: string;
|
|
133
|
+
}> | {
|
|
134
|
+
status: number;
|
|
135
|
+
message: string;
|
|
136
|
+
};
|
|
129
137
|
showSubSignalControlArea: (params: any) => import("../types").IResult;
|
|
130
138
|
editSubSignalControlArea: (params: IEditSignalControlAreaParams) => Promise<import("../types").IResult> | {
|
|
131
139
|
status: number;
|
|
@@ -137,10 +145,10 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
137
145
|
};
|
|
138
146
|
selectSubSignalControlAreaCross: (id: string) => import("../types").IResult;
|
|
139
147
|
unselectSubSignalControlAreaCross: (id: string) => import("../types").IResult;
|
|
140
|
-
changeSubSignalControlAreaBorderVisibility: (params: any) =>
|
|
148
|
+
changeSubSignalControlAreaBorderVisibility: (params: any) => {
|
|
141
149
|
status: number;
|
|
142
150
|
message: string;
|
|
143
|
-
};
|
|
151
|
+
} | undefined;
|
|
144
152
|
addGreenWaveBand: (params: IEditSignalControlAreaParams) => void;
|
|
145
153
|
stopAddGreenWaveBand: () => {
|
|
146
154
|
status: number;
|
|
@@ -1,75 +1,76 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import D, { registerStore as
|
|
1
|
+
import { defineComponent as Ze, ref as k, reactive as $e, onMounted as qe, getCurrentInstance as Ke, onUnmounted as Ue, computed as Je, openBlock as O, createElementBlock as L, createElementVNode as f, withDirectives as Re, vShow as Xe, Fragment as Ye, renderList as Fe, createBlock as et } from "vue";
|
|
2
|
+
import D, { registerStore as tt } from "./stores/index.mjs";
|
|
3
3
|
import "./style/index.css";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
4
|
+
import at from "./utils/detect-gpu.mjs";
|
|
5
|
+
import T from "./utils/green-wave-band-controller/index.mjs";
|
|
6
6
|
import nt from "./utils/holo-flow/index.mjs";
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
7
|
+
import rt from "./utils/holo-flow/signal-countdown-panel.vue.mjs";
|
|
8
|
+
import st from "./utils/map-initializer.mjs";
|
|
9
|
+
import I from "./utils/open-drive-renderer/index.mjs";
|
|
10
10
|
import B from "./utils/overlay.mjs";
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
|
|
11
|
+
import ot from "./utils/queue-length.mjs";
|
|
12
|
+
import M from "./utils/road-config-tool/index.mjs";
|
|
13
|
+
import it from "./utils/signal-control-area-controller/edit-area.mjs";
|
|
14
|
+
import ct from "./utils/signal-control-area-controller/show-area.mjs";
|
|
15
|
+
import lt from "./utils/traffic-flow.mjs";
|
|
16
|
+
const ut = { class: "gis-viewer" }, mt = { style: { position: "absolute", bottom: "80px", left: "10px", "z-index": "9999" } }, Dt = /* @__PURE__ */ Ze({
|
|
16
17
|
__name: "gis-map",
|
|
17
18
|
props: {
|
|
18
19
|
config: {},
|
|
19
20
|
assetsRoot: {}
|
|
20
21
|
},
|
|
21
22
|
emits: ["mapLoaded", "markerClick", "mapClick"],
|
|
22
|
-
setup(_, { expose: x, emit:
|
|
23
|
-
const S =
|
|
24
|
-
let s,
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
|
|
23
|
+
setup(_, { expose: x, emit: V }) {
|
|
24
|
+
const S = k(null);
|
|
25
|
+
let s, u, c, o, a, n, d, t, l, r, m;
|
|
26
|
+
const y = k(!1);
|
|
27
|
+
tt();
|
|
28
|
+
const H = D.useAppDataStore, b = $e([]);
|
|
29
|
+
at(), qe(async () => {
|
|
29
30
|
if (!S.value)
|
|
30
31
|
return;
|
|
31
32
|
document.addEventListener("keydown", (g) => {
|
|
32
|
-
g.ctrlKey && g.key === "i" && (
|
|
33
|
+
g.ctrlKey && g.key === "i" && (y.value = !y.value);
|
|
33
34
|
});
|
|
34
|
-
const e =
|
|
35
|
-
i.assetsRoot = A.assetsRoot ||
|
|
35
|
+
const e = Ke(), { $gisviewerAssetsRoot: p } = e.appContext.config.globalProperties, i = await (await fetch(A.config)).json();
|
|
36
|
+
i.assetsRoot = A.assetsRoot || p, H.mapConfig = i, u = new st(), s = await u.initialize({
|
|
36
37
|
container: S.value,
|
|
37
38
|
mapConfig: i,
|
|
38
|
-
markerClickCallback: (g,
|
|
39
|
-
|
|
39
|
+
markerClickCallback: (g, w, h, je) => {
|
|
40
|
+
v("markerClick", g, w, h, je);
|
|
40
41
|
},
|
|
41
|
-
mapClickCallback: (g,
|
|
42
|
-
|
|
42
|
+
mapClickCallback: (g, w, h) => {
|
|
43
|
+
v("mapClick", g, w, h);
|
|
43
44
|
}
|
|
44
|
-
}), a = new nt(s,
|
|
45
|
-
}),
|
|
46
|
-
|
|
45
|
+
}), a = new nt(s, b), await a.init(), v("mapLoaded");
|
|
46
|
+
}), Ue(() => {
|
|
47
|
+
r == null || r.clearSignalControlArea(), t == null || t.clearOpenDrive(), a.clearHoloTrace(), a.clearHoloSignal(), o == null || o.disconnectTrafficFlow();
|
|
47
48
|
});
|
|
48
|
-
const G =
|
|
49
|
+
const G = Je(() => s), P = () => {
|
|
49
50
|
const e = D.useAppDataStore;
|
|
50
51
|
e.saveTrackLog = !0;
|
|
51
52
|
}, W = () => {
|
|
52
53
|
a.downloadTrackLog();
|
|
53
54
|
}, N = () => {
|
|
54
|
-
|
|
55
|
+
C("vehicleId");
|
|
55
56
|
}, z = () => {
|
|
56
|
-
|
|
57
|
-
}, E = async (e) => await
|
|
58
|
-
|
|
57
|
+
C("plateNumber");
|
|
58
|
+
}, E = async (e) => await u.setMapCenter(e), Q = async (e) => await u.setMapCamera(e), j = async (e) => await u.lookAt(e), Z = (e) => u.setLayerVisibility(e), $ = (e, p) => u.requestCoordinateTransform(e, p), q = (e) => {
|
|
59
|
+
u.cancelCoordinateTransform(e);
|
|
59
60
|
}, K = (e) => {
|
|
60
|
-
|
|
61
|
-
}, U = (e) => (c || (c = new
|
|
61
|
+
u.setMapZoomRange(e);
|
|
62
|
+
}, U = (e) => (c || (c = new M(s)), c.showLaneNumber(e)), J = () => {
|
|
62
63
|
c == null || c.clearLaneNumber();
|
|
63
|
-
}, R = async (e) => (c || (c = new
|
|
64
|
-
}, F = async (e,
|
|
65
|
-
o || (o = new
|
|
64
|
+
}, R = async (e) => (c || (c = new M(s)), await c.initializeSearch(e)), X = async () => c == null ? void 0 : c.calCrossIndicatorArea(), Y = async () => {
|
|
65
|
+
}, F = async (e, p) => {
|
|
66
|
+
o || (o = new lt(s)), o.connectTrafficFlow(e, p);
|
|
66
67
|
}, ee = () => {
|
|
67
68
|
o == null || o.disconnectTrafficFlow();
|
|
68
69
|
}, te = async (e) => {
|
|
69
70
|
a.handleVehicleTraceData(e);
|
|
70
|
-
},
|
|
71
|
+
}, ae = () => {
|
|
71
72
|
a.clearHoloTrace();
|
|
72
|
-
},
|
|
73
|
+
}, ne = (e) => {
|
|
73
74
|
a.setInterpolate(e);
|
|
74
75
|
}, re = async (e) => {
|
|
75
76
|
await a.handleSignalData(e);
|
|
@@ -81,46 +82,45 @@ const it = { class: "gis-viewer" }, ct = { style: { position: "absolute", bottom
|
|
|
81
82
|
a == null || a.togglePause(e);
|
|
82
83
|
}, ce = (e) => {
|
|
83
84
|
o == null || o.toggleTrafficObject(e), a == null || a.toggleTrafficObject(e);
|
|
84
|
-
},
|
|
85
|
+
}, C = (e) => {
|
|
85
86
|
a == null || a.updatePanelContent(e);
|
|
86
|
-
}, le = async (e) => (
|
|
87
|
-
|
|
88
|
-
},
|
|
89
|
-
|
|
90
|
-
},
|
|
91
|
-
|
|
92
|
-
},
|
|
93
|
-
|
|
94
|
-
},
|
|
87
|
+
}, le = async (e) => (n || (n = new B(s)), n.addOverlays(e)), ue = (e) => (n || (n = new B(s)), n.addMask(e)), me = () => {
|
|
88
|
+
n == null || n.removeMask();
|
|
89
|
+
}, pe = (e) => n == null ? void 0 : n.removeOverlaysByType(e), ge = (e) => n == null ? void 0 : n.removeOverlaysById(e), de = () => n == null ? void 0 : n.removeAllOverlays(), fe = () => {
|
|
90
|
+
n == null || n.showAllOverlays();
|
|
91
|
+
}, Se = (e) => {
|
|
92
|
+
d || (d = new ot(s)), d.updateQueueLength(e);
|
|
93
|
+
}, ye = () => {
|
|
94
|
+
d == null || d.removeQueueLength();
|
|
95
|
+
}, Ce = async (e, p) => (t || (t = new I(s)), await t.showOpenDriveFromServer(e, p)), ve = async (e) => (t || (t = new I(s)), await t.clearOpenDrive(), await t.showOpenDriveFromFile(e)), we = async () => await (t == null ? void 0 : t.clearOpenDrive()), he = async (e) => t ? await (t == null ? void 0 : t.findSumo(e)) : {
|
|
95
96
|
status: -1,
|
|
96
97
|
message: "未加载OpenDrive地图"
|
|
97
98
|
}, Oe = async (e) => t ? t.selectSumo(e) : {
|
|
98
99
|
status: -1,
|
|
99
100
|
message: "未加载OpenDrive地图"
|
|
100
|
-
},
|
|
101
|
+
}, be = async (e) => t ? t.unselectSumo(e) : {
|
|
101
102
|
status: -1,
|
|
102
103
|
message: "未加载OpenDrive地图"
|
|
103
|
-
},
|
|
104
|
+
}, Ae = async (e) => t ? await t.geometrySearch(e) : {
|
|
104
105
|
status: -1,
|
|
105
106
|
message: "未加载OpenDrive地图"
|
|
106
107
|
}, ke = async (e) => t ? await t.getSumoInfo(e) : {
|
|
107
108
|
status: -1,
|
|
108
109
|
message: "未加载OpenDrive地图"
|
|
109
|
-
},
|
|
110
|
+
}, Le = async (e) => t ? await (t == null ? void 0 : t.splitLane(e)) : {
|
|
110
111
|
status: -1,
|
|
111
112
|
message: "未加载OpenDrive地图"
|
|
112
|
-
},
|
|
113
|
+
}, De = async () => t ? t == null ? void 0 : t.clearSplitLane() : {
|
|
113
114
|
status: -1,
|
|
114
115
|
message: "未加载OpenDrive地图"
|
|
115
|
-
}, Te = (e) => (
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
if (!u)
|
|
116
|
+
}, Te = async (e) => (r || (r = new ct(s)), await r.showSignalControlArea(e)), Ie = async () => await (r == null ? void 0 : r.clearSignalControlArea()), Be = (e) => r == null ? void 0 : r.setLayerVisibility(e), Me = async (e) => r ? await (r == null ? void 0 : r.locateSignalControlArea(e)) : { status: -1, message: "未加载信号控制区" }, _e = async (e) => r ? await r.highlightSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, xe = () => r ? r.resetHighlight() : { status: -1, message: "未加载信号控制区" }, Ve = (e) => (l || (l = new it(s)), l.showSubSignalControlArea(e)), He = (e) => l ? l.editSubSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, Ge = () => l ? l.stopEditSubSignalControlArea() : { status: -1, message: "未加载信号控制区" }, Pe = (e) => l ? l.selectSubSignalControlAreaCross(e) : { status: -1, message: "未加载信号控制区" }, We = (e) => l ? l.unselectSubSignalControlAreaCross(e) : { status: -1, message: "未加载信号控制区" }, Ne = (e) => {
|
|
117
|
+
if (!l)
|
|
118
|
+
return { status: -1, message: "未加载信号控制区" };
|
|
119
|
+
}, ze = (e) => (m || (m = new T(s)), m.addGreenWaveBand(e)), Ee = () => {
|
|
120
|
+
if (!m)
|
|
121
121
|
return { status: -1, message: "未加载绿波带" };
|
|
122
|
-
|
|
123
|
-
},
|
|
122
|
+
m.stopAddGreenWaveBand();
|
|
123
|
+
}, Qe = async (e) => (m || (m = new T(s)), await m.showGreenWaveBand(e)), A = _, v = V;
|
|
124
124
|
return x({
|
|
125
125
|
mapViewer: G,
|
|
126
126
|
setLayerVisibility: Z,
|
|
@@ -133,9 +133,9 @@ const it = { class: "gis-viewer" }, ct = { style: { position: "absolute", bottom
|
|
|
133
133
|
addOverlays: le,
|
|
134
134
|
addMask: ue,
|
|
135
135
|
removeMask: me,
|
|
136
|
-
showAllOverlays:
|
|
137
|
-
removeOverlaysByType:
|
|
138
|
-
removeOverlaysById:
|
|
136
|
+
showAllOverlays: fe,
|
|
137
|
+
removeOverlaysByType: pe,
|
|
138
|
+
removeOverlaysById: ge,
|
|
139
139
|
removeAllOverlays: de,
|
|
140
140
|
showLaneNumber: U,
|
|
141
141
|
clearLaneNumber: J,
|
|
@@ -145,65 +145,66 @@ const it = { class: "gis-viewer" }, ct = { style: { position: "absolute", bottom
|
|
|
145
145
|
connectCarFlow: F,
|
|
146
146
|
disconnectCarFlow: ee,
|
|
147
147
|
handleHoloVehicleTraceData: te,
|
|
148
|
-
clearHoloTrace:
|
|
148
|
+
clearHoloTrace: ae,
|
|
149
149
|
handleHoloSignalData: re,
|
|
150
150
|
clearHoloSignal: se,
|
|
151
|
-
setInterpolate:
|
|
151
|
+
setInterpolate: ne,
|
|
152
152
|
toggleTrafficInfo: oe,
|
|
153
153
|
toggleTrafficObject: ce,
|
|
154
|
-
toggleVehicleInfo:
|
|
154
|
+
toggleVehicleInfo: C,
|
|
155
155
|
togglePause: ie,
|
|
156
|
-
updateQueueLength:
|
|
157
|
-
removeQueueLength:
|
|
158
|
-
showOpenDriveFromServer:
|
|
159
|
-
showOpenDriveFromFile:
|
|
160
|
-
clearOpenDrive:
|
|
161
|
-
geometrySearchInOpenDrive:
|
|
156
|
+
updateQueueLength: Se,
|
|
157
|
+
removeQueueLength: ye,
|
|
158
|
+
showOpenDriveFromServer: Ce,
|
|
159
|
+
showOpenDriveFromFile: ve,
|
|
160
|
+
clearOpenDrive: we,
|
|
161
|
+
geometrySearchInOpenDrive: Ae,
|
|
162
162
|
findSumoInOpenDrive: he,
|
|
163
163
|
selectSumoInOpenDrive: Oe,
|
|
164
|
-
unselectSumoInOpenDrive:
|
|
164
|
+
unselectSumoInOpenDrive: be,
|
|
165
165
|
getSumoInfo: ke,
|
|
166
|
-
splitOpenDriveLane:
|
|
167
|
-
clearSplitOpenDriveLane:
|
|
166
|
+
splitOpenDriveLane: Le,
|
|
167
|
+
clearSplitOpenDriveLane: De,
|
|
168
168
|
showSignalControlArea: Te,
|
|
169
|
-
clearSignalControlArea:
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
169
|
+
clearSignalControlArea: Ie,
|
|
170
|
+
setSignalControlAreaVisibility: Be,
|
|
171
|
+
locateSignalControlArea: Me,
|
|
172
|
+
highlightSignalControlArea: _e,
|
|
173
|
+
resetHighlightSignalControlArea: xe,
|
|
174
|
+
showSubSignalControlArea: Ve,
|
|
174
175
|
editSubSignalControlArea: He,
|
|
175
|
-
stopEditSubSignalControlArea:
|
|
176
|
-
selectSubSignalControlAreaCross:
|
|
177
|
-
unselectSubSignalControlAreaCross:
|
|
178
|
-
changeSubSignalControlAreaBorderVisibility:
|
|
179
|
-
addGreenWaveBand:
|
|
180
|
-
stopAddGreenWaveBand:
|
|
181
|
-
showGreenWaveBand:
|
|
182
|
-
}), (e,
|
|
183
|
-
|
|
176
|
+
stopEditSubSignalControlArea: Ge,
|
|
177
|
+
selectSubSignalControlAreaCross: Pe,
|
|
178
|
+
unselectSubSignalControlAreaCross: We,
|
|
179
|
+
changeSubSignalControlAreaBorderVisibility: Ne,
|
|
180
|
+
addGreenWaveBand: ze,
|
|
181
|
+
stopAddGreenWaveBand: Ee,
|
|
182
|
+
showGreenWaveBand: Qe
|
|
183
|
+
}), (e, p) => (O(), L("div", ut, [
|
|
184
|
+
f("div", {
|
|
184
185
|
class: "gis-viewer-main",
|
|
185
186
|
ref_key: "mapContainer",
|
|
186
187
|
ref: S
|
|
187
188
|
}, [
|
|
188
|
-
|
|
189
|
-
|
|
189
|
+
Re(f("div", mt, [
|
|
190
|
+
f("button", {
|
|
190
191
|
style: { "margin-right": "10px" },
|
|
191
192
|
onClick: P
|
|
192
193
|
}, " 开始记录 "),
|
|
193
|
-
|
|
194
|
+
f("button", {
|
|
194
195
|
style: { "margin-right": "10px" },
|
|
195
196
|
onClick: W
|
|
196
197
|
}, " 下载日志 "),
|
|
197
|
-
|
|
198
|
+
f("button", {
|
|
198
199
|
style: { "margin-right": "10px" },
|
|
199
200
|
onClick: N
|
|
200
201
|
}, " 显示车辆id "),
|
|
201
|
-
|
|
202
|
+
f("button", { onClick: z }, "显示车辆号牌")
|
|
202
203
|
], 512), [
|
|
203
|
-
[
|
|
204
|
+
[Xe, y.value]
|
|
204
205
|
])
|
|
205
206
|
], 512),
|
|
206
|
-
(
|
|
207
|
+
(O(!0), L(Ye, null, Fe(b, (i, g) => (O(), et(rt, {
|
|
207
208
|
key: g,
|
|
208
209
|
"display-mode": i.displayMode,
|
|
209
210
|
"road-id": i.crossId,
|
|
@@ -219,5 +220,5 @@ const it = { class: "gis-viewer" }, ct = { style: { position: "absolute", bottom
|
|
|
219
220
|
}
|
|
220
221
|
});
|
|
221
222
|
export {
|
|
222
|
-
|
|
223
|
+
Dt as default
|
|
223
224
|
};
|
|
@@ -17,7 +17,8 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
|
|
|
17
17
|
overlay: import("./utils/overlay").default;
|
|
18
18
|
queueLength: import("./utils/queue-length").default;
|
|
19
19
|
openDriveRenderer: import("./utils/open-drive-renderer").default;
|
|
20
|
-
|
|
20
|
+
editSignalAreaController: import("./utils/signal-control-area-controller/edit-area").default;
|
|
21
|
+
showSignalAreaController: import("./utils/signal-control-area-controller/show-area").default;
|
|
21
22
|
greenWaveBandController: import("./utils/green-wave-band-controller").default;
|
|
22
23
|
showLogDiv: import("vue").Ref<boolean>;
|
|
23
24
|
appDataStore: import("pinia").Store<"appData", {
|
|
@@ -105,15 +106,21 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
|
|
|
105
106
|
status: number;
|
|
106
107
|
message: string;
|
|
107
108
|
}>;
|
|
108
|
-
showSignalControlArea: (params: import("../types").IShowSignalControlAreaParams) => import("../types").IResult
|
|
109
|
-
clearSignalControlArea: () =>
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
resetHighlightSignalControlArea: () =>
|
|
109
|
+
showSignalControlArea: (params: import("../types").IShowSignalControlAreaParams) => Promise<import("../types").IResult>;
|
|
110
|
+
clearSignalControlArea: () => Promise<import("../types").IResult>;
|
|
111
|
+
setSignalControlAreaVisibility: (params: import("../types").ILayerVisibleParams) => import("../types").IResult;
|
|
112
|
+
locateSignalControlArea: (params: import("../types").IFindSignalControlAreaParams) => Promise<import("../types").IResult>;
|
|
113
|
+
highlightSignalControlArea: (params: import("../types").IFindSignalControlAreaParams) => Promise<{
|
|
114
|
+
status: number;
|
|
115
|
+
message: string;
|
|
116
|
+
}>;
|
|
117
|
+
resetHighlightSignalControlArea: () => Promise<{
|
|
118
|
+
status: number;
|
|
119
|
+
message: string;
|
|
120
|
+
}> | {
|
|
121
|
+
status: number;
|
|
122
|
+
message: string;
|
|
123
|
+
};
|
|
117
124
|
showSubSignalControlArea: (params: any) => import("../types").IResult;
|
|
118
125
|
editSubSignalControlArea: (params: import("../types").IEditSignalControlAreaParams) => Promise<import("../types").IResult> | {
|
|
119
126
|
status: number;
|
|
@@ -125,10 +132,10 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
|
|
|
125
132
|
};
|
|
126
133
|
selectSubSignalControlAreaCross: (id: string) => import("../types").IResult;
|
|
127
134
|
unselectSubSignalControlAreaCross: (id: string) => import("../types").IResult;
|
|
128
|
-
changeSubSignalControlAreaBorderVisibility: (params: any) =>
|
|
135
|
+
changeSubSignalControlAreaBorderVisibility: (params: any) => {
|
|
129
136
|
status: number;
|
|
130
137
|
message: string;
|
|
131
|
-
};
|
|
138
|
+
} | undefined;
|
|
132
139
|
addGreenWaveBand: (params: import("../types").IEditSignalControlAreaParams) => void;
|
|
133
140
|
stopAddGreenWaveBand: () => {
|
|
134
141
|
status: number;
|
|
@@ -13,12 +13,16 @@ export default class DistrictController {
|
|
|
13
13
|
name: string;
|
|
14
14
|
parentId: string;
|
|
15
15
|
parentName: string;
|
|
16
|
-
|
|
16
|
+
signals: ICross[];
|
|
17
17
|
subDistricts: DistrictController[];
|
|
18
18
|
areaColor: number[];
|
|
19
|
-
|
|
19
|
+
signalCount: number;
|
|
20
20
|
subDistrictCount: number;
|
|
21
21
|
constructor(params: any, style: string);
|
|
22
|
-
|
|
22
|
+
/**
|
|
23
|
+
* 获取区控/子区下的所有信号机
|
|
24
|
+
* @returns
|
|
25
|
+
*/
|
|
26
|
+
getAllSignalCoordinates(): number[][];
|
|
23
27
|
}
|
|
24
28
|
export {};
|
|
@@ -1,32 +1,36 @@
|
|
|
1
|
-
import
|
|
1
|
+
import o from "../common-utils.mjs";
|
|
2
2
|
class e {
|
|
3
|
-
constructor(
|
|
4
|
-
this.parentName = "", this.
|
|
5
|
-
for (const
|
|
6
|
-
if (
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
} else if (
|
|
10
|
-
const
|
|
11
|
-
id:
|
|
12
|
-
name:
|
|
13
|
-
parentId:
|
|
14
|
-
latitude: Number(
|
|
15
|
-
longitude: Number(
|
|
16
|
-
signalId:
|
|
17
|
-
nodeId:
|
|
18
|
-
isKey:
|
|
3
|
+
constructor(i, n) {
|
|
4
|
+
this.parentName = "", this.signals = [], this.subDistricts = [], this.signalCount = 0, this.subDistrictCount = 0, this.id = i.name, this.name = i.areaDesc, this.parentId = i.parentId, this.areaColor = n === "alarm" ? [255, 0, 0] : [61, 139, 249];
|
|
5
|
+
for (const t of i.children)
|
|
6
|
+
if (t.children) {
|
|
7
|
+
const s = new e(t, n);
|
|
8
|
+
s.id = t.id, s.name = `SS ${t.name}`, s.parentId = this.id, s.parentName = this.name, this.subDistricts.push(s), this.subDistrictCount++, this.signalCount += s.signalCount;
|
|
9
|
+
} else if (o.isCoordinateValid(t)) {
|
|
10
|
+
const s = {
|
|
11
|
+
id: t.id,
|
|
12
|
+
name: t.name,
|
|
13
|
+
parentId: t.parentId,
|
|
14
|
+
latitude: Number(t.latitude),
|
|
15
|
+
longitude: Number(t.longitude),
|
|
16
|
+
signalId: t.signalId,
|
|
17
|
+
nodeId: t.id,
|
|
18
|
+
isKey: t.isKey === 1
|
|
19
19
|
};
|
|
20
|
-
this.
|
|
20
|
+
this.signals.push(s), this.signalCount++;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
/**
|
|
24
|
+
* 获取区控/子区下的所有信号机
|
|
25
|
+
* @returns
|
|
26
|
+
*/
|
|
27
|
+
getAllSignalCoordinates() {
|
|
28
|
+
const i = [];
|
|
29
|
+
for (const n of this.signals)
|
|
30
|
+
i.push([n.longitude, n.latitude]);
|
|
31
|
+
for (const n of this.subDistricts)
|
|
32
|
+
i.push(...n.getAllSignalCoordinates());
|
|
33
|
+
return i;
|
|
30
34
|
}
|
|
31
35
|
}
|
|
32
36
|
export {
|
|
@@ -1,30 +1,19 @@
|
|
|
1
|
-
import { IEditSignalControlAreaParams, IResult
|
|
1
|
+
import { IEditSignalControlAreaParams, IResult } from '../../../types';
|
|
2
2
|
export default class SignalControlAreaController {
|
|
3
3
|
private view;
|
|
4
4
|
private districtControllerLayer;
|
|
5
5
|
private subDistrictControllerLayer;
|
|
6
6
|
private crossLayer;
|
|
7
|
-
private highlightLayer;
|
|
8
|
-
private scaleWatcher?;
|
|
9
7
|
private viewClickWatcher?;
|
|
10
8
|
private readonly crossScale;
|
|
11
9
|
private hasGpu;
|
|
12
10
|
private openDriveServer;
|
|
13
11
|
constructor(view: __esri.MapView | __esri.SceneView);
|
|
14
12
|
/**
|
|
15
|
-
*
|
|
13
|
+
* 显示单个子区
|
|
16
14
|
* @param params
|
|
17
15
|
* @returns
|
|
18
16
|
*/
|
|
19
|
-
showSignalControlArea(params: IShowSignalControlAreaParams): IResult;
|
|
20
|
-
clearSignalControlArea(): IResult;
|
|
21
|
-
locateSignalControlArea(params: {
|
|
22
|
-
id: string;
|
|
23
|
-
}): Promise<IResult>;
|
|
24
|
-
highlightSignalControlArea(params: {
|
|
25
|
-
id: string;
|
|
26
|
-
}): Promise<IResult>;
|
|
27
|
-
resetHighlight(): IResult;
|
|
28
17
|
showSubSignalControlArea(params: any): IResult;
|
|
29
18
|
/**
|
|
30
19
|
* 点击路口时
|
|
@@ -57,7 +46,6 @@ export default class SignalControlAreaController {
|
|
|
57
46
|
* @param id
|
|
58
47
|
*/
|
|
59
48
|
unselectSubSignalControlAreaCross(id: string): IResult;
|
|
60
|
-
changeSubSignalControlAreaBorderVisibility(visible: boolean): void;
|
|
61
49
|
/**
|
|
62
50
|
* 在区控\子区\路口图层中查找对应的graphic
|
|
63
51
|
* @param id
|