raain-model 2.5.3 → 2.6.1
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/RELEASE.md +1 -0
- package/cartesian/CartesianMeasureValue.d.ts +0 -10
- package/cartesian/CartesianMeasureValue.js +2 -16
- package/cartesian/CartesianMeasureValue.js.map +1 -1
- package/cartesian/CartesianTools.d.ts +36 -0
- package/cartesian/CartesianTools.js +255 -0
- package/cartesian/CartesianTools.js.map +1 -0
- package/cartesian/ICartesianMeasureValue.d.ts +0 -1
- package/cartesian/LatLng.js +5 -5
- package/cartesian/LatLng.js.map +1 -1
- package/cartesian/RadarCartesianMeasureValue.d.ts +0 -4
- package/cartesian/RadarCartesianMeasureValue.js.map +1 -1
- package/cartesian/RainCartesianMeasureValue.d.ts +0 -4
- package/cartesian/RainCartesianMeasureValue.js.map +1 -1
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/polar/PolarMeasureValue.d.ts +1 -1
- package/polar/PolarMeasureValue.js +3 -0
- package/polar/PolarMeasureValue.js.map +1 -1
- package/polar/PolarMeasureValueMap.js +4 -2
- package/polar/PolarMeasureValueMap.js.map +1 -1
- package/quality/SpeedMatrix.js +3 -6
- package/quality/SpeedMatrix.js.map +1 -1
- package/quality/tools/QualityTools.d.ts +1 -16
- package/quality/tools/QualityTools.js +3 -128
- package/quality/tools/QualityTools.js.map +1 -1
- package/rain/RainComputation.d.ts +4 -2
- package/rain/RainComputation.js +1 -2
- package/rain/RainComputation.js.map +1 -1
- package/rain/RainComputationAbstract.d.ts +32 -9
- package/rain/RainComputationAbstract.js +66 -46
- package/rain/RainComputationAbstract.js.map +1 -1
- package/rain/RainComputationMap.d.ts +7 -6
- package/rain/RainComputationMap.js +13 -12
- package/rain/RainComputationMap.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolarMeasureValueMap.js","sourceRoot":"","sources":["../../src/polar/PolarMeasureValueMap.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PolarMeasureValueMap.js","sourceRoot":"","sources":["../../src/polar/PolarMeasureValueMap.ts"],"names":[],"mappings":"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"}
|
package/quality/SpeedMatrix.js
CHANGED
|
@@ -7,14 +7,14 @@ const QualityTools_1 = require("./tools/QualityTools");
|
|
|
7
7
|
const Position_1 = require("./position/Position");
|
|
8
8
|
const QualityPoint_1 = require("./QualityPoint");
|
|
9
9
|
const CartesianValue_1 = require("../cartesian/CartesianValue");
|
|
10
|
-
const
|
|
10
|
+
const CartesianTools_1 = require("../cartesian/CartesianTools");
|
|
11
11
|
class SpeedMatrix {
|
|
12
12
|
constructor(name, remarks, qualityPoints, speed = { angleInDegrees: 0, pixelsPerPeriod: 0 }, trustedTechnicalIndicator = SpeedMatrix.DEFAULT_TRUSTED_INDICATOR, flattenPositionRange = {
|
|
13
13
|
xMin: -SpeedMatrix.DEFAULT_MATRIX_RANGE,
|
|
14
14
|
xMax: SpeedMatrix.DEFAULT_MATRIX_RANGE,
|
|
15
15
|
yMin: -SpeedMatrix.DEFAULT_MATRIX_RANGE,
|
|
16
16
|
yMax: SpeedMatrix.DEFAULT_MATRIX_RANGE
|
|
17
|
-
}, roundScale = new Position_1.Position({ x:
|
|
17
|
+
}, roundScale = new Position_1.Position({ x: CartesianTools_1.CartesianTools.DEFAULT_SCALE, y: CartesianTools_1.CartesianTools.DEFAULT_SCALE })) {
|
|
18
18
|
this.name = name;
|
|
19
19
|
this.remarks = remarks;
|
|
20
20
|
this.qualityPoints = qualityPoints;
|
|
@@ -228,10 +228,7 @@ class SpeedMatrix {
|
|
|
228
228
|
const lat = qualityPoint.getRainLat() - qualityPoint.gaugeCartesianValue.lat;
|
|
229
229
|
const lng = qualityPoint.getRainLng() - qualityPoint.gaugeCartesianValue.lng;
|
|
230
230
|
const cartesianValue = new CartesianValue_1.CartesianValue({ value, lat, lng });
|
|
231
|
-
const position = QualityTools_1.QualityTools.MapLatLngToPosition(cartesianValue
|
|
232
|
-
lat: QualityTools_1.QualityTools.DEFAULT_SCALE,
|
|
233
|
-
lng: QualityTools_1.QualityTools.DEFAULT_SCALE
|
|
234
|
-
}));
|
|
231
|
+
const position = QualityTools_1.QualityTools.MapLatLngToPosition(cartesianValue);
|
|
235
232
|
const positionX = Math.round((position.x / this.roundScale.x) - this.flattenPositionRange.xMin);
|
|
236
233
|
const positionY = Math.round((position.y / this.roundScale.y) - this.flattenPositionRange.yMin);
|
|
237
234
|
if (0 <= positionX && positionX < xWidth && 0 <= positionY && positionY < yWidth) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpeedMatrix.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrix.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAC1D,4DAAuD;AACvD,uDAAkD;AAClD,kDAA6C;AAC7C,iDAA4C;AAC5C,gEAA2D;AAC3D,
|
|
1
|
+
{"version":3,"file":"SpeedMatrix.js","sourceRoot":"","sources":["../../src/quality/SpeedMatrix.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
import { LatLng } from '../../cartesian/LatLng';
|
|
2
2
|
import { Position } from '../position/Position';
|
|
3
|
-
import { CartesianValue } from '../../cartesian/CartesianValue';
|
|
4
3
|
export declare class QualityTools {
|
|
5
|
-
static DEFAULT_SCALE: number;
|
|
6
4
|
static IndexOfDualArray(array: any, itemToFind: any): any;
|
|
7
5
|
static Precision(a: any): number;
|
|
8
|
-
static
|
|
9
|
-
static LimitWithPrecision(latOrLng: number, precision?: number): number;
|
|
10
|
-
static IsEqualsLatLng(latOrLng1: number, latOrLng2: number, cartesianStep?: number): boolean;
|
|
11
|
-
static IsAroundLatLng(latLngCenter: LatLng, latLngAround: LatLng, stepRange: number, cartesianStep?: number): boolean;
|
|
12
|
-
static IsNotAroundLatLng(latLngCenter: LatLng, latLngAround: LatLng, stepRange: number, cartesianStep?: number): boolean;
|
|
13
|
-
static MapLatLngToPosition(latLng: LatLng, rounded?: boolean, cartesianPixelWidth?: LatLng): Position;
|
|
6
|
+
static MapLatLngToPosition(latLng: LatLng): Position;
|
|
14
7
|
static MapPositionToLatLng(position: Position): LatLng;
|
|
15
|
-
static DegToRad(azimuthInDegrees: number): number;
|
|
16
|
-
static GetAzimuthRad(angleInDegrees: number): number;
|
|
17
|
-
static ComputeLatSteps(cartesianValues: CartesianValue[]): number[];
|
|
18
|
-
static ComputeLngSteps(cartesianValues: CartesianValue[]): number[];
|
|
19
|
-
static LogCartesianValues(cartesianValues: CartesianValue[], logger?: Console): void;
|
|
20
|
-
static UniqNum(a: number[]): number[];
|
|
21
|
-
static UniqStr(a: number[]): number[];
|
|
22
8
|
static CreateNDimArray(dimensions: any[], defaultValue?: any): any[];
|
|
23
|
-
protected static LabelWithSign(val: number): string;
|
|
24
9
|
}
|
|
@@ -23,68 +23,9 @@ class QualityTools {
|
|
|
23
23
|
}
|
|
24
24
|
return p;
|
|
25
25
|
}
|
|
26
|
-
static
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
return result;
|
|
30
|
-
}
|
|
31
|
-
return parseFloat(parseFloat('' + result).toPrecision(12));
|
|
32
|
-
// alternative ?
|
|
33
|
-
// let decimalPlaces = 0;
|
|
34
|
-
// if (('' + scale).indexOf('0.') === 0) {
|
|
35
|
-
// decimalPlaces = ('' + scale).substring(2).length;
|
|
36
|
-
// } else {
|
|
37
|
-
// return Math.round(latOrLng / scale) * scale;
|
|
38
|
-
// }
|
|
39
|
-
// const p = Math.pow(10, decimalPlaces || 0);
|
|
40
|
-
// const n = (latOrLng * p) * (1 + Number.EPSILON);
|
|
41
|
-
// return Math.round(n) / p;
|
|
42
|
-
}
|
|
43
|
-
static LimitWithPrecision(latOrLng, precision = 12) {
|
|
44
|
-
return parseFloat(parseFloat('' + latOrLng).toPrecision(precision));
|
|
45
|
-
}
|
|
46
|
-
static IsEqualsLatLng(latOrLng1, latOrLng2, cartesianStep = QualityTools.DEFAULT_SCALE) {
|
|
47
|
-
return QualityTools.RoundLatLng(latOrLng1, cartesianStep, true) === QualityTools.RoundLatLng(latOrLng2, cartesianStep, true);
|
|
48
|
-
}
|
|
49
|
-
static IsAroundLatLng(latLngCenter, latLngAround, stepRange, cartesianStep = QualityTools.DEFAULT_SCALE) {
|
|
50
|
-
let isAround = false;
|
|
51
|
-
const min = -stepRange * cartesianStep, max = stepRange * cartesianStep;
|
|
52
|
-
for (let lat = min; !isAround && lat <= max; lat += cartesianStep) {
|
|
53
|
-
for (let lng = min; !isAround && lng <= max; lng += cartesianStep) {
|
|
54
|
-
isAround = QualityTools.RoundLatLng(latLngCenter.lat, cartesianStep, true)
|
|
55
|
-
=== QualityTools.RoundLatLng(latLngAround.lat + lat, cartesianStep, true);
|
|
56
|
-
if (isAround) {
|
|
57
|
-
isAround = QualityTools.RoundLatLng(latLngCenter.lng, cartesianStep, true)
|
|
58
|
-
=== QualityTools.RoundLatLng(latLngAround.lng + lng, cartesianStep, true);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return isAround;
|
|
63
|
-
}
|
|
64
|
-
static IsNotAroundLatLng(latLngCenter, latLngAround, stepRange, cartesianStep = QualityTools.DEFAULT_SCALE) {
|
|
65
|
-
const max = (stepRange * cartesianStep) + Number.EPSILON;
|
|
66
|
-
let isOut = QualityTools.RoundLatLng(latLngCenter.lat, cartesianStep)
|
|
67
|
-
> QualityTools.RoundLatLng(latLngAround.lat + max, cartesianStep)
|
|
68
|
-
|| QualityTools.RoundLatLng(latLngCenter.lat, cartesianStep)
|
|
69
|
-
< QualityTools.RoundLatLng(latLngAround.lat - max, cartesianStep);
|
|
70
|
-
if (!isOut) {
|
|
71
|
-
isOut = QualityTools.RoundLatLng(latLngCenter.lng, cartesianStep)
|
|
72
|
-
> QualityTools.RoundLatLng(latLngAround.lng + max, cartesianStep)
|
|
73
|
-
|| QualityTools.RoundLatLng(latLngCenter.lng, cartesianStep)
|
|
74
|
-
< QualityTools.RoundLatLng(latLngAround.lng - max, cartesianStep);
|
|
75
|
-
}
|
|
76
|
-
return isOut;
|
|
77
|
-
}
|
|
78
|
-
static MapLatLngToPosition(latLng, rounded, cartesianPixelWidth) {
|
|
79
|
-
let x = latLng.lng;
|
|
80
|
-
let y = latLng.lat;
|
|
81
|
-
if (rounded) {
|
|
82
|
-
if (!cartesianPixelWidth) {
|
|
83
|
-
throw new Error('need cartesianPixelWidth to MapLatLngToPosition');
|
|
84
|
-
}
|
|
85
|
-
x = QualityTools.RoundLatLng(x, cartesianPixelWidth.lng, true);
|
|
86
|
-
y = QualityTools.RoundLatLng(y, cartesianPixelWidth.lat, true);
|
|
87
|
-
}
|
|
26
|
+
static MapLatLngToPosition(latLng) {
|
|
27
|
+
const x = latLng.lng;
|
|
28
|
+
const y = latLng.lat;
|
|
88
29
|
return new Position_1.Position({ x, y });
|
|
89
30
|
}
|
|
90
31
|
static MapPositionToLatLng(position) {
|
|
@@ -92,60 +33,6 @@ class QualityTools {
|
|
|
92
33
|
const lat = position.y;
|
|
93
34
|
return new LatLng_1.LatLng({ lat, lng });
|
|
94
35
|
}
|
|
95
|
-
static DegToRad(azimuthInDegrees) {
|
|
96
|
-
return azimuthInDegrees * Math.PI / 180;
|
|
97
|
-
}
|
|
98
|
-
static GetAzimuthRad(angleInDegrees) {
|
|
99
|
-
return QualityTools.DegToRad(-angleInDegrees + 90);
|
|
100
|
-
}
|
|
101
|
-
static ComputeLatSteps(cartesianValues) {
|
|
102
|
-
const lats = cartesianValues.map(c => c.lat).sort((a, b) => a - b);
|
|
103
|
-
return QualityTools.UniqNum(lats);
|
|
104
|
-
}
|
|
105
|
-
static ComputeLngSteps(cartesianValues) {
|
|
106
|
-
const lngs = cartesianValues.map(c => c.lng).sort((a, b) => a - b);
|
|
107
|
-
return QualityTools.UniqNum(lngs);
|
|
108
|
-
}
|
|
109
|
-
static LogCartesianValues(cartesianValues, logger = console) {
|
|
110
|
-
logger === null || logger === void 0 ? void 0 : logger.log('>> raain-quality ### logCartesianValues with', cartesianValues.length, QualityTools.DEFAULT_SCALE, ' in progress...');
|
|
111
|
-
const pointsToShow = {};
|
|
112
|
-
const latSteps = QualityTools.ComputeLatSteps(cartesianValues);
|
|
113
|
-
const lngSteps = QualityTools.ComputeLngSteps(cartesianValues);
|
|
114
|
-
const labelX = (v) => {
|
|
115
|
-
return QualityTools.LabelWithSign(v);
|
|
116
|
-
};
|
|
117
|
-
const labelY = (v) => {
|
|
118
|
-
return QualityTools.LabelWithSign(v);
|
|
119
|
-
};
|
|
120
|
-
const valueDisplay = (v) => {
|
|
121
|
-
return '' + Math.round(v * 100) / 100;
|
|
122
|
-
};
|
|
123
|
-
for (let lat of latSteps) {
|
|
124
|
-
const xObject = {};
|
|
125
|
-
for (let lng of lngSteps) {
|
|
126
|
-
const latLng = new LatLng_1.LatLng({ lat, lng });
|
|
127
|
-
latLng.setPrecision(12);
|
|
128
|
-
lat = latLng.lat;
|
|
129
|
-
lng = latLng.lng;
|
|
130
|
-
xObject[labelX(lng)] = valueDisplay(0);
|
|
131
|
-
}
|
|
132
|
-
pointsToShow[labelY(lat)] = xObject;
|
|
133
|
-
}
|
|
134
|
-
for (const [index, point] of cartesianValues.entries()) {
|
|
135
|
-
let value = valueDisplay(point.value);
|
|
136
|
-
if (pointsToShow[labelY(point.lat)][labelX(point.lng)] !== '0') {
|
|
137
|
-
value = '' + value + '?' + pointsToShow[labelY(point.lat)][labelX(point.lng)];
|
|
138
|
-
}
|
|
139
|
-
pointsToShow[labelY(point.lat)][labelX(point.lng)] = value;
|
|
140
|
-
}
|
|
141
|
-
logger === null || logger === void 0 ? void 0 : logger.table(pointsToShow);
|
|
142
|
-
}
|
|
143
|
-
static UniqNum(a) {
|
|
144
|
-
return [...new Set(a)];
|
|
145
|
-
}
|
|
146
|
-
static UniqStr(a) {
|
|
147
|
-
return [...new Set(a)];
|
|
148
|
-
}
|
|
149
36
|
static CreateNDimArray(dimensions, defaultValue) {
|
|
150
37
|
if (dimensions.length > 0) {
|
|
151
38
|
const dim = dimensions[0];
|
|
@@ -163,18 +50,6 @@ class QualityTools {
|
|
|
163
50
|
return undefined;
|
|
164
51
|
}
|
|
165
52
|
}
|
|
166
|
-
static LabelWithSign(val) {
|
|
167
|
-
const value = val;
|
|
168
|
-
if (value < 0) {
|
|
169
|
-
return '' + value;
|
|
170
|
-
}
|
|
171
|
-
else if (value === 0) {
|
|
172
|
-
return ' ' + 0;
|
|
173
|
-
}
|
|
174
|
-
return '+' + value;
|
|
175
|
-
}
|
|
176
53
|
}
|
|
177
54
|
exports.QualityTools = QualityTools;
|
|
178
|
-
// scale of Pixel regarding LatLng : 1 => 100km, 0.01 => 1km, 0.005 => 500m
|
|
179
|
-
QualityTools.DEFAULT_SCALE = 0.01;
|
|
180
55
|
//# sourceMappingURL=QualityTools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityTools.js","sourceRoot":"","sources":["../../../src/quality/tools/QualityTools.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAC9C,mDAA8C;
|
|
1
|
+
{"version":3,"file":"QualityTools.js","sourceRoot":"","sources":["../../../src/quality/tools/QualityTools.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAC9C,mDAA8C;AAE9C,MAAa,YAAY;IAEd,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,UAAU;QAC5C,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,OAAO,CAAC,CAAC;QACb,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,CAAC,IAAI,EAAE,CAAC;YACR,CAAC,EAAE,CAAC;QACR,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAGM,MAAM,CAAC,mBAAmB,CAAC,MAAc;QAC5C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;QACrB,OAAO,IAAI,mBAAQ,CAAC,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;IAChC,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAAC,QAAkB;QAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC;QACvB,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC;QACvB,OAAO,IAAI,eAAM,CAAC,EAAC,GAAG,EAAE,GAAG,EAAC,CAAC,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,UAAiB,EAAE,YAAkB;QAC/D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,QAAQ,GAAG,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3B,QAAQ,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;gBAC/D,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;oBACrC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC1F,CAAC;YACL,CAAC;YACD,OAAO,QAAQ,CAAC;QACpB,CAAC;aAAM,CAAC;YACJ,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;CAEJ;AArDD,oCAqDC"}
|
|
@@ -2,9 +2,10 @@ import { RaainNode } from '../organization/RaainNode';
|
|
|
2
2
|
import { Link } from '../organization/Link';
|
|
3
3
|
import { RainPolarMeasureValue } from '../polar/RainPolarMeasureValue';
|
|
4
4
|
import { RainCartesianMeasureValue } from '../cartesian/RainCartesianMeasureValue';
|
|
5
|
-
import { RainComputationAbstract } from './RainComputationAbstract';
|
|
5
|
+
import { MergeStrategy, RainComputationAbstract } from './RainComputationAbstract';
|
|
6
6
|
import { LatLng } from '../cartesian/LatLng';
|
|
7
7
|
import { RainMeasure } from './RainMeasure';
|
|
8
|
+
import { CartesianTools } from '../cartesian/CartesianTools';
|
|
8
9
|
/**
|
|
9
10
|
* api/rains/:rainId/computations/:computationId
|
|
10
11
|
* or as an array on
|
|
@@ -33,8 +34,9 @@ export declare class RainComputation extends RainComputationAbstract {
|
|
|
33
34
|
stringify: boolean;
|
|
34
35
|
}): any;
|
|
35
36
|
mergeCartesianResults(options: {
|
|
36
|
-
|
|
37
|
+
mergeStrategy: MergeStrategy;
|
|
37
38
|
mergeLimitPoints: [LatLng, LatLng];
|
|
39
|
+
cartesianTools: CartesianTools;
|
|
38
40
|
removeNullValues?: boolean;
|
|
39
41
|
}): RainMeasure[];
|
|
40
42
|
protected getLinkType(): string;
|
package/rain/RainComputation.js
CHANGED
|
@@ -24,10 +24,9 @@ class RainComputation extends RainComputationAbstract_1.RainComputationAbstract
|
|
|
24
24
|
}
|
|
25
25
|
mergeCartesianResults(options) {
|
|
26
26
|
this.buildLatLngMatrix(options);
|
|
27
|
-
const values = this.results;
|
|
28
27
|
return this.mergeRainMeasures([new RainMeasure_1.RainMeasure({
|
|
29
28
|
id: this.id,
|
|
30
|
-
values,
|
|
29
|
+
values: this.results,
|
|
31
30
|
date: this.date
|
|
32
31
|
})], options);
|
|
33
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RainComputation.js","sourceRoot":"","sources":["../../src/rain/RainComputation.ts"],"names":[],"mappings":";;;AAEA,0EAAqE;AACrE,sFAAiF;AACjF,
|
|
1
|
+
{"version":3,"file":"RainComputation.js","sourceRoot":"","sources":["../../src/rain/RainComputation.ts"],"names":[],"mappings":";;;AAEA,0EAAqE;AACrE,sFAAiF;AACjF,uEAAiF;AAEjF,+CAA0C;AAG1C;;;;GAIG;AACH,MAAa,eAAgB,SAAQ,iDAAuB;IAQxD,YAAY,IAgBX;QACG,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAEM,MAAM,CAAC,OAAO,GAAG;QACpB,SAAS,EAAE,KAAK;KACnB;QACG,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,qBAAqB,CAAC,OAKrB;QAEG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhC,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,yBAAW,CAAC;gBAC3C,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;aAClB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAClB,CAAC;IAES,WAAW;QACjB,OAAO,eAAe,CAAC,IAAI,CAAC;IAChC,CAAC;IAEO,UAAU,CAAC,OAAyE;QACxF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC3B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/D,OAAO,IAAI,6CAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC;iBAAM,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;gBAC7B,OAAO,IAAI,6CAAqB,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvD,OAAO,IAAI,qDAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;gBAC3B,OAAO,IAAI,qDAAyB,CAAC,CAAC,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,CAAC;YACb,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;;AAjFL,0CAmFC;AAjFiB,oBAAI,GAAG,kBAAkB,CAAC"}
|
|
@@ -3,6 +3,19 @@ import { Link } from '../organization/Link';
|
|
|
3
3
|
import { LatLng } from '../cartesian/LatLng';
|
|
4
4
|
import { RainMeasure } from './RainMeasure';
|
|
5
5
|
import { CartesianValue } from '../cartesian/CartesianValue';
|
|
6
|
+
import { CartesianTools } from '../cartesian/CartesianTools';
|
|
7
|
+
export declare enum MergeStrategy {
|
|
8
|
+
NONE = "none",
|
|
9
|
+
SUM = "sum",
|
|
10
|
+
AVERAGE = "average",
|
|
11
|
+
MAX = "max"
|
|
12
|
+
}
|
|
13
|
+
interface MergeLatLng {
|
|
14
|
+
sum: number;
|
|
15
|
+
max: number;
|
|
16
|
+
count: number;
|
|
17
|
+
latLng: LatLng;
|
|
18
|
+
}
|
|
6
19
|
/**
|
|
7
20
|
* not used directly
|
|
8
21
|
*/
|
|
@@ -17,8 +30,8 @@ export declare class RainComputationAbstract extends RaainNode {
|
|
|
17
30
|
launchedBy: string;
|
|
18
31
|
name: string;
|
|
19
32
|
protected mergeTools: {
|
|
20
|
-
|
|
21
|
-
latsLngs:
|
|
33
|
+
cartesianTools: CartesianTools;
|
|
34
|
+
latsLngs: MergeLatLng[][];
|
|
22
35
|
limitPoints: LatLng[];
|
|
23
36
|
};
|
|
24
37
|
constructor(json: {
|
|
@@ -43,20 +56,30 @@ export declare class RainComputationAbstract extends RaainNode {
|
|
|
43
56
|
addRadarLinks(linksToAdd: Link[] | RaainNode[]): void;
|
|
44
57
|
replaceRainLink(linksToAdd: Link | RaainNode | any): void;
|
|
45
58
|
addRadarMeasureLinks(linksToAdd: Link[] | any[]): void;
|
|
46
|
-
|
|
59
|
+
getBuiltMergeTools(rainMeasures: RainMeasure[], options: {
|
|
60
|
+
cartesianTools: CartesianTools;
|
|
61
|
+
mergeLimitPoints: LatLng[];
|
|
62
|
+
}): {
|
|
63
|
+
cartesianTools: CartesianTools;
|
|
64
|
+
latsLngs: MergeLatLng[][];
|
|
65
|
+
limitPoints: LatLng[];
|
|
66
|
+
};
|
|
67
|
+
getMergeLatLngIndex(cartesianValue: CartesianValue): number[];
|
|
47
68
|
protected buildLatLngMatrix(options: {
|
|
48
|
-
|
|
69
|
+
cartesianTools: CartesianTools;
|
|
49
70
|
mergeLimitPoints: LatLng[];
|
|
50
71
|
}): {
|
|
51
|
-
|
|
52
|
-
latsLngs:
|
|
72
|
+
cartesianTools: CartesianTools;
|
|
73
|
+
latsLngs: MergeLatLng[][];
|
|
53
74
|
limitPoints: LatLng[];
|
|
54
75
|
};
|
|
76
|
+
protected buildMergeTools(rainMeasures: RainMeasure[]): void;
|
|
77
|
+
protected getLinkType(): string;
|
|
55
78
|
protected mergeRainMeasures(rainMeasures: RainMeasure[], options: {
|
|
79
|
+
mergeStrategy: MergeStrategy;
|
|
56
80
|
mergeLimitPoints: [LatLng, LatLng];
|
|
57
81
|
removeNullValues?: boolean;
|
|
58
82
|
}): RainMeasure[];
|
|
59
|
-
protected
|
|
60
|
-
protected getMergeLatLng(latIndex: number, lngIndex: number): number[];
|
|
61
|
-
protected buildMergeCartesianValues(): CartesianValue[];
|
|
83
|
+
protected buildMergeCartesianValues(mergeStrategy: MergeStrategy, removeNullValues?: boolean): CartesianValue[];
|
|
62
84
|
}
|
|
85
|
+
export {};
|
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RainComputationAbstract = void 0;
|
|
3
|
+
exports.RainComputationAbstract = exports.MergeStrategy = void 0;
|
|
4
4
|
const RaainNode_1 = require("../organization/RaainNode");
|
|
5
5
|
const Link_1 = require("../organization/Link");
|
|
6
6
|
const RadarNode_1 = require("../radar/RadarNode");
|
|
7
7
|
const RainNode_1 = require("./RainNode");
|
|
8
8
|
const RadarMeasure_1 = require("../radar/RadarMeasure");
|
|
9
|
-
const
|
|
9
|
+
const LatLng_1 = require("../cartesian/LatLng");
|
|
10
10
|
const RainMeasure_1 = require("./RainMeasure");
|
|
11
11
|
const CartesianMeasureValue_1 = require("../cartesian/CartesianMeasureValue");
|
|
12
12
|
const RainCartesianMeasureValue_1 = require("../cartesian/RainCartesianMeasureValue");
|
|
13
13
|
const CartesianValue_1 = require("../cartesian/CartesianValue");
|
|
14
|
+
const CartesianTools_1 = require("../cartesian/CartesianTools");
|
|
15
|
+
var MergeStrategy;
|
|
16
|
+
(function (MergeStrategy) {
|
|
17
|
+
MergeStrategy["NONE"] = "none";
|
|
18
|
+
MergeStrategy["SUM"] = "sum";
|
|
19
|
+
MergeStrategy["AVERAGE"] = "average";
|
|
20
|
+
MergeStrategy["MAX"] = "max";
|
|
21
|
+
})(MergeStrategy || (exports.MergeStrategy = MergeStrategy = {}));
|
|
14
22
|
/**
|
|
15
23
|
* not used directly
|
|
16
24
|
*/
|
|
@@ -98,34 +106,52 @@ class RainComputationAbstract extends RaainNode_1.RaainNode {
|
|
|
98
106
|
addRadarMeasureLinks(linksToAdd) {
|
|
99
107
|
this.addLinks(RainComputationAbstract._getRadarMeasureLinks(linksToAdd));
|
|
100
108
|
}
|
|
101
|
-
|
|
102
|
-
|
|
109
|
+
getBuiltMergeTools(rainMeasures, options) {
|
|
110
|
+
this.buildLatLngMatrix(options);
|
|
111
|
+
this.buildMergeTools(rainMeasures);
|
|
112
|
+
return this.mergeTools;
|
|
113
|
+
}
|
|
114
|
+
getMergeLatLngIndex(cartesianValue) {
|
|
115
|
+
const latLng = this.mergeTools.cartesianTools.getLatLngFromEarthMap(cartesianValue);
|
|
116
|
+
const latLngScale = this.mergeTools.cartesianTools.getScaleLatLngFromEarth(latLng);
|
|
117
|
+
const latIndex = Math.round((latLng.lat - this.mergeTools.limitPoints[0].lat) / latLngScale.lat);
|
|
118
|
+
const lngIndex = Math.round((latLng.lng - this.mergeTools.limitPoints[0].lng) / latLngScale.lng);
|
|
119
|
+
return [latIndex, lngIndex];
|
|
103
120
|
}
|
|
104
121
|
buildLatLngMatrix(options) {
|
|
105
122
|
const latsLngs = [];
|
|
106
|
-
const
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
123
|
+
const downPoint = options.cartesianTools.getLatLngFromEarthMap(options.mergeLimitPoints[0]);
|
|
124
|
+
const topPoint = options.cartesianTools.getLatLngFromEarthMap(options.mergeLimitPoints[1]);
|
|
125
|
+
const scaleLat = options.cartesianTools.getScaleLatLng(downPoint);
|
|
126
|
+
for (let lat = downPoint.lat; lat <= topPoint.lat; lat += scaleLat.lat) {
|
|
127
|
+
lat = CartesianTools_1.CartesianTools.LimitWithPrecision(lat);
|
|
128
|
+
const latLng = new LatLng_1.LatLng({ lat, lng: downPoint.lng });
|
|
129
|
+
const scaleLng = options.cartesianTools.getScaleLatLng(latLng);
|
|
130
|
+
const lngCount = Math.round((topPoint.lng - downPoint.lng) / scaleLng.lng) + 1;
|
|
131
|
+
const lngs = [];
|
|
132
|
+
for (let i = 0; i < lngCount; i++) {
|
|
133
|
+
const initValue = { sum: 0, max: 0, count: 0, latLng: undefined };
|
|
134
|
+
lngs.push(initValue);
|
|
135
|
+
}
|
|
136
|
+
latsLngs.push(lngs);
|
|
111
137
|
}
|
|
112
|
-
this.mergeTools = { latsLngs,
|
|
138
|
+
this.mergeTools = { latsLngs, cartesianTools: options.cartesianTools, limitPoints: [downPoint, topPoint] };
|
|
113
139
|
return this.mergeTools;
|
|
114
140
|
}
|
|
115
|
-
|
|
116
|
-
let rainMeasuresMerged = [];
|
|
117
|
-
let lastCartesianRainMeasure;
|
|
141
|
+
buildMergeTools(rainMeasures) {
|
|
118
142
|
for (const rainMeasure of rainMeasures) {
|
|
119
143
|
for (const value of rainMeasure.values) {
|
|
120
|
-
if (typeof value['cartesianValues'] !== 'undefined'
|
|
121
|
-
lastCartesianRainMeasure = rainMeasure;
|
|
144
|
+
if (typeof value['cartesianValues'] !== 'undefined') {
|
|
122
145
|
const cartesianMeasureValue = new CartesianMeasureValue_1.CartesianMeasureValue(value);
|
|
123
146
|
const cartesianValues = cartesianMeasureValue.getCartesianValues();
|
|
124
147
|
for (const cartesianValue of cartesianValues) {
|
|
125
148
|
const latLngIndex = this.getMergeLatLngIndex(cartesianValue);
|
|
126
149
|
if (latLngIndex[0] >= 0 && latLngIndex[1] >= 0 && latLngIndex[0] < this.mergeTools.latsLngs.length &&
|
|
127
150
|
latLngIndex[1] < this.mergeTools.latsLngs[latLngIndex[0]].length) {
|
|
128
|
-
this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]]
|
|
151
|
+
this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]].latLng = CartesianTools_1.CartesianTools.CreateLatLng(cartesianValue);
|
|
152
|
+
this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]].sum += cartesianValue.value;
|
|
153
|
+
this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]].max = Math.max(cartesianValue.value, this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]].max);
|
|
154
|
+
this.mergeTools.latsLngs[latLngIndex[0]][latLngIndex[1]].count++;
|
|
129
155
|
}
|
|
130
156
|
else {
|
|
131
157
|
// throw new Error(`Wrong mergeRainMeasure ${latLngIndex[0]} ${latLngIndex[1]}`);
|
|
@@ -134,45 +160,39 @@ class RainComputationAbstract extends RaainNode_1.RaainNode {
|
|
|
134
160
|
}
|
|
135
161
|
}
|
|
136
162
|
}
|
|
137
|
-
|
|
163
|
+
}
|
|
164
|
+
getLinkType() {
|
|
165
|
+
throw Error('abstract');
|
|
166
|
+
}
|
|
167
|
+
mergeRainMeasures(rainMeasures, options) {
|
|
168
|
+
if (rainMeasures.length === 0) {
|
|
138
169
|
return [];
|
|
139
170
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
const rm = new RainMeasure_1.RainMeasure(lastCartesianRainMeasure.toJSON());
|
|
171
|
+
this.buildMergeTools(rainMeasures);
|
|
172
|
+
const firstCartesianRainMeasure = rainMeasures[0];
|
|
173
|
+
const cartesianValuesMerged = this.buildMergeCartesianValues(options.mergeStrategy, options.removeNullValues);
|
|
174
|
+
const rm = new RainMeasure_1.RainMeasure(firstCartesianRainMeasure.toJSON());
|
|
145
175
|
rm.values = [new RainCartesianMeasureValue_1.RainCartesianMeasureValue({
|
|
146
176
|
cartesianValues: cartesianValuesMerged,
|
|
147
|
-
|
|
148
|
-
version: lastCartesianRainMeasure.getVersion(),
|
|
177
|
+
version: firstCartesianRainMeasure.getVersion(),
|
|
149
178
|
limitPoints: options.mergeLimitPoints,
|
|
150
179
|
})];
|
|
151
|
-
|
|
152
|
-
return rainMeasuresMerged;
|
|
180
|
+
return [rm];
|
|
153
181
|
}
|
|
154
|
-
|
|
155
|
-
const latMin = Math.round((this.mergeTools.limitPoints[0].lat) / this.mergeTools.cartesianPixelWidth.lat);
|
|
156
|
-
const lngMin = Math.round((this.mergeTools.limitPoints[0].lng) / this.mergeTools.cartesianPixelWidth.lng);
|
|
157
|
-
const latToCompare = Math.round(cartesianValue.lat / this.mergeTools.cartesianPixelWidth.lat);
|
|
158
|
-
const lngToCompare = Math.round(cartesianValue.lng / this.mergeTools.cartesianPixelWidth.lng);
|
|
159
|
-
return [latToCompare - latMin, lngToCompare - lngMin];
|
|
160
|
-
}
|
|
161
|
-
getMergeLatLng(latIndex, lngIndex) {
|
|
162
|
-
const latMin = this.mergeTools.limitPoints[0].lat;
|
|
163
|
-
const lngMin = this.mergeTools.limitPoints[0].lng;
|
|
164
|
-
const latToCompare = latIndex * this.mergeTools.cartesianPixelWidth.lat;
|
|
165
|
-
const lngToCompare = lngIndex * this.mergeTools.cartesianPixelWidth.lng;
|
|
166
|
-
return [latToCompare + latMin, lngToCompare + lngMin];
|
|
167
|
-
}
|
|
168
|
-
buildMergeCartesianValues() {
|
|
182
|
+
buildMergeCartesianValues(mergeStrategy, removeNullValues = false) {
|
|
169
183
|
const cartesianValuesMerged = [];
|
|
170
184
|
for (const [latIndex, latValues] of this.mergeTools.latsLngs.entries()) {
|
|
171
|
-
for (const [lngIndex,
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
185
|
+
for (const [lngIndex, mergeValue] of latValues.entries()) {
|
|
186
|
+
let value = mergeValue.sum;
|
|
187
|
+
if (mergeStrategy === MergeStrategy.AVERAGE) {
|
|
188
|
+
value = mergeValue.count ? value / mergeValue.count : -1;
|
|
189
|
+
}
|
|
190
|
+
else if (mergeStrategy === MergeStrategy.MAX) {
|
|
191
|
+
value = mergeValue.max;
|
|
192
|
+
}
|
|
193
|
+
if (mergeValue.count && !(removeNullValues && !value)) {
|
|
194
|
+
const lat = mergeValue.latLng.lat;
|
|
195
|
+
const lng = mergeValue.latLng.lng;
|
|
176
196
|
cartesianValuesMerged.push(new CartesianValue_1.CartesianValue({ value, lat, lng }));
|
|
177
197
|
}
|
|
178
198
|
}
|