openatc-components 0.1.193 → 0.1.194

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 (20) hide show
  1. package/package/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +19 -1
  2. package/package/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +1 -1
  3. package/package/kisscomps/components/IntersectionMap/crossDirection/baseImg/PatternWalkSvg.vue +429 -0
  4. package/package/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +21 -3
  5. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +4 -4
  6. package/package/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +8 -8
  7. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +7 -7
  8. package/package/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +4 -4
  9. package/package/kissui.min.js +1 -1
  10. package/package.json +1 -1
  11. package/src/kisscomps/components/DirectionListConfiguration/DirectionListConfiguration.vue +19 -1
  12. package/src/kisscomps/components/IntersectionDirectionSelection/IntersectionDirectionSelection.vue +1 -1
  13. package/src/kisscomps/components/IntersectionMap/crossDirection/crossDiagram.vue +21 -3
  14. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/LphaseIconSvg.vue +4 -4
  15. package/src/kisscomps/components/IntersectionMap/crossDirection/phaseIcon/phaseIconSvg.vue +8 -8
  16. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.json +7 -7
  17. package/src/kisscomps/components/IntersectionMap/crossDirection/posJson/phasePos.left.json +4 -4
  18. package/src/views/intersection.vue +1 -1
  19. package/src/views/overView.vue +2 -2
  20. package/src/node_modules/.package_versions.json +0 -1
@@ -247,11 +247,29 @@ export default {
247
247
  this.$message.error(getMessageByCode(data.data.code, this.$i18n.locale))
248
248
  return
249
249
  }
250
- this.channelList = res.data.data.channelList.filter(ele => ele.type !== undefined)
250
+ let channelList = res.data.data.channelList.filter(ele => ele.type !== undefined)
251
+ this.channelList = this.handleRepeatRealdir(channelList)
251
252
  console.log('this.channelList', this.channelList)
252
253
  this.handleChannelDirection()
253
254
  })
254
255
  },
256
+ handleRepeatRealdir (channelList) {
257
+ let map = new Map()
258
+ channelList.forEach(ele => {
259
+ ele.realdir.forEach(dir => {
260
+ if (map.get(dir) === undefined) {
261
+ map.set(dir, ele)
262
+ }
263
+ })
264
+ })
265
+ let arr = Array.from(map)
266
+ let newarr = []
267
+ arr.forEach(ele => {
268
+ newarr.push(ele[1])
269
+ })
270
+ // console.log(newarr)
271
+ return newarr
272
+ },
255
273
  handleChannelDirection () {
256
274
  this.LanePhaseData = []
257
275
  this.sidewalkPhaseData = []
@@ -106,7 +106,7 @@ export default {
106
106
  } else {
107
107
  this.isThirdSignal = false
108
108
  }
109
- if (this.thirdSignal !== undefined) {
109
+ if (this.thirdSignal) {
110
110
  this.isThirdSignal = this.thirdSignal
111
111
  }
112
112
  })
