1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
| var list = ["yz_202312210030.dat",
| "yz_202312210100.dat",
| "yz_202312210130.dat",
| "yz_202312210200.dat",
| "yz_202312210230.dat",
| "yz_202312210300.dat",
| "yz_202312210330.dat",
| "yz_202312210400.dat",
| "yz_202312210430.dat",
| "yz_202312210500.dat",
| "yz_202312210530.dat",
| "yz_202312210600.dat",
| "yz_202312210630.dat",
| "yz_202312210700.dat",
| "yz_202312210730.dat",
| "yz_202312210800.dat",
| "yz_202312210830.dat",
| "yz_202312210900.dat",
| "yz_202312210930.dat",
| "yz_202312211000.dat",
| "yz_202312211030.dat",
| "yz_202312211100.dat",
| "yz_202312211130.dat",
| "yz_202312211200.dat",
| "yz_202312211230.dat",
| "yz_202312211300.dat",
| "yz_202312211330.dat",
| "yz_202312211400.dat",
| "yz_202312211430.dat",
| "yz_202312211500.dat",
| "yz_202312211530.dat",
| "yz_202312211600.dat",
| "yz_202312211630.dat",
| "yz_202312211700.dat",
| "yz_202312211730.dat",
| "yz_202312211800.dat",
| "yz_202312211830.dat",
| "yz_202312211900.dat",
| "yz_202312211930.dat",
| "yz_202312212000.dat",
| "yz_202312212030.dat",
| "yz_202312212100.dat",
| "yz_202312212130.dat",
| "yz_202312212200.dat",
| "yz_202312212230.dat",
| "yz_202312212300.dat",
| "yz_202312212330.dat",
| "yz_202312210000.dat"
| ];
| var signallingData = {
| extent: {
| minx: 999,
| miny: 999,
| maxx: -999,
| maxy: -999,
| dx: 999,
| dy: 999,
| },
| pixels: [],
| positions: [],
| values: [],
| count: [],
| canvas: [],
| heatmap: [],
| dataSource:null,
| heatmapEntity: null,
| posFinish: false,
| valueFinish: 0,
| selectid: 0,
| color: null,
| };
|
|
| function getData(id, callback) {
| fetch("./static/Signalling/data/" + list[id]).then(response => response.arrayBuffer()).then(data => {
|
| console.log(data);
| debugger
| var dataView = new DataView(data);
| signallingData.values[id] = [];
| for (var i = 0; i < dataView.byteLength; i += 2) {
| let value = dataView.getInt16(i, true);
| signallingData.values[id].push(value);
| }
| signallingData.valueFinish++;
| if (signallingData.valueFinish == list.length) {
| dataDraw(callback);
| }
| });
|
| }
|
| function getDatas(callback) {
| signallingData.valueFinish = 0;
| for (let i = 0; i < list.length; i++) {
|
| getData(i, callback);
| }
| }
| function updataExtent(x, y) {
| if (signallingData.extent.minx > x) {
| signallingData.extent.minx = x;
| }
| if (signallingData.extent.miny > y) {
| signallingData.extent.miny = y;
| }
| if (signallingData.extent.maxx < x) {
| signallingData.extent.maxx = x;
| }
| if (signallingData.extent.maxy < y) {
| signallingData.extent.maxy = y;
| }
| signallingData.extent.dx = signallingData.extent.maxx - signallingData.extent.minx;
| signallingData.extent.dy = signallingData.extent.maxy - signallingData.extent.miny;
| }
| function requestData(callback) {
| fetch("./static/Signalling/data/positions.dat").then(response => response.arrayBuffer()).then(data => {
|
| var dataView = new DataView(data);
| for (var i = 0; i < dataView.byteLength; i += 8) {
| let x = dataView.getFloat32(i, true);
| let y = dataView.getFloat32(i + 4, true);
| updataExtent(x, y);
| signallingData.positions.push([x, y]);
| }
| signallingData.posFinish = true;
|
| getDatas(callback);
| });
| }
|
|