deeptwins-engine-3d 0.1.76 → 0.2.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/dist/assets/Build/DeepTwins/Image/noise.png +0 -0
- package/dist/assets/Build/DeepTwins/Workers/CustomRasterClip.worker.js +1 -2
- package/dist/assets/Build/DeepTwins/Workers/MvtVector.worker.js +1 -1
- package/dist/assets/Build/Map3d/ThirdParty/Workers/zip-web-worker.js +640 -0
- package/dist/assets/Build/Map3d/ThirdParty/wasm_splats_bg.wasm +0 -0
- package/dist/assets/Build/Map3d/ThirdParty/zip-module.wasm +0 -0
- package/dist/assets/Build/Map3d/Workers/chunk-27NG6PQR.js +456 -0
- package/dist/assets/Build/Map3d/Workers/chunk-2JVMMMWT.js +353 -0
- package/dist/assets/Build/Map3d/Workers/chunk-2Y2XYQCS.js +1481 -0
- package/dist/assets/Build/Map3d/Workers/chunk-34RF3V5G.js +220 -0
- package/dist/assets/Build/Map3d/Workers/chunk-35H7BYLJ.js +1800 -0
- package/dist/assets/Build/Map3d/Workers/chunk-57OGEF5V.js +435 -0
- package/dist/assets/Build/Map3d/Workers/chunk-5PX3DYJA.js +196 -0
- package/dist/assets/Build/Map3d/Workers/chunk-7B5XGQRN.js +171 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ATLWOZFF.js +39 -0
- package/dist/assets/Build/Map3d/Workers/chunk-BMSUECTA.js +1055 -0
- package/dist/assets/Build/Map3d/Workers/chunk-C6IA4TKW.js +476 -0
- package/dist/assets/Build/Map3d/Workers/chunk-CZ44I32U.js +157 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DE6UV44R.js +122 -0
- package/dist/assets/Build/Map3d/Workers/chunk-DUCCKVOG.js +834 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EBJBPIYX.js +239 -0
- package/dist/assets/Build/Map3d/Workers/chunk-EYSYQ2R6.js +138 -0
- package/dist/assets/Build/Map3d/Workers/chunk-FMCAAUQI.js +368 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GMYZNRRQ.js +2717 -0
- package/dist/assets/Build/Map3d/Workers/chunk-GWPNZZV4.js +781 -0
- package/dist/assets/Build/Map3d/Workers/chunk-HLP2U4KW.js +758 -0
- package/dist/assets/Build/Map3d/Workers/chunk-HSJSUPQV.js +500 -0
- package/dist/assets/Build/Map3d/Workers/chunk-I73Q3AG7.js +58 -0
- package/dist/assets/Build/Map3d/Workers/chunk-IMZ4YIMV.js +511 -0
- package/dist/assets/Build/Map3d/Workers/chunk-IZSK4DVF.js +421 -0
- package/dist/assets/Build/Map3d/Workers/chunk-JKLMRPKK.js +75 -0
- package/dist/assets/Build/Map3d/Workers/chunk-KGM345JM.js +691 -0
- package/dist/assets/Build/Map3d/Workers/chunk-L4IR5U4G.js +102 -0
- package/dist/assets/Build/Map3d/Workers/chunk-MG4EVQH2.js +44 -0
- package/dist/assets/Build/Map3d/Workers/chunk-NXWEFAZJ.js +300 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PDFAJISJ.js +59 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PHWZFJR5.js +100 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PLE7CHBE.js +101 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PN3GIZ5Q.js +163 -0
- package/dist/assets/Build/Map3d/Workers/chunk-PXL5XLHV.js +1073 -0
- package/dist/assets/Build/Map3d/Workers/chunk-QYXOF5JC.js +959 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R2LIFXV3.js +115 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R4W6IRJZ.js +10357 -0
- package/dist/assets/Build/Map3d/Workers/chunk-R5PZXG56.js +1258 -0
- package/dist/assets/Build/Map3d/Workers/chunk-RZQLZIUI.js +629 -0
- package/dist/assets/Build/Map3d/Workers/chunk-SIBDD6Y4.js +390 -0
- package/dist/assets/Build/Map3d/Workers/chunk-U5NN6JTQ.js +398 -0
- package/dist/assets/Build/Map3d/Workers/chunk-UA5RPPP3.js +73 -0
- package/dist/assets/Build/Map3d/Workers/chunk-UXLKFS3C.js +305 -0
- package/dist/assets/Build/Map3d/Workers/chunk-VUX4BQIM.js +37 -0
- package/dist/assets/Build/Map3d/Workers/chunk-WJDUUUJS.js +684 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XBJOJHWX.js +139 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XJDMTNKD.js +634 -0
- package/dist/assets/Build/Map3d/Workers/chunk-XUCXZZE5.js +963 -0
- package/dist/assets/Build/Map3d/Workers/chunk-YIKGVMJ5.js +287 -0
- package/dist/assets/Build/Map3d/Workers/chunk-YTNCIBPQ.js +262 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ZMDUYETO.js +55 -0
- package/dist/assets/Build/Map3d/Workers/chunk-ZW52HXFN.js +2857 -0
- package/dist/esm/analyze/LineOfSightAnalysis.js +1 -326
- package/dist/esm/analyze/SubmergenceAnalysis.js +1 -137
- package/dist/esm/analyze/SunLightAnalysis.js +1 -91
- package/dist/esm/analyze/TerrainExcavationAnalysis.js +1 -612
- package/dist/esm/analyze/ViewshedAnalysis.js +1 -292
- package/dist/esm/cameraControl/ModelRoamHistory.js +1 -639
- package/dist/esm/cameraControl/ModelRoamRealTime.js +1 -874
- package/dist/esm/cameraControl/Roam.js +1 -418
- package/dist/esm/cameraControl/Rotate.js +1 -134
- package/dist/esm/cameraControl/RotateInPlace.js +1 -99
- package/dist/esm/constant.d.ts +90 -0
- package/dist/esm/constant.js +1 -1287
- package/dist/esm/deepTwins/index.js +1 -121
- package/dist/esm/drawCommand/index.js +1 -3
- package/dist/esm/drawCommand/viewShed/Event.js +1 -142
- package/dist/esm/drawCommand/viewShed/RectangularSensorPrimitive.js +1 -1306
- package/dist/esm/drawCommand/viewShed/ViewShadowPrimitive.js +1 -66
- package/dist/esm/drawCommand/viewShed/ViewShedAnalyserLayer.js +1 -466
- package/dist/esm/drawCommand/viewShed/ViewShedMap.js +1 -1238
- package/dist/esm/drawCommand/viewShed/config.js +1 -21
- package/dist/esm/drawCommand/volumeCloud/GeometryPrimitive.js +1 -89
- package/dist/esm/drawCommand/volumeCloud/ImprovedNoise.js +1 -112
- package/dist/esm/drawCommand/volumeCloud/VolumeClouds.js +1 -91
- package/dist/esm/drawer/algorithm.js +1 -314
- package/dist/esm/drawer/common.js +1 -965
- package/dist/esm/drawer/coordinate.js +1 -184
- package/dist/esm/drawer/index.js +1 -688
- package/dist/esm/drawer/plotUtil.js +1 -266
- package/dist/esm/drawer/shape/Assemble.js +1 -415
- package/dist/esm/drawer/shape/AttackArrow.js +1 -442
- package/dist/esm/drawer/shape/BaseShape.js +1 -383
- package/dist/esm/drawer/shape/Bow.js +1 -375
- package/dist/esm/drawer/shape/Circle.js +1 -461
- package/dist/esm/drawer/shape/Curve.js +1 -386
- package/dist/esm/drawer/shape/DragPoint.js +1 -211
- package/dist/esm/drawer/shape/Elliptic.js +1 -491
- package/dist/esm/drawer/shape/Formation.js +1 -395
- package/dist/esm/drawer/shape/PincerArrow.js +1 -445
- package/dist/esm/drawer/shape/Point.js +1 -131
- package/dist/esm/drawer/shape/Polygon.js +1 -368
- package/dist/esm/drawer/shape/Polyline.js +1 -325
- package/dist/esm/drawer/shape/RegularPolygon.js +1 -468
- package/dist/esm/drawer/shape/RightAngleArrow.js +1 -423
- package/dist/esm/drawer/shape/Sector.js +1 -568
- package/dist/esm/drawer/shape/StraightArrow.js +1 -422
- package/dist/esm/drawer/shape/SwallowtailArrow.js +1 -438
- package/dist/esm/drawer/types.js +1 -11
- package/dist/esm/drawer/utils.js +1 -381
- package/dist/esm/global.css +22 -1
- package/dist/esm/graphicLayer/BaseEntity.js +1 -51
- package/dist/esm/graphicLayer/BaseLayer.js +1 -730
- package/dist/esm/graphicLayer/BasePointPrimitive.js +1 -45
- package/dist/esm/graphicLayer/BasePrimitive.js +1 -36
- package/dist/esm/graphicLayer/BasePrimitiveInstance.js +1 -37
- package/dist/esm/graphicLayer/BaseSource.d.ts +1 -1
- package/dist/esm/graphicLayer/BaseSource.js +1 -630
- package/dist/esm/graphicLayer/BillboardEntity.js +1 -106
- package/dist/esm/graphicLayer/BillboardPrimitive.js +1 -119
- package/dist/esm/graphicLayer/BoxEntity.js +1 -99
- package/dist/esm/graphicLayer/BoxPrimitive.js +1 -48
- package/dist/esm/graphicLayer/BoxPrimitiveInstance.js +1 -91
- package/dist/esm/graphicLayer/EllipseEntity.js +1 -110
- package/dist/esm/graphicLayer/EllipsePrimitive.js +1 -47
- package/dist/esm/graphicLayer/EllipsePrimitiveInstance.js +1 -98
- package/dist/esm/graphicLayer/EllipsoidEntity.js +1 -118
- package/dist/esm/graphicLayer/EllipsoidPrimitive.js +1 -48
- package/dist/esm/graphicLayer/EllipsoidPrimitiveInstance.js +1 -113
- package/dist/esm/graphicLayer/GraphicLayerCollection.js +1 -491
- package/dist/esm/graphicLayer/HtmlEntity.d.ts +4 -0
- package/dist/esm/graphicLayer/HtmlEntity.js +1 -189
- package/dist/esm/graphicLayer/LabelEntity.js +1 -110
- package/dist/esm/graphicLayer/LabelPrimitive.js +1 -127
- package/dist/esm/graphicLayer/ModelEntity.js +1 -122
- package/dist/esm/graphicLayer/ModelPrimitive.js +1 -59
- package/dist/esm/graphicLayer/ModelPrimitiveInstance.js +1 -86
- package/dist/esm/graphicLayer/PointEntity.js +1 -94
- package/dist/esm/graphicLayer/PointPrimitive.js +1 -107
- package/dist/esm/graphicLayer/PolygonEntity.js +1 -103
- package/dist/esm/graphicLayer/PolygonGroundPrimitive.js +1 -49
- package/dist/esm/graphicLayer/PolygonGroundPrimitiveImageMaterialInstance.js +1 -87
- package/dist/esm/graphicLayer/PolygonPrimitive.js +1 -60
- package/dist/esm/graphicLayer/PolygonPrimitiveImageMaterialInstance.js +1 -84
- package/dist/esm/graphicLayer/PolygonPrimitiveInstance.js +1 -101
- package/dist/esm/graphicLayer/PolylineEntity.js +1 -96
- package/dist/esm/graphicLayer/PolylineGroundPrimitive.js +1 -55
- package/dist/esm/graphicLayer/PolylineGroundPrimitiveInstance.js +1 -85
- package/dist/esm/graphicLayer/PolylinePrimitive.js +1 -53
- package/dist/esm/graphicLayer/PolylinePrimitiveInstance.js +1 -85
- package/dist/esm/graphicLayer/PolylineVolumeEntity.js +1 -105
- package/dist/esm/graphicLayer/PolylineVolumePrimitive.js +1 -47
- package/dist/esm/graphicLayer/PolylineVolumePrimitiveInstance.js +1 -94
- package/dist/esm/graphicLayer/WallEntity.js +1 -96
- package/dist/esm/graphicLayer/WallPrimitive.js +1 -47
- package/dist/esm/graphicLayer/WallPrimitiveInstance.js +1 -88
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +1 -175
- package/dist/esm/lowAltitude/BarrierLayer.js +1 -172
- package/dist/esm/lowAltitude/BaseGridMvtLayer.js +1 -122
- package/dist/esm/lowAltitude/FactorLayer.js +1 -199
- package/dist/esm/lowAltitude/FlightPlanning.js +1 -411
- package/dist/esm/lowAltitude/FlightRiskEvaluation.js +1 -543
- package/dist/esm/lowAltitude/GridDraw.js +1 -137
- package/dist/esm/lowAltitude/PoiLayer.js +1 -74
- package/dist/esm/lowAltitude/RoutePlanning.js +1 -318
- package/dist/esm/lowAltitude/VisitLayer.js +1 -180
- package/dist/esm/map/Event.js +1 -377
- package/dist/esm/map/GroundSkyBox.js +1 -166
- package/dist/esm/map/Map.js +1 -881
- package/dist/esm/map/Property.js +1 -35
- package/dist/esm/material/AtmosphericDispersion.js +1 -569
- package/dist/esm/material/GlobalVolumetricCloud.js +1 -377
- package/dist/esm/material/VolumeCloud.js +1 -115
- package/dist/esm/material/WeatherEffects.js +1 -351
- package/dist/esm/material/entity/BaseMaterialProperty.js +1 -51
- package/dist/esm/material/entity/CircleWaveMaterialProperty.js +1 -101
- package/dist/esm/material/entity/DynamicWallMaterialProperty.js +1 -101
- package/dist/esm/material/entity/ImageGlowingMaterialProperty.js +1 -89
- package/dist/esm/material/entity/ImageMaterialProperty.js +1 -34
- package/dist/esm/material/entity/PolylineTrailLinkMaterialProperty.js +1 -132
- package/dist/esm/material/primitive/BaseMaterialAppearance.js +1 -28
- package/dist/esm/material/primitive/ImageGlowingMaterialAppearance.js +1 -77
- package/dist/esm/material/primitive/ImageMaterialAppearance.js +1 -77
- package/dist/esm/measure/Area.js +1 -220
- package/dist/esm/measure/BaseDraw.js +1 -105
- package/dist/esm/measure/Distance.js +1 -223
- package/dist/esm/measure/index.js +1 -266
- package/dist/esm/measure/types.js +1 -17
- package/dist/esm/measure/utils.js +1 -319
- package/dist/esm/particle/BaseParticle.js +1 -196
- package/dist/esm/particle/FireParticle.js +1 -65
- package/dist/esm/particle/FountainParticle.js +1 -80
- package/dist/esm/particle/SmokeParticle.js +1 -65
- package/dist/esm/particle/common.js +1 -23
- package/dist/esm/particle/index.js +1 -5
- package/dist/esm/property/PositionProperty.js +1 -56
- package/dist/esm/tileLayer/ArcGisLayer.js +1 -41
- package/dist/esm/tileLayer/CustomRasterClipWorkerClient.js +1 -147
- package/dist/esm/tileLayer/CustomRasterLayer.js +1 -1136
- package/dist/esm/tileLayer/ImageryLayer.js +1 -44
- package/dist/esm/tileLayer/MvtVectorLoad.js +1 -1549
- package/dist/esm/tileLayer/MvtVectorWorkerClient.js +1 -126
- package/dist/esm/tileLayer/RasterLayer.js +1 -23
- package/dist/esm/tileLayer/WmsLayer.js +1 -26
- package/dist/esm/tileLayer/WmtsLayer.js +1 -23
- package/dist/esm/tool/BuildClampedPolygonGrid.js +1 -278
- package/dist/esm/tool/Compass.js +1 -282
- package/dist/esm/tool/PrimitiveCluster.js +1 -706
- package/dist/esm/tool/TimerInterval.js +1 -58
- package/dist/esm/tool/common.js +1 -405
- package/dist/esm/tool/fetch.js +1 -222
- package/dist/esm/tool/heatmap.js +1 -631
- package/dist/esm/tool/utils.d.ts +1 -0
- package/dist/esm/tool/utils.js +1 -501
- package/dist/esm/toolTip/index.js +1 -79
- package/dist/esm/videoFusion/BaseVideo.d.ts +7 -0
- package/dist/esm/videoFusion/BaseVideo.js +1 -330
- package/dist/esm/videoFusion/VideoProject.js +1 -230
- package/dist/esm/videoFusion/VideoTexture.js +1 -163
- package/dist/esm/visualization/BaseHeatmap.js +1 -271
- package/dist/esm/visualization/BoundaryHighlight.d.ts +135 -0
- package/dist/esm/visualization/BoundaryHighlight.js +1 -0
- package/dist/esm/visualization/DynamicWater.js +1 -289
- package/dist/esm/visualization/Frustum.js +1 -248
- package/dist/esm/visualization/Heatmap2d.js +1 -97
- package/dist/esm/visualization/Heatmap3d.js +1 -281
- package/dist/esm/visualization/MigrationEffect.js +1 -397
- package/dist/esm/visualization/PointCluster.js +1 -220
- package/dist/esm/visualization/RadarScan.js +1 -333
- package/dist/esm/visualization/SampledTerrainRiver.d.ts +180 -0
- package/dist/esm/visualization/SampledTerrainRiver.js +1 -0
- package/dist/esm/visualization/SampledTerrainWater.d.ts +170 -0
- package/dist/esm/visualization/SampledTerrainWater.js +1 -0
- package/dist/esm/visualization/WindField.d.ts +72 -0
- package/dist/esm/visualization/WindField.js +1 -0
- package/dist/esm/visualization/windCore.d.ts +161 -0
- package/dist/esm/visualization/windCore.js +8 -0
- package/dist/umd/deeptwins-engine-3d.min.css +1 -1
- package/dist/umd/deeptwins-engine-3d.min.js +1 -1
- package/package.json +6 -4
package/dist/esm/tool/heatmap.js
CHANGED
|
@@ -1,631 +1 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
/*
|
|
3
|
-
* heatmap.js v2.0.5 | JavaScript Heatmap Library
|
|
4
|
-
*
|
|
5
|
-
* Copyright 2008-2016 Patrick Wied <heatmapjs@patrick-wied.at> - All rights reserved.
|
|
6
|
-
* Dual licensed under MIT and Beerware license
|
|
7
|
-
*
|
|
8
|
-
* :: 2016-09-05 01:16
|
|
9
|
-
*/
|
|
10
|
-
(function (name, context, factory) {
|
|
11
|
-
// Supports UMD. AMD, CommonJS/Node.js and browser context
|
|
12
|
-
if (typeof module !== 'undefined' && module.exports) {
|
|
13
|
-
module.exports = factory();
|
|
14
|
-
} else if (typeof define === 'function' && define.amd) {
|
|
15
|
-
define(factory);
|
|
16
|
-
} else {
|
|
17
|
-
context[name] = factory();
|
|
18
|
-
}
|
|
19
|
-
})('h337', this, function () {
|
|
20
|
-
// Heatmap Config stores default values and will be merged with instance config
|
|
21
|
-
var HeatmapConfig = {
|
|
22
|
-
defaultRadius: 40,
|
|
23
|
-
defaultRenderer: 'canvas2d',
|
|
24
|
-
defaultGradient: {
|
|
25
|
-
0.25: 'rgb(0,0,255)',
|
|
26
|
-
0.55: 'rgb(0,255,0)',
|
|
27
|
-
0.85: 'yellow',
|
|
28
|
-
1.0: 'rgb(255,0,0)'
|
|
29
|
-
},
|
|
30
|
-
defaultMaxOpacity: 1,
|
|
31
|
-
defaultMinOpacity: 0,
|
|
32
|
-
defaultBlur: 0.85,
|
|
33
|
-
defaultXField: 'x',
|
|
34
|
-
defaultYField: 'y',
|
|
35
|
-
defaultValueField: 'value',
|
|
36
|
-
plugins: {}
|
|
37
|
-
};
|
|
38
|
-
var Store = function StoreClosure() {
|
|
39
|
-
var Store = function Store(config) {
|
|
40
|
-
this._coordinator = {};
|
|
41
|
-
this._data = [];
|
|
42
|
-
this._radi = [];
|
|
43
|
-
this._min = 10;
|
|
44
|
-
this._max = 1;
|
|
45
|
-
this._xField = config['xField'] || config.defaultXField;
|
|
46
|
-
this._yField = config['yField'] || config.defaultYField;
|
|
47
|
-
this._valueField = config['valueField'] || config.defaultValueField;
|
|
48
|
-
if (config['radius']) {
|
|
49
|
-
this._cfgRadius = config['radius'];
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
var defaultRadius = HeatmapConfig.defaultRadius;
|
|
53
|
-
Store.prototype = {
|
|
54
|
-
// when forceRender = false -> called from setData, omits renderall event
|
|
55
|
-
_organiseData: function _organiseData(dataPoint, forceRender) {
|
|
56
|
-
var x = dataPoint[this._xField];
|
|
57
|
-
var y = dataPoint[this._yField];
|
|
58
|
-
var radi = this._radi;
|
|
59
|
-
var store = this._data;
|
|
60
|
-
var max = this._max;
|
|
61
|
-
var min = this._min;
|
|
62
|
-
var value = dataPoint[this._valueField] || 1;
|
|
63
|
-
var radius = dataPoint.radius || this._cfgRadius || defaultRadius;
|
|
64
|
-
if (!store[x]) {
|
|
65
|
-
store[x] = [];
|
|
66
|
-
radi[x] = [];
|
|
67
|
-
}
|
|
68
|
-
if (!store[x][y]) {
|
|
69
|
-
store[x][y] = value;
|
|
70
|
-
radi[x][y] = radius;
|
|
71
|
-
} else {
|
|
72
|
-
store[x][y] += value;
|
|
73
|
-
}
|
|
74
|
-
var storedVal = store[x][y];
|
|
75
|
-
if (storedVal > max) {
|
|
76
|
-
if (!forceRender) {
|
|
77
|
-
this._max = storedVal;
|
|
78
|
-
} else {
|
|
79
|
-
this.setDataMax(storedVal);
|
|
80
|
-
}
|
|
81
|
-
return false;
|
|
82
|
-
} else if (storedVal < min) {
|
|
83
|
-
if (!forceRender) {
|
|
84
|
-
this._min = storedVal;
|
|
85
|
-
} else {
|
|
86
|
-
this.setDataMin(storedVal);
|
|
87
|
-
}
|
|
88
|
-
return false;
|
|
89
|
-
} else {
|
|
90
|
-
return {
|
|
91
|
-
x: x,
|
|
92
|
-
y: y,
|
|
93
|
-
value: value,
|
|
94
|
-
radius: radius,
|
|
95
|
-
min: min,
|
|
96
|
-
max: max
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
_unOrganizeData: function _unOrganizeData() {
|
|
101
|
-
var unorganizedData = [];
|
|
102
|
-
var data = this._data;
|
|
103
|
-
var radi = this._radi;
|
|
104
|
-
for (var x in data) {
|
|
105
|
-
for (var y in data[x]) {
|
|
106
|
-
unorganizedData.push({
|
|
107
|
-
x: x,
|
|
108
|
-
y: y,
|
|
109
|
-
radius: radi[x][y],
|
|
110
|
-
value: data[x][y]
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
return {
|
|
115
|
-
min: this._min,
|
|
116
|
-
max: this._max,
|
|
117
|
-
data: unorganizedData
|
|
118
|
-
};
|
|
119
|
-
},
|
|
120
|
-
_onExtremaChange: function _onExtremaChange() {
|
|
121
|
-
this._coordinator.emit('extremachange', {
|
|
122
|
-
min: this._min,
|
|
123
|
-
max: this._max
|
|
124
|
-
});
|
|
125
|
-
},
|
|
126
|
-
addData: function addData() {
|
|
127
|
-
if (arguments[0].length > 0) {
|
|
128
|
-
var dataArr = arguments[0];
|
|
129
|
-
var dataLen = dataArr.length;
|
|
130
|
-
while (dataLen--) {
|
|
131
|
-
this.addData.call(this, dataArr[dataLen]);
|
|
132
|
-
}
|
|
133
|
-
} else {
|
|
134
|
-
// add to store
|
|
135
|
-
var organisedEntry = this._organiseData(arguments[0], true);
|
|
136
|
-
if (organisedEntry) {
|
|
137
|
-
// if it's the first datapoint initialize the extremas with it
|
|
138
|
-
if (this._data.length === 0) {
|
|
139
|
-
this._min = this._max = organisedEntry.value;
|
|
140
|
-
}
|
|
141
|
-
this._coordinator.emit('renderpartial', {
|
|
142
|
-
min: this._min,
|
|
143
|
-
max: this._max,
|
|
144
|
-
data: [organisedEntry]
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
return this;
|
|
149
|
-
},
|
|
150
|
-
setData: function setData(data) {
|
|
151
|
-
var dataPoints = data.data;
|
|
152
|
-
var pointsLen = dataPoints.length;
|
|
153
|
-
|
|
154
|
-
// reset data arrays
|
|
155
|
-
this._data = [];
|
|
156
|
-
this._radi = [];
|
|
157
|
-
for (var i = 0; i < pointsLen; i++) {
|
|
158
|
-
this._organiseData(dataPoints[i], false);
|
|
159
|
-
}
|
|
160
|
-
this._max = data.max;
|
|
161
|
-
this._min = data.min || 0;
|
|
162
|
-
this._onExtremaChange();
|
|
163
|
-
this._coordinator.emit('renderall', this._getInternalData());
|
|
164
|
-
return this;
|
|
165
|
-
},
|
|
166
|
-
removeData: function removeData() {
|
|
167
|
-
// TODO: implement
|
|
168
|
-
},
|
|
169
|
-
setDataMax: function setDataMax(max) {
|
|
170
|
-
this._max = max;
|
|
171
|
-
this._onExtremaChange();
|
|
172
|
-
this._coordinator.emit('renderall', this._getInternalData());
|
|
173
|
-
return this;
|
|
174
|
-
},
|
|
175
|
-
setDataMin: function setDataMin(min) {
|
|
176
|
-
this._min = min;
|
|
177
|
-
this._onExtremaChange();
|
|
178
|
-
this._coordinator.emit('renderall', this._getInternalData());
|
|
179
|
-
return this;
|
|
180
|
-
},
|
|
181
|
-
setCoordinator: function setCoordinator(coordinator) {
|
|
182
|
-
this._coordinator = coordinator;
|
|
183
|
-
},
|
|
184
|
-
_getInternalData: function _getInternalData() {
|
|
185
|
-
return {
|
|
186
|
-
max: this._max,
|
|
187
|
-
min: this._min,
|
|
188
|
-
data: this._data,
|
|
189
|
-
radi: this._radi
|
|
190
|
-
};
|
|
191
|
-
},
|
|
192
|
-
getData: function getData() {
|
|
193
|
-
return this._unOrganizeData();
|
|
194
|
-
} /*,
|
|
195
|
-
TODO: rethink.
|
|
196
|
-
getValueAt: function(point) {
|
|
197
|
-
var value;
|
|
198
|
-
var radius = 100;
|
|
199
|
-
var x = point.x;
|
|
200
|
-
var y = point.y;
|
|
201
|
-
var data = this._data;
|
|
202
|
-
if (data[x] && data[x][y]) {
|
|
203
|
-
return data[x][y];
|
|
204
|
-
} else {
|
|
205
|
-
var values = [];
|
|
206
|
-
// radial search for datapoints based on default radius
|
|
207
|
-
for(var distance = 1; distance < radius; distance++) {
|
|
208
|
-
var neighbors = distance * 2 +1;
|
|
209
|
-
var startX = x - distance;
|
|
210
|
-
var startY = y - distance;
|
|
211
|
-
for(var i = 0; i < neighbors; i++) {
|
|
212
|
-
for (var o = 0; o < neighbors; o++) {
|
|
213
|
-
if ((i == 0 || i == neighbors-1) || (o == 0 || o == neighbors-1)) {
|
|
214
|
-
if (data[startY+i] && data[startY+i][startX+o]) {
|
|
215
|
-
values.push(data[startY+i][startX+o]);
|
|
216
|
-
}
|
|
217
|
-
} else {
|
|
218
|
-
continue;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
if (values.length > 0) {
|
|
224
|
-
return Math.max.apply(Math, values);
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
return false;
|
|
228
|
-
}*/
|
|
229
|
-
};
|
|
230
|
-
return Store;
|
|
231
|
-
}();
|
|
232
|
-
var Canvas2dRenderer = function Canvas2dRendererClosure() {
|
|
233
|
-
var _getColorPalette = function _getColorPalette(config) {
|
|
234
|
-
var gradientConfig = config.gradient || config.defaultGradient;
|
|
235
|
-
var paletteCanvas = document.createElement('canvas');
|
|
236
|
-
var paletteCtx = paletteCanvas.getContext('2d');
|
|
237
|
-
paletteCanvas.width = 256;
|
|
238
|
-
paletteCanvas.height = 1;
|
|
239
|
-
var gradient = paletteCtx.createLinearGradient(0, 0, 256, 1);
|
|
240
|
-
for (var key in gradientConfig) {
|
|
241
|
-
gradient.addColorStop(key, gradientConfig[key]);
|
|
242
|
-
}
|
|
243
|
-
paletteCtx.fillStyle = gradient;
|
|
244
|
-
paletteCtx.fillRect(0, 0, 256, 1);
|
|
245
|
-
return paletteCtx.getImageData(0, 0, 256, 1).data;
|
|
246
|
-
};
|
|
247
|
-
var _getPointTemplate = function _getPointTemplate(radius, blurFactor) {
|
|
248
|
-
var tplCanvas = document.createElement('canvas');
|
|
249
|
-
var tplCtx = tplCanvas.getContext('2d');
|
|
250
|
-
var x = radius;
|
|
251
|
-
var y = radius;
|
|
252
|
-
tplCanvas.width = tplCanvas.height = radius * 2;
|
|
253
|
-
if (blurFactor == 1) {
|
|
254
|
-
tplCtx.beginPath();
|
|
255
|
-
tplCtx.arc(x, y, radius, 0, 2 * Math.PI, false);
|
|
256
|
-
tplCtx.fillStyle = 'rgba(0,0,0,1)';
|
|
257
|
-
tplCtx.fill();
|
|
258
|
-
} else {
|
|
259
|
-
var gradient = tplCtx.createRadialGradient(x, y, radius * blurFactor, x, y, radius);
|
|
260
|
-
gradient.addColorStop(0, 'rgba(0,0,0,1)');
|
|
261
|
-
gradient.addColorStop(1, 'rgba(0,0,0,0)');
|
|
262
|
-
tplCtx.fillStyle = gradient;
|
|
263
|
-
tplCtx.fillRect(0, 0, 2 * radius, 2 * radius);
|
|
264
|
-
}
|
|
265
|
-
return tplCanvas;
|
|
266
|
-
};
|
|
267
|
-
var _prepareData = function _prepareData(data) {
|
|
268
|
-
var renderData = [];
|
|
269
|
-
var min = data.min;
|
|
270
|
-
var max = data.max;
|
|
271
|
-
var radi = data.radi;
|
|
272
|
-
var data = data.data;
|
|
273
|
-
var xValues = Object.keys(data);
|
|
274
|
-
var xValuesLen = xValues.length;
|
|
275
|
-
while (xValuesLen--) {
|
|
276
|
-
var xValue = xValues[xValuesLen];
|
|
277
|
-
var yValues = Object.keys(data[xValue]);
|
|
278
|
-
var yValuesLen = yValues.length;
|
|
279
|
-
while (yValuesLen--) {
|
|
280
|
-
var yValue = yValues[yValuesLen];
|
|
281
|
-
var value = data[xValue][yValue];
|
|
282
|
-
var radius = radi[xValue][yValue];
|
|
283
|
-
renderData.push({
|
|
284
|
-
x: xValue,
|
|
285
|
-
y: yValue,
|
|
286
|
-
value: value,
|
|
287
|
-
radius: radius
|
|
288
|
-
});
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
return {
|
|
292
|
-
min: min,
|
|
293
|
-
max: max,
|
|
294
|
-
data: renderData
|
|
295
|
-
};
|
|
296
|
-
};
|
|
297
|
-
function Canvas2dRenderer(config) {
|
|
298
|
-
var container = config.container;
|
|
299
|
-
var shadowCanvas = this.shadowCanvas = document.createElement('canvas');
|
|
300
|
-
var canvas = this.canvas = config.canvas || document.createElement('canvas');
|
|
301
|
-
var renderBoundaries = this._renderBoundaries = [10000, 10000, 0, 0];
|
|
302
|
-
var computed = getComputedStyle(config.container) || {};
|
|
303
|
-
canvas.className = 'heatmap-canvas';
|
|
304
|
-
this._width = canvas.width = shadowCanvas.width = config.width || +computed.width.replace(/px/, '');
|
|
305
|
-
this._height = canvas.height = shadowCanvas.height = config.height || +computed.height.replace(/px/, '');
|
|
306
|
-
this.shadowCtx = shadowCanvas.getContext('2d');
|
|
307
|
-
this.ctx = canvas.getContext('2d');
|
|
308
|
-
|
|
309
|
-
// @TODO:
|
|
310
|
-
// conditional wrapper
|
|
311
|
-
|
|
312
|
-
canvas.style.cssText = shadowCanvas.style.cssText = 'position:absolute;left:0;top:0;';
|
|
313
|
-
container.style.position = 'relative';
|
|
314
|
-
container.appendChild(canvas);
|
|
315
|
-
this._palette = _getColorPalette(config);
|
|
316
|
-
this._templates = {};
|
|
317
|
-
this._setStyles(config);
|
|
318
|
-
}
|
|
319
|
-
Canvas2dRenderer.prototype = {
|
|
320
|
-
renderPartial: function renderPartial(data) {
|
|
321
|
-
if (data.data.length > 0) {
|
|
322
|
-
this._drawAlpha(data);
|
|
323
|
-
this._colorize();
|
|
324
|
-
}
|
|
325
|
-
},
|
|
326
|
-
renderAll: function renderAll(data) {
|
|
327
|
-
// reset render boundaries
|
|
328
|
-
this._clear();
|
|
329
|
-
if (data.data.length > 0) {
|
|
330
|
-
this._drawAlpha(_prepareData(data));
|
|
331
|
-
this._colorize();
|
|
332
|
-
}
|
|
333
|
-
},
|
|
334
|
-
_updateGradient: function _updateGradient(config) {
|
|
335
|
-
this._palette = _getColorPalette(config);
|
|
336
|
-
},
|
|
337
|
-
updateConfig: function updateConfig(config) {
|
|
338
|
-
if (config['gradient']) {
|
|
339
|
-
this._updateGradient(config);
|
|
340
|
-
}
|
|
341
|
-
this._setStyles(config);
|
|
342
|
-
},
|
|
343
|
-
setDimensions: function setDimensions(width, height) {
|
|
344
|
-
this._width = width;
|
|
345
|
-
this._height = height;
|
|
346
|
-
this.canvas.width = this.shadowCanvas.width = width;
|
|
347
|
-
this.canvas.height = this.shadowCanvas.height = height;
|
|
348
|
-
},
|
|
349
|
-
_clear: function _clear() {
|
|
350
|
-
this.shadowCtx.clearRect(0, 0, this._width, this._height);
|
|
351
|
-
this.ctx.clearRect(0, 0, this._width, this._height);
|
|
352
|
-
},
|
|
353
|
-
_setStyles: function _setStyles(config) {
|
|
354
|
-
this._blur = config.blur == 0 ? 0 : config.blur || config.defaultBlur;
|
|
355
|
-
if (config.backgroundColor) {
|
|
356
|
-
this.canvas.style.backgroundColor = config.backgroundColor;
|
|
357
|
-
}
|
|
358
|
-
this._width = this.canvas.width = this.shadowCanvas.width = config.width || this._width;
|
|
359
|
-
this._height = this.canvas.height = this.shadowCanvas.height = config.height || this._height;
|
|
360
|
-
this._opacity = (config.opacity || 0) * 255;
|
|
361
|
-
this._maxOpacity = (config.maxOpacity || config.defaultMaxOpacity) * 255;
|
|
362
|
-
this._minOpacity = (config.minOpacity || config.defaultMinOpacity) * 255;
|
|
363
|
-
this._useGradientOpacity = !!config.useGradientOpacity;
|
|
364
|
-
},
|
|
365
|
-
_drawAlpha: function _drawAlpha(data) {
|
|
366
|
-
var min = this._min = data.min;
|
|
367
|
-
var max = this._max = data.max;
|
|
368
|
-
var data = data.data || [];
|
|
369
|
-
var dataLen = data.length;
|
|
370
|
-
// on a point basis?
|
|
371
|
-
var blur = 1 - this._blur;
|
|
372
|
-
while (dataLen--) {
|
|
373
|
-
var point = data[dataLen];
|
|
374
|
-
var x = point.x;
|
|
375
|
-
var y = point.y;
|
|
376
|
-
var radius = point.radius;
|
|
377
|
-
// if value is bigger than max
|
|
378
|
-
// use max as value
|
|
379
|
-
var value = Math.min(point.value, max);
|
|
380
|
-
var rectX = x - radius;
|
|
381
|
-
var rectY = y - radius;
|
|
382
|
-
var shadowCtx = this.shadowCtx;
|
|
383
|
-
var tpl;
|
|
384
|
-
if (!this._templates[radius]) {
|
|
385
|
-
this._templates[radius] = tpl = _getPointTemplate(radius, blur);
|
|
386
|
-
} else {
|
|
387
|
-
tpl = this._templates[radius];
|
|
388
|
-
}
|
|
389
|
-
// value from minimum / value range
|
|
390
|
-
// => [0, 1]
|
|
391
|
-
var templateAlpha = (value - min) / (max - min);
|
|
392
|
-
// this fixes #176: small values are not visible because globalAlpha < .01 cannot be read from imageData
|
|
393
|
-
shadowCtx.globalAlpha = templateAlpha < 0.01 ? 0.01 : templateAlpha;
|
|
394
|
-
shadowCtx.drawImage(tpl, rectX, rectY);
|
|
395
|
-
|
|
396
|
-
// update renderBoundaries
|
|
397
|
-
if (rectX < this._renderBoundaries[0]) {
|
|
398
|
-
this._renderBoundaries[0] = rectX;
|
|
399
|
-
}
|
|
400
|
-
if (rectY < this._renderBoundaries[1]) {
|
|
401
|
-
this._renderBoundaries[1] = rectY;
|
|
402
|
-
}
|
|
403
|
-
if (rectX + 2 * radius > this._renderBoundaries[2]) {
|
|
404
|
-
this._renderBoundaries[2] = rectX + 2 * radius;
|
|
405
|
-
}
|
|
406
|
-
if (rectY + 2 * radius > this._renderBoundaries[3]) {
|
|
407
|
-
this._renderBoundaries[3] = rectY + 2 * radius;
|
|
408
|
-
}
|
|
409
|
-
}
|
|
410
|
-
},
|
|
411
|
-
_colorize: function _colorize() {
|
|
412
|
-
var x = this._renderBoundaries[0];
|
|
413
|
-
var y = this._renderBoundaries[1];
|
|
414
|
-
var width = this._renderBoundaries[2] - x;
|
|
415
|
-
var height = this._renderBoundaries[3] - y;
|
|
416
|
-
var maxWidth = this._width;
|
|
417
|
-
var maxHeight = this._height;
|
|
418
|
-
var opacity = this._opacity;
|
|
419
|
-
var maxOpacity = this._maxOpacity;
|
|
420
|
-
var minOpacity = this._minOpacity;
|
|
421
|
-
var useGradientOpacity = this._useGradientOpacity;
|
|
422
|
-
if (x < 0) {
|
|
423
|
-
x = 0;
|
|
424
|
-
}
|
|
425
|
-
if (y < 0) {
|
|
426
|
-
y = 0;
|
|
427
|
-
}
|
|
428
|
-
if (x + width > maxWidth) {
|
|
429
|
-
width = maxWidth - x;
|
|
430
|
-
}
|
|
431
|
-
if (y + height > maxHeight) {
|
|
432
|
-
height = maxHeight - y;
|
|
433
|
-
}
|
|
434
|
-
var img = this.shadowCtx.getImageData(x, y, width, height);
|
|
435
|
-
var imgData = img.data;
|
|
436
|
-
var len = imgData.length;
|
|
437
|
-
var palette = this._palette;
|
|
438
|
-
for (var i = 3; i < len; i += 4) {
|
|
439
|
-
var alpha = imgData[i];
|
|
440
|
-
var offset = alpha * 4;
|
|
441
|
-
if (!offset) {
|
|
442
|
-
continue;
|
|
443
|
-
}
|
|
444
|
-
var finalAlpha;
|
|
445
|
-
if (opacity > 0) {
|
|
446
|
-
finalAlpha = opacity;
|
|
447
|
-
} else {
|
|
448
|
-
if (alpha < maxOpacity) {
|
|
449
|
-
if (alpha < minOpacity) {
|
|
450
|
-
finalAlpha = minOpacity;
|
|
451
|
-
} else {
|
|
452
|
-
finalAlpha = alpha;
|
|
453
|
-
}
|
|
454
|
-
} else {
|
|
455
|
-
finalAlpha = maxOpacity;
|
|
456
|
-
}
|
|
457
|
-
}
|
|
458
|
-
imgData[i - 3] = palette[offset];
|
|
459
|
-
imgData[i - 2] = palette[offset + 1];
|
|
460
|
-
imgData[i - 1] = palette[offset + 2];
|
|
461
|
-
imgData[i] = useGradientOpacity ? palette[offset + 3] : finalAlpha;
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
// img.data = imgData;
|
|
465
|
-
this.ctx.putImageData(img, x, y);
|
|
466
|
-
this._renderBoundaries = [1000, 1000, 0, 0];
|
|
467
|
-
},
|
|
468
|
-
getValueAt: function getValueAt(point) {
|
|
469
|
-
var value;
|
|
470
|
-
var shadowCtx = this.shadowCtx;
|
|
471
|
-
var img = shadowCtx.getImageData(point.x, point.y, 1, 1);
|
|
472
|
-
var data = img.data[3];
|
|
473
|
-
var max = this._max;
|
|
474
|
-
var min = this._min;
|
|
475
|
-
value = Math.abs(max - min) * (data / 255) >> 0;
|
|
476
|
-
return value;
|
|
477
|
-
},
|
|
478
|
-
getDataURL: function getDataURL() {
|
|
479
|
-
return this.canvas.toDataURL();
|
|
480
|
-
}
|
|
481
|
-
};
|
|
482
|
-
return Canvas2dRenderer;
|
|
483
|
-
}();
|
|
484
|
-
var Renderer = function RendererClosure() {
|
|
485
|
-
var rendererFn = false;
|
|
486
|
-
if (HeatmapConfig['defaultRenderer'] === 'canvas2d') {
|
|
487
|
-
rendererFn = Canvas2dRenderer;
|
|
488
|
-
}
|
|
489
|
-
return rendererFn;
|
|
490
|
-
}();
|
|
491
|
-
var Util = {
|
|
492
|
-
merge: function merge() {
|
|
493
|
-
var merged = {};
|
|
494
|
-
var argsLen = arguments.length;
|
|
495
|
-
for (var i = 0; i < argsLen; i++) {
|
|
496
|
-
var obj = arguments[i];
|
|
497
|
-
for (var key in obj) {
|
|
498
|
-
merged[key] = obj[key];
|
|
499
|
-
}
|
|
500
|
-
}
|
|
501
|
-
return merged;
|
|
502
|
-
}
|
|
503
|
-
};
|
|
504
|
-
// Heatmap Constructor
|
|
505
|
-
var Heatmap = function HeatmapClosure() {
|
|
506
|
-
var Coordinator = function CoordinatorClosure() {
|
|
507
|
-
function Coordinator() {
|
|
508
|
-
this.cStore = {};
|
|
509
|
-
}
|
|
510
|
-
Coordinator.prototype = {
|
|
511
|
-
on: function on(evtName, callback, scope) {
|
|
512
|
-
var cStore = this.cStore;
|
|
513
|
-
if (!cStore[evtName]) {
|
|
514
|
-
cStore[evtName] = [];
|
|
515
|
-
}
|
|
516
|
-
cStore[evtName].push(function (data) {
|
|
517
|
-
return callback.call(scope, data);
|
|
518
|
-
});
|
|
519
|
-
},
|
|
520
|
-
emit: function emit(evtName, data) {
|
|
521
|
-
var cStore = this.cStore;
|
|
522
|
-
if (cStore[evtName]) {
|
|
523
|
-
var len = cStore[evtName].length;
|
|
524
|
-
for (var i = 0; i < len; i++) {
|
|
525
|
-
var callback = cStore[evtName][i];
|
|
526
|
-
callback(data);
|
|
527
|
-
}
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
};
|
|
531
|
-
return Coordinator;
|
|
532
|
-
}();
|
|
533
|
-
var _connect = function _connect(scope) {
|
|
534
|
-
var renderer = scope._renderer;
|
|
535
|
-
var coordinator = scope._coordinator;
|
|
536
|
-
var store = scope._store;
|
|
537
|
-
coordinator.on('renderpartial', renderer.renderPartial, renderer);
|
|
538
|
-
coordinator.on('renderall', renderer.renderAll, renderer);
|
|
539
|
-
coordinator.on('extremachange', function (data) {
|
|
540
|
-
scope._config.onExtremaChange && scope._config.onExtremaChange({
|
|
541
|
-
min: data.min,
|
|
542
|
-
max: data.max,
|
|
543
|
-
gradient: scope._config['gradient'] || scope._config['defaultGradient']
|
|
544
|
-
});
|
|
545
|
-
});
|
|
546
|
-
store.setCoordinator(coordinator);
|
|
547
|
-
};
|
|
548
|
-
function Heatmap() {
|
|
549
|
-
var config = this._config = Util.merge(HeatmapConfig, arguments[0] || {});
|
|
550
|
-
this._coordinator = new Coordinator();
|
|
551
|
-
if (config['plugin']) {
|
|
552
|
-
var pluginToLoad = config['plugin'];
|
|
553
|
-
if (!HeatmapConfig.plugins[pluginToLoad]) {
|
|
554
|
-
throw new Error("Plugin '" + pluginToLoad + "' not found. Maybe it was not registered.");
|
|
555
|
-
} else {
|
|
556
|
-
var plugin = HeatmapConfig.plugins[pluginToLoad];
|
|
557
|
-
// set plugin renderer and store
|
|
558
|
-
this._renderer = new plugin.renderer(config);
|
|
559
|
-
this._store = new plugin.store(config);
|
|
560
|
-
}
|
|
561
|
-
} else {
|
|
562
|
-
this._renderer = new Renderer(config);
|
|
563
|
-
this._store = new Store(config);
|
|
564
|
-
}
|
|
565
|
-
_connect(this);
|
|
566
|
-
}
|
|
567
|
-
|
|
568
|
-
// @TODO:
|
|
569
|
-
// add API documentation
|
|
570
|
-
Heatmap.prototype = {
|
|
571
|
-
addData: function addData() {
|
|
572
|
-
this._store.addData.apply(this._store, arguments);
|
|
573
|
-
return this;
|
|
574
|
-
},
|
|
575
|
-
removeData: function removeData() {
|
|
576
|
-
this._store.removeData && this._store.removeData.apply(this._store, arguments);
|
|
577
|
-
return this;
|
|
578
|
-
},
|
|
579
|
-
setData: function setData() {
|
|
580
|
-
this._store.setData.apply(this._store, arguments);
|
|
581
|
-
return this;
|
|
582
|
-
},
|
|
583
|
-
setDataMax: function setDataMax() {
|
|
584
|
-
this._store.setDataMax.apply(this._store, arguments);
|
|
585
|
-
return this;
|
|
586
|
-
},
|
|
587
|
-
setDataMin: function setDataMin() {
|
|
588
|
-
this._store.setDataMin.apply(this._store, arguments);
|
|
589
|
-
return this;
|
|
590
|
-
},
|
|
591
|
-
configure: function configure(config) {
|
|
592
|
-
this._config = Util.merge(this._config, config);
|
|
593
|
-
this._renderer.updateConfig(this._config);
|
|
594
|
-
this._coordinator.emit('renderall', this._store._getInternalData());
|
|
595
|
-
return this;
|
|
596
|
-
},
|
|
597
|
-
repaint: function repaint() {
|
|
598
|
-
this._coordinator.emit('renderall', this._store._getInternalData());
|
|
599
|
-
return this;
|
|
600
|
-
},
|
|
601
|
-
getData: function getData() {
|
|
602
|
-
return this._store.getData();
|
|
603
|
-
},
|
|
604
|
-
getDataURL: function getDataURL() {
|
|
605
|
-
return this._renderer.getDataURL();
|
|
606
|
-
},
|
|
607
|
-
getValueAt: function getValueAt(point) {
|
|
608
|
-
if (this._store.getValueAt) {
|
|
609
|
-
return this._store.getValueAt(point);
|
|
610
|
-
} else if (this._renderer.getValueAt) {
|
|
611
|
-
return this._renderer.getValueAt(point);
|
|
612
|
-
} else {
|
|
613
|
-
return null;
|
|
614
|
-
}
|
|
615
|
-
}
|
|
616
|
-
};
|
|
617
|
-
return Heatmap;
|
|
618
|
-
}();
|
|
619
|
-
|
|
620
|
-
// core
|
|
621
|
-
var heatmapFactory = {
|
|
622
|
-
create: function create(config) {
|
|
623
|
-
return new Heatmap(config);
|
|
624
|
-
},
|
|
625
|
-
register: function register(pluginKey, plugin) {
|
|
626
|
-
HeatmapConfig.plugins[pluginKey] = plugin;
|
|
627
|
-
}
|
|
628
|
-
};
|
|
629
|
-
return heatmapFactory;
|
|
630
|
-
});
|
|
631
|
-
/* eslint-enable */
|
|
1
|
+
function _0x1282(){var _0x3dd791=['Dw5KzwzPBMvK','CMvTB3zLrgf0yq','zgvMyxvSDfLgAwvSza','EuzPzwXK','yMfJA2DYB3vUzenVBg9Y','x2nVB3jKAw5HDg9Y','zw1PDa','ywrKq29SB3jtDg9W','zMLSBfn0EwXL','mMDIrMvevW','zMLSBfjLy3q','x2jSDxi','x3LgAwvSza','y2fUDMfZ','CMDIysGWldaSmcWXkq','C3r5Bgu','z2v0vMfSDwvbDa','nteXmZe1sfDbzKDO','C2HHzg93q2fUDMfZ','y2fSBa','mtm2BxPSyMDA','CMvUzgvYCgfYDgLHBa','x21PBG','zNvUy3rPB24','C2v0rgf0yu1HEa','Bwf4t3bHy2L0Eq','BwvYz2u','CMDIkdaSmcWYntuP','yMX1CG','zhjHD0LTywDL','AdmZnW','x3jLBMrLCMvY','x3n0B3jL','zgvMyxvSDejSDxi','y3jLyxrLuMfKAwfSr3jHzgLLBNq','nMvqBKXqyG','C2v0rgf0yu1PBG','BgvUz3rO','yxbWzw5Kq2HPBgq','x3jHzgK','mJGXmZuXnxvhEef0ua','mtC1otG2nKneExzKzq','ntvgDKDiz0O','y3nZvgv4Da','CMfKAxvZ','x2nMz1jHzgL1CW','nty5nta0mgveteTfwG','BwLU','BwLUt3bHy2L0Eq','x3DPzhrO','CMvUzgvYywXS','EwvSBg93','C2HHzg93q3r4','y2XLyxjszwn0','ChjVDg90ExbL','mty5odaYme5bq2jysG','x2rHDge','x2DLDeLUDgvYBMfSrgf0yq','x3jLBMrLCKjVDw5KyxjPzxm','mJi3ntq0owLMrePZAG','y3jLyxrLrwXLBwvUDa','x21HEe9WywnPDhK','DxbKyxrLq29UzMLN','y2fUDMfZmMq','mtu0nZGYodfpAuz0Bg4','B3bHy2L0Eq','ugX1z2LUicC','y3r4','zxHWB3j0CW','x3vUt3jNyw5PEMveyxrH','x2nVBg9YAxPL','B25fEhrYzw1Hq2HHBMDL','x3rLBxbSyxrLCW','CgX1z2LU','CMvWBgfJzq','ywrKrgf0yq','AgvHDg1HCc1Jyw52yxm','z2v0sw1Hz2veyxrH','yxbWBhK','D2LKDgG','x2rYyxDbBhbOyq','AgvPz2H0','x3bHBgv0Dgu','zgvMyxvSDe1PBK9WywnPDhK','y3jLyxrLtgLUzwfYr3jHzgLLBNq','z2v0q29UDgv4Da','x2HLAwDODa','x2nVBMzPzW','x21PBK9WywnPDhK','CgX1z2LUCW','z2v0rgf0yq','x29UrxH0CMvTyunOyw5Nzq','Dg9eyxrHvvjm','DMfSDwu','x21HEa','EezPzwXK','zgf0yq','x3nLDfn0EwXLCW','z3jHzgLLBNq','Chv0sw1Hz2veyxrH'];_0x1282=function(){return _0x3dd791;};return _0x1282();}function _0x5d71(_0xc5dd01,_0x57b492){_0xc5dd01=_0xc5dd01-0x12e;var _0x12825b=_0x1282();var _0x5d71e9=_0x12825b[_0xc5dd01];if(_0x5d71['elFKtZ']===undefined){var _0x49e4eb=function(_0x3d9e4c){var _0x630df9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0xcf8a1a='',_0x4fb663='';for(var _0x57a41c=0x0,_0x4774e1,_0x3e2598,_0x6e404d=0x0;_0x3e2598=_0x3d9e4c['charAt'](_0x6e404d++);~_0x3e2598&&(_0x4774e1=_0x57a41c%0x4?_0x4774e1*0x40+_0x3e2598:_0x3e2598,_0x57a41c++%0x4)?_0xcf8a1a+=String['fromCharCode'](0xff&_0x4774e1>>(-0x2*_0x57a41c&0x6)):0x0){_0x3e2598=_0x630df9['indexOf'](_0x3e2598);}for(var _0x4272bd=0x0,_0x479290=_0xcf8a1a['length'];_0x4272bd<_0x479290;_0x4272bd++){_0x4fb663+='%'+('00'+_0xcf8a1a['charCodeAt'](_0x4272bd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4fb663);};_0x5d71['GsHonB']=_0x49e4eb,_0x5d71['BfUcoH']={},_0x5d71['elFKtZ']=!![];}var _0x6e536f=_0x12825b[0x0],_0x3733bc=_0xc5dd01+_0x6e536f,_0x308ef7=_0x5d71['BfUcoH'][_0x3733bc];return!_0x308ef7?(_0x5d71e9=_0x5d71['GsHonB'](_0x5d71e9),_0x5d71['BfUcoH'][_0x3733bc]=_0x5d71e9):_0x5d71e9=_0x308ef7,_0x5d71e9;}var _0x21ffaf=_0x5d71;(function(_0x422e0e,_0x33f02a){var _0x1e58b0=_0x5d71,_0x13b2a6=_0x422e0e();while(!![]){try{var _0x5d2f25=-parseInt(_0x1e58b0(0x133))/0x1*(-parseInt(_0x1e58b0(0x153))/0x2)+parseInt(_0x1e58b0(0x165))/0x3+-parseInt(_0x1e58b0(0x158))/0x4+-parseInt(_0x1e58b0(0x152))/0x5*(parseInt(_0x1e58b0(0x14d))/0x6)+parseInt(_0x1e58b0(0x13b))/0x7*(parseInt(_0x1e58b0(0x13e))/0x8)+-parseInt(_0x1e58b0(0x16a))/0x9+parseInt(_0x1e58b0(0x161))/0xa*(parseInt(_0x1e58b0(0x154))/0xb);if(_0x5d2f25===_0x33f02a)break;else _0x13b2a6['push'](_0x13b2a6['shift']());}catch(_0x53f6ee){_0x13b2a6['push'](_0x13b2a6['shift']());}}}(_0x1282,0xdc6c4),function(_0xcf8a1a,_0x4fb663,_0x57a41c){var _0x29d1b4=_0x5d71;if(typeof module!==_0x29d1b4(0x18e)&&module['exports'])module[_0x29d1b4(0x16e)]=_0x57a41c();else typeof define===_0x29d1b4(0x141)&&define['amd']?define(_0x57a41c):_0x4fb663[_0xcf8a1a]=_0x57a41c();}(_0x21ffaf(0x148),this,function(){var _0x25dc49=_0x21ffaf,_0x4774e1={'defaultRadius':0x28,'defaultRenderer':'canvas2d','defaultGradient':{0.25:_0x25dc49(0x145),0.55:'rgb(0,255,0)',0.85:_0x25dc49(0x15d),0x1:'rgb(255,0,0)'},'defaultMaxOpacity':0x1,'defaultMinOpacity':0x0,'defaultBlur':0.85,'defaultXField':'x','defaultYField':'y','defaultValueField':'value','plugins':{}},_0x3e2598=function _0x334ec8(){var _0x2d77ab=_0x25dc49,_0x2009a4=function _0x1872db(_0x4d1344){var _0x281629=_0x5d71;this[_0x281629(0x12f)]={},this['_data']=[],this['_radi']=[],this['_min']=0xa,this[_0x281629(0x188)]=0x1,this['_xField']=_0x4d1344[_0x281629(0x189)]||_0x4d1344['defaultXField'],this[_0x281629(0x136)]=_0x4d1344[_0x281629(0x191)]||_0x4d1344[_0x281629(0x190)],this['_valueField']=_0x4d1344['valueField']||_0x4d1344['defaultValueField'],_0x4d1344['radius']&&(this[_0x281629(0x157)]=_0x4d1344[_0x281629(0x156)]);},_0x1eecaa=_0x4774e1['defaultRadius'];return _0x2009a4[_0x2d77ab(0x160)]={'_organiseData':function _0x43799a(_0x5df748,_0x19353c){var _0xff45d6=_0x2d77ab,_0xa0de72=_0x5df748[this['_xField']],_0x212318=_0x5df748[this[_0xff45d6(0x136)]],_0x5c636a=this['_radi'],_0x556106=this[_0xff45d6(0x162)],_0x2930c7=this[_0xff45d6(0x188)],_0x127d9b=this['_min'],_0x53f331=_0x5df748[this['_valueField']]||0x1,_0x1e4ebb=_0x5df748['radius']||this[_0xff45d6(0x157)]||_0x1eecaa;!_0x556106[_0xa0de72]&&(_0x556106[_0xa0de72]=[],_0x5c636a[_0xa0de72]=[]);!_0x556106[_0xa0de72][_0x212318]?(_0x556106[_0xa0de72][_0x212318]=_0x53f331,_0x5c636a[_0xa0de72][_0x212318]=_0x1e4ebb):_0x556106[_0xa0de72][_0x212318]+=_0x53f331;var _0xe6e141=_0x556106[_0xa0de72][_0x212318];if(_0xe6e141>_0x2930c7)return!_0x19353c?this['_max']=_0xe6e141:this[_0xff45d6(0x142)](_0xe6e141),![];else return _0xe6e141<_0x127d9b?(!_0x19353c?this['_min']=_0xe6e141:this[_0xff45d6(0x14e)](_0xe6e141),![]):{'x':_0xa0de72,'y':_0x212318,'value':_0x53f331,'radius':_0x1e4ebb,'min':_0x127d9b,'max':_0x2930c7};},'_unOrganizeData':function _0x374821(){var _0x405e16=_0x2d77ab,_0x3a82ff=[],_0xd035cc=this['_data'],_0x476f89=this[_0x405e16(0x151)];for(var _0x15473e in _0xd035cc){for(var _0x3f0fe1 in _0xd035cc[_0x15473e]){_0x3a82ff['push']({'x':_0x15473e,'y':_0x3f0fe1,'radius':_0x476f89[_0x15473e][_0x3f0fe1],'value':_0xd035cc[_0x15473e][_0x3f0fe1]});}}return{'min':this[_0x405e16(0x140)],'max':this[_0x405e16(0x188)],'data':_0x3a82ff};},'_onExtremaChange':function _0x4792fb(){var _0x3f9f6d=_0x2d77ab;this['_coordinator'][_0x3f9f6d(0x130)]('extremachange',{'min':this[_0x3f9f6d(0x140)],'max':this[_0x3f9f6d(0x188)]});},'addData':function _0x2ac935(){var _0x204bb7=_0x2d77ab;if(arguments[0x0][_0x204bb7(0x14f)]>0x0){var _0x4eb698=arguments[0x0],_0x446338=_0x4eb698[_0x204bb7(0x14f)];while(_0x446338--){this[_0x204bb7(0x175)][_0x204bb7(0x13d)](this,_0x4eb698[_0x446338]);}}else{var _0x558700=this['_organiseData'](arguments[0x0],!![]);_0x558700&&(this['_data']['length']===0x0&&(this[_0x204bb7(0x140)]=this[_0x204bb7(0x188)]=_0x558700[_0x204bb7(0x187)]),this[_0x204bb7(0x12f)]['emit']('renderpartial',{'min':this[_0x204bb7(0x140)],'max':this[_0x204bb7(0x188)],'data':[_0x558700]}));}return this;},'setData':function _0x2dcbd5(_0x2e7a86){var _0x4e3b8a=_0x2d77ab,_0x3558a3=_0x2e7a86['data'],_0x15dddd=_0x3558a3['length'];this['_data']=[],this[_0x4e3b8a(0x151)]=[];for(var _0x5aa218=0x0;_0x5aa218<_0x15dddd;_0x5aa218++){this['_organiseData'](_0x3558a3[_0x5aa218],![]);}return this[_0x4e3b8a(0x188)]=_0x2e7a86['max'],this[_0x4e3b8a(0x140)]=_0x2e7a86['min']||0x0,this[_0x4e3b8a(0x185)](),this[_0x4e3b8a(0x12f)]['emit']('renderall',this[_0x4e3b8a(0x163)]()),this;},'removeData':function _0x47f846(){},'setDataMax':function _0x39f8a4(_0x2e2485){var _0x2cc918=_0x2d77ab;return this[_0x2cc918(0x188)]=_0x2e2485,this[_0x2cc918(0x185)](),this[_0x2cc918(0x12f)]['emit']('renderall',this['_getInternalData']()),this;},'setDataMin':function _0x5c7bf3(_0x26bc85){var _0x48c68d=_0x2d77ab;return this['_min']=_0x26bc85,this['_onExtremaChange'](),this['_coordinator'][_0x48c68d(0x130)]('renderall',this['_getInternalData']()),this;},'setCoordinator':function _0x3adddb(_0x5f2ec2){this['_coordinator']=_0x5f2ec2;},'_getInternalData':function _0xff2d21(){var _0x41cac0=_0x2d77ab;return{'max':this[_0x41cac0(0x188)],'min':this['_min'],'data':this['_data'],'radi':this[_0x41cac0(0x151)]};},'getData':function _0xdd81b3(){var _0x2131f2=_0x2d77ab;return this[_0x2131f2(0x16f)]();}},_0x2009a4;}(),_0x6e404d=function _0x4cb83a(){var _0x3bf478=_0x25dc49,_0x572046=function _0x3e9b06(_0x6f2595){var _0x11ed72=_0x5d71,_0x17bf9e=_0x6f2595['gradient']||_0x6f2595['defaultGradient'],_0x214bf5=document[_0x11ed72(0x166)]('canvas'),_0x4cd506=_0x214bf5['getContext']('2d');_0x214bf5[_0x11ed72(0x179)]=0x100,_0x214bf5['height']=0x1;var _0x1fce27=_0x4cd506[_0x11ed72(0x17e)](0x0,0x0,0x100,0x1);for(var _0x17c534 in _0x17bf9e){_0x1fce27[_0x11ed72(0x131)](_0x17c534,_0x17bf9e[_0x17c534]);}return _0x4cd506['fillStyle']=_0x1fce27,_0x4cd506[_0x11ed72(0x134)](0x0,0x0,0x100,0x1),_0x4cd506[_0x11ed72(0x177)](0x0,0x0,0x100,0x1)[_0x11ed72(0x18a)];},_0x3e03cc=function _0x8a4996(_0x4bb084,_0x1203a0){var _0x54b0ff=_0x5d71,_0x1cd084=document['createElement']('canvas'),_0x14a81f=_0x1cd084['getContext']('2d'),_0x4e6c57=_0x4bb084,_0x24e00c=_0x4bb084;_0x1cd084['width']=_0x1cd084[_0x54b0ff(0x17b)]=_0x4bb084*0x2;if(_0x1203a0==0x1)_0x14a81f['beginPath'](),_0x14a81f['arc'](_0x4e6c57,_0x24e00c,_0x4bb084,0x0,0x2*Math['PI'],![]),_0x14a81f['fillStyle']='rgba(0,0,0,1)',_0x14a81f['fill']();else{var _0x438de7=_0x14a81f[_0x54b0ff(0x14c)](_0x4e6c57,_0x24e00c,_0x4bb084*_0x1203a0,_0x4e6c57,_0x24e00c,_0x4bb084);_0x438de7['addColorStop'](0x0,_0x54b0ff(0x138)),_0x438de7['addColorStop'](0x1,'rgba(0,0,0,0)'),_0x14a81f[_0x54b0ff(0x132)]=_0x438de7,_0x14a81f[_0x54b0ff(0x134)](0x0,0x0,0x2*_0x4bb084,0x2*_0x4bb084);}return _0x1cd084;},_0x49418d=function _0x5409f0(_0x367907){var _0x27e2ee=_0x5d71,_0x2434c3=[],_0x2f7a25=_0x367907[_0x27e2ee(0x159)],_0x7374f6=_0x367907['max'],_0x347173=_0x367907['radi'],_0x367907=_0x367907[_0x27e2ee(0x18a)],_0x18967d=Object['keys'](_0x367907),_0x21fcf9=_0x18967d['length'];while(_0x21fcf9--){var _0x15838f=_0x18967d[_0x21fcf9],_0x245765=Object['keys'](_0x367907[_0x15838f]),_0x361d85=_0x245765['length'];while(_0x361d85--){var _0x2a3771=_0x245765[_0x361d85],_0x80908=_0x367907[_0x15838f][_0x2a3771],_0x344103=_0x347173[_0x15838f][_0x2a3771];_0x2434c3['push']({'x':_0x15838f,'y':_0x2a3771,'value':_0x80908,'radius':_0x344103});}}return{'min':_0x2f7a25,'max':_0x7374f6,'data':_0x2434c3};};function _0x4cd29a(_0x563933){var _0x4b6c74=_0x5d71,_0x5ab804=_0x563933['container'],_0x34a3f2=this['shadowCanvas']=document['createElement']('canvas'),_0x5f35ac=this[_0x4b6c74(0x137)]=_0x563933[_0x4b6c74(0x137)]||document['createElement'](_0x4b6c74(0x137)),_0x4d12bf=this['_renderBoundaries']=[0x2710,0x2710,0x0,0x0],_0x2b2c6c=getComputedStyle(_0x563933['container'])||{};_0x5f35ac['className']=_0x4b6c74(0x176),this['_width']=_0x5f35ac[_0x4b6c74(0x179)]=_0x34a3f2['width']=_0x563933['width']||+_0x2b2c6c[_0x4b6c74(0x179)][_0x4b6c74(0x174)](/px/,''),this[_0x4b6c74(0x180)]=_0x5f35ac[_0x4b6c74(0x17b)]=_0x34a3f2['height']=_0x563933[_0x4b6c74(0x17b)]||+_0x2b2c6c['height']['replace'](/px/,''),this['shadowCtx']=_0x34a3f2['getContext']('2d'),this['ctx']=_0x5f35ac[_0x4b6c74(0x17f)]('2d'),_0x5f35ac[_0x4b6c74(0x139)][_0x4b6c74(0x155)]=_0x34a3f2['style']['cssText']='position:absolute;left:0;top:0;',_0x5ab804['style']['position']='relative',_0x5ab804[_0x4b6c74(0x150)](_0x5f35ac),this['_palette']=_0x572046(_0x563933),this[_0x4b6c74(0x172)]={},this[_0x4b6c74(0x18b)](_0x563933);}return _0x4cd29a[_0x3bf478(0x160)]={'renderPartial':function _0x4e7e6b(_0x4c18c3){var _0x4c2fe8=_0x3bf478;_0x4c18c3['data'][_0x4c2fe8(0x14f)]>0x0&&(this[_0x4c2fe8(0x17a)](_0x4c18c3),this[_0x4c2fe8(0x170)]());},'renderAll':function _0x4494cc(_0x3184d5){var _0x555b19=_0x3bf478;this['_clear'](),_0x3184d5['data']['length']>0x0&&(this['_drawAlpha'](_0x49418d(_0x3184d5)),this[_0x555b19(0x170)]());},'_updateGradient':function _0x230adb(_0x290cfa){var _0x3bcaf6=_0x3bf478;this[_0x3bcaf6(0x17c)]=_0x572046(_0x290cfa);},'updateConfig':function _0x50e8f6(_0x4b8dbe){var _0x11d5d3=_0x3bf478;_0x4b8dbe[_0x11d5d3(0x18c)]&&this['_updateGradient'](_0x4b8dbe),this['_setStyles'](_0x4b8dbe);},'setDimensions':function _0x343a9e(_0x55bd37,_0x57cc5a){var _0x552fa0=_0x3bf478;this['_width']=_0x55bd37,this['_height']=_0x57cc5a,this['canvas']['width']=this[_0x552fa0(0x13c)]['width']=_0x55bd37,this['canvas']['height']=this['shadowCanvas'][_0x552fa0(0x17b)]=_0x57cc5a;},'_clear':function _0x371be7(){var _0x1a7ea4=_0x3bf478;this['shadowCtx'][_0x1a7ea4(0x15f)](0x0,0x0,this[_0x1a7ea4(0x15b)],this[_0x1a7ea4(0x180)]),this[_0x1a7ea4(0x16d)]['clearRect'](0x0,0x0,this[_0x1a7ea4(0x15b)],this[_0x1a7ea4(0x180)]);},'_setStyles':function _0x49a0aa(_0x5f4480){var _0xa730a7=_0x3bf478;this[_0xa730a7(0x135)]=_0x5f4480['blur']==0x0?0x0:_0x5f4480[_0xa730a7(0x146)]||_0x5f4480[_0xa730a7(0x14b)],_0x5f4480[_0xa730a7(0x12e)]&&(this[_0xa730a7(0x137)][_0xa730a7(0x139)]['backgroundColor']=_0x5f4480['backgroundColor']),this[_0xa730a7(0x15b)]=this['canvas'][_0xa730a7(0x179)]=this['shadowCanvas'][_0xa730a7(0x179)]=_0x5f4480[_0xa730a7(0x179)]||this['_width'],this['_height']=this[_0xa730a7(0x137)]['height']=this[_0xa730a7(0x13c)]['height']=_0x5f4480['height']||this[_0xa730a7(0x180)],this['_opacity']=(_0x5f4480[_0xa730a7(0x16b)]||0x0)*0xff,this['_maxOpacity']=(_0x5f4480[_0xa730a7(0x143)]||_0x5f4480['defaultMaxOpacity'])*0xff,this['_minOpacity']=(_0x5f4480[_0xa730a7(0x15a)]||_0x5f4480[_0xa730a7(0x17d)])*0xff,this['_useGradientOpacity']=!!_0x5f4480['useGradientOpacity'];},'_drawAlpha':function _0x7e8017(_0x22094a){var _0x33b0ab=_0x3bf478,_0x165aac=this['_min']=_0x22094a[_0x33b0ab(0x159)],_0x1ac101=this[_0x33b0ab(0x188)]=_0x22094a['max'],_0x22094a=_0x22094a['data']||[],_0x29f9d7=_0x22094a[_0x33b0ab(0x14f)],_0xea203c=0x1-this['_blur'];while(_0x29f9d7--){var _0x3086e2=_0x22094a[_0x29f9d7],_0x5e8d8f=_0x3086e2['x'],_0x4cd053=_0x3086e2['y'],_0x4bd642=_0x3086e2[_0x33b0ab(0x156)],_0x5c94b6=Math[_0x33b0ab(0x159)](_0x3086e2[_0x33b0ab(0x187)],_0x1ac101),_0x4e0f57=_0x5e8d8f-_0x4bd642,_0x17ac58=_0x4cd053-_0x4bd642,_0x51053e=this[_0x33b0ab(0x15e)],_0xc51f3e;!this[_0x33b0ab(0x172)][_0x4bd642]?this['_templates'][_0x4bd642]=_0xc51f3e=_0x3e03cc(_0x4bd642,_0xea203c):_0xc51f3e=this[_0x33b0ab(0x172)][_0x4bd642];var _0x4e6461=(_0x5c94b6-_0x165aac)/(_0x1ac101-_0x165aac);_0x51053e['globalAlpha']=_0x4e6461<0.01?0.01:_0x4e6461,_0x51053e[_0x33b0ab(0x147)](_0xc51f3e,_0x4e0f57,_0x17ac58),_0x4e0f57<this[_0x33b0ab(0x164)][0x0]&&(this[_0x33b0ab(0x164)][0x0]=_0x4e0f57),_0x17ac58<this[_0x33b0ab(0x164)][0x1]&&(this[_0x33b0ab(0x164)][0x1]=_0x17ac58),_0x4e0f57+0x2*_0x4bd642>this[_0x33b0ab(0x164)][0x2]&&(this['_renderBoundaries'][0x2]=_0x4e0f57+0x2*_0x4bd642),_0x17ac58+0x2*_0x4bd642>this[_0x33b0ab(0x164)][0x3]&&(this['_renderBoundaries'][0x3]=_0x17ac58+0x2*_0x4bd642);}},'_colorize':function _0x53f672(){var _0x227556=_0x3bf478,_0x47e9cd=this[_0x227556(0x164)][0x0],_0x55a265=this['_renderBoundaries'][0x1],_0x30544d=this[_0x227556(0x164)][0x2]-_0x47e9cd,_0x101e8e=this['_renderBoundaries'][0x3]-_0x55a265,_0x1c4395=this['_width'],_0x574e22=this[_0x227556(0x180)],_0x233688=this['_opacity'],_0x4b3a98=this[_0x227556(0x167)],_0x47d9f7=this[_0x227556(0x182)],_0x10a069=this['_useGradientOpacity'];_0x47e9cd<0x0&&(_0x47e9cd=0x0);_0x55a265<0x0&&(_0x55a265=0x0);_0x47e9cd+_0x30544d>_0x1c4395&&(_0x30544d=_0x1c4395-_0x47e9cd);_0x55a265+_0x101e8e>_0x574e22&&(_0x101e8e=_0x574e22-_0x55a265);var _0x13d00f=this[_0x227556(0x15e)]['getImageData'](_0x47e9cd,_0x55a265,_0x30544d,_0x101e8e),_0x144b8b=_0x13d00f[_0x227556(0x18a)],_0x59d8b1=_0x144b8b['length'],_0x58bca8=this['_palette'];for(var _0x1f572e=0x3;_0x1f572e<_0x59d8b1;_0x1f572e+=0x4){var _0x4f03c1=_0x144b8b[_0x1f572e],_0x38a8a9=_0x4f03c1*0x4;if(!_0x38a8a9)continue;var _0x32dfd8;_0x233688>0x0?_0x32dfd8=_0x233688:_0x4f03c1<_0x4b3a98?_0x4f03c1<_0x47d9f7?_0x32dfd8=_0x47d9f7:_0x32dfd8=_0x4f03c1:_0x32dfd8=_0x4b3a98,_0x144b8b[_0x1f572e-0x3]=_0x58bca8[_0x38a8a9],_0x144b8b[_0x1f572e-0x2]=_0x58bca8[_0x38a8a9+0x1],_0x144b8b[_0x1f572e-0x1]=_0x58bca8[_0x38a8a9+0x2],_0x144b8b[_0x1f572e]=_0x10a069?_0x58bca8[_0x38a8a9+0x3]:_0x32dfd8;}this[_0x227556(0x16d)][_0x227556(0x18d)](_0x13d00f,_0x47e9cd,_0x55a265),this['_renderBoundaries']=[0x3e8,0x3e8,0x0,0x0];},'getValueAt':function _0x748d75(_0x4b41c9){var _0x5157e4=_0x3bf478,_0x4bc0d2,_0x285e71=this['shadowCtx'],_0x24e739=_0x285e71['getImageData'](_0x4b41c9['x'],_0x4b41c9['y'],0x1,0x1),_0x4e3020=_0x24e739['data'][0x3],_0x198dd0=this['_max'],_0x1a61e6=this[_0x5157e4(0x140)];return _0x4bc0d2=Math['abs'](_0x198dd0-_0x1a61e6)*(_0x4e3020/0xff)>>0x0,_0x4bc0d2;},'getDataURL':function _0x35ccfa(){var _0x1633da=_0x3bf478;return this['canvas'][_0x1633da(0x186)]();}},_0x4cd29a;}(),_0x4272bd=function _0x302f5b(){var _0x3a5d1f=_0x25dc49,_0x66deff=![];return _0x4774e1['defaultRenderer']===_0x3a5d1f(0x169)&&(_0x66deff=_0x6e404d),_0x66deff;}(),_0x479290={'merge':function _0x347871(){var _0x504d14=_0x25dc49,_0x6bdce={},_0x28f528=arguments[_0x504d14(0x14f)];for(var _0x300694=0x0;_0x300694<_0x28f528;_0x300694++){var _0x437ea6=arguments[_0x300694];for(var _0x60da4 in _0x437ea6){_0x6bdce[_0x60da4]=_0x437ea6[_0x60da4];}}return _0x6bdce;}},_0x339864=function _0x53be3e(){var _0x497e88=function _0x182c71(){var _0x4ffcfe=_0x5d71;function _0x755ea5(){this['cStore']={};}return _0x755ea5[_0x4ffcfe(0x160)]={'on':function _0x17298b(_0x31a932,_0xd59496,_0x3c971c){var _0x29f662=this['cStore'];!_0x29f662[_0x31a932]&&(_0x29f662[_0x31a932]=[]),_0x29f662[_0x31a932]['push'](function(_0x187276){var _0x4ebd63=_0x5d71;return _0xd59496[_0x4ebd63(0x13d)](_0x3c971c,_0x187276);});},'emit':function _0x43f3e8(_0x4fe8f3,_0x2635cf){var _0x1fb5b8=_0x4ffcfe,_0x5f3948=this['cStore'];if(_0x5f3948[_0x4fe8f3]){var _0x5966a1=_0x5f3948[_0x4fe8f3][_0x1fb5b8(0x14f)];for(var _0x32a29e=0x0;_0x32a29e<_0x5966a1;_0x32a29e++){var _0x406ad3=_0x5f3948[_0x4fe8f3][_0x32a29e];_0x406ad3(_0x2635cf);}}}},_0x755ea5;}(),_0x2dbd3f=function _0x3bf2b6(_0x23b3a8){var _0x48725e=_0x5d71,_0x333d32=_0x23b3a8['_renderer'],_0x23b3dd=_0x23b3a8['_coordinator'],_0x36599a=_0x23b3a8['_store'];_0x23b3dd['on'](_0x48725e(0x13f),_0x333d32['renderPartial'],_0x333d32),_0x23b3dd['on']('renderall',_0x333d32['renderAll'],_0x333d32),_0x23b3dd['on']('extremachange',function(_0x4eecf1){var _0x5c0e1c=_0x48725e;_0x23b3a8['_config'][_0x5c0e1c(0x171)]&&_0x23b3a8['_config']['onExtremaChange']({'min':_0x4eecf1['min'],'max':_0x4eecf1['max'],'gradient':_0x23b3a8['_config']['gradient']||_0x23b3a8['_config']['defaultGradient']});}),_0x36599a['setCoordinator'](_0x23b3dd);};function _0x58a1a4(){var _0x5c77cd=_0x5d71,_0x1a66ca=this[_0x5c77cd(0x181)]=_0x479290[_0x5c77cd(0x144)](_0x4774e1,arguments[0x0]||{});this['_coordinator']=new _0x497e88();if(_0x1a66ca[_0x5c77cd(0x173)]){var _0x4d51a4=_0x1a66ca[_0x5c77cd(0x173)];if(!_0x4774e1['plugins'][_0x4d51a4])throw new Error(_0x5c77cd(0x16c)+_0x4d51a4+'\x27\x20not\x20found.\x20Maybe\x20it\x20was\x20not\x20registered.');else{var _0x4d70e1=_0x4774e1[_0x5c77cd(0x183)][_0x4d51a4];this[_0x5c77cd(0x149)]=new _0x4d70e1['renderer'](_0x1a66ca),this[_0x5c77cd(0x14a)]=new _0x4d70e1['store'](_0x1a66ca);}}else this['_renderer']=new _0x4272bd(_0x1a66ca),this['_store']=new _0x3e2598(_0x1a66ca);_0x2dbd3f(this);}return _0x58a1a4['prototype']={'addData':function _0x103569(){return this['_store']['addData']['apply'](this['_store'],arguments),this;},'removeData':function _0x2385a6(){var _0x3d37f2=_0x5d71;return this[_0x3d37f2(0x14a)][_0x3d37f2(0x18f)]&&this['_store']['removeData'][_0x3d37f2(0x178)](this[_0x3d37f2(0x14a)],arguments),this;},'setData':function _0x3d7c2d(){var _0xf92298=_0x5d71;return this[_0xf92298(0x14a)]['setData']['apply'](this['_store'],arguments),this;},'setDataMax':function _0x4739b4(){var _0x5b0280=_0x5d71;return this[_0x5b0280(0x14a)]['setDataMax'][_0x5b0280(0x178)](this[_0x5b0280(0x14a)],arguments),this;},'setDataMin':function _0x5010ca(){var _0x11341c=_0x5d71;return this[_0x11341c(0x14a)][_0x11341c(0x14e)]['apply'](this[_0x11341c(0x14a)],arguments),this;},'configure':function _0x73a0f3(_0x159457){var _0x1962f1=_0x5d71;return this[_0x1962f1(0x181)]=_0x479290[_0x1962f1(0x144)](this[_0x1962f1(0x181)],_0x159457),this[_0x1962f1(0x149)][_0x1962f1(0x168)](this['_config']),this[_0x1962f1(0x12f)]['emit'](_0x1962f1(0x15c),this[_0x1962f1(0x14a)][_0x1962f1(0x163)]()),this;},'repaint':function _0x49bff8(){var _0x4e4ca3=_0x5d71;return this[_0x4e4ca3(0x12f)][_0x4e4ca3(0x130)](_0x4e4ca3(0x15c),this[_0x4e4ca3(0x14a)]['_getInternalData']()),this;},'getData':function _0x46499e(){var _0x4d337e=_0x5d71;return this['_store'][_0x4d337e(0x184)]();},'getDataURL':function _0x32022c(){var _0xfea9e5=_0x5d71;return this[_0xfea9e5(0x149)]['getDataURL']();},'getValueAt':function _0x4a7026(_0x1706d1){var _0x2c61c8=_0x5d71;if(this[_0x2c61c8(0x14a)][_0x2c61c8(0x13a)])return this['_store']['getValueAt'](_0x1706d1);else return this['_renderer'][_0x2c61c8(0x13a)]?this['_renderer']['getValueAt'](_0x1706d1):null;}},_0x58a1a4;}(),_0xbf2cc={'create':function _0x2403f2(_0x269d58){return new _0x339864(_0x269d58);},'register':function _0x25b56a(_0x352133,_0x597ffc){var _0x5331a3=_0x25dc49;_0x4774e1[_0x5331a3(0x183)][_0x352133]=_0x597ffc;}};return _0xbf2cc;}));
|
package/dist/esm/tool/utils.d.ts
CHANGED
|
@@ -73,3 +73,4 @@ export declare function getMidpoint(position1: Cartesian3, position2: Cartesian3
|
|
|
73
73
|
};
|
|
74
74
|
export declare function densifyLine(p1: Cartesian3, p2: Cartesian3, count?: number): Cesium.Cartesian3[];
|
|
75
75
|
export declare function isTerrainReady(map: any): Promise<void>;
|
|
76
|
+
export declare const dispatchMapScroll: (el: any, map: any) => () => void;
|