@@ -0,0 +1,429 @@
1
+ /* eslint-disable no-tabs */
2
+ /**
3
+ * Copyright (c) 2020 kedacom
4
+ * OpenATC is licensed under Mulan PSL v2.
5
+ * You can use this software according to the terms and conditions of the Mulan PSL v2.
6
+ * You may obtain a copy of Mulan PSL v2 at:
7
+ * http://license.coscl.org.cn/MulanPSL2
8
+ * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
9
+ * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
10
+ * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
11
+ * See the Mulan PSL v2 for more details.
12
+ **/
13
+ <template>
14
+ <div :style="{position: 'absolute'}">
15
+ <!-- , left: Data.left?Data.left:'2px', top: Data.top -->
16
+ <svg
17
+ :width="Width"
18
+ :height="Height"
19
+ version="1.1"
20
+ id="图层_1"
21
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
22
+ viewBox="0 0 34 34"
23
+ style="enable-background:new 0 0 34 34;"
24
+ xml:space="preserve">
25
+ <g id="路段行人过街-东西"
26
+ :class="status[0].isshow? '' : 'invisible'">
27
+ <rect x="19.9" y="14.2" class="st1" width="1.6" height="5.6"/>
28
+ <rect x="17.4" y="14.2" class="st1" width="1.6" height="5.6"/>
29
+ <rect x="22.4" y="14.2" class="st1" width="1.6" height="5.6"/>
30
+ <rect x="24.9" y="14.2" class="st1" width="1.6" height="5.6"/>
31
+ <rect x="27.4" y="14.2" class="st1" width="1.6" height="5.6"/>
32
+ <rect x="29.9" y="14.2" class="st1" width="1.6" height="5.6"/>
33
+ <rect x="32.4" y="14.2" class="st1" width="1.6" height="5.6"/>
34
+ <rect x="7.5" y="14.2" class="st1" width="1.6" height="5.6"/>
35
+ <rect x="5" y="14.2" class="st1" width="1.6" height="5.6"/>
36
+ <rect x="2.5" y="14.2" class="st1" width="1.6" height="5.6"/>
37
+ <rect x="0" y="14.2" class="st1" width="1.6" height="5.6"/>
38
+ <rect x="10" y="14.2" class="st1" width="1.6" height="5.6"/>
39
+ <rect x="12.5" y="14.2" class="st1" width="1.6" height="5.6"/>
40
+ <rect x="14.9" y="14.2" class="st1" width="1.6" height="5.6"/>
41
+ </g>
42
+ <g id="路段行人过街-南北" class="st0"
43
+ :class="status[1].isshow? '' : 'invisible'">
44
+ >
45
+ <rect x="14.2" y="19.9" class="st1" width="5.6" height="1.6"/>
46
+ <rect x="14.2" y="17.4" class="st1" width="5.6" height="1.6"/>
47
+ <rect x="14.2" y="22.4" class="st1" width="5.6" height="1.6"/>
48
+ <rect x="14.2" y="24.9" class="st1" width="5.6" height="1.6"/>
49
+ <rect x="14.2" y="27.4" class="st1" width="5.6" height="1.6"/>
50
+ <rect x="14.2" y="29.9" class="st1" width="5.6" height="1.6"/>
51
+ <rect x="14.2" y="32.4" class="st1" width="5.6" height="1.6"/>
52
+ <rect x="14.2" y="7.5" class="st1" width="5.6" height="1.6"/>
53
+ <rect x="14.2" y="5" class="st1" width="5.6" height="1.6"/>
54
+ <rect x="14.2" y="2.5" class="st1" width="5.6" height="1.6"/>
55
+ <rect x="14.2" y="0" class="st1" width="5.6" height="1.6"/>
56
+ <rect x="14.2" y="10" class="st1" width="5.6" height="1.6"/>
57
+ <rect x="14.2" y="12.5" class="st1" width="5.6" height="1.6"/>
58
+ <rect x="14.2" y="14.9" class="st1" width="5.6" height="1.6"/>
59
+ </g>
60
+ <g id="斜向行人1" class="st0"
61
+ :class="status[2].isshow? '' : 'invisible'">
62
+ >
63
+ <rect x="14.2" y="16.2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -7.0438 17.0053)" class="st1" width="5.6" height="1.6"/>
64
+ <rect x="12.4" y="14.4" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -6.3149 15.2456)" class="st1" width="5.6" height="1.6"/>
65
+ <rect x="15.9" y="17.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -7.7727 18.7651)" class="st1" width="5.6" height="1.6"/>
66
+ <rect x="17.7" y="19.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -8.5017 20.5248)" class="st1" width="5.6" height="1.6"/>
67
+ <rect x="19.5" y="21.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -9.2306 22.2845)" class="st1" width="5.6" height="1.6"/>
68
+ <rect x="21.2" y="23.2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -9.9595 24.0443)" class="st1" width="5.6" height="1.6"/>
69
+ <rect x="23" y="25" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -10.6884 25.804)" class="st1" width="5.6" height="1.6"/>
70
+ <rect x="24.7" y="26.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -11.4128 27.5531)" class="st1" width="5.6" height="1.6"/>
71
+ <rect x="26.5" y="28.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -12.1418 29.3128)" class="st1" width="5.6" height="1.6"/>
72
+ <rect x="28.3" y="30.3" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -12.8707 31.0725)" class="st1" width="5.6" height="1.6"/>
73
+ <rect x="5.4" y="7.4" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -3.3993 8.2067)" class="st1" width="5.6" height="1.6"/>
74
+ <rect x="3.6" y="5.6" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -2.6704 6.4469)" class="st1" width="5.6" height="1.6"/>
75
+ <rect x="1.9" y="3.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -1.9415 4.6872)" class="st1" width="5.6" height="1.6"/>
76
+ <rect x="0.1" y="2.1" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -1.2126 2.9275)" class="st1" width="5.6" height="1.6"/>
77
+ <rect x="7.1" y="9.2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -4.1282 9.9664)" class="st1" width="5.6" height="1.6"/>
78
+ <rect x="8.9" y="10.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -4.8571 11.7261)" class="st1" width="5.6" height="1.6"/>
79
+ <rect x="10.7" y="12.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -5.586 13.4859)" class="st1" width="5.6" height="1.6"/>
80
+ </g>
81
+ <g id="斜向行人2" class="st0"
82
+ :class="status[3].isshow? '' : 'invisible'"
83
+ >
84
+ <rect x="16.2" y="14.2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -7.047 16.9978)" class="st1" width="1.6" height="5.6"/>
85
+ <rect x="17.9" y="12.4" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -5.2872 17.7267)" class="st1" width="1.6" height="5.6"/>
86
+ <rect x="14.4" y="15.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -8.8067 16.2689)" class="st1" width="1.6" height="5.6"/>
87
+ <rect x="12.7" y="17.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -10.5664 15.54)" class="st1" width="1.6" height="5.6"/>
88
+
89
+ <rect x="10.9" y="19.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -12.3262 14.8111)" class="st1" width="1.6" height="5.6"/>
90
+ <rect x="9.1" y="21.2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -14.0859 14.0822)" class="st1" width="1.6" height="5.6"/>
91
+ <rect x="7.4" y="23" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -15.8456 13.3533)" class="st1" width="1.6" height="5.6"/>
92
+ <rect x="5.6" y="24.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -17.5947 12.6288)" class="st1" width="1.6" height="5.6"/>
93
+ <rect x="3.9" y="26.5" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -19.3544 11.8999)" class="st1" width="1.6" height="5.6"/>
94
+ <rect x="2.1" y="28.3" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -21.1142 11.171)" class="st1" width="1.6" height="5.6"/>
95
+ <rect x="25" y="5.4" transform="matrix(0.7071 -0.7071 0.7071 0.7071 1.7517 20.6423)" class="st1" width="1.6" height="5.6"/>
96
+ <rect x="26.7" y="3.6" transform="matrix(0.7071 -0.7071 0.7071 0.7071 3.5114 21.3712)" class="st1" width="1.6" height="5.6"/>
97
+ <rect x="28.5" y="1.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 5.2712 22.1001)" class="st1" width="1.6" height="5.6"/>
98
+ <rect x="30.3" y="0.1" transform="matrix(0.7071 -0.7071 0.7071 0.7071 7.0309 22.829)" class="st1" width="1.6" height="5.6"/>
99
+
100
+ <rect x="23.2" y="7.1" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -8.040609e-03 19.9134)" class="st1" width="1.6" height="5.6"/>
101
+ <rect x="21.5" y="8.9" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -1.7678 19.1845)" class="st1" width="1.6" height="5.6"/>
102
+ <rect x="19.7" y="10.7" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -3.5275 18.4556)" class="st1" width="1.6" height="5.6"/>
103
+ </g>
104
+ <g id="北行人"
105
+ :class="status[4].isshow? '' : 'invisible'"
106
+ class="st0">
107
+ <rect x="19.9" class="st1" width="1.6" height="5.6"/>
108
+ <rect x="17.4" class="st1" width="1.6" height="5.6"/>
109
+ <rect x="22.4" class="st1" width="1.6" height="5.6"/>
110
+ <rect x="24.9" class="st1" width="1.6" height="5.6"/>
111
+ <rect x="27.4" class="st1" width="1.6" height="5.6"/>
112
+ <rect x="29.9" class="st1" width="1.6" height="5.6"/>
113
+ <rect x="32.4" class="st1" width="1.6" height="5.6"/>
114
+ <rect x="7.5" class="st1" width="1.6" height="5.6"/>
115
+ <rect x="5" class="st1" width="1.6" height="5.6"/>
116
+ <rect x="2.5" class="st1" width="1.6" height="5.6"/>
117
+ <rect x="0" class="st1" width="1.6" height="5.6"/>
118
+ <rect x="10" class="st1" width="1.6" height="5.6"/>
119
+ <rect x="12.5" class="st1" width="1.6" height="5.6"/>
120
+ <rect x="14.9" class="st1" width="1.6" height="5.6"/>
121
+ </g>
122
+ <g id="南行人"
123
+ :class="status[5].isshow? '' : 'invisible'"
124
+ class="st0">
125
+ <rect x="19.9" y="28.4" class="st1" width="1.6" height="5.6"/>
126
+ <rect x="17.4" y="28.4" class="st1" width="1.6" height="5.6"/>
127
+ <rect x="22.4" y="28.4" class="st1" width="1.6" height="5.6"/>
128
+ <rect x="24.9" y="28.4" class="st1" width="1.6" height="5.6"/>
129
+ <rect x="27.4" y="28.4" class="st1" width="1.6" height="5.6"/>
130
+ <rect x="29.9" y="28.4" class="st1" width="1.6" height="5.6"/>
131
+ <rect x="32.4" y="28.4" class="st1" width="1.6" height="5.6"/>
132
+ <rect x="7.5" y="28.4" class="st1" width="1.6" height="5.6"/>
133
+ <rect x="5" y="28.4" class="st1" width="1.6" height="5.6"/>
134
+ <rect x="2.5" y="28.4" class="st1" width="1.6" height="5.6"/>
135
+ <rect x="0" y="28.4" class="st1" width="1.6" height="5.6"/>
136
+ <rect x="10" y="28.4" class="st1" width="1.6" height="5.6"/>
137
+ <rect x="12.5" y="28.4" class="st1" width="1.6" height="5.6"/>
138
+ <rect x="14.9" y="28.4" class="st1" width="1.6" height="5.6"/>
139
+ </g>
140
+ <g id="东行人"
141
+ :class="status[6].isshow? '' : 'invisible'"
142
+ class="st0">
143
+ <rect x="28.4" y="19.9" class="st1" width="5.6" height="1.6"/>
144
+ <rect x="28.4" y="17.4" class="st1" width="5.6" height="1.6"/>
145
+ <rect x="28.4" y="22.4" class="st1" width="5.6" height="1.6"/>
146
+ <rect x="28.4" y="24.9" class="st1" width="5.6" height="1.6"/>
147
+ <rect x="28.4" y="27.4" class="st1" width="5.6" height="1.6"/>
148
+ <rect x="28.4" y="29.9" class="st1" width="5.6" height="1.6"/>
149
+ <rect x="28.4" y="32.4" class="st1" width="5.6" height="1.6"/>
150
+ <rect x="28.4" y="7.5" class="st1" width="5.6" height="1.6"/>
151
+ <rect x="28.4" y="5" class="st1" width="5.6" height="1.6"/>
152
+ <rect x="28.4" y="2.5" class="st1" width="5.6" height="1.6"/>
153
+ <rect x="28.4" y="0" class="st1" width="5.6" height="1.6"/>
154
+ <rect x="28.4" y="10" class="st1" width="5.6" height="1.6"/>
155
+ <rect x="28.4" y="12.5" class="st1" width="5.6" height="1.6"/>
156
+ <rect x="28.4" y="14.9" class="st1" width="5.6" height="1.6"/>
157
+ </g>
158
+ <g id="西行人"
159
+ :class="status[7].isshow? '' : 'invisible'"
160
+ class="st0">
161
+ <rect y="19.9" class="st1" width="5.6" height="1.6"/>
162
+ <rect y="17.4" class="st1" width="5.6" height="1.6"/>
163
+ <rect y="22.4" class="st1" width="5.6" height="1.6"/>
164
+ <rect y="24.9" class="st1" width="5.6" height="1.6"/>
165
+ <rect y="27.4" class="st1" width="5.6" height="1.6"/>
166
+ <rect y="29.9" class="st1" width="5.6" height="1.6"/>
167
+ <rect y="32.4" class="st1" width="5.6" height="1.6"/>
168
+ <rect y="7.5" class="st1" width="5.6" height="1.6"/>
169
+ <rect y="5" class="st1" width="5.6" height="1.6"/>
170
+ <rect y="2.5" class="st1" width="5.6" height="1.6"/>
171
+ <rect y="0" class="st1" width="5.6" height="1.6"/>
172
+ <rect y="10" class="st1" width="5.6" height="1.6"/>
173
+ <rect y="12.5" class="st1" width="5.6" height="1.6"/>
174
+ <rect y="14.9" class="st1" width="5.6" height="1.6"/>
175
+ </g>
176
+ <g id="二次过街-西" class="st0">
177
+ <g id="西下"
178
+ :class="status[8].isshow? '' : 'invisible'"
179
+ >
180
+ <rect y="19.9" class="st1" width="5.6" height="1.6"/>
181
+ <rect y="22.4" class="st1" width="5.6" height="1.6"/>
182
+ <rect y="24.9" class="st1" width="5.6" height="1.6"/>
183
+ <rect y="27.4" class="st1" width="5.6" height="1.6"/>
184
+ <rect y="29.9" class="st1" width="5.6" height="1.6"/>
185
+ <rect y="32.4" class="st1" width="5.6" height="1.6"/>
186
+ </g>
187
+ <g id="西上"
188
+ :class="status[9].isshow? '' : 'invisible'"
189
+ >
190
+ <rect y="7.5" class="st1" width="5.6" height="1.6"/>
191
+ <rect y="5" class="st1" width="5.6" height="1.6"/>
192
+ <rect y="2.5" class="st1" width="5.6" height="1.6"/>
193
+ <rect y="0" class="st1" width="5.6" height="1.6"/>
194
+ <rect y="10" class="st1" width="5.6" height="1.6"/>
195
+ <rect y="12.5" class="st1" width="5.6" height="1.6"/>
196
+ </g>
197
+ </g>
198
+ <g id="二次过街-东" class="st0">
199
+ <g id="东上"
200
+ :class="status[10].isshow? '' : 'invisible'"
201
+ >
202
+ <rect x="28.4" y="12.5" class="st1" width="5.6" height="1.6"/>
203
+ <rect x="28.4" y="10" class="st1" width="5.6" height="1.6"/>
204
+ <rect x="28.4" y="7.5" class="st1" width="5.6" height="1.6"/>
205
+ <rect x="28.4" y="5" class="st1" width="5.6" height="1.6"/>
206
+ <rect x="28.4" y="2.5" class="st1" width="5.6" height="1.6"/>
207
+ <rect x="28.4" y="0" class="st1" width="5.6" height="1.6"/>
208
+ </g>
209
+ <g id="东下"
210
+ :class="status[11].isshow? '' : 'invisible'"
211
+ >
212
+ <rect x="28.4" y="24.9" class="st1" width="5.6" height="1.6"/>
213
+ <rect x="28.4" y="27.4" class="st1" width="5.6" height="1.6"/>
214
+ <rect x="28.4" y="29.9" class="st1" width="5.6" height="1.6"/>
215
+ <rect x="28.4" y="32.4" class="st1" width="5.6" height="1.6"/>
216
+ <rect x="28.4" y="22.4" class="st1" width="5.6" height="1.6"/>
217
+ <rect x="28.4" y="19.9" class="st1" width="5.6" height="1.6"/>
218
+ </g>
219
+ </g>
220
+ <g id="二次过街-南" class="st0">
221
+ <g id="南右"
222
+ :class="status[12].isshow? '' : 'invisible'"
223
+ >
224
+ <rect x="19.9" y="28.4" class="st1" width="1.6" height="5.6"/>
225
+ <rect x="22.4" y="28.4" class="st1" width="1.6" height="5.6"/>
226
+ <rect x="24.9" y="28.4" class="st1" width="1.6" height="5.6"/>
227
+ <rect x="27.4" y="28.4" class="st1" width="1.6" height="5.6"/>
228
+ <rect x="29.9" y="28.4" class="st1" width="1.6" height="5.6"/>
229
+ <rect x="32.4" y="28.4" class="st1" width="1.6" height="5.6"/>
230
+ </g>
231
+ <g id="南左"
232
+ :class="status[13].isshow? '' : 'invisible'"
233
+ >
234
+ <rect x="7.5" y="28.4" class="st1" width="1.6" height="5.6"/>
235
+ <rect x="5" y="28.4" class="st1" width="1.6" height="5.6"/>
236
+ <rect x="2.5" y="28.4" class="st1" width="1.6" height="5.6"/>
237
+ <rect x="0" y="28.4" class="st1" width="1.6" height="5.6"/>
238
+ <rect x="10" y="28.4" class="st1" width="1.6" height="5.6"/>
239
+ <rect x="12.5" y="28.4" class="st1" width="1.6" height="5.6"/>
240
+ </g>
241
+ </g>
242
+ <g id="二次过街-北_1_" class="st0">
243
+ <g id="北右_1_"
244
+ :class="status[14].isshow? '' : 'invisible'"
245
+ >
246
+ <rect x="19.9" class="st1" width="1.6" height="5.6"/>
247
+ <rect x="22.4" class="st1" width="1.6" height="5.6"/>
248
+ <rect x="24.9" class="st1" width="1.6" height="5.6"/>
249
+ <rect x="27.4" class="st1" width="1.6" height="5.6"/>
250
+ <rect x="29.9" class="st1" width="1.6" height="5.6"/>
251
+ <rect x="32.4" class="st1" width="1.6" height="5.6"/>
252
+ </g>
253
+ <g id="北左_1_"
254
+ :class="status[15].isshow? '' : 'invisible'"
255
+ >
256
+ <rect x="7.5" class="st1" width="1.6" height="5.6"/>
257
+ <rect x="5" class="st1" width="1.6" height="5.6"/>
258
+ <rect x="2.5" class="st1" width="1.6" height="5.6"/>
259
+ <rect x="0" class="st1" width="1.6" height="5.6"/>
260
+ <rect x="10" class="st1" width="1.6" height="5.6"/>
261
+ <rect x="12.5" class="st1" width="1.6" height="5.6"/>
262
+ </g>
263
+ </g>
264
+ </svg>
265
+ </div>
266
+ </template>
267
+ <script>
268
+ export default {
269
+ name: 'PatternWalkSvg',
270
+ data () {
271
+ return {
272
+ status: [
273
+ {
274
+ id: 1,
275
+ name: '东西路段人行横道',
276
+ isshow: false,
277
+ color: '#0096ba'
278
+ },
279
+ {
280
+ id: 2,
281
+ name: '南北路段人行横道',
282
+ isshow: false,
283
+ color: '#0096ba'
284
+ },
285
+ {
286
+ id: 3,
287
+ name: 'X人行横道-\\',
288
+ isshow: false,
289
+ color: '#0096ba'
290
+ },
291
+ {
292
+ id: 4,
293
+ name: 'X人行横道-/',
294
+ isshow: false,
295
+ color: '#0096ba'
296
+ },
297
+ {
298
+ id: 5,
299
+ name: '北人行横道',
300
+ isshow: false,
301
+ color: '#0096ba'
302
+ },
303
+ {
304
+ id: 6,
305
+ name: '南人行横道',
306
+ isshow: false,
307
+ color: '#0096ba'
308
+ },
309
+ {
310
+ id: 7,
311
+ name: '东人行横道',
312
+ isshow: false,
313
+ color: '#0096ba'
314
+ },
315
+ {
316
+ id: 8,
317
+ name: '西人行横道',
318
+ isshow: false,
319
+ color: '#0096ba'
320
+ },
321
+ {
322
+ id: 9,
323
+ name: '西人行横道-下',
324
+ isshow: false,
325
+ color: '#0096ba'
326
+ },
327
+ {
328
+ id: 10,
329
+ name: '西人行横道-上',
330
+ isshow: false,
331
+ color: '#0096ba'
332
+ },
333
+ {
334
+ id: 11,
335
+ name: '东人行横道-上',
336
+ isshow: false,
337
+ color: '#0096ba'
338
+ },
339
+ {
340
+ id: 12,
341
+ name: '东人行横道-下',
342
+ isshow: false,
343
+ color: '#0096ba'
344
+ },
345
+ {
346
+ id: 13,
347
+ name: '南人行横道-右',
348
+ isshow: false,
349
+ color: '#0096ba'
350
+ },
351
+ {
352
+ id: 14,
353
+ name: '南人行横道-左',
354
+ isshow: false,
355
+ color: '#0096ba'
356
+ },
357
+ {
358
+ id: 15,
359
+ name: '北人行横道-右',
360
+ isshow: false,
361
+ color: '#0096ba'
362
+ },
363
+ {
364
+ id: 16,
365
+ name: '北人行横道-左',
366
+ isshow: false,
367
+ color: '#0096ba'
368
+ }
369
+ ]
370
+ }
371
+ },
372
+ props: {
373
+ sidewalkPhaseData: {
374
+ type: Array
375
+ },
376
+ showWalk: {
377
+ type: Array
378
+ },
379
+ Width: {
380
+ type: String,
381
+ default: '34px'
382
+ },
383
+ Height: {
384
+ type: String,
385
+ default: '34px'
386
+ },
387
+ Data: {
388
+ type: Object
389
+ }
390
+ },
391
+ watch: {
392
+ sidewalkPhaseData: {
393
+ handler: function () {
394
+ this.getShow()
395
+ },
396
+ deep: true // 深度监听
397
+ },
398
+ showWalk: {
399
+ handler: function () {
400
+ this.getShow()
401
+ },
402
+ deep: true // 深度监听
403
+ }
404
+ },
405
+ created () {
406
+ this.getShow()
407
+ },
408
+ methods: {
409
+ getShow () {
410
+ console.log(this.sidewalkPhaseData, this.showWalk)
411
+ if (!this.sidewalkPhaseData) return
412
+ for (let i = 0; i < this.sidewalkPhaseData.length; i++) {
413
+ for (let j = 0; j < this.status.length; j++) {
414
+ if (this.sidewalkPhaseData[i].name === this.status[j].name && this.showWalk.includes(this.sidewalkPhaseData[i].id)) {
415
+ this.status[j].isshow = true
416
+ }
417
+ }
418
+ }
419
+ }
420
+ }
421
+ }
422
+ </script>
423
+ <style scoped>
424
+ .invisible {
425
+ visibility: hidden;
426
+ }
427
+ .st0{opacity:0.5;}
428
+ .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#303133;}
429
+ </style>
@@ -958,11 +958,30 @@ export default {
958
958
  this.$message.error(getMessageByCode(data.data.code, this.$i18n.locale))
959
959
  return
960
960
  }
