gisviewer-vue3-arcgis 1.0.226 → 1.0.228

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 (27) hide show
  1. package/es/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.mjs +11 -11
  2. package/es/src/gis-map/utils/signal-control-area-controller/district-controller.d.ts +2 -1
  3. package/es/src/gis-map/utils/signal-control-area-controller/district-controller.mjs +22 -15
  4. package/es/src/gis-map/utils/signal-control-area-controller/layer-symbol.d.ts +8 -1
  5. package/es/src/gis-map/utils/signal-control-area-controller/layer-symbol.mjs +74 -56
  6. package/es/src/gis-map/utils/signal-control-area-controller/renderer/district-renderer.d.ts +40 -0
  7. package/es/src/gis-map/utils/signal-control-area-controller/renderer/district-renderer.mjs +123 -0
  8. package/es/src/gis-map/utils/signal-control-area-controller/renderer/signal-renderer.d.ts +22 -0
  9. package/es/src/gis-map/utils/signal-control-area-controller/renderer/signal-renderer.mjs +124 -0
  10. package/es/src/gis-map/utils/signal-control-area-controller/renderer/sub-district-renderer.d.ts +27 -0
  11. package/es/src/gis-map/utils/signal-control-area-controller/renderer/sub-district-renderer.mjs +142 -0
  12. package/es/src/gis-map/utils/signal-control-area-controller/show-area.d.ts +4 -14
  13. package/es/src/gis-map/utils/signal-control-area-controller/show-area.mjs +284 -341
  14. package/lib/src/gis-map/utils/holo-flow/signal-holo-flow-lsr.js +1 -1
  15. package/lib/src/gis-map/utils/signal-control-area-controller/district-controller.d.ts +2 -1
  16. package/lib/src/gis-map/utils/signal-control-area-controller/district-controller.js +1 -1
  17. package/lib/src/gis-map/utils/signal-control-area-controller/layer-symbol.d.ts +8 -1
  18. package/lib/src/gis-map/utils/signal-control-area-controller/layer-symbol.js +1 -1
  19. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/district-renderer.d.ts +40 -0
  20. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/district-renderer.js +1 -0
  21. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/signal-renderer.d.ts +22 -0
  22. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/signal-renderer.js +1 -0
  23. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/sub-district-renderer.d.ts +27 -0
  24. package/lib/src/gis-map/utils/signal-control-area-controller/renderer/sub-district-renderer.js +1 -0
  25. package/lib/src/gis-map/utils/signal-control-area-controller/show-area.d.ts +4 -14
  26. package/lib/src/gis-map/utils/signal-control-area-controller/show-area.js +1 -1
  27. package/package.json +1 -1
