raain-ui 1.0.15
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/README.md +19 -0
- package/RELEASE.md +3 -0
- package/drawers/CartesianDrawer.d.ts +26 -0
- package/drawers/CartesianDrawer.js +73 -0
- package/drawers/CartesianDrawerOptimization.d.ts +10 -0
- package/drawers/CartesianDrawerOptimization.js +42 -0
- package/drawers/CartesianGridValue.d.ts +15 -0
- package/drawers/CartesianGridValue.js +25 -0
- package/drawers/GridValue.d.ts +12 -0
- package/drawers/GridValue.js +75 -0
- package/drawers/PolarDrawer.d.ts +28 -0
- package/drawers/PolarDrawer.js +187 -0
- package/drawers/PolarDrawerOptimization.d.ts +14 -0
- package/drawers/PolarDrawerOptimization.js +54 -0
- package/drawers/PolarGridValue.d.ts +13 -0
- package/drawers/PolarGridValue.js +50 -0
- package/factories/ElementsFactory.d.ts +96 -0
- package/factories/ElementsFactory.js +762 -0
- package/index.d.ts +22 -0
- package/index.js +39 -0
- package/layers/CartesianLayer.d.ts +24 -0
- package/layers/CartesianLayer.js +96 -0
- package/layers/CompositeLayer.d.ts +17 -0
- package/layers/CompositeLayer.js +69 -0
- package/layers/IPixiLayer.d.ts +7 -0
- package/layers/IPixiLayer.js +3 -0
- package/layers/IPixiUniqueLayer.d.ts +8 -0
- package/layers/IPixiUniqueLayer.js +3 -0
- package/layers/MarkersLayer.d.ts +16 -0
- package/layers/MarkersLayer.js +73 -0
- package/layers/PixiGridLayer.d.ts +58 -0
- package/layers/PixiGridLayer.js +188 -0
- package/layers/PolarLayer.d.ts +26 -0
- package/layers/PolarLayer.js +124 -0
- package/layers/PolarLayerConfig.d.ts +9 -0
- package/layers/PolarLayerConfig.js +32 -0
- package/package.json +49 -0
- package/timeframes/FrameContainer.d.ts +9 -0
- package/timeframes/FrameContainer.js +13 -0
- package/timeframes/TimeframeContainer.d.ts +12 -0
- package/timeframes/TimeframeContainer.js +34 -0
- package/timeframes/TimeframeContainers.d.ts +9 -0
- package/timeframes/TimeframeContainers.js +84 -0
- package/tools/CartesianMapValue.d.ts +12 -0
- package/tools/CartesianMapValue.js +25 -0
- package/tools/MapLatLng.d.ts +7 -0
- package/tools/MapLatLng.js +14 -0
- package/tools/MapTools.d.ts +11 -0
- package/tools/MapTools.js +32 -0
- package/tools/PolarMapValue.d.ts +21 -0
- package/tools/PolarMapValue.js +67 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PolarGridValue = void 0;
|
|
4
|
+
const leaflet_1 = require("leaflet");
|
|
5
|
+
const MapTools_1 = require("../tools/MapTools");
|
|
6
|
+
const GridValue_1 = require("./GridValue");
|
|
7
|
+
class PolarGridValue extends GridValue_1.GridValue {
|
|
8
|
+
constructor(color, transparency, polarAzimuthInDegrees, polarDistanceRelative, id) {
|
|
9
|
+
super(color, transparency, id);
|
|
10
|
+
this.polarAzimuthInDegrees = polarAzimuthInDegrees;
|
|
11
|
+
this.polarDistanceRelative = polarDistanceRelative;
|
|
12
|
+
}
|
|
13
|
+
static Create(src, distanceRatio, optimization) {
|
|
14
|
+
let { transparency, value } = GridValue_1.GridValue.translateColor(src.value);
|
|
15
|
+
if (optimization.type !== 'rain') {
|
|
16
|
+
const range = optimization.max - optimization.min + 1;
|
|
17
|
+
const stepCount = Math.floor(range / optimization.step) + 1;
|
|
18
|
+
for (let i = 0; i < stepCount; i++) {
|
|
19
|
+
const floorValue = optimization.min + (i * optimization.step);
|
|
20
|
+
if (src.value >= floorValue) {
|
|
21
|
+
transparency = (range - floorValue) / (range * 2);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (optimization.bypass && 0.2 <= src.value) {
|
|
26
|
+
value = '#000000';
|
|
27
|
+
// transparency = 0.6;
|
|
28
|
+
transparency = Math.min(1, transparency * 2);
|
|
29
|
+
}
|
|
30
|
+
const distance = Math.round(100 * src.polarDistanceInMeters * distanceRatio) / 100;
|
|
31
|
+
return new PolarGridValue(MapTools_1.MapTools.hexStringToNumber(value), transparency, src.polarAzimuthInDegrees, distance, src.id);
|
|
32
|
+
}
|
|
33
|
+
getPolarDistanceRelative() {
|
|
34
|
+
return this.polarDistanceRelative;
|
|
35
|
+
}
|
|
36
|
+
setPolarDistanceRelative(d) {
|
|
37
|
+
this.polarDistanceRelative = d;
|
|
38
|
+
}
|
|
39
|
+
getPositionFrom(centerPoint) {
|
|
40
|
+
const radian = this.polarAzimuthInDegrees * (Math.PI / 180);
|
|
41
|
+
const x1 = Math.sin(radian) * this.polarDistanceRelative;
|
|
42
|
+
const y1 = Math.cos(radian) * this.polarDistanceRelative;
|
|
43
|
+
const precision = 100000;
|
|
44
|
+
const x2 = Math.round((x1 + centerPoint.x) * precision) / precision;
|
|
45
|
+
const y2 = Math.round((centerPoint.y - y1) * precision) / precision;
|
|
46
|
+
return new leaflet_1.Point(x2, y2);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.PolarGridValue = PolarGridValue;
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUG9sYXJHcmlkVmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZHJhd2Vycy9Qb2xhckdyaWRWYWx1ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxxQ0FBOEI7QUFDOUIsZ0RBQTJDO0FBQzNDLDJDQUFzQztBQUV0QyxNQUFhLGNBQWUsU0FBUSxxQkFBUztJQUV6QyxZQUNJLEtBQWEsRUFDYixZQUFvQixFQUNiLHFCQUE2QixFQUM1QixxQkFBNkIsRUFDckMsRUFBVztRQUNYLEtBQUssQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSHhCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBUTtRQUM1QiwwQkFBcUIsR0FBckIscUJBQXFCLENBQVE7SUFHekMsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBa0IsRUFDbEIsYUFBcUIsRUFDckIsWUFBcUM7UUFFL0MsSUFBSSxFQUFDLFlBQVksRUFBRSxLQUFLLEVBQUMsR0FBRyxxQkFBUyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEUsSUFBSSxZQUFZLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUM5QixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1lBQ3RELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFNBQVMsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDaEMsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzlELElBQUksR0FBRyxDQUFDLEtBQUssSUFBSSxVQUFVLEVBQUU7b0JBQ3pCLFlBQVksR0FBRyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztpQkFDckQ7YUFDSjtTQUNKO1FBRUQsSUFBSSxZQUFZLENBQUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxFQUFFO1lBQ3pDLEtBQUssR0FBRyxTQUFTLENBQUM7WUFDbEIsc0JBQXNCO1lBQ3RCLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDaEQ7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMscUJBQXFCLEdBQUcsYUFBYSxDQUFDLEdBQUcsR0FBRyxDQUFDO1FBRW5GLE9BQU8sSUFBSSxjQUFjLENBQ3JCLG1CQUFRLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLEVBQ2pDLFlBQVksRUFDWixHQUFHLENBQUMscUJBQXFCLEVBQ3pCLFFBQVEsRUFDUixHQUFHLENBQUMsRUFBRSxDQUNULENBQUM7SUFDTixDQUFDO0lBRU0sd0JBQXdCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3RDLENBQUM7SUFFTSx3QkFBd0IsQ0FBQyxDQUFTO1FBQ3JDLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVNLGVBQWUsQ0FBQyxXQUFrQjtRQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMscUJBQXFCLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQzVELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBRXpELE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztRQUN6QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsR0FBRyxTQUFTLENBQUM7UUFDcEUsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ3BFLE9BQU8sSUFBSSxlQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7Q0FDSjtBQS9ERCx3Q0ErREMifQ==
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { IconOptions, LatLng, Map, Marker } from 'leaflet';
|
|
2
|
+
import { TimeframeContainers } from '../timeframes/TimeframeContainers';
|
|
3
|
+
import { MarkersLayer } from '../layers/MarkersLayer';
|
|
4
|
+
import { CompositeLayer } from '../layers/CompositeLayer';
|
|
5
|
+
import Chart from 'chart.js/auto';
|
|
6
|
+
import { MapLatLng } from '../tools/MapLatLng';
|
|
7
|
+
export declare enum FocusRange {
|
|
8
|
+
CENTURY = 0,
|
|
9
|
+
YEAR = 1,
|
|
10
|
+
MONTH = 2,
|
|
11
|
+
DAY = 3,
|
|
12
|
+
HOUR = 4
|
|
13
|
+
}
|
|
14
|
+
export declare class ElementsFactory {
|
|
15
|
+
center: LatLng | {
|
|
16
|
+
lat: number;
|
|
17
|
+
lng: number;
|
|
18
|
+
} | {
|
|
19
|
+
latitude: number;
|
|
20
|
+
longitude: number;
|
|
21
|
+
} | any;
|
|
22
|
+
protected addSomeDebugInfos: boolean;
|
|
23
|
+
constructor(center?: LatLng | {
|
|
24
|
+
lat: number;
|
|
25
|
+
lng: number;
|
|
26
|
+
} | {
|
|
27
|
+
latitude: number;
|
|
28
|
+
longitude: number;
|
|
29
|
+
} | any, addSomeDebugInfos?: boolean);
|
|
30
|
+
static focusLabel(focusDate: Date, focusRange: FocusRange, index: number, min: Date, max: Date, data: any): any;
|
|
31
|
+
protected static getTransparency(value: any, opacity: any): string;
|
|
32
|
+
protected static filterFocus(mapToFilter: Array<{
|
|
33
|
+
date: Date;
|
|
34
|
+
value: number;
|
|
35
|
+
}>, focusDate: Date, focusRange: FocusRange): Array<{
|
|
36
|
+
date: Date;
|
|
37
|
+
value: number;
|
|
38
|
+
}>;
|
|
39
|
+
protected static groupFocus(mapToFilter: Array<{
|
|
40
|
+
date: Date;
|
|
41
|
+
value: number;
|
|
42
|
+
}>, focusDate: Date, focusRange: FocusRange, min: Date, max: Date): any[];
|
|
43
|
+
protected static focusLabels(focusDate: Date, focusRange: FocusRange, min: Date, max: Date, data: {
|
|
44
|
+
label: string;
|
|
45
|
+
style: string;
|
|
46
|
+
values: {
|
|
47
|
+
date: Date;
|
|
48
|
+
value: number;
|
|
49
|
+
}[];
|
|
50
|
+
}[]): any[];
|
|
51
|
+
protected static getFocusDateAndTitle(oldFocusDate: Date, focusRange: FocusRange, index: number, min: Date, max: Date): {
|
|
52
|
+
newFocusDate: Date;
|
|
53
|
+
newTitle: string;
|
|
54
|
+
};
|
|
55
|
+
createMap(element: HTMLElement, markers?: MapLatLng[], timeframeContainers?: TimeframeContainers, iconOptions?: IconOptions): {
|
|
56
|
+
mapLeaflet: Map;
|
|
57
|
+
markersLayer: MarkersLayer;
|
|
58
|
+
compositeLayer: CompositeLayer;
|
|
59
|
+
markersProduced: Marker[];
|
|
60
|
+
};
|
|
61
|
+
updateMapTimeframe(mapLeaflet: Map, compositeLayer: CompositeLayer, timeframeContainers: TimeframeContainers): void;
|
|
62
|
+
createCompare(element: HTMLCanvasElement, points: {
|
|
63
|
+
x: number;
|
|
64
|
+
y: number;
|
|
65
|
+
r: number;
|
|
66
|
+
name: string;
|
|
67
|
+
}[], topPoint: {
|
|
68
|
+
x: number;
|
|
69
|
+
y: number;
|
|
70
|
+
}, clickCallback: any): Chart<any>;
|
|
71
|
+
createConfiguration(element: HTMLCanvasElement, points?: {
|
|
72
|
+
x: number;
|
|
73
|
+
y: number;
|
|
74
|
+
}[], minPoint?: {
|
|
75
|
+
x: number;
|
|
76
|
+
y: number;
|
|
77
|
+
}, maxPoint?: {
|
|
78
|
+
x: number;
|
|
79
|
+
y: number;
|
|
80
|
+
}): Chart;
|
|
81
|
+
createDateStatus(element: HTMLCanvasElement, setOfData: {
|
|
82
|
+
label: string;
|
|
83
|
+
style: string;
|
|
84
|
+
values: {
|
|
85
|
+
date: Date;
|
|
86
|
+
value: number;
|
|
87
|
+
}[];
|
|
88
|
+
}[], focusDate: Date, focusRange?: FocusRange): Chart;
|
|
89
|
+
createSpeedIndicator(element: HTMLCanvasElement, angleDegrees: number, speedMetersPerSec: number): Chart;
|
|
90
|
+
createSpeedMatrixIndicator(element: HTMLCanvasElement, positionValuesMatrix: {
|
|
91
|
+
x: number;
|
|
92
|
+
y: number;
|
|
93
|
+
value: number;
|
|
94
|
+
}[], trustIndicator?: number): void;
|
|
95
|
+
createQualityIndicator(element: HTMLCanvasElement, indicator: number): Chart;
|
|
96
|
+
}
|