961
- this.channelList = res.data.data.channelList.filter(ele => ele.type !== undefined)
962
- // console.log('this.channelList', this.channelList)
961
+ let channelList = res.data.data.channelList.filter(ele => ele.type !== undefined)
962
+ this.channelList = this.handleRepeatRealdir(channelList)
963
+ console.log('this.channelList', this.channelList)
963
964
  this.handleChannelDirection()
964
965
  })
965
966
  },
967
+ handleRepeatRealdir (channelList) {
968
+ // 按realdir去掉重复方向的数据
969
+ let map = new Map()
970
+ channelList.forEach(ele => {
971
+ ele.realdir.forEach(dir => {
972
+ if (map.get(dir) === undefined) {
973
+ map.set(dir, ele)
974
+ }
975
+ })
976
+ })
977
+ let arr = Array.from(map)
978
+ let newarr = []
979
+ arr.forEach(ele => {
980
+ newarr.push(ele[1])
981
+ })
982
+ // console.log(newarr)
983
+ return newarr
984
+ },
966
985
  handleChannelDirection () {
967
986
  this.LanePhaseData = []
968
987
  this.sidewalkPhaseData = []
@@ -1057,7 +1076,6 @@ export default {
1057
1076
  }
1058
1077
  }
1059
1078
  this.compLanePhaseData = JSON.parse(JSON.stringify(this.LanePhaseData))
