gisviewer-vue3-arcgis 1.0.165 → 1.0.167

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.
Files changed (40) hide show
  1. package/es/_virtual/_plugin-vue_export-helper.mjs +9 -0
  2. package/es/src/gis-map/gis-map.vue.d.ts +120 -0
  3. package/es/src/gis-map/gis-map.vue.mjs +142 -128
  4. package/es/src/gis-map/index.d.ts +120 -0
  5. package/es/src/gis-map/stores/appData.d.ts +2 -0
  6. package/es/src/gis-map/stores/appData.mjs +4 -2
  7. package/es/src/gis-map/utils/common-utils.mjs +5 -5
  8. package/es/src/gis-map/utils/holo-flow/signal-countdown-panel.vue.d.ts +93 -0
  9. package/es/src/gis-map/utils/holo-flow/signal-countdown-panel.vue.mjs +7 -0
  10. package/es/src/gis-map/utils/holo-flow/signal-countdown-panel.vue2.mjs +121 -0
  11. package/es/src/gis-map/utils/holo-flow/signal-countdown-panel.vue3.mjs +4 -0
  12. package/es/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.d.ts +14 -0
  13. package/es/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.mjs +123 -33
  14. package/es/src/gis-map/utils/holo-flow/trace-renderer-layer.mjs +102 -99
  15. package/es/src/gis-map/utils/map-initializer.d.ts +1 -0
  16. package/es/src/gis-map/utils/map-initializer.mjs +135 -127
  17. package/es/src/gis-map/utils/open-drive-renderer/index.mjs +10 -10
  18. package/es/src/gis-map/utils/traffic-flow.mjs +5 -4
  19. package/es/src/types/index.d.ts +22 -0
  20. package/es/style.css +1 -1
  21. package/lib/_virtual/_plugin-vue_export-helper.js +1 -0
  22. package/lib/src/gis-map/gis-map.vue.d.ts +120 -0
  23. package/lib/src/gis-map/gis-map.vue.js +1 -1
  24. package/lib/src/gis-map/index.d.ts +120 -0
  25. package/lib/src/gis-map/stores/appData.d.ts +2 -0
  26. package/lib/src/gis-map/stores/appData.js +1 -1
  27. package/lib/src/gis-map/utils/common-utils.js +1 -1
  28. package/lib/src/gis-map/utils/holo-flow/signal-countdown-panel.vue.d.ts +93 -0
  29. package/lib/src/gis-map/utils/holo-flow/signal-countdown-panel.vue.js +1 -0
  30. package/lib/src/gis-map/utils/holo-flow/signal-countdown-panel.vue2.js +1 -0
  31. package/lib/src/gis-map/utils/holo-flow/signal-countdown-panel.vue3.js +1 -0
  32. package/lib/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.d.ts +14 -0
  33. package/lib/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.js +1 -1
  34. package/lib/src/gis-map/utils/holo-flow/trace-renderer-layer.js +1 -1
  35. package/lib/src/gis-map/utils/map-initializer.d.ts +1 -0
  36. package/lib/src/gis-map/utils/map-initializer.js +1 -1
  37. package/lib/src/gis-map/utils/open-drive-renderer/index.js +1 -1
  38. package/lib/src/gis-map/utils/traffic-flow.js +1 -1
  39. package/lib/src/types/index.d.ts +22 -0
  40. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ const s = (t, e) => {
2
+ const o = t.__vccOpts || t;
3
+ for (const [r, c] of e)
4
+ o[r] = c;
5
+ return o;
6
+ };
7
+ export {
8
+ s as default
9
+ };
@@ -30,6 +30,34 @@ declare const _sfc_main: import("vue").DefineComponent<{
30
30
  openDriveRenderer: OpenDriveRenderer;
31
31
  signalControlAreaController: SignalControlAreaController;
32
32
  showLogDiv: import("vue").Ref<boolean>;
33
+ appDataStore: import("pinia").Store<"appData", {
34
+ mapConfig: {};
35
+ saveTrackLog: boolean;
36
+ isSketching: boolean;
37
+ countdownPanels: import("../types").ISignalCountdownProps[];
38
+ }, {}, {}>;
39
+ countdownPanelInfos: import("vue").Ref<{
40
+ displayMode: string;
41
+ crossId: string;
42
+ roadId: string;
43
+ mapPoint: number[];
44
+ stopLine: number[][];
45
+ position: {
46
+ left: number;
47
+ top: number;
48
+ };
49
+ rotation: number;
50
+ lampStatus: {
51
+ uNumber?: number | undefined;
52
+ uColor?: string | undefined;
53
+ lNumber?: number | undefined;
54
+ lColor?: string | undefined;
55
+ sNumber?: number | undefined;
56
+ sColor?: string | undefined;
57
+ rNumber?: number | undefined;
58
+ rColor?: string | undefined;
59
+ };
60
+ }[]>;
33
61
  mapViewer: import("vue").ComputedRef<MapView | SceneView>;
34
62
  startSaveTrackLog: () => void;
35
63
  downloadTrackLog: () => void;
@@ -95,6 +123,98 @@ declare const _sfc_main: import("vue").DefineComponent<{
95
123
  resetHighlightSignalControlArea: () => import("../types").IResult;
96
124
  props: any;
97
125
  emit: (event: "mapLoaded" | "markerClick" | "mapClick", ...args: any[]) => void;
126
+ SignalCountdownPanel: import("vue").DefineComponent<{
127
+ displayMode: {
128
+ type: StringConstructor;
129
+ required: true;
130
+ };
131
+ crossId: {
132
+ type: StringConstructor;
133
+ required: true;
134
+ };
135
+ roadId: {
136
+ type: StringConstructor;
137
+ required: true;
138
+ };
139
+ mapPoint: {
140
+ type: ArrayConstructor;
141
+ required: true;
142
+ };
143
+ stopLine: {
144
+ type: ArrayConstructor;
145
+ required: true;
146
+ };
147
+ position: {
148
+ type: ObjectConstructor;
149
+ required: true;
150
+ };
151
+ rotation: {
152
+ type: NumberConstructor;
153
+ required: true;
154
+ };
155
+ lampStatus: {
156
+ type: ObjectConstructor;
157
+ required: true;
158
+ };
159
+ }, {
160
+ props: any;
161
+ panelStyle: import("vue").ComputedRef<{
162
+ top: string;
163
+ left: string;
164
+ 'transform-origin': string;
165
+ transform: string;
166
+ }>;
167
+ uImage: import("vue").ComputedRef<string>;
168
+ uNumberStyle: import("vue").ComputedRef<{
169
+ color: string;
170
+ }>;
171
+ lImage: import("vue").ComputedRef<string>;
172
+ lNumberStyle: import("vue").ComputedRef<{
173
+ color: string;
174
+ }>;
175
+ sImage: import("vue").ComputedRef<string>;
176
+ sNumberStyle: import("vue").ComputedRef<{
177
+ color: string;
178
+ }>;
179
+ rImage: import("vue").ComputedRef<string>;
180
+ rNumberStyle: import("vue").ComputedRef<{
181
+ color: string;
182
+ }>;
183
+ getColorString: (color: string | undefined) => "red" | "rgb(255, 192, 2)" | "lime" | "white";
184
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
185
+ displayMode: {
186
+ type: StringConstructor;
187
+ required: true;
188
+ };
189
+ crossId: {
190
+ type: StringConstructor;
191
+ required: true;
192
+ };
193
+ roadId: {
194
+ type: StringConstructor;
195
+ required: true;
196
+ };
197
+ mapPoint: {
198
+ type: ArrayConstructor;
199
+ required: true;
200
+ };
201
+ stopLine: {
202
+ type: ArrayConstructor;
203
+ required: true;
204
+ };
205
+ position: {
206
+ type: ObjectConstructor;
207
+ required: true;
208
+ };
209
+ rotation: {
210
+ type: NumberConstructor;
211
+ required: true;
212
+ };
213
+ lampStatus: {
214
+ type: ObjectConstructor;
215
+ required: true;
216
+ };
217
+ }>>, {}, {}>;
98
218
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("mapLoaded" | "markerClick" | "mapClick")[], "mapLoaded" | "markerClick" | "mapClick", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
99
219
  config: {
100
220
  type: StringConstructor;
@@ -1,180 +1,194 @@
1
- import { defineComponent as Le, ref as S, onMounted as Ae, getCurrentInstance as Ie, onUnmounted as be, computed as Me, openBlock as _e, createElementBlock as He, createElementVNode as p, withDirectives as xe, vShow as Ve } from "vue";
2
- import O, { registerStore as Be } from "./stores/index.mjs";
1
+ import { defineComponent as be, ref as C, onMounted as Me, getCurrentInstance as _e, onUnmounted as He, computed as xe, openBlock as S, createElementBlock as k, createElementVNode as g, withDirectives as Pe, vShow as Be, Fragment as Ve, renderList as ze, unref as Ne, createBlock as Qe } from "vue";
2
+ import { storeToRefs as je } from "pinia";
3
+ import T, { registerStore as Ee } from "./stores/index.mjs";
3
4
  import "./style/index.css";
4
- import ze from "./utils/holo-flow/index.mjs";
5
- import Ne from "./utils/map-initializer.mjs";
6
- import C from "./utils/open-drive-renderer/index.mjs";
7
- import k from "./utils/overlay.mjs";
8
- import Qe from "./utils/queue-length.mjs";
9
- import T from "./utils/road-config-tool/index.mjs";
10
- import je from "./utils/signal-control-area-controller/index.mjs";
11
- import Pe from "./utils/traffic-flow.mjs";
12
- const Ee = { class: "gis-viewer" }, Fe = { style: { position: "absolute", bottom: "10px", left: "10px" } }, et = /* @__PURE__ */ Le({
5
+ import Fe from "./utils/holo-flow/index.mjs";
6
+ import Ze from "./utils/holo-flow/signal-countdown-panel.vue.mjs";
7
+ import qe from "./utils/map-initializer.mjs";
8
+ import L from "./utils/open-drive-renderer/index.mjs";
9
+ import D from "./utils/overlay.mjs";
10
+ import Ke from "./utils/queue-length.mjs";
11
+ import A from "./utils/road-config-tool/index.mjs";
12
+ import Re from "./utils/signal-control-area-controller/index.mjs";
13
+ import Ue from "./utils/traffic-flow.mjs";
14
+ const $e = { class: "gis-viewer" }, Ge = { style: { position: "absolute", bottom: "10px", left: "10px" } }, lt = /* @__PURE__ */ be({
13
15
  __name: "gis-map",
14
16
  props: {
15
17
  config: {},
16
18
  assetsRoot: {}
17
19
  },
18
20
  emits: ["mapLoaded", "markerClick", "mapClick"],
19
- setup(D, { expose: L, emit: A }) {
20
- const g = S(null);
21
- let s, c, i, r, n, a, u, t, o;
22
- const f = S(!1);
23
- Ae(async () => {
24
- if (Be(), !g.value)
21
+ setup(I, { expose: b, emit: M }) {
22
+ const d = C(null);
23
+ let s, l, i, o, n, a, p, t, r;
24
+ const f = C(!1);
25
+ Ee();
26
+ const h = T.useAppDataStore, { countdownPanels: _ } = je(h);
27
+ Me(async () => {
28
+ if (!d.value)
25
29
  return;
26
30
  document.addEventListener("keydown", (m) => {
27
31
  m.ctrlKey && m.key === "i" && (f.value = !f.value);
28
32
  });
29
- const e = Ie(), { $gisviewerAssetsRoot: l } = e.appContext.config.globalProperties, h = await (await fetch(y.config)).json();
30
- h.assetsRoot = y.assetsRoot || l;
31
- const Te = O.useAppDataStore;
32
- Te.mapConfig = h, c = new Ne(), s = await c.initialize({
33
- container: g.value,
34
- markerClickCallback: (m, d, v, De) => {
35
- w("markerClick", m, d, v, De);
33
+ const e = _e(), { $gisviewerAssetsRoot: u } = e.appContext.config.globalProperties, c = await (await fetch(O.config)).json();
34
+ c.assetsRoot = O.assetsRoot || u, h.mapConfig = c, l = new qe(), s = await l.initialize({
35
+ container: d.value,
36
+ mapConfig: c,
37
+ markerClickCallback: (m, y, v, Ie) => {
38
+ w("markerClick", m, y, v, Ie);
36
39
  },
37
- mapClickCallback: (m, d, v) => {
38
- w("mapClick", m, d, v);
40
+ mapClickCallback: (m, y, v) => {
41
+ w("mapClick", m, y, v);
39
42
  }
40
- }), n = new ze(s), await n.init(), w("mapLoaded");
41
- }), be(() => {
42
- o == null || o.clearSignalControlArea(), t == null || t.clearOpenDrive(), n == null || n.clearHoloTrace(), n == null || n.clearHoloSignal(), r == null || r.disconnectTrafficFlow();
43
+ }), n = new Fe(s), await n.init(), w("mapLoaded");
44
+ }), He(() => {
45
+ r == null || r.clearSignalControlArea(), t == null || t.clearOpenDrive(), n == null || n.clearHoloTrace(), n == null || n.clearHoloSignal(), o == null || o.disconnectTrafficFlow();
43
46
  });
44
- const I = Me(() => s), b = () => {
45
- const e = O.useAppDataStore;
47
+ const H = xe(() => s), x = () => {
48
+ const e = T.useAppDataStore;
46
49
  e.saveTrackLog = !0;
47
- }, M = () => {
50
+ }, P = () => {
48
51
  n.downloadTrackLog();
49
- }, _ = async (e) => await c.setMapCenter(e), H = async (e) => await c.setMapCamera(e), x = async (e) => await c.lookAt(e), V = (e) => c.setLayerVisibility(e), B = (e, l) => c.requestCoordinateTransform(e, l), z = (e) => {
50
- c.cancelCoordinateTransform(e);
51
- }, N = (e) => {
52
- c.setMapZoomRange(e);
53
- }, Q = (e) => (i || (i = new T(s)), i.showLaneNumber(e)), j = () => {
52
+ }, B = async (e) => await l.setMapCenter(e), V = async (e) => await l.setMapCamera(e), z = async (e) => await l.lookAt(e), N = (e) => l.setLayerVisibility(e), Q = (e, u) => l.requestCoordinateTransform(e, u), j = (e) => {
53
+ l.cancelCoordinateTransform(e);
54
+ }, E = (e) => {
55
+ l.setMapZoomRange(e);
56
+ }, F = (e) => (i || (i = new A(s)), i.showLaneNumber(e)), Z = () => {
54
57
  i == null || i.clearLaneNumber();
55
- }, P = async (e) => (i || (i = new T(s)), await i.initializeSearch(e)), E = async () => i == null ? void 0 : i.calCrossIndicatorArea(), F = async () => {
56
- }, Z = async (e, l) => {
57
- r || (r = new Pe(s)), r.connectTrafficFlow(e, l);
58
- }, q = () => {
59
- r == null || r.disconnectTrafficFlow();
60
- }, K = (e) => {
58
+ }, q = async (e) => (i || (i = new A(s)), await i.initializeSearch(e)), K = async () => i == null ? void 0 : i.calCrossIndicatorArea(), R = async () => {
59
+ }, U = async (e, u) => {
60
+ o || (o = new Ue(s)), o.connectTrafficFlow(e, u);
61
+ }, $ = () => {
62
+ o == null || o.disconnectTrafficFlow();
63
+ }, G = (e) => {
61
64
  n.handleVehicleTraceData(e);
62
- }, U = () => {
65
+ }, J = () => {
63
66
  n.clearHoloTrace();
64
- }, $ = (e) => {
67
+ }, W = (e) => {
65
68
  n.setInterpolate(e);
66
- }, G = async (e) => {
69
+ }, X = async (e) => {
67
70
  await n.handleSignalData(e);
68
- }, J = () => {
71
+ }, Y = () => {
69
72
  n.clearHoloSignal();
70
- }, R = (e) => {
71
- r == null || r.toggleTrafficInfo(e), n.toggleTrafficInfo(e);
72
- }, W = (e) => {
73
+ }, ee = (e) => {
74
+ o == null || o.toggleTrafficInfo(e), n.toggleTrafficInfo(e);
75
+ }, te = (e) => {
73
76
  n.togglePause(e);
74
- }, X = (e) => {
75
- r == null || r.toggleTrafficObject(e), n.toggleTrafficObject(e);
76
- }, Y = (e) => {
77
+ }, ae = (e) => {
78
+ o == null || o.toggleTrafficObject(e), n.toggleTrafficObject(e);
79
+ }, ne = (e) => {
77
80
  n.updatePanelContent(e);
78
- }, ee = async (e) => (a || (a = new k(s)), a.addOverlays(e)), te = (e) => (a || (a = new k(s)), a.addMask(e)), ae = () => {
81
+ }, oe = async (e) => (a || (a = new D(s)), a.addOverlays(e)), re = (e) => (a || (a = new D(s)), a.addMask(e)), se = () => {
79
82
  a == null || a.removeMask();
80
- }, ne = (e) => a == null ? void 0 : a.removeOverlaysByType(e), re = (e) => a == null ? void 0 : a.removeOverlaysById(e), oe = () => a == null ? void 0 : a.removeAllOverlays(), se = () => {
83
+ }, ie = (e) => a == null ? void 0 : a.removeOverlaysByType(e), ce = (e) => a == null ? void 0 : a.removeOverlaysById(e), le = () => a == null ? void 0 : a.removeAllOverlays(), ue = () => {
81
84
  a == null || a.showAllOverlays();
82
- }, ie = (e) => {
83
- u || (u = new Qe(s)), u.updateQueueLength(e);
84
- }, ce = () => {
85
- u == null || u.removeQueueLength();
86
- }, le = async (e, l) => (t || (t = new C(s)), await t.showOpenDriveFromServer(e, l)), ue = async (e) => (t || (t = new C(s)), await t.clearOpenDrive(), await t.showOpenDriveFromFile(e)), me = async () => await (t == null ? void 0 : t.clearOpenDrive()), pe = async (e) => t ? await (t == null ? void 0 : t.findSumo(e)) : {
85
+ }, me = (e) => {
86
+ p || (p = new Ke(s)), p.updateQueueLength(e);
87
+ }, pe = () => {
88
+ p == null || p.removeQueueLength();
89
+ }, ge = async (e, u) => (t || (t = new L(s)), await t.showOpenDriveFromServer(e, u)), de = async (e) => (t || (t = new L(s)), await t.clearOpenDrive(), await t.showOpenDriveFromFile(e)), fe = async () => await (t == null ? void 0 : t.clearOpenDrive()), we = async (e) => t ? await (t == null ? void 0 : t.findSumo(e)) : {
87
90
  status: -1,
88
91
  message: "未加载OpenDrive地图"
89
- }, ge = async (e) => t ? t.selectSumo(e) : {
92
+ }, ye = async (e) => t ? t.selectSumo(e) : {
90
93
  status: -1,
91
94
  message: "未加载OpenDrive地图"
92
- }, fe = async (e) => t ? t.unselectSumo(e) : {
95
+ }, ve = async (e) => t ? t.unselectSumo(e) : {
93
96
  status: -1,
94
97
  message: "未加载OpenDrive地图"
95
- }, we = async (e) => t ? await t.geometrySearch(e) : {
98
+ }, Se = async (e) => t ? await t.geometrySearch(e) : {
96
99
  status: -1,
97
100
  message: "未加载OpenDrive地图"
98
- }, de = async (e) => t ? await t.getSumoInfo(e) : {
101
+ }, he = async (e) => t ? await t.getSumoInfo(e) : {
99
102
  status: -1,
100
103
  message: "未加载OpenDrive地图"
101
- }, ve = async (e) => t ? await (t == null ? void 0 : t.splitLane(e)) : {
104
+ }, Oe = async (e) => t ? await (t == null ? void 0 : t.splitLane(e)) : {
102
105
  status: -1,
103
106
  message: "未加载OpenDrive地图"
104
- }, ye = async () => t ? t == null ? void 0 : t.clearSplitLane() : {
107
+ }, Ce = async () => t ? t == null ? void 0 : t.clearSplitLane() : {
105
108
  status: -1,
106
109
  message: "未加载OpenDrive地图"
107
- }, he = async (e) => (o || (o = new je(s)), await o.showSignalControlArea(e)), Se = () => {
108
- o == null || o.clearSignalControlArea();
109
- }, Oe = async (e) => o ? await o.locateSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, Ce = async (e) => o ? await o.highlightSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, ke = () => o ? o.resetHighlight() : { status: -1, message: "未加载信号控制区" }, y = D, w = A;
110
- return L({
111
- mapViewer: I,
112
- setLayerVisibility: V,
113
- setMapCenter: _,
114
- lookAt: x,
115
- setMapCamera: H,
116
- setMapZoomRange: N,
117
- requestCoordinateTransform: B,
118
- cancelCoordinateTransform: z,
119
- addOverlays: ee,
120
- addMask: te,
121
- removeMask: ae,
122
- showAllOverlays: se,
123
- removeOverlaysByType: ne,
124
- removeOverlaysById: re,
125
- removeAllOverlays: oe,
126
- showLaneNumber: Q,
127
- clearLaneNumber: j,
128
- initializeAreaTool: P,
129
- calCrossIndicatorArea: E,
130
- calRoadIndicatorArea: F,
131
- connectCarFlow: Z,
132
- disconnectCarFlow: q,
133
- handleHoloVehicleTraceData: K,
134
- clearHoloTrace: U,
135
- handleHoloSignalData: G,
136
- clearHoloSignal: J,
137
- setInterpolate: $,
138
- toggleTrafficInfo: R,
139
- toggleTrafficObject: X,
140
- toggleVehicleInfo: Y,
141
- togglePause: W,
142
- updateQueueLength: ie,
143
- removeQueueLength: ce,
144
- showOpenDriveFromServer: le,
145
- showOpenDriveFromFile: ue,
146
- clearOpenDrive: me,
147
- geometrySearchInOpenDrive: we,
148
- findSumoInOpenDrive: pe,
149
- selectSumoInOpenDrive: ge,
150
- unselectSumoInOpenDrive: fe,
151
- getSumoInfo: de,
152
- splitOpenDriveLane: ve,
153
- clearSplitOpenDriveLane: ye,
154
- showSignalControlArea: he,
155
- clearSignalControlArea: Se,
156
- locateSignalControlArea: Oe,
157
- highlightSignalControlArea: Ce,
158
- resetHighlightSignalControlArea: ke
159
- }), (e, l) => (_e(), He("div", Ee, [
160
- p("div", {
110
+ }, ke = async (e) => (r || (r = new Re(s)), await r.showSignalControlArea(e)), Te = () => {
111
+ r == null || r.clearSignalControlArea();
112
+ }, Le = async (e) => r ? await r.locateSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, De = async (e) => r ? await r.highlightSignalControlArea(e) : { status: -1, message: "未加载信号控制区" }, Ae = () => r ? r.resetHighlight() : { status: -1, message: "未加载信号控制区" }, O = I, w = M;
113
+ return b({
114
+ mapViewer: H,
115
+ setLayerVisibility: N,
116
+ setMapCenter: B,
117
+ lookAt: z,
118
+ setMapCamera: V,
119
+ setMapZoomRange: E,
120
+ requestCoordinateTransform: Q,
121
+ cancelCoordinateTransform: j,
122
+ addOverlays: oe,
123
+ addMask: re,
124
+ removeMask: se,
125
+ showAllOverlays: ue,
126
+ removeOverlaysByType: ie,
127
+ removeOverlaysById: ce,
128
+ removeAllOverlays: le,
129
+ showLaneNumber: F,
130
+ clearLaneNumber: Z,
131
+ initializeAreaTool: q,
132
+ calCrossIndicatorArea: K,
133
+ calRoadIndicatorArea: R,
134
+ connectCarFlow: U,
135
+ disconnectCarFlow: $,
136
+ handleHoloVehicleTraceData: G,
137
+ clearHoloTrace: J,
138
+ handleHoloSignalData: X,
139
+ clearHoloSignal: Y,
140
+ setInterpolate: W,
141
+ toggleTrafficInfo: ee,
142
+ toggleTrafficObject: ae,
143
+ toggleVehicleInfo: ne,
144
+ togglePause: te,
145
+ updateQueueLength: me,
146
+ removeQueueLength: pe,
147
+ showOpenDriveFromServer: ge,
148
+ showOpenDriveFromFile: de,
149
+ clearOpenDrive: fe,
150
+ geometrySearchInOpenDrive: Se,
151
+ findSumoInOpenDrive: we,
152
+ selectSumoInOpenDrive: ye,
153
+ unselectSumoInOpenDrive: ve,
154
+ getSumoInfo: he,
155
+ splitOpenDriveLane: Oe,
156
+ clearSplitOpenDriveLane: Ce,
157
+ showSignalControlArea: ke,
158
+ clearSignalControlArea: Te,
159
+ locateSignalControlArea: Le,
160
+ highlightSignalControlArea: De,
161
+ resetHighlightSignalControlArea: Ae
162
+ }), (e, u) => (S(), k("div", $e, [
163
+ g("div", {
161
164
  class: "gis-viewer-main",
162
165
  ref_key: "mapContainer",
163
- ref: g
166
+ ref: d
164
167
  }, [
165
- xe(p("div", Fe, [
166
- p("button", {
168
+ Pe(g("div", Ge, [
169
+ g("button", {
167
170
  style: { "margin-right": "10px" },
168
- onClick: b
171
+ onClick: x
169
172
  }, " 开始记录 "),
170
- p("button", { onClick: M }, "下载日志")
173
+ g("button", { onClick: P }, "下载日志")
171
174
  ], 512), [
172
- [Ve, f.value]
175
+ [Be, f.value]
173
176
  ])
174
- ], 512)
177
+ ], 512),
178
+ (S(!0), k(Ve, null, ze(Ne(_), (c, m) => (S(), Qe(Ze, {
179
+ key: m,
180
+ "display-mode": c.displayMode,
181
+ "road-id": c.crossId,
182
+ "cross-id": c.roadId,
183
+ "map-point": c.mapPoint,
184
+ "stop-line": c.stopLine,
185
+ position: c.position,
186
+ rotation: c.rotation,
187
+ "lamp-status": c.lampStatus
188
+ }, null, 8, ["display-mode", "road-id", "cross-id", "map-point", "stop-line", "position", "rotation", "lamp-status"]))), 128))
175
189
  ]));
176
190
  }
177
191
  });
178
192
  export {
179
- et as default
193
+ lt as default
180
194
  };
@@ -19,6 +19,34 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
19
19
  openDriveRenderer: import("./utils/open-drive-renderer").default;
20
20
  signalControlAreaController: import("./utils/signal-control-area-controller").default;
21
21
  showLogDiv: import("vue").Ref<boolean>;
22
+ appDataStore: import("pinia").Store<"appData", {
23
+ mapConfig: {};
24
+ saveTrackLog: boolean;
25
+ isSketching: boolean;
26
+ countdownPanels: import("../types").ISignalCountdownProps[];
27
+ }, {}, {}>;
28
+ countdownPanelInfos: import("vue").Ref<{
29
+ displayMode: string;
30
+ crossId: string;
31
+ roadId: string;
32
+ mapPoint: number[];
33
+ stopLine: number[][];
34
+ position: {
35
+ left: number;
36
+ top: number;
37
+ };
38
+ rotation: number;
39
+ lampStatus: {
40
+ uNumber?: number | undefined;
41
+ uColor?: string | undefined;
42
+ lNumber?: number | undefined;
43
+ lColor?: string | undefined;
44
+ sNumber?: number | undefined;
45
+ sColor?: string | undefined;
46
+ rNumber?: number | undefined;
47
+ rColor?: string | undefined;
48
+ };
49
+ }[]>;
22
50
  mapViewer: import("vue").ComputedRef<__esri.MapView | __esri.SceneView>;
23
51
  startSaveTrackLog: () => void;
24
52
  downloadTrackLog: () => void;
@@ -84,6 +112,98 @@ export declare const GisMap: import("@easyest/utils/dist/lib/withinstall").SFCWi
84
112
  resetHighlightSignalControlArea: () => import("../types").IResult;
85
113
  props: any;
86
114
  emit: (event: "mapLoaded" | "markerClick" | "mapClick", ...args: any[]) => void;
115
+ SignalCountdownPanel: import("vue").DefineComponent<{
116
+ displayMode: {
117
+ type: StringConstructor;
118
+ required: true;
119
+ };
120
+ crossId: {
121
+ type: StringConstructor;
122
+ required: true;
123
+ };
124
+ roadId: {
125
+ type: StringConstructor;
126
+ required: true;
127
+ };
128
+ mapPoint: {
129
+ type: ArrayConstructor;
130
+ required: true;
131
+ };
132
+ stopLine: {
133
+ type: ArrayConstructor;
134
+ required: true;
135
+ };
136
+ position: {
137
+ type: ObjectConstructor;
138
+ required: true;
139
+ };
140
+ rotation: {
141
+ type: NumberConstructor;
142
+ required: true;
143
+ };
144
+ lampStatus: {
145
+ type: ObjectConstructor;
146
+ required: true;
147
+ };
148
+ }, {
149
+ props: any;
150
+ panelStyle: import("vue").ComputedRef<{
151
+ top: string;
152
+ left: string;
153
+ 'transform-origin': string;
154
+ transform: string;
155
+ }>;
156
+ uImage: import("vue").ComputedRef<string>;
157
+ uNumberStyle: import("vue").ComputedRef<{
158
+ color: string;
159
+ }>;
160
+ lImage: import("vue").ComputedRef<string>;
161
+ lNumberStyle: import("vue").ComputedRef<{
162
+ color: string;
163
+ }>;
164
+ sImage: import("vue").ComputedRef<string>;
165
+ sNumberStyle: import("vue").ComputedRef<{
166
+ color: string;
167
+ }>;
168
+ rImage: import("vue").ComputedRef<string>;
169
+ rNumberStyle: import("vue").ComputedRef<{
170
+ color: string;
171
+ }>;
172
+ getColorString: (color: string | undefined) => "red" | "rgb(255, 192, 2)" | "lime" | "white";
173
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
174
+ displayMode: {
175
+ type: StringConstructor;
176
+ required: true;
177
+ };
178
+ crossId: {
179
+ type: StringConstructor;
180
+ required: true;
181
+ };
182
+ roadId: {
183
+ type: StringConstructor;
184
+ required: true;
185
+ };
186
+ mapPoint: {
187
+ type: ArrayConstructor;
188
+ required: true;
189
+ };
190
+ stopLine: {
191
+ type: ArrayConstructor;
192
+ required: true;
193
+ };
194
+ position: {
195
+ type: ObjectConstructor;
196
+ required: true;
197
+ };
198
+ rotation: {
199
+ type: NumberConstructor;
200
+ required: true;
201
+ };
202
+ lampStatus: {
203
+ type: ObjectConstructor;
204
+ required: true;
205
+ };
206
+ }>>, {}, {}>;
87
207
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("mapLoaded" | "markerClick" | "mapClick")[], "mapLoaded" | "markerClick" | "mapClick", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
88
208
  config: {
89
209
  type: StringConstructor;
@@ -1,5 +1,7 @@
1
+ import { ISignalCountdownProps } from '../../types';
1
2
  export declare const useAppDataStore: import("pinia").StoreDefinition<"appData", {
2
3
  mapConfig: {};
3
4
  saveTrackLog: boolean;
4
5
  isSketching: boolean;
6
+ countdownPanels: ISignalCountdownProps[];
5
7
  }, {}, {}>;
@@ -3,8 +3,10 @@ const t = a("appData", {
3
3
  state: () => ({
4
4
  mapConfig: {},
5
5
  saveTrackLog: !1,
6
- isSketching: !1
7
- })
6
+ isSketching: !1,
7
+ countdownPanels: []
8
+ }),
9
+ actions: {}
8
10
  });
9
11
  export {
10
12
  t as useAppDataStore
@@ -4,8 +4,8 @@ import * as l from "@arcgis/core/geometry/support/webMercatorUtils";
4
4
  import p from "@turf/bearing";
5
5
  import u from "@turf/destination";
6
6
  import * as a from "@turf/helpers";
7
- import O from "@turf/length";
8
- import d from "@turf/line-slice-along";
7
+ import d from "@turf/length";
8
+ import O from "@turf/line-slice-along";
9
9
  import w from "pako";
10
10
  import y from "proj4";
11
11
  class s {
@@ -226,10 +226,10 @@ class s {
226
226
  * @returns
227
227
  */
228
228
  static getCenterPointInLine(t) {
229
- const e = a.lineString(t), n = O(e, { units: "meters" });
230
- return d(e, 0, n / 2, {
229
+ const e = a.lineString(t), n = d(e, { units: "meters" }) / 2, r = O(e, 0, n, {
231
230
  units: "meters"
232
- }).geometry.coordinates[1];
231
+ });
232
+ return r.geometry.coordinates[r.geometry.coordinates.length - 1];
233
233
  }
234
234
  }
235
235
  export {