gisviewer-vue3-arcgis 1.0.196 → 1.0.198
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/src/gis-map/gis-map.vue.d.ts +2 -1
- package/es/src/gis-map/gis-map.vue.mjs +143 -141
- package/es/src/gis-map/index.d.ts +1 -0
- package/es/src/gis-map/utils/detect-gpu.d.ts +2 -0
- package/es/src/gis-map/utils/detect-gpu.mjs +44 -0
- package/es/src/gis-map/utils/green-wave-band-controller/index.d.ts +20 -5
- package/es/src/gis-map/utils/green-wave-band-controller/index.mjs +106 -52
- package/es/src/gis-map/utils/holo-flow/trace-renderer-layer.d.ts +0 -4
- package/es/src/gis-map/utils/holo-flow/trace-renderer-layer.mjs +18 -60
- package/es/src/gis-map/utils/signal-control-area-controller/district-controller.mjs +2 -2
- package/es/src/gis-map/utils/signal-control-area-controller/index.d.ts +1 -0
- package/es/src/gis-map/utils/signal-control-area-controller/index.mjs +60 -40
- package/es/src/types/index.d.ts +6 -4
- package/lib/src/gis-map/gis-map.vue.d.ts +2 -1
- package/lib/src/gis-map/gis-map.vue.js +1 -1
- package/lib/src/gis-map/index.d.ts +1 -0
- package/lib/src/gis-map/utils/detect-gpu.d.ts +2 -0
- package/lib/src/gis-map/utils/detect-gpu.js +1 -0
- package/lib/src/gis-map/utils/green-wave-band-controller/index.d.ts +20 -5
- package/lib/src/gis-map/utils/green-wave-band-controller/index.js +1 -1
- package/lib/src/gis-map/utils/holo-flow/trace-renderer-layer.d.ts +0 -4
- package/lib/src/gis-map/utils/holo-flow/trace-renderer-layer.js +1 -1
- 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 +1 -0
- package/lib/src/gis-map/utils/signal-control-area-controller/index.js +1 -1
- package/lib/src/types/index.d.ts +6 -4
- package/package.json +1 -1
|
@@ -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, IShowOpenDriveFromFileParams, IShowSignalControlAreaParams, ISignalCountdownProps, ISplitOpenDriveLaneParams, IStartCrossBufferParam, IToggleTrafficInfoParams, IUnselectSumoParams } from '../types';
|
|
3
|
+
import { IEditSignalControlAreaParams, 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';
|
|
@@ -146,6 +146,7 @@ declare const _sfc_main: import("vue").DefineComponent<{
|
|
|
146
146
|
status: number;
|
|
147
147
|
message: string;
|
|
148
148
|
} | undefined;
|
|
149
|
+
showGreenWaveBand: (params: IShowGreenWaveBandParams) => Promise<void>;
|
|
149
150
|
props: any;
|
|
150
151
|
emit: (event: "mapLoaded" | "markerClick" | "mapClick", ...args: any[]) => void;
|
|
151
152
|
SignalCountdownPanel: import("vue").DefineComponent<{
|
|
@@ -1,208 +1,210 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import D, { registerStore as
|
|
1
|
+
import { defineComponent as je, ref as b, reactive as Ze, onMounted as $e, getCurrentInstance as qe, onUnmounted as Ke, computed as Ue, openBlock as h, createElementBlock as k, createElementVNode as d, withDirectives as Je, vShow as Re, Fragment as Xe, renderList as Ye, createBlock as Fe } from "vue";
|
|
2
|
+
import D, { registerStore as et } from "./stores/index.mjs";
|
|
3
3
|
import "./style/index.css";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import at from "./utils/
|
|
8
|
-
import
|
|
9
|
-
import T from "./utils/
|
|
10
|
-
import
|
|
4
|
+
import tt from "./utils/detect-gpu.mjs";
|
|
5
|
+
import L from "./utils/green-wave-band-controller/index.mjs";
|
|
6
|
+
import nt from "./utils/holo-flow/index.mjs";
|
|
7
|
+
import at from "./utils/holo-flow/signal-countdown-panel.vue.mjs";
|
|
8
|
+
import rt from "./utils/map-initializer.mjs";
|
|
9
|
+
import T from "./utils/open-drive-renderer/index.mjs";
|
|
10
|
+
import B from "./utils/overlay.mjs";
|
|
11
|
+
import st from "./utils/queue-length.mjs";
|
|
11
12
|
import I from "./utils/road-config-tool/index.mjs";
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
const
|
|
13
|
+
import M from "./utils/signal-control-area-controller/index.mjs";
|
|
14
|
+
import ot from "./utils/traffic-flow.mjs";
|
|
15
|
+
const it = { class: "gis-viewer" }, ct = { style: { position: "absolute", bottom: "80px", left: "10px", "z-index": "9999" } }, At = /* @__PURE__ */ je({
|
|
15
16
|
__name: "gis-map",
|
|
16
17
|
props: {
|
|
17
18
|
config: {},
|
|
18
19
|
assetsRoot: {}
|
|
19
20
|
},
|
|
20
21
|
emits: ["mapLoaded", "markerClick", "mapClick"],
|
|
21
|
-
setup(
|
|
22
|
+
setup(_, { expose: x, emit: H }) {
|
|
22
23
|
const S = b(null);
|
|
23
|
-
let
|
|
24
|
+
let s, l, c, o, a, r, p, t, n, u;
|
|
24
25
|
const f = b(!1);
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
26
|
+
et();
|
|
27
|
+
const V = D.useAppDataStore, O = Ze([]);
|
|
28
|
+
tt(), $e(async () => {
|
|
28
29
|
if (!S.value)
|
|
29
30
|
return;
|
|
30
|
-
document.addEventListener("keydown", (
|
|
31
|
-
|
|
31
|
+
document.addEventListener("keydown", (g) => {
|
|
32
|
+
g.ctrlKey && g.key === "i" && (f.value = !f.value);
|
|
32
33
|
});
|
|
33
|
-
const e =
|
|
34
|
-
i.assetsRoot = A.assetsRoot ||
|
|
34
|
+
const e = qe(), { $gisviewerAssetsRoot: m } = e.appContext.config.globalProperties, i = await (await fetch(A.config)).json();
|
|
35
|
+
i.assetsRoot = A.assetsRoot || m, V.mapConfig = i, l = new rt(), s = await l.initialize({
|
|
35
36
|
container: S.value,
|
|
36
37
|
mapConfig: i,
|
|
37
|
-
markerClickCallback: (
|
|
38
|
-
|
|
38
|
+
markerClickCallback: (g, C, y, Qe) => {
|
|
39
|
+
w("markerClick", g, C, y, Qe);
|
|
39
40
|
},
|
|
40
|
-
mapClickCallback: (
|
|
41
|
-
|
|
41
|
+
mapClickCallback: (g, C, y) => {
|
|
42
|
+
w("mapClick", g, C, y);
|
|
42
43
|
}
|
|
43
|
-
}),
|
|
44
|
-
}),
|
|
45
|
-
|
|
44
|
+
}), a = new nt(s, O), await a.init(), w("mapLoaded");
|
|
45
|
+
}), Ke(() => {
|
|
46
|
+
n == null || n.clearSignalControlArea(), t == null || t.clearOpenDrive(), a.clearHoloTrace(), a.clearHoloSignal(), o == null || o.disconnectTrafficFlow();
|
|
46
47
|
});
|
|
47
|
-
const
|
|
48
|
+
const G = Ue(() => s), P = () => {
|
|
48
49
|
const e = D.useAppDataStore;
|
|
49
50
|
e.saveTrackLog = !0;
|
|
51
|
+
}, W = () => {
|
|
52
|
+
a.downloadTrackLog();
|
|
50
53
|
}, N = () => {
|
|
51
|
-
|
|
54
|
+
v("vehicleId");
|
|
52
55
|
}, z = () => {
|
|
53
|
-
|
|
54
|
-
},
|
|
55
|
-
C("plateNumber");
|
|
56
|
-
}, E = async (e) => await l.setMapCenter(e), G = async (e) => await l.setMapCamera(e), Q = async (e) => await l.lookAt(e), j = (e) => l.setLayerVisibility(e), Z = (e, u) => l.requestCoordinateTransform(e, u), $ = (e) => {
|
|
56
|
+
v("plateNumber");
|
|
57
|
+
}, E = async (e) => await l.setMapCenter(e), Q = async (e) => await l.setMapCamera(e), j = async (e) => await l.lookAt(e), Z = (e) => l.setLayerVisibility(e), $ = (e, m) => l.requestCoordinateTransform(e, m), q = (e) => {
|
|
57
58
|
l.cancelCoordinateTransform(e);
|
|
58
|
-
},
|
|
59
|
+
}, K = (e) => {
|
|
59
60
|
l.setMapZoomRange(e);
|
|
60
|
-
},
|
|
61
|
+
}, U = (e) => (c || (c = new I(s)), c.showLaneNumber(e)), J = () => {
|
|
61
62
|
c == null || c.clearLaneNumber();
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
|
|
65
|
-
},
|
|
66
|
-
|
|
67
|
-
},
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
|
|
63
|
+
}, R = async (e) => (c || (c = new I(s)), await c.initializeSearch(e)), X = async () => c == null ? void 0 : c.calCrossIndicatorArea(), Y = async () => {
|
|
64
|
+
}, F = async (e, m) => {
|
|
65
|
+
o || (o = new ot(s)), o.connectTrafficFlow(e, m);
|
|
66
|
+
}, ee = () => {
|
|
67
|
+
o == null || o.disconnectTrafficFlow();
|
|
68
|
+
}, te = async (e) => {
|
|
69
|
+
a.handleVehicleTraceData(e);
|
|
70
|
+
}, ne = () => {
|
|
71
|
+
a.clearHoloTrace();
|
|
71
72
|
}, ae = (e) => {
|
|
72
|
-
|
|
73
|
-
},
|
|
74
|
-
await
|
|
75
|
-
},
|
|
76
|
-
|
|
77
|
-
}, se = (e) => {
|
|
78
|
-
s == null || s.toggleTrafficInfo(e), n == null || n.toggleTrafficInfo(e);
|
|
73
|
+
a.setInterpolate(e);
|
|
74
|
+
}, re = async (e) => {
|
|
75
|
+
await a.handleSignalData(e);
|
|
76
|
+
}, se = () => {
|
|
77
|
+
a.clearHoloSignal();
|
|
79
78
|
}, oe = (e) => {
|
|
80
|
-
|
|
79
|
+
o == null || o.toggleTrafficInfo(e), a == null || a.toggleTrafficInfo(e);
|
|
81
80
|
}, ie = (e) => {
|
|
82
|
-
|
|
83
|
-
},
|
|
84
|
-
|
|
85
|
-
},
|
|
81
|
+
a == null || a.togglePause(e);
|
|
82
|
+
}, ce = (e) => {
|
|
83
|
+
o == null || o.toggleTrafficObject(e), a == null || a.toggleTrafficObject(e);
|
|
84
|
+
}, v = (e) => {
|
|
85
|
+
a == null || a.updatePanelContent(e);
|
|
86
|
+
}, le = async (e) => (r || (r = new B(s)), r.addOverlays(e)), ue = (e) => (r || (r = new B(s)), r.addMask(e)), me = () => {
|
|
86
87
|
r == null || r.removeMask();
|
|
87
|
-
},
|
|
88
|
+
}, ge = (e) => r == null ? void 0 : r.removeOverlaysByType(e), pe = (e) => r == null ? void 0 : r.removeOverlaysById(e), de = () => r == null ? void 0 : r.removeAllOverlays(), Se = () => {
|
|
88
89
|
r == null || r.showAllOverlays();
|
|
89
|
-
},
|
|
90
|
-
|
|
91
|
-
},
|
|
92
|
-
|
|
93
|
-
},
|
|
90
|
+
}, fe = (e) => {
|
|
91
|
+
p || (p = new st(s)), p.updateQueueLength(e);
|
|
92
|
+
}, ve = () => {
|
|
93
|
+
p == null || p.removeQueueLength();
|
|
94
|
+
}, we = async (e, m) => (t || (t = new T(s)), await t.showOpenDriveFromServer(e, m)), Ce = async (e) => (t || (t = new T(s)), await t.clearOpenDrive(), await t.showOpenDriveFromFile(e)), ye = async () => await (t == null ? void 0 : t.clearOpenDrive()), he = async (e) => t ? await (t == null ? void 0 : t.findSumo(e)) : {
|
|
94
95
|
status: -1,
|
|
95
96
|
message: "未加载OpenDrive地图"
|
|
96
|
-
},
|
|
97
|
+
}, Oe = async (e) => t ? t.selectSumo(e) : {
|
|
97
98
|
status: -1,
|
|
98
99
|
message: "未加载OpenDrive地图"
|
|
99
|
-
},
|
|
100
|
+
}, Ae = async (e) => t ? t.unselectSumo(e) : {
|
|
100
101
|
status: -1,
|
|
101
102
|
message: "未加载OpenDrive地图"
|
|
102
|
-
},
|
|
103
|
+
}, be = async (e) => t ? await t.geometrySearch(e) : {
|
|
103
104
|
status: -1,
|
|
104
105
|
message: "未加载OpenDrive地图"
|
|
105
|
-
},
|
|
106
|
+
}, ke = async (e) => t ? await t.getSumoInfo(e) : {
|
|
106
107
|
status: -1,
|
|
107
108
|
message: "未加载OpenDrive地图"
|
|
108
|
-
},
|
|
109
|
+
}, De = async (e) => t ? await (t == null ? void 0 : t.splitLane(e)) : {
|
|
109
110
|
status: -1,
|
|
110
111
|
message: "未加载OpenDrive地图"
|
|
111
|
-
},
|
|
112
|
+
}, Le = async () => t ? t == null ? void 0 : t.clearSplitLane() : {
|
|
112
113
|
status: -1,
|
|
113
114
|
message: "未加载OpenDrive地图"
|
|
114
|
-
},
|
|
115
|
-
|
|
116
|
-
}, Ie = async (e) =>
|
|
115
|
+
}, Te = (e) => (n || (n = new M(s)), n.showSignalControlArea(e)), Be = () => {
|
|
116
|
+
n == null || n.clearSignalControlArea();
|
|
117
|
+
}, Ie = async (e) => n ? await n.locateSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, Me = async (e) => n ? await n.highlightSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, _e = () => n ? n.resetHighlight() : { status: -1, message: "未加载信号控制区" }, xe = (e) => (n || (n = new M(s)), n.showSubSignalControlArea(e)), He = (e) => n ? n.editSubSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, Ve = () => n ? n.stopEditSubSignalControlArea() : { status: -1, message: "未加载信号控制区" }, Ge = (e) => n ? n.selectSubSignalControlAreaCross(e) : { status: -1, message: "未加载信号控制区" }, Pe = (e) => n ? n.unselectSubSignalControlAreaCross(e) : { status: -1, message: "未加载信号控制区" }, We = (e) => n ? n.changeSubSignalControlAreaBorderVisibility(
|
|
117
118
|
e
|
|
118
|
-
) : { status: -1, message: "未加载信号控制区" },
|
|
119
|
-
if (!
|
|
119
|
+
) : { status: -1, message: "未加载信号控制区" }, Ne = (e) => (u || (u = new L(s)), u.addGreenWaveBand(e)), ze = () => {
|
|
120
|
+
if (!u)
|
|
120
121
|
return { status: -1, message: "未加载绿波带" };
|
|
121
|
-
|
|
122
|
-
}, A =
|
|
123
|
-
return
|
|
124
|
-
mapViewer:
|
|
125
|
-
setLayerVisibility:
|
|
122
|
+
u.stopAddGreenWaveBand();
|
|
123
|
+
}, Ee = async (e) => (u || (u = new L(s)), await u.showGreenWaveBand(e)), A = _, w = H;
|
|
124
|
+
return x({
|
|
125
|
+
mapViewer: G,
|
|
126
|
+
setLayerVisibility: Z,
|
|
126
127
|
setMapCenter: E,
|
|
127
|
-
lookAt:
|
|
128
|
-
setMapCamera:
|
|
129
|
-
setMapZoomRange:
|
|
130
|
-
requestCoordinateTransform:
|
|
131
|
-
cancelCoordinateTransform:
|
|
132
|
-
addOverlays:
|
|
133
|
-
addMask:
|
|
134
|
-
removeMask:
|
|
135
|
-
showAllOverlays:
|
|
136
|
-
removeOverlaysByType:
|
|
137
|
-
removeOverlaysById:
|
|
138
|
-
removeAllOverlays:
|
|
139
|
-
showLaneNumber:
|
|
140
|
-
clearLaneNumber:
|
|
141
|
-
initializeAreaTool:
|
|
142
|
-
calCrossIndicatorArea:
|
|
143
|
-
calRoadIndicatorArea:
|
|
144
|
-
connectCarFlow:
|
|
145
|
-
disconnectCarFlow:
|
|
146
|
-
handleHoloVehicleTraceData:
|
|
147
|
-
clearHoloTrace:
|
|
148
|
-
handleHoloSignalData:
|
|
149
|
-
clearHoloSignal:
|
|
128
|
+
lookAt: j,
|
|
129
|
+
setMapCamera: Q,
|
|
130
|
+
setMapZoomRange: K,
|
|
131
|
+
requestCoordinateTransform: $,
|
|
132
|
+
cancelCoordinateTransform: q,
|
|
133
|
+
addOverlays: le,
|
|
134
|
+
addMask: ue,
|
|
135
|
+
removeMask: me,
|
|
136
|
+
showAllOverlays: Se,
|
|
137
|
+
removeOverlaysByType: ge,
|
|
138
|
+
removeOverlaysById: pe,
|
|
139
|
+
removeAllOverlays: de,
|
|
140
|
+
showLaneNumber: U,
|
|
141
|
+
clearLaneNumber: J,
|
|
142
|
+
initializeAreaTool: R,
|
|
143
|
+
calCrossIndicatorArea: X,
|
|
144
|
+
calRoadIndicatorArea: Y,
|
|
145
|
+
connectCarFlow: F,
|
|
146
|
+
disconnectCarFlow: ee,
|
|
147
|
+
handleHoloVehicleTraceData: te,
|
|
148
|
+
clearHoloTrace: ne,
|
|
149
|
+
handleHoloSignalData: re,
|
|
150
|
+
clearHoloSignal: se,
|
|
150
151
|
setInterpolate: ae,
|
|
151
|
-
toggleTrafficInfo:
|
|
152
|
-
toggleTrafficObject:
|
|
153
|
-
toggleVehicleInfo:
|
|
154
|
-
togglePause:
|
|
155
|
-
updateQueueLength:
|
|
156
|
-
removeQueueLength:
|
|
157
|
-
showOpenDriveFromServer:
|
|
158
|
-
showOpenDriveFromFile:
|
|
152
|
+
toggleTrafficInfo: oe,
|
|
153
|
+
toggleTrafficObject: ce,
|
|
154
|
+
toggleVehicleInfo: v,
|
|
155
|
+
togglePause: ie,
|
|
156
|
+
updateQueueLength: fe,
|
|
157
|
+
removeQueueLength: ve,
|
|
158
|
+
showOpenDriveFromServer: we,
|
|
159
|
+
showOpenDriveFromFile: Ce,
|
|
159
160
|
clearOpenDrive: ye,
|
|
160
|
-
geometrySearchInOpenDrive:
|
|
161
|
-
findSumoInOpenDrive:
|
|
162
|
-
selectSumoInOpenDrive:
|
|
163
|
-
unselectSumoInOpenDrive:
|
|
164
|
-
getSumoInfo:
|
|
165
|
-
splitOpenDriveLane:
|
|
166
|
-
clearSplitOpenDriveLane:
|
|
167
|
-
showSignalControlArea:
|
|
168
|
-
clearSignalControlArea:
|
|
161
|
+
geometrySearchInOpenDrive: be,
|
|
162
|
+
findSumoInOpenDrive: he,
|
|
163
|
+
selectSumoInOpenDrive: Oe,
|
|
164
|
+
unselectSumoInOpenDrive: Ae,
|
|
165
|
+
getSumoInfo: ke,
|
|
166
|
+
splitOpenDriveLane: De,
|
|
167
|
+
clearSplitOpenDriveLane: Le,
|
|
168
|
+
showSignalControlArea: Te,
|
|
169
|
+
clearSignalControlArea: Be,
|
|
169
170
|
locateSignalControlArea: Ie,
|
|
170
|
-
highlightSignalControlArea:
|
|
171
|
-
resetHighlightSignalControlArea:
|
|
172
|
-
showSubSignalControlArea:
|
|
173
|
-
editSubSignalControlArea:
|
|
174
|
-
stopEditSubSignalControlArea:
|
|
175
|
-
selectSubSignalControlAreaCross:
|
|
171
|
+
highlightSignalControlArea: Me,
|
|
172
|
+
resetHighlightSignalControlArea: _e,
|
|
173
|
+
showSubSignalControlArea: xe,
|
|
174
|
+
editSubSignalControlArea: He,
|
|
175
|
+
stopEditSubSignalControlArea: Ve,
|
|
176
|
+
selectSubSignalControlAreaCross: Ge,
|
|
176
177
|
unselectSubSignalControlAreaCross: Pe,
|
|
177
|
-
changeSubSignalControlAreaBorderVisibility:
|
|
178
|
-
addGreenWaveBand:
|
|
179
|
-
stopAddGreenWaveBand:
|
|
180
|
-
|
|
181
|
-
|
|
178
|
+
changeSubSignalControlAreaBorderVisibility: We,
|
|
179
|
+
addGreenWaveBand: Ne,
|
|
180
|
+
stopAddGreenWaveBand: ze,
|
|
181
|
+
showGreenWaveBand: Ee
|
|
182
|
+
}), (e, m) => (h(), k("div", it, [
|
|
183
|
+
d("div", {
|
|
182
184
|
class: "gis-viewer-main",
|
|
183
185
|
ref_key: "mapContainer",
|
|
184
186
|
ref: S
|
|
185
187
|
}, [
|
|
186
|
-
|
|
187
|
-
|
|
188
|
+
Je(d("div", ct, [
|
|
189
|
+
d("button", {
|
|
188
190
|
style: { "margin-right": "10px" },
|
|
189
191
|
onClick: P
|
|
190
192
|
}, " 开始记录 "),
|
|
191
|
-
|
|
193
|
+
d("button", {
|
|
192
194
|
style: { "margin-right": "10px" },
|
|
193
|
-
onClick:
|
|
195
|
+
onClick: W
|
|
194
196
|
}, " 下载日志 "),
|
|
195
|
-
|
|
197
|
+
d("button", {
|
|
196
198
|
style: { "margin-right": "10px" },
|
|
197
|
-
onClick:
|
|
199
|
+
onClick: N
|
|
198
200
|
}, " 显示车辆id "),
|
|
199
|
-
|
|
201
|
+
d("button", { onClick: z }, "显示车辆号牌")
|
|
200
202
|
], 512), [
|
|
201
|
-
[
|
|
203
|
+
[Re, f.value]
|
|
202
204
|
])
|
|
203
205
|
], 512),
|
|
204
|
-
(h(!0), k(
|
|
205
|
-
key:
|
|
206
|
+
(h(!0), k(Xe, null, Ye(O, (i, g) => (h(), Fe(at, {
|
|
207
|
+
key: g,
|
|
206
208
|
"display-mode": i.displayMode,
|
|
207
209
|
"road-id": i.crossId,
|
|
208
210
|
"cross-id": i.roadId,
|
|
@@ -217,5 +219,5 @@ const st = { class: "gis-viewer" }, ot = { style: { position: "absolute", bottom
|
|
|
217
219
|
}
|
|
218
220
|
});
|
|
219
221
|
export {
|
|
220
|
-
|
|
222
|
+
At as default
|
|
221
223
|
};
|
|
@@ -134,6 +134,7 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
|
|
|
134
134
|
status: number;
|
|
135
135
|
message: string;
|
|
136
136
|
} | undefined;
|
|
137
|
+
showGreenWaveBand: (params: import("../types").IShowGreenWaveBandParams) => Promise<void>;
|
|
137
138
|
props: any;
|
|
138
139
|
emit: (event: "mapLoaded" | "markerClick" | "mapClick", ...args: any[]) => void;
|
|
139
140
|
SignalCountdownPanel: import("vue").DefineComponent<{
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
const s = (e) => {
|
|
2
|
+
const r = [], o = e.split("");
|
|
3
|
+
for (let t = 0; t < o.length; t++)
|
|
4
|
+
if (o[t] === "(")
|
|
5
|
+
r.push(t);
|
|
6
|
+
else if (o[t] === ")") {
|
|
7
|
+
const n = r.pop();
|
|
8
|
+
n !== void 0 && (o.splice(n, t - n + 1), t = n - 1);
|
|
9
|
+
}
|
|
10
|
+
return o.join("");
|
|
11
|
+
}, i = (e) => s(e).replace(/\/PCIe\/SSE2/g, "").replace(/\s+/g, " ").trim(), c = () => {
|
|
12
|
+
try {
|
|
13
|
+
const e = document.createElement("canvas"), r = e.getContext("webgl") || e.getContext("experimental-webgl");
|
|
14
|
+
if (!r)
|
|
15
|
+
return "Unknown";
|
|
16
|
+
const o = r.getExtension("WEBGL_debug_renderer_info");
|
|
17
|
+
return o && r.getParameter(o.UNMASKED_RENDERER_WEBGL) || "Unknown";
|
|
18
|
+
} catch {
|
|
19
|
+
return "Unknown";
|
|
20
|
+
}
|
|
21
|
+
}, l = () => {
|
|
22
|
+
const e = c();
|
|
23
|
+
try {
|
|
24
|
+
if (/, or similar$/.test(e) || /SwiftShader/.test(e))
|
|
25
|
+
return "Unknown";
|
|
26
|
+
if (/^ANGLE/.test(e)) {
|
|
27
|
+
const r = e.match(/\((.+)\)$/);
|
|
28
|
+
if (r) {
|
|
29
|
+
const o = r[1], t = o.split(/,\s*/g);
|
|
30
|
+
let n = t[1];
|
|
31
|
+
return /^ANGLE Metal Renderer: /.test(n) && (n = e.split(": ")[1].split(",")[0]), t.length === 1 && (n = t[0].split(" ").slice(1).join(" ")), /Direct3D/.test(n) && (n = n.split("Direct3D")[0].trim()), n;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
} catch {
|
|
35
|
+
return "Unknown";
|
|
36
|
+
}
|
|
37
|
+
return i(e);
|
|
38
|
+
}, u = () => {
|
|
39
|
+
const e = l();
|
|
40
|
+
return console.log("GPU:", e), localStorage.setItem("gpu", e), e;
|
|
41
|
+
};
|
|
42
|
+
export {
|
|
43
|
+
u as default
|
|
44
|
+
};
|
|
@@ -1,14 +1,21 @@
|
|
|
1
|
-
import { IEditSignalControlAreaParams } from '../../../types';
|
|
1
|
+
import { IEditSignalControlAreaParams, IShowGreenWaveBandParams } from '../../../types';
|
|
2
2
|
export default class GreenWaveBandController {
|
|
3
3
|
private view;
|
|
4
|
+
/** 新增时显示路口的图层 */
|
|
4
5
|
private allNodesLayer;
|
|
6
|
+
/** 新增时显示路段的图层 */
|
|
5
7
|
private roadsectLayer;
|
|
8
|
+
/** 显示现有绿波带的图层 */
|
|
9
|
+
private bandLayer;
|
|
6
10
|
private viewClickWatcher?;
|
|
7
11
|
private openDriveServer;
|
|
8
12
|
private selectedNodeIds;
|
|
9
|
-
private
|
|
10
|
-
private
|
|
11
|
-
private
|
|
13
|
+
private scaleWatcher?;
|
|
14
|
+
private readonly nodeScale;
|
|
15
|
+
private hasGpu;
|
|
16
|
+
private addNodeCallback;
|
|
17
|
+
private removeNodeCallback;
|
|
18
|
+
private removeAllNodeCallback;
|
|
12
19
|
constructor(view: __esri.MapView | __esri.SceneView);
|
|
13
20
|
/**
|
|
14
21
|
* 新增绿波带
|
|
@@ -16,6 +23,7 @@ export default class GreenWaveBandController {
|
|
|
16
23
|
*/
|
|
17
24
|
addGreenWaveBand(params: IEditSignalControlAreaParams): void;
|
|
18
25
|
stopAddGreenWaveBand(): void;
|
|
26
|
+
showGreenWaveBand(params: IShowGreenWaveBandParams): Promise<void>;
|
|
19
27
|
/**
|
|
20
28
|
* 显示所有路口,进入待选状态
|
|
21
29
|
* @param nodeAttributes
|
|
@@ -33,5 +41,12 @@ export default class GreenWaveBandController {
|
|
|
33
41
|
*/
|
|
34
42
|
private showDownstreamNodes;
|
|
35
43
|
private getLineSymbol;
|
|
36
|
-
private
|
|
44
|
+
private getShowNodeSymbol;
|
|
45
|
+
/**
|
|
46
|
+
* 编辑状态时的路口符号
|
|
47
|
+
* 全部用cim符号,是否选中用不同的图标
|
|
48
|
+
* @param selected 是否选中
|
|
49
|
+
* @returns
|
|
50
|
+
*/
|
|
51
|
+
private getEditableNodeSymbol;
|
|
37
52
|
}
|