1060
- // console.log(this.compLanePhaseData)
1061
1079
  let clickedDirection = this.compLanePhaseData.filter(ele => ele.clicked && !ele.disabled)
1062
1080
  this.inneChoosedDirection = clickedDirection.map(ele => ele.id)
1063
1081
  this.EmitAllChoosedDirection(curClickedPhase)
@@ -13,8 +13,8 @@
13
13
  <div :id="Data.key" :style="{position: 'absolute', left: Data.left, top: Data.top}">
14
14
  <div :class="Data.id < 9 ? '' : 'hide'">
15
15
  <svg v-if="Data.id === 4 || Data.id === 8" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 18.1 14.5" :width="IconLenghDiaoTou" :height="IconWdithDiaoTou">
16
- <path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M0,8.8c0,3.1,2.2,5.7,4.9,5.7h13.2v-2.5H4.9c-1.3,0-2.4-1.4-2.4-3.1s1.1-3.1,2.4-3.1h3.6v3.1l7.7-4.4L8.6,0v3.1H4.9C2.2,3.1,0,5.7,0,8.8z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
17
- <path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M18.1,5.7c0-3.1-2.2-5.7-4.9-5.7H0v2.5h13.3c1.3,0,2.4,1.4,2.4,3.1s-1.1,3.1-2.4,3.1H9.7V5.6L2,10l7.6,4.5v-3.2h3.6C15.9,11.3,18.1,8.8,18.1,5.7z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
16
+ <path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M4.876,3.054H8.5V0.039L16.07,4.276,8.411,8.513V5.5H4.792C3.53,5.5,2.436,6.883,2.436,8.513s1.094,3.015,2.357,3.015H18.006v2.444H4.876A5.2,5.2,0,0,1-.005,8.513,5.2,5.2,0,0,1,4.876,3.054Z" transform="translate(0 -0.031)" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
17
+ <path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M13.124,10.964H9.5v3.028L1.93,9.736,9.589,5.48V8.508h3.619c1.262,0,2.357-1.391,2.357-3.028S14.47,2.452,13.208,2.452H-0.006V0H13.124c2.693,0,4.881,2.455,4.881,5.483S15.817,10.964,13.124,10.964Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
18
18
  </svg>