@@ -0,0 +1,124 @@
1
+ import d from "@arcgis/core/Graphic";
2
+ import u from "@arcgis/core/layers/FeatureLayer";
3
+ import { signalMarkerLayerOptions as y, signalPictureLayerOptions as c, signalClusterLayerOptions as o } from "../layer-symbol.mjs";
4
+ class f {
5
+ constructor(e, a) {
6
+ this.view = e, this.hasGpu = a, this.signalMarkerLayer = new u(
7
+ y
8
+ ), this.signalMarkerLayer.spatialReference = e.spatialReference, this.signalMarkerLayer.popupEnabled = !0, this.signalPictureLayer = new u(
9
+ c
10
+ ), this.signalPictureLayer.spatialReference = e.spatialReference, this.signalPictureLayer.popupEnabled = !0, this.signalClusterLayer = new u(
11
+ o
12
+ ), this.signalClusterLayer.spatialReference = e.spatialReference, this.signalClusterLayer.popupEnabled = !0, this.view.map.addMany([
13
+ this.signalMarkerLayer,
14
+ this.signalPictureLayer,
15
+ this.signalClusterLayer
16
+ ]);
17
+ }
18
+ async showSignals(e) {
19
+ await this.clearSignals();
20
+ let a = 0;
21
+ const s = [];
22
+ e.forEach((r) => {
23
+ r.signals.forEach((i) => {
24
+ const t = new d({
25
+ geometry: {
26
+ type: "point",
27
+ longitude: i.longitude,
28
+ latitude: i.latitude
29
+ },
30
+ attributes: {
31
+ ObjectID: a++,
32
+ id: i.id,
33
+ name: i.name,
34
+ signalId: i.signalId,
35
+ nodeId: i.nodeId || i.id,
36
+ districtId: r.id,
37
+ districtName: r.name,
38
+ subDistrictId: "",
39
+ subDistrictName: "",
40
+ isKey: i.isKey,
41
+ type: "signal",
42
+ selected: !0
43
+ }
44
+ });
45
+ s.push(t);
46
+ }), r.subDistricts.forEach((i) => {
47
+ i.signals.forEach((t) => {
48
+ const n = new d({
49
+ geometry: {
50
+ type: "point",
51
+ longitude: t.longitude,
52
+ latitude: t.latitude
53
+ },
54
+ attributes: {
55
+ ObjectID: a++,
56
+ id: t.id,
57
+ name: t.name,
58
+ signalId: t.signalId,
59
+ nodeId: t.nodeId || t.id,
60
+ districtId: r.id,
61
+ districtName: r.name,
62
+ subDistrictId: i.id,
63
+ subDistrictName: i.name,
64
+ isKey: t.isKey,
65
+ type: "signal",
66
+ selected: !0
67
+ }
68
+ });
69
+ s.push(n);
70
+ });
71
+ });
72
+ }), await this.signalMarkerLayer.applyEdits({
73
+ addFeatures: s
74
+ }), await this.signalPictureLayer.applyEdits({
75
+ addFeatures: s
76
+ }), await this.signalClusterLayer.applyEdits({
77
+ addFeatures: s
78
+ });
79
+ }
80
+ async clearSignals() {
81
+ let e = await this.signalMarkerLayer.queryFeatures();
82
+ await this.signalMarkerLayer.applyEdits({
83
+ deleteFeatures: e.features
84
+ }), this.signalMarkerLayer.definitionExpression = "1=1", e = await this.signalPictureLayer.queryFeatures(), await this.signalPictureLayer.applyEdits({
85
+ deleteFeatures: e.features
86
+ }), this.signalPictureLayer.definitionExpression = "1=1", e = await this.signalClusterLayer.queryFeatures(), await this.signalClusterLayer.applyEdits({
87
+ deleteFeatures: e.features
88
+ }), this.signalClusterLayer.definitionExpression = "1=1";
89
+ }
90
+ async setPointVisible(e) {
91
+ this.signalMarkerLayer.visible = e, this.signalPictureLayer.visible = e;
92
+ }
93
+ setClusterVisible(e) {
94
+ this.signalClusterLayer.visible = e;
95
+ }
96
+ async locateSignal(e) {
97
+ return { status: 0, message: "ok" };
98
+ }
99
+ async highlightSignal(e) {
100
+ let a = "", s = "";
101
+ const r = this.signalMarkerLayer.definitionExpression;
102
+ this.signalMarkerLayer.definitionExpression = `signalId = '${e}'`;
103
+ const i = await this.signalMarkerLayer.queryFeatures(), t = i.features.length;
104
+ if (t > 0) {
105
+ const n = i.features[0].attributes.districtId || "", l = i.features[0].attributes.subDistrictId || "";
106
+ return await this.view.goTo(i.features, {
107
+ duration: this.hasGpu ? 1e3 : 0
108
+ }), { districtId: n, subDistrictId: l, count: t };
109
+ } else
110
+ this.signalMarkerLayer.definitionExpression = r;
111
+ return { districtId: a, subDistrictId: s, count: t };
112
+ }
113
+ filter(e, a) {
114
+ const s = `${e === "district" ? "districtId" : "subDistrictId"} = '${a}'`;
115
+ this.signalClusterLayer.definitionExpression = s, this.signalMarkerLayer.definitionExpression = s, this.signalPictureLayer.definitionExpression = s;
116
+ }
117
+ resetFilter() {
118
+ const e = "1=1";
119
+ this.signalClusterLayer.definitionExpression = e, this.signalMarkerLayer.definitionExpression = e, this.signalPictureLayer.definitionExpression = e;
120
+ }
121
+ }
122
+ export {
123
+ f as default
124
+ };
@@ -0,0 +1,27 @@
1
+ import { IResult } from '../../../../types';
2
+ import DistrictController from '../district-controller';
3
+ export default class SubDistrictRenderer {
4
+ private view;
5
+ private hasGpu;
6
+ private subDistrictPointLayer;
7
+ constructor(view: __esri.MapView | __esri.SceneView, hasGpu: boolean);
8
+ showSubDistricts(controllers: DistrictController[]): Promise<void>;
9
+ clearSubDistricts(): Promise<void>;
10
+ setVisible(visible: boolean): void;
11
+ /**
12
+ * 定位子区
13
+ * @param id 子区ID
14
+ */
15
+ locateSubDistrict(id: string): Promise<IResult>;
16
+ /**
17
+ * 高亮子区, 其他子区隐藏
18
+ * @param id 子区ID
19
+ * @return 返回高亮子区的数量以及区控id
20
+ */
21
+ highlightSubDistrict(id: string): Promise<{
22
+ count: number;
23
+ parentId: string;
24
+ }>;
25
+ filter(type: string, id: string): void;
26
+ resetFilter(): void;
27
+ }
@@ -0,0 +1,142 @@
1
+ import n from "@arcgis/core/Graphic";
2
+ import o from "@arcgis/core/layers/FeatureLayer";
3
+ import { subDistrictPointLayerOptions as c } from "../layer-symbol.mjs";
4
+ class b {
5
+ constructor(t, i) {
6
+ this.view = t, this.hasGpu = i, this.subDistrictPointLayer = new o(
7
+ c
8
+ ), this.subDistrictPointLayer.spatialReference = t.spatialReference, this.subDistrictPointLayer.popupEnabled = !0, this.view.map.add(this.subDistrictPointLayer);
9
+ }
10
+ async showSubDistricts(t) {
11
+ await this.clearSubDistricts();
12
+ let i = 0;
13
+ const s = [], r = [];
14
+ t.forEach((e) => {
15
+ r.push({
16
+ value: e.id,
17
+ label: e.name,
18
+ symbol: {
19
+ type: "simple-marker",
20
+ style: "circle",
21
+ color: [0, 0, 0, 0],
22
+ // color: [...controller.areaColor, 0.5],
23
+ size: "8px",
24
+ outline: {
25
+ color: [...e.areaColor],
26
+ width: 4
27
+ }
28
+ }
29
+ }), e.signals.forEach((a) => {
30
+ const u = new n({
31
+ geometry: {
32
+ type: "point",
33
+ longitude: a.longitude,
34
+ latitude: a.latitude
35
+ },
36
+ attributes: {
37
+ ObjectID: i++,
38
+ id: a.id,
39
+ name: a.name,
40
+ subDistrictId: e.id,
41
+ subDistrictName: e.name,
42
+ districtId: e.parentId,
43
+ districtName: e.parentName,
44
+ signalCount: e.signalCount
45
+ }
46
+ });
47
+ s.push(u);
48
+ });
49
+ }), this.subDistrictPointLayer.renderer = {
50
+ type: "unique-value",
51
+ field: "subDistrictId",
52
+ defaultSymbol: {
53
+ type: "simple-marker",
54
+ color: "gray",
55
+ size: "8px",
56
+ outline: {
57
+ color: "white",
58
+ width: 1
59
+ }
60
+ },
61
+ defaultLabel: "其他子区",
62
+ uniqueValueInfos: r,
63
+ visualVariables: [
64
+ {
65
+ type: "size",
66
+ valueExpression: "$view.scale",
67
+ stops: [
68
+ {
69
+ size: 24,
70
+ value: 2500
71
+ },
72
+ {
73
+ size: 20,
74
+ value: 5e3
75
+ },
76
+ {
77
+ size: 8,
78
+ value: 18055.954822000003
79
+ },
80
+ {
81
+ size: 4,
82
+ value: 144447.638572
83
+ },
84
+ {
85
+ size: 2,
86
+ value: 1155581108577e-6
87
+ }
88
+ ]
89
+ }
90
+ ]
91
+ }, await this.subDistrictPointLayer.applyEdits({
92
+ addFeatures: s
93
+ }), await this.view.goTo(s, {
94
+ duration: this.hasGpu ? 1e3 : 0
95
+ });
96
+ }
97
+ async clearSubDistricts() {
98
+ const t = await this.subDistrictPointLayer.queryFeatures();
99
+ t.features.length > 0 && await this.subDistrictPointLayer.applyEdits({
100
+ deleteFeatures: t.features
101
+ }), this.subDistrictPointLayer.definitionExpression = "1=1";
102
+ }
103
+ setVisible(t) {
104
+ this.subDistrictPointLayer.visible = t;
105
+ }
106
+ /**
107
+ * 定位子区
108
+ * @param id 子区ID
109
+ */
110
+ async locateSubDistrict(t) {
111
+ const i = this.subDistrictPointLayer.createQuery();
112
+ i.where = `subDistrictId = '${t}'`, i.returnGeometry = !0;
113
+ const s = await this.subDistrictPointLayer.queryFeatures(i);
114
+ return s.features.length > 0 ? (await this.view.goTo(s.features, {
115
+ duration: this.hasGpu ? 1e3 : 0
116
+ }), { status: 0, message: "ok" }) : { status: 1, message: "未找到区控" };
117
+ }
118
+ /**
119
+ * 高亮子区, 其他子区隐藏
120
+ * @param id 子区ID
121
+ * @return 返回高亮子区的数量以及区控id
122
+ */
123
+ async highlightSubDistrict(t) {
124
+ let i = "";
125
+ const s = this.subDistrictPointLayer.definitionExpression;
126
+ this.subDistrictPointLayer.definitionExpression = `subDistrictId = '${t}'`;
127
+ const r = await this.subDistrictPointLayer.queryFeatures(), e = r.features.length;
128
+ return e > 0 ? (i = r.features[0].attributes.districtId, await this.view.goTo(r.features, {
129
+ duration: this.hasGpu ? 1e3 : 0
130
+ })) : this.subDistrictPointLayer.definitionExpression = s, { count: e, parentId: i };
131
+ }
132
+ filter(t, i) {
133
+ const s = `${t === "district" ? "districtId" : "subDistrictId"} = '${i}'`;
134
+ this.subDistrictPointLayer.definitionExpression = s;
135
+ }
136
+ resetFilter() {
137
+ this.subDistrictPointLayer.definitionExpression = "1=1";
138
+ }
139
+ }
140
+ export {
141
+ b as default
142
+ };
@@ -5,18 +5,10 @@ export default class SignalControlAreaController1 {
5
5
  /** 支队图层 */
6
6
  private detachmentLayer;
7
7
  private detachmentLayerLoaded;
8
- /** 区控虚线图层 */
9
- private districtControllerDashLayer;
10
- /** 区控实线图层,区控符号由半透明实线+不透明虚线组成 */
11
- private districtControllerSolidLayer;
8
+ private districtRenderer;
9
+ private subDistrictRenderer;
10
+ private signalRenderer;
12
11
  /** 子区图层 */
13
- private subDistrictControllerLayer;
14
- /** 信号机圆点图层 */
15
- private signalMarkerLayer;
16
- /** 信号机图标图层 */
17
- private signalPictureLayer;
18
- /** 信号机聚合图层 */
19
- private signalClusterLayer;
20
12
  private clickHandler;
21
13
  private districtControllerOid;
22
14
  private subDistrictControllerOid;
@@ -77,15 +69,13 @@ export default class SignalControlAreaController1 {
77
69
  * @returns
78
70
  */
79
71
  private generateGraphic;
80
- private viewHitTest;
81
72
  /**
82
73
  * 重置所有graphic的置灰状态
83
74
  */
84
- private resetSelectedSymbol;
85
75
  /**
86
76
  * 加载支队图层
87
77
  * 现场环境用url创建FeatureLayer有各种问题,
88
- * 改为图层到处未json,用json创建Graphic,再将Graphic添加到FeatureLayer
78
+ * 改为图层导出为json,用json创建Graphic,再将Graphic添加到FeatureLayer
89
79
  */
90
80
  private loadDetachmentLayer;
91
81
  }