19
19
  <svg v-else version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
20
20
  viewBox="0 0 36 26" style="enable-background:new 0 0 36 26;" xml:space="preserve" :width="IconLengh" :height="IconWdith">
@@ -38,8 +38,8 @@ L3.3,16l9,5.3v-3.8h4.3C19.8,17.5,22.4,14.5,22.4,10.8z" :fill="this.FlashColor ?
38
38
  </div>
39
39
  <div :class="Data.id >= 9 ? '' : 'hide'">
40
40
  <svg v-if="Data.id === 12 || Data.id === 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 14.5 18.1" :width="IconWdithDiaoTou" :height="IconLenghDiaoTou">
41
- <path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M5.7,0C2.5,0,0,2.2,0,4.9l0,13.2h2.5V4.9c0-1.3,1.4-2.4,3.1-2.4s3.1,1.1,3.1,2.4v3.6H5.7l4.4,7.7l4.4-7.7h-3.2V4.9C11.3,2.2,8.8,0,5.7,0z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
42
- <path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M8.8,18.1c3.1,0,5.7-2.2,5.7-4.9V0l-2.5,0v13.3c0,1.3-1.4,2.4-3.1,2.4s-3.1-1.1-3.1-2.4V9.7h3.1L4.4,2L0,9.6h3.1v3.6C3.1,15.9,5.7,18.1,8.8,18.1z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
41
+ <path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M10.946,4.876V8.5h3.015L9.724,16.07,5.487,8.411H8.5V4.792c0-1.262-1.385-2.357-3.015-2.357S2.472,3.53,2.472,4.792V18.006H0.028V4.876A5.2,5.2,0,0,1,5.487-.005,5.2,5.2,0,0,1,10.946,4.876Z" transform="translate(-0.031)" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
42
+ <path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M3.036,13.124V9.5H0.008L4.264,1.93,8.52,9.589H5.492v3.619c0,1.262,1.391,2.357,3.028,2.357s3.028-1.094,3.028-2.357V-0.006H14V13.124c0,2.693-2.455,4.881-5.483,4.881S3.036,15.817,3.036,13.124Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
43
43
  </svg>
44
44
  <svg v-else version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
45
45
  viewBox="0 0 26 36" style="enable-background:new 0 0 26 36;" xml:space="preserve" :width="IconWdith" :height="IconLengh">
@@ -12,9 +12,9 @@
12
12
  <template>
13
13
  <div :id="Data.key" :style="{position: 'absolute', left: Data.left, top: Data.top}">
14
14
  <div :class="Data.id < 9 ? '' : 'hide'">
15
- <svg v-if="Data.id === 4 || Data.id === 8" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18.11 14.47" :width="IconLenghDiaoTou" :height="IconWdithDiaoTou">
16
- <path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M4.91,11.34H8.55v3.13l7.7-4.4-7.7-4.4V8.8H4.91c-1.27,0-2.37-1.44-2.37-3.13s1.1-3.13,2.37-3.13h13.2V0H4.91C2.2,0,0,2.54,0,5.67S2.2,11.34,4.91,11.34Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
17
- <path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M13.2,3.22H9.56V0L2,4.48l7.7,4.4V5.75h3.63c1.27,0,2.37,1.44,2.37,3.13S14.55,12,13.28,12H0v2.53H13.2c2.71,0,4.91-2.53,4.91-5.67S15.91,3.22,13.2,3.22Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
15
+ <svg v-if="Data.id === 4 || Data.id === 8" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 14" :width="IconLenghDiaoTou" :height="IconWdithDiaoTou">
16
+ <path id="东掉头" :class="Data.name === '东掉头' ? '' : 'invisible'" d="M4.876,10.981H8.5v3.042L16.07,9.748,8.411,5.474V8.515H4.792c-1.262,0-2.357-1.4-2.357-3.042S3.53,2.432,4.792,2.432H18.006V-0.034H4.876c-2.693,0-4.881,2.466-4.881,5.508S2.183,10.981,4.876,10.981Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
17
+ <path id="西掉头" :class="Data.name === '西掉头' ? '' : 'invisible'" d="M13.124,3.036H9.5V0.008L1.93,4.264,9.589,8.52V5.492h3.619c1.262,0,2.357,1.391,2.357,3.028s-1.094,3.028-2.357,3.028H-0.006V14H13.124c2.693,0,4.881-2.455,4.881-5.483S15.817,3.036,13.124,3.036Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)"/>
18
18
  </svg>
19
19
  <svg v-else xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 36 26" :width="IconLengh" :height="IconWdith">
20
20
  <!-- 东相位 -->
@@ -36,9 +36,9 @@
36
36
  </svg>
37
37
  </div>
38
38
  <div :class="Data.id >= 9 ? '' : 'hide'">
39
- <svg v-if="Data.id === 12 || Data.id === 16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.47 18.11" :width="IconWdithDiaoTou" :height="IconLenghDiaoTou">
40
- <path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M3.22,4.91V8.55H0l4.4,7.7,4.4-7.7H5.67V4.91c0-1.27,1.44-2.37,3.13-2.37s3.13,1.1,3.13,2.37v13.2h2.54V4.91C14.47,2.2,11.93,0,8.8,0S3.22,2.2,3.22,4.91Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
41
- <path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M11.34,13.2V9.56h3.13L10.07,2l-4.4,7.7H8.8v3.63c0,1.27-1.44,2.37-3.13,2.37s-3.13-1.1-3.13-2.37V0H0V13.2c0,2.71,2.54,4.91,5.67,4.91S11.34,15.91,11.34,13.2Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
39
+ <svg v-if="Data.id === 12 || Data.id === 16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 18" :width="IconWdithDiaoTou" :height="IconLenghDiaoTou">
40
+ <path id="南掉头" :class="Data.name === '南掉头' ? '' : 'invisible'" d="M3.036,4.876V8.5H0.008L4.264,16.07,8.52,8.411H5.492V4.792c0-1.262,1.391-2.357,3.028-2.357s3.028,1.094,3.028,2.357V18.006H14V4.876C14,2.183,11.548-.005,8.52-0.005S3.036,2.183,3.036,4.876Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
41
+ <path id="北掉头" :class="Data.name === '北掉头' ? '' : 'invisible'" d="M10.981,13.124V9.5h3.042L9.748,1.93,5.474,9.589H8.515v3.619c0,1.262-1.4,2.357-3.042,2.357S2.432,14.47,2.432,13.208V-0.006H-0.034V13.124c0,2.693,2.466,4.881,5.508,4.881S10.981,15.817,10.981,13.124Z" :fill="this.FlashColor ? this.FlashColor : (Data.color ? Data.color : defaultColor)" />
42
42
  </svg>
43
43
  <svg v-else xmlns="http://www.w3.org/2000/svg" x="0px" y="0px"
44
44
  viewBox="0 0 26 36" style="enable-background:new 0 0 26 36;" xml:space="preserve" :width="IconWdith" :height="IconLengh">
@@ -119,11 +119,11 @@ export default {
119
119
  },
120
120
  IconLenghDiaoTou: {
121
121
  type: String,
122
- default: '18.11px'
122
+ default: '18px'
123
123
  },
124
124
  IconWdithDiaoTou: {
125
125
  type: String,
126
- default: '14.47px'
126
+ default: '14px'
127
127
  },
128
128
  Data: {
129
129
  type: Object
@@ -24,8 +24,8 @@
24
24
  "id": 4,
25
25
  "name": "东掉头",
26
26
  "ename": "East-Back",
27
- "x": "601px",
28
- "y": "297.8px"
27
+ "x": "602px",
28
+ "y": "300px"
29
29
  },
30
30
  {
31
31
  "id": 5,
@@ -52,8 +52,8 @@
52
52
  "id": 8,
53
53
  "name": "西掉头",
54
54
  "ename": "West-Back",
55
- "x": "246px",
56
- "y": "330.8px"
55
+ "x": "247px",
56
+ "y": "333px"
57
57
  },
58
58
  {
59
59
  "id": 9,
@@ -80,8 +80,8 @@
80
80
  "id": 12,
81
81
  "name": "北掉头",
82
82
  "ename": "North-Back",
83
- "x": "411px",
84
- "y": "136px"
83
+ "x": "412px",
84
+ "y": "137px"
85
85
  },
86
86
  {
87
87
  "id": 13,
@@ -109,7 +109,7 @@
109
109
  "name": "南掉头",
110
110
  "ename": "South-Back",
111
111
  "x": "444px",
112
- "y": "490px"
112
+ "y": "489px"
113
113
  }
114
114
  ]
115
115
  }