@vtx/cs-map 1.0.15 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/README.md +202 -202
  2. package/lib/_util/EventEmitter.js +2 -1
  3. package/lib/_util/EventEmitter.js.map +1 -1
  4. package/lib/_util/Provider.js +4 -2
  5. package/lib/_util/Provider.js.map +1 -1
  6. package/lib/_util/filterSpecialCharacters.js +6 -6
  7. package/lib/_util/filterSpecialCharacters.js.map +1 -1
  8. package/lib/_util/generateRandomPosition.js +7 -6
  9. package/lib/_util/generateRandomPosition.js.map +1 -1
  10. package/lib/_util/getComponentProps.js.map +1 -1
  11. package/lib/_util/getCookie.js +6 -5
  12. package/lib/_util/getCookie.js.map +1 -1
  13. package/lib/_util/getDefaultMapInfo.js +2 -1
  14. package/lib/_util/getDefaultMapInfo.js.map +1 -1
  15. package/lib/_util/getSystemInfo.js +2 -1
  16. package/lib/_util/getSystemInfo.js.map +1 -1
  17. package/lib/_util/getToken.js +2 -1
  18. package/lib/_util/getToken.js.map +1 -1
  19. package/lib/_util/getUrlParam.js +2 -1
  20. package/lib/_util/getUrlParam.js.map +1 -1
  21. package/lib/_util/http.js +20 -19
  22. package/lib/_util/http.js.map +1 -1
  23. package/lib/_util/isFunction.js.map +1 -1
  24. package/lib/_util/isObject.js.map +1 -1
  25. package/lib/_util/layer.js +28 -24
  26. package/lib/_util/layer.js.map +1 -1
  27. package/lib/_util/mapTool.js +37 -36
  28. package/lib/_util/mapTool.js.map +1 -1
  29. package/lib/_util/setCookie.js +6 -5
  30. package/lib/_util/setCookie.js.map +1 -1
  31. package/lib/_util/transformRgb.js +2 -1
  32. package/lib/_util/transformRgb.js.map +1 -1
  33. package/lib/_util/useColSize.js +2 -1
  34. package/lib/_util/useColSize.js.map +1 -1
  35. package/lib/_util/useInterval.js.map +1 -1
  36. package/lib/_util/useProps.js +2 -1
  37. package/lib/_util/useProps.js.map +1 -1
  38. package/lib/_util/useSet.js +2 -1
  39. package/lib/_util/useSet.js.map +1 -1
  40. package/lib/cesium-tiles-layer/CesiumTilesLayer.js +2 -1
  41. package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
  42. package/lib/cesium-tiles-layer/index.js.map +1 -1
  43. package/lib/cesium-tiles-layer/style/css.js.map +1 -1
  44. package/lib/cesium-tiles-layer/style/index.js.map +1 -1
  45. package/lib/config.js +2 -1
  46. package/lib/config.js.map +1 -1
  47. package/lib/events/index.js +4 -2
  48. package/lib/events/index.js.map +1 -1
  49. package/lib/feature-layer/FeatureLayer.js +2 -1
  50. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  51. package/lib/feature-layer/createFeatureCollection.js +23 -17
  52. package/lib/feature-layer/createFeatureCollection.js.map +1 -1
  53. package/lib/feature-layer/index.js +5 -5
  54. package/lib/feature-layer/index.js.map +1 -1
  55. package/lib/feature-layer/style/css.js.map +1 -1
  56. package/lib/feature-layer/style/index.js.map +1 -1
  57. package/lib/fly-line-layer/FlyLineLayer.js +9 -8
  58. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
  59. package/lib/fly-line-layer/index.js.map +1 -1
  60. package/lib/fly-line-layer/lineFlowMaterialProperty.js +2 -1
  61. package/lib/fly-line-layer/lineFlowMaterialProperty.js.map +1 -1
  62. package/lib/fly-line-layer/style/css.js.map +1 -1
  63. package/lib/fly-line-layer/style/index.js.map +1 -1
  64. package/lib/group-layer/GroupLayer.js +21 -1
  65. package/lib/group-layer/GroupLayer.js.map +1 -1
  66. package/lib/group-layer/index.js.map +1 -1
  67. package/lib/group-layer/style/css.js.map +1 -1
  68. package/lib/group-layer/style/index.js.map +1 -1
  69. package/lib/heatmap-layer/CesiumHeatmap.js +389 -0
  70. package/lib/heatmap-layer/CesiumHeatmap.js.map +1 -0
  71. package/lib/heatmap-layer/HeatmapLayer.js +2 -1
  72. package/lib/heatmap-layer/HeatmapLayer.js.map +1 -1
  73. package/lib/heatmap-layer/heatmap.js +43 -42
  74. package/lib/heatmap-layer/heatmap.js.map +1 -1
  75. package/lib/heatmap-layer/index.js.map +1 -1
  76. package/lib/highlight-layer/HighlightLayer.js +8 -7
  77. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  78. package/lib/highlight-layer/index.js.map +1 -1
  79. package/lib/highlight-layer/style/css.js.map +1 -1
  80. package/lib/highlight-layer/style/index.js.map +1 -1
  81. package/lib/image-layer/ImageLayer.js +4 -2
  82. package/lib/image-layer/ImageLayer.js.map +1 -1
  83. package/lib/image-layer/index.js +5 -2
  84. package/lib/image-layer/index.js.map +1 -1
  85. package/lib/index.js.map +1 -1
  86. package/lib/legend/index.js +6 -3
  87. package/lib/legend/index.js.map +1 -1
  88. package/lib/legend/style/css.js.map +1 -1
  89. package/lib/legend/style/index.css +3 -0
  90. package/lib/legend/style/index.js.map +1 -1
  91. package/lib/legend/style/index.less +63 -59
  92. package/lib/line-flow-layer/LineFlowLayer.js +2 -1
  93. package/lib/line-flow-layer/LineFlowLayer.js.map +1 -1
  94. package/lib/line-flow-layer/index.js.map +1 -1
  95. package/lib/line-flow-layer/style/css.js.map +1 -1
  96. package/lib/line-flow-layer/style/index.js.map +1 -1
  97. package/lib/map/InfoTool/index.js +45 -44
  98. package/lib/map/InfoTool/index.js.map +1 -1
  99. package/lib/map/InfoTool/index.less +46 -46
  100. package/lib/map/InfoTool/util.js +25 -24
  101. package/lib/map/InfoTool/util.js.map +1 -1
  102. package/lib/map/InfoWindow.js.map +1 -1
  103. package/lib/map/Layers.js +2 -1
  104. package/lib/map/Layers.js.map +1 -1
  105. package/lib/map/Popup.js +4 -2
  106. package/lib/map/Popup.js.map +1 -1
  107. package/lib/map/base/imagery/amap/AmapImageryProvider.js +2 -1
  108. package/lib/map/base/imagery/amap/AmapImageryProvider.js.map +1 -1
  109. package/lib/map/base/imagery/amap/AmapMercatorTilingScheme.js +2 -1
  110. package/lib/map/base/imagery/amap/AmapMercatorTilingScheme.js.map +1 -1
  111. package/lib/map/base/imagery/baidu/BaiduImageryProvider.js +2 -1
  112. package/lib/map/base/imagery/baidu/BaiduImageryProvider.js.map +1 -1
  113. package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js +79 -78
  114. package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js.map +1 -1
  115. package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js +15 -14
  116. package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js.map +1 -1
  117. package/lib/map/base/imagery/geoq/GeoQImageryProvider.js +2 -1
  118. package/lib/map/base/imagery/geoq/GeoQImageryProvider.js.map +1 -1
  119. package/lib/map/base/imagery/google/GoogleImageryProvider.js +2 -1
  120. package/lib/map/base/imagery/google/GoogleImageryProvider.js.map +1 -1
  121. package/lib/map/base/imagery/tdt/TdtImageryProvider.js +2 -1
  122. package/lib/map/base/imagery/tdt/TdtImageryProvider.js.map +1 -1
  123. package/lib/map/base/imagery/tencent/TencentImageryProvider.js +2 -1
  124. package/lib/map/base/imagery/tencent/TencentImageryProvider.js.map +1 -1
  125. package/lib/map/base/imagery/transform/AmapMercatorTilingScheme.js +2 -1
  126. package/lib/map/base/imagery/transform/AmapMercatorTilingScheme.js.map +1 -1
  127. package/lib/map/base/imagery/transform/CoordTransform.js +44 -43
  128. package/lib/map/base/imagery/transform/CoordTransform.js.map +1 -1
  129. package/lib/map/base/index.js +2 -1
  130. package/lib/map/base/index.js.map +1 -1
  131. package/lib/map/hooks/useGetMapFeatureInfoByText.js +4 -2
  132. package/lib/map/hooks/useGetMapFeatureInfoByText.js.map +1 -1
  133. package/lib/map/index.js +4 -3
  134. package/lib/map/index.js.map +1 -1
  135. package/lib/map/material/AroundPoint.js +2 -1
  136. package/lib/map/material/AroundPoint.js.map +1 -1
  137. package/lib/map/material/CircleRippleMaterialProperty.js +7 -6
  138. package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -1
  139. package/lib/map/material/ODLineLayer.js +2 -1
  140. package/lib/map/material/ODLineLayer.js.map +1 -1
  141. package/lib/map/material/PolylineTrailLinkMaterialProperty.js +2 -1
  142. package/lib/map/material/PolylineTrailLinkMaterialProperty.js.map +1 -1
  143. package/lib/map/material/PolylineTrailMaterialProperty.js +2 -1
  144. package/lib/map/material/PolylineTrailMaterialProperty.js.map +1 -1
  145. package/lib/map/material/TilesBuilding.js +2 -1
  146. package/lib/map/material/TilesBuilding.js.map +1 -1
  147. package/lib/map/material/index.js +2 -1
  148. package/lib/map/material/index.js.map +1 -1
  149. package/lib/map/style/css.js.map +1 -1
  150. package/lib/map/style/index.css +2 -1
  151. package/lib/map/style/index.js.map +1 -1
  152. package/lib/map/style/index.less +149 -148
  153. package/lib/marker/Marker.js +2 -1
  154. package/lib/marker/Marker.js.map +1 -1
  155. package/lib/marker/index.js.map +1 -1
  156. package/lib/point/Point.js +2 -1
  157. package/lib/point/Point.js.map +1 -1
  158. package/lib/point/index.js.map +1 -1
  159. package/lib/polygon/Polygon.js +2 -1
  160. package/lib/polygon/Polygon.js.map +1 -1
  161. package/lib/polygon/index.js.map +1 -1
  162. package/lib/polyline/Polyline.js +2 -1
  163. package/lib/polyline/Polyline.js.map +1 -1
  164. package/lib/polyline/index.js.map +1 -1
  165. package/lib/renderer/index.js +31 -14
  166. package/lib/renderer/index.js.map +1 -1
  167. package/lib/renderer/style/css.js.map +1 -1
  168. package/lib/renderer/style/index.js.map +1 -1
  169. package/lib/style/index.less +2 -2
  170. package/lib/style/themes/compact.less +1 -1
  171. package/lib/style/themes/dark.less +9 -9
  172. package/lib/style/themes/default.less +7 -7
  173. package/lib/style/themes/index.less +1 -1
  174. package/lib/style/themes/variable.less +5 -5
  175. package/lib/tools/index.js +2 -1
  176. package/lib/tools/index.js.map +1 -1
  177. package/lib/tools/layer/index.js +6 -3
  178. package/lib/tools/layer/index.js.map +1 -1
  179. package/lib/tools/search/Select/index.js +7 -6
  180. package/lib/tools/search/Select/index.js.map +1 -1
  181. package/lib/tools/search/Select/style/css.js.map +1 -1
  182. package/lib/tools/search/Select/style/index.js.map +1 -1
  183. package/lib/tools/search/Select/style/index.less +47 -47
  184. package/lib/tools/search/index.js +3 -3
  185. package/lib/tools/search/index.js.map +1 -1
  186. package/lib/tools/style/css.js.map +1 -1
  187. package/lib/tools/style/index.js.map +1 -1
  188. package/lib/tools/style/index.less +141 -141
  189. package/lib/tools/tools-item/index.js +2 -1
  190. package/lib/tools/tools-item/index.js.map +1 -1
  191. package/lib/trail-polyline-layer/TrailPolylineLayer.js +2 -1
  192. package/lib/trail-polyline-layer/TrailPolylineLayer.js.map +1 -1
  193. package/lib/trail-polyline-layer/TrailPolylineMaterial.js +2 -1
  194. package/lib/trail-polyline-layer/TrailPolylineMaterial.js.map +1 -1
  195. package/lib/trail-polyline-layer/style/css.js.map +1 -1
  196. package/lib/trail-polyline-layer/style/index.js.map +1 -1
  197. package/lib/water-surface-layer/WaterSurfaceLayer.js +2 -1
  198. package/lib/water-surface-layer/WaterSurfaceLayer.js.map +1 -1
  199. package/lib/water-surface-layer/index.js.map +1 -1
  200. package/lib/water-surface-layer/style/css.js.map +1 -1
  201. package/lib/water-surface-layer/style/index.js.map +1 -1
  202. package/package.json +1 -1
  203. package/CHANGELOG.md +0 -19
@@ -0,0 +1,389 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CesiumHeatmap = void 0;
7
+ var _cesium = require("cesium");
8
+ var _heatmap = _interopRequireDefault(require("./heatmap.js"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
11
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
12
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
13
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
14
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
15
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
16
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
17
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
20
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
21
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
22
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
24
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
25
+ //只能使用2.0.0版本,高版本热度图有出不来的情况,并且2.0.0 npm包有问题,只能通过修改使用这个js
26
+
27
+ var Max = function Max(arr) {
28
+ var len = arr.length;
29
+ var max = -Infinity;
30
+ while (len--) {
31
+ max = arr[len] > max ? arr[len] : max;
32
+ }
33
+ return max;
34
+ };
35
+ var Min = function Min(arr) {
36
+ var len = arr.length;
37
+ var min = Infinity;
38
+ while (len--) {
39
+ min = arr[len] < min ? arr[len] : min;
40
+ }
41
+ return min;
42
+ };
43
+
44
+ /**
45
+ * 热度图
46
+ */
47
+ var CesiumHeatmap = /*#__PURE__*/function () {
48
+ function CesiumHeatmap(viewer, options) {
49
+ var _this$initOptions;
50
+ _classCallCheck(this, CesiumHeatmap);
51
+ _defineProperty(this, "viewer", void 0);
52
+ _defineProperty(this, "element", void 0);
53
+ _defineProperty(this, "initOptions", void 0);
54
+ _defineProperty(this, "heatmapOptions", void 0);
55
+ _defineProperty(this, "heatmapDataOptions", void 0);
56
+ _defineProperty(this, "provider", void 0);
57
+ _defineProperty(this, "heatmap", void 0);
58
+ _defineProperty(this, "cameraMoveEnd", void 0);
59
+ _defineProperty(this, "bounds", [0, 0, 0, 0]);
60
+ _defineProperty(this, "lastCameraHeight", 0);
61
+ _defineProperty(this, "initRadius", 10);
62
+ this.viewer = viewer;
63
+ this.initOptions = _objectSpread({}, options);
64
+ if ((_this$initOptions = this.initOptions) !== null && _this$initOptions !== void 0 && _this$initOptions.points) {
65
+ var _this$initOptions2, _this$heatmapOptions;
66
+ var bounds = this.getBounds(this.initOptions.points);
67
+ this.bounds = bounds;
68
+ var _this$createContainer = this.createContainer(bounds),
69
+ container = _this$createContainer.container,
70
+ width = _this$createContainer.width,
71
+ height = _this$createContainer.height;
72
+ this.element = container;
73
+ var datas = [];
74
+ var values = [];
75
+ for (var i in this.initOptions.points) {
76
+ var point = this.initOptions.points[i];
77
+ var x = (point.x - bounds[0]) / (bounds[2] - bounds[0]) * width; //屏幕坐标x
78
+ var y = (bounds[3] - point.y) / (bounds[3] - bounds[1]) * height; //屏幕坐标y
79
+ var dataPoint = {
80
+ x: x,
81
+ y: y,
82
+ value: point.value
83
+ };
84
+ if (typeof point.value === "number") values.push(point.value);
85
+ datas.push(dataPoint);
86
+ }
87
+
88
+ //数据的最大值和最小值
89
+ var _min = values.length > 100000 ? Min(values) : Math.min.apply(Math, values);
90
+ var _max = values.length > 100000 ? Max(values) : Math.max.apply(Math, values);
91
+ if ((_this$initOptions2 = this.initOptions) !== null && _this$initOptions2 !== void 0 && _this$initOptions2.heatmapDataOptions) {
92
+ var _this$initOptions$hea = this.initOptions.heatmapDataOptions,
93
+ min = _this$initOptions$hea.min,
94
+ max = _this$initOptions$hea.max;
95
+ if (typeof min === "number") {
96
+ _min = min;
97
+ }
98
+ if (typeof max === "number") {
99
+ _max = max;
100
+ }
101
+ }
102
+ this.heatmapDataOptions = {
103
+ min: _min,
104
+ max: _max
105
+ };
106
+ var data = {
107
+ max: _max,
108
+ min: _min,
109
+ data: datas
110
+ };
111
+ var defaultOptions = {
112
+ maxOpacity: 0.9,
113
+ // radius: minRadius,
114
+ // minimum opacity. any value > 0 will produce
115
+ // no transparent gradient transition
116
+ minOpacity: 0.1,
117
+ gradient: {
118
+ // enter n keys between 0 and 1 here
119
+ // for gradient color customization
120
+ ".3": "blue",
121
+ ".5": "green",
122
+ ".7": "yellow",
123
+ ".95": "red"
124
+ }
125
+ };
126
+ var _options = this.initOptions.heatmapOptions ? _objectSpread(_objectSpread({}, defaultOptions), this.initOptions.heatmapOptions) : defaultOptions;
127
+
128
+ //初始化半径
129
+ if ((_this$heatmapOptions = this.heatmapOptions) !== null && _this$heatmapOptions !== void 0 && _this$heatmapOptions.radius) {
130
+ this.initRadius = this.heatmapOptions.radius;
131
+ }
132
+ this.heatmapOptions = _objectSpread({}, _options);
133
+ var _options2 = _objectSpread(_objectSpread({}, _options), {}, {
134
+ container: container
135
+ });
136
+ this.heatmap = _heatmap["default"].create(_options2);
137
+ this.heatmap.setData(data);
138
+ this.createLayer();
139
+ if (!this.initOptions.noLisenerCamera) {
140
+ this.addLisener();
141
+ }
142
+ if (this.initOptions.zoomToLayer && bounds) {
143
+ this.viewer.camera.flyTo({
144
+ destination: _cesium.Rectangle.fromDegrees.apply(_cesium.Rectangle, _toConsumableArray(bounds))
145
+ });
146
+ }
147
+ }
148
+ }
149
+
150
+ /**
151
+ * 设置数据的最大最小值
152
+ * @param dataOption
153
+ */
154
+ _createClass(CesiumHeatmap, [{
155
+ key: "updateHeatMapMaxMin",
156
+ value: function updateHeatMapMaxMin(dataOption) {
157
+ var min = dataOption.min,
158
+ max = dataOption.max;
159
+ if (this.heatmap) {
160
+ if (typeof min === "number") {
161
+ this.heatmap.setDataMin(min);
162
+ if (this.heatmapDataOptions) this.heatmapDataOptions.min = min;
163
+ }
164
+ if (typeof max === "number") {
165
+ this.heatmap.setDataMax(max);
166
+ if (this.heatmapDataOptions) this.heatmapDataOptions.max = max;
167
+ }
168
+ }
169
+ this.updateLayer();
170
+ }
171
+
172
+ /**
173
+ * 更新热度图配置
174
+ * @param options
175
+ */
176
+ }, {
177
+ key: "updateHeatmap",
178
+ value: function updateHeatmap(options) {
179
+ var heatmapOptions = this.heatmapOptions;
180
+ this.heatmap.configure(_objectSpread(_objectSpread({}, heatmapOptions), options));
181
+ this.updateLayer();
182
+ }
183
+
184
+ /**
185
+ * 更新半径
186
+ * @param radius
187
+ */
188
+ }, {
189
+ key: "updateRadius",
190
+ value: function updateRadius(radius) {
191
+ var _this$initOptions3;
192
+ var heatmapOptions = this.heatmapOptions;
193
+ var currentData = this.heatmap.getData();
194
+ if (currentData !== null && currentData !== void 0 && currentData.data) {
195
+ for (var i in currentData.data) {
196
+ var data = currentData.data[i];
197
+ data.radius = radius;
198
+ }
199
+ }
200
+ this.heatmap.setData(currentData);
201
+ this.heatmapOptions = _objectSpread(_objectSpread({}, heatmapOptions), {
202
+ radius: radius
203
+ });
204
+ this.updateLayer();
205
+ if ((_this$initOptions3 = this.initOptions) !== null && _this$initOptions3 !== void 0 && _this$initOptions3.onRadiusChange) {
206
+ this.initOptions.onRadiusChange(radius);
207
+ }
208
+ }
209
+
210
+ /**
211
+ * 移除
212
+ */
213
+ }, {
214
+ key: "remove",
215
+ value: function remove() {
216
+ if (this.element) {
217
+ document.body.removeChild(this.element);
218
+ this.element = undefined;
219
+ if (this.provider instanceof _cesium.ImageryLayer) {
220
+ if (this.provider) this.viewer.imageryLayers.remove(this.provider);
221
+ this.createSingleTileImageryLayer();
222
+ } else if (this.provider instanceof _cesium.Primitive) {
223
+ this.viewer.scene.primitives.remove(this.provider);
224
+ } else if (this.provider instanceof _cesium.Entity) {
225
+ this.viewer.entities.remove(this.provider);
226
+ }
227
+ if (this.cameraMoveEnd) {
228
+ this.viewer.camera.moveEnd.removeEventListener(this.cameraMoveEnd);
229
+ this.cameraMoveEnd = undefined;
230
+ }
231
+ }
232
+ }
233
+ }, {
234
+ key: "createLayer",
235
+ value: function createLayer() {
236
+ if (this.initOptions.renderType === "primitive") {
237
+ this.createPrimitive();
238
+ } else if (this.initOptions.renderType === "imagery") {
239
+ this.createSingleTileImageryLayer();
240
+ } else {
241
+ this.createEntity();
242
+ }
243
+ }
244
+ }, {
245
+ key: "createPrimitive",
246
+ value: function createPrimitive() {
247
+ var url = this.heatmap.getDataURL();
248
+ this.provider = this.viewer.scene.primitives.add(new _cesium.Primitive({
249
+ geometryInstances: new _cesium.GeometryInstance({
250
+ geometry: new _cesium.RectangleGeometry({
251
+ rectangle: _cesium.Rectangle.fromDegrees.apply(_cesium.Rectangle, _toConsumableArray(this.bounds)),
252
+ vertexFormat: _cesium.EllipsoidSurfaceAppearance.VERTEX_FORMAT
253
+ })
254
+ }),
255
+ appearance: new _cesium.EllipsoidSurfaceAppearance({
256
+ aboveGround: false
257
+ }),
258
+ show: true
259
+ }));
260
+ if (this.provider) {
261
+ this.provider.appearance.material = new _cesium.Material({
262
+ fabric: {
263
+ type: "Image",
264
+ uniforms: {
265
+ image: url
266
+ }
267
+ }
268
+ });
269
+ }
270
+ }
271
+ }, {
272
+ key: "createSingleTileImageryLayer",
273
+ value: function createSingleTileImageryLayer() {
274
+ var url = this.heatmap.getDataURL();
275
+ this.provider = this.viewer.imageryLayers.addImageryProvider(new _cesium.SingleTileImageryProvider({
276
+ url: url,
277
+ rectangle: _cesium.Rectangle.fromDegrees.apply(_cesium.Rectangle, _toConsumableArray(this.bounds))
278
+ }));
279
+ }
280
+ }, {
281
+ key: "getImageMaterialProperty",
282
+ value: function getImageMaterialProperty() {
283
+ var url = this.heatmap.getDataURL();
284
+ var material = new _cesium.ImageMaterialProperty({
285
+ image: url
286
+ });
287
+ return material;
288
+ }
289
+ }, {
290
+ key: "createEntity",
291
+ value: function createEntity() {
292
+ this.provider = this.viewer.entities.add({
293
+ show: true,
294
+ rectangle: {
295
+ coordinates: _cesium.Rectangle.fromDegrees.apply(_cesium.Rectangle, _toConsumableArray(this.bounds)),
296
+ material: this.getImageMaterialProperty()
297
+ }
298
+ });
299
+ }
300
+ }, {
301
+ key: "updateLayer",
302
+ value: function updateLayer() {
303
+ var src = this.heatmap.getDataURL();
304
+ if (this.provider instanceof _cesium.ImageryLayer) {
305
+ if (this.provider) this.viewer.imageryLayers.remove(this.provider);
306
+ this.createSingleTileImageryLayer();
307
+ } else if (this.provider instanceof _cesium.Primitive) {
308
+ this.provider.appearance.material.uniforms.image = src;
309
+ } else if (this.provider instanceof _cesium.Entity) {
310
+ if (this.provider.rectangle) this.provider.rectangle.material = this.getImageMaterialProperty();
311
+ }
312
+ }
313
+
314
+ /**
315
+ * 添加相机的监听
316
+ */
317
+ }, {
318
+ key: "addLisener",
319
+ value: function addLisener() {
320
+ var _this = this;
321
+ var maxRadius = 100;
322
+ var min = 6375000;
323
+ var max = 10000000;
324
+ this.cameraMoveEnd = function () {
325
+ if (_this.heatmapOptions && _this.heatmap && _this.heatmapDataOptions) {
326
+ var _this$initOptions4;
327
+ var h = _this.viewer.camera.getMagnitude();
328
+ var distance = _this !== null && _this !== void 0 && (_this$initOptions4 = _this.initOptions) !== null && _this$initOptions4 !== void 0 && _this$initOptions4.cameraHeightDistance ? _this.initOptions.cameraHeightDistance : 1000;
329
+ if (Math.abs(h - _this.lastCameraHeight) > distance) {
330
+ _this.lastCameraHeight = h;
331
+ if (typeof min === "number" && typeof max === "number") {
332
+ var radius = parseInt((_this.initRadius + (maxRadius - _this.initRadius) * (h - min) / (max - min)).toFixed(0));
333
+ if (radius) {
334
+ _this.updateRadius(radius);
335
+ }
336
+ }
337
+ }
338
+ }
339
+ };
340
+ this.viewer.camera.moveEnd.addEventListener(this.cameraMoveEnd);
341
+ }
342
+
343
+ /**
344
+ *
345
+ * @param points
346
+ * @param expand
347
+ * @returns
348
+ */
349
+ }, {
350
+ key: "getBounds",
351
+ value: function getBounds(points) {
352
+ if (points) {
353
+ var lonMin = 180;
354
+ var lonMax = -180;
355
+ var latMin = 90;
356
+ var latMax = -180;
357
+ points.forEach(function (point) {
358
+ var longitude = point.x,
359
+ latitude = point.y;
360
+ lonMin = longitude < lonMin ? longitude : lonMin;
361
+ latMin = latitude < latMin ? latitude : latMin;
362
+ lonMax = longitude > lonMax ? longitude : lonMax;
363
+ latMax = latitude > latMax ? latitude : latMax;
364
+ });
365
+ var xRange = lonMax - lonMin ? lonMax - lonMin : 1;
366
+ var yRange = latMax - latMin ? latMax - latMin : 1;
367
+ return [lonMin - xRange / 10, latMin - yRange / 10, lonMax + xRange / 10, latMax + yRange / 10];
368
+ }
369
+ return [0, 0, 0, 0];
370
+ }
371
+ }, {
372
+ key: "createContainer",
373
+ value: function createContainer(bounds) {
374
+ var container = document.createElement("div");
375
+ var width = 1000;
376
+ var height = parseInt((1000 / (bounds[2] - bounds[0]) * (bounds[3] - bounds[1])).toFixed(0));
377
+ container.setAttribute("style", "width:".concat(width, "px;height:").concat(height, "px;display:none;"));
378
+ document.body.appendChild(container);
379
+ return {
380
+ container: container,
381
+ width: width,
382
+ height: height
383
+ };
384
+ }
385
+ }]);
386
+ return CesiumHeatmap;
387
+ }();
388
+ exports.CesiumHeatmap = CesiumHeatmap;
389
+ //# sourceMappingURL=CesiumHeatmap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CesiumHeatmap.js","names":["_cesium","require","_heatmap","_interopRequireDefault","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","configurable","writable","_toPropertyKey","key","_createClass","protoProps","staticProps","value","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","Max","max","Infinity","Min","min","CesiumHeatmap","viewer","options","_this$initOptions","initOptions","points","_this$initOptions2","_this$heatmapOptions","bounds","getBounds","_this$createContainer","createContainer","container","width","height","element","datas","values","point","x","y","dataPoint","_min","Math","_max","heatmapDataOptions","_this$initOptions$hea","data","defaultOptions","maxOpacity","minOpacity","gradient","_options","heatmapOptions","radius","initRadius","heatmap","h337","create","setData","createLayer","noLisenerCamera","addLisener","zoomToLayer","camera","flyTo","destination","Rectangle","fromDegrees","updateHeatMapMaxMin","dataOption","setDataMin","setDataMax","updateLayer","updateHeatmap","configure","updateRadius","_this$initOptions3","currentData","getData","onRadiusChange","remove","document","body","removeChild","provider","ImageryLayer","imageryLayers","createSingleTileImageryLayer","Primitive","scene","primitives","Entity","entities","cameraMoveEnd","moveEnd","removeEventListener","renderType","createPrimitive","createEntity","url","getDataURL","add","geometryInstances","GeometryInstance","geometry","RectangleGeometry","rectangle","vertexFormat","EllipsoidSurfaceAppearance","VERTEX_FORMAT","appearance","aboveGround","show","material","Material","fabric","type","uniforms","image","addImageryProvider","SingleTileImageryProvider","getImageMaterialProperty","ImageMaterialProperty","coordinates","src","_this","maxRadius","_this$initOptions4","h","getMagnitude","distance","cameraHeightDistance","abs","lastCameraHeight","parseInt","toFixed","addEventListener","lonMin","lonMax","latMin","latMax","longitude","latitude","xRange","yRange","createElement","setAttribute","concat","appendChild","exports"],"sources":["heatmap-layer/CesiumHeatmap.js"],"sourcesContent":["import { EllipsoidSurfaceAppearance, GeometryInstance, Material, Primitive, Rectangle, RectangleGeometry, Viewer, Event, SingleTileImageryProvider, ImageryLayer, ImageMaterialProperty, Entity } from \"cesium\";\nimport h337 from './heatmap.js'//只能使用2.0.0版本,高版本热度图有出不来的情况,并且2.0.0 npm包有问题,只能通过修改使用这个js\n\nconst Max = (arr) => {\n let len = arr.length;\n let max = -Infinity;\n\n while (len--) {\n max = arr[len] > max ? arr[len] : max;\n }\n return max;\n};\n\nconst Min = (arr) => {\n let len = arr.length;\n let min = Infinity;\n\n while (len--) {\n min = arr[len] < min ? arr[len] : min;\n }\n return min;\n};\n\n/**\n * 热度图\n */\nexport class CesiumHeatmap {\n viewer;\n element;\n initOptions;\n heatmapOptions;\n heatmapDataOptions;\n provider;\n heatmap;\n cameraMoveEnd;\n bounds = [0, 0, 0, 0];\n lastCameraHeight = 0;\n initRadius = 10;\n constructor(viewer, options) {\n this.viewer = viewer;\n this.initOptions = { ...options };\n if (this.initOptions?.points) {\n const bounds = this.getBounds(this.initOptions.points);\n this.bounds = bounds;\n const { container, width, height } = this.createContainer(bounds);\n this.element = container;\n const datas = [];\n const values = [];\n for (let i in this.initOptions.points) {\n const point = this.initOptions.points[i];\n const x = ((point.x - bounds[0]) / (bounds[2] - bounds[0])) * width; //屏幕坐标x\n const y = ((bounds[3] - point.y) / (bounds[3] - bounds[1])) * height; //屏幕坐标y\n const dataPoint = {\n x: x,\n y: y,\n value: point.value,\n };\n if (typeof point.value === \"number\") values.push(point.value);\n datas.push(dataPoint);\n }\n\n //数据的最大值和最小值\n let _min = values.length > 100000 ? Min(values) : Math.min(...values);\n let _max = values.length > 100000 ? Max(values) : Math.max(...values);\n if (this.initOptions?.heatmapDataOptions) {\n const { min, max } = this.initOptions.heatmapDataOptions;\n if (typeof min === \"number\") {\n _min = min;\n }\n if (typeof max === \"number\") {\n _max = max;\n }\n }\n this.heatmapDataOptions = { min: _min, max: _max };\n\n const data = {\n max: _max,\n min: _min,\n data: datas,\n };\n\n const defaultOptions = {\n maxOpacity: 0.9,\n // radius: minRadius,\n // minimum opacity. any value > 0 will produce\n // no transparent gradient transition\n minOpacity: 0.1,\n gradient: {\n // enter n keys between 0 and 1 here\n // for gradient color customization\n \".3\": \"blue\",\n \".5\": \"green\",\n \".7\": \"yellow\",\n \".95\": \"red\",\n },\n };\n const _options = this.initOptions.heatmapOptions\n ? { ...defaultOptions, ...this.initOptions.heatmapOptions }\n : defaultOptions;\n\n //初始化半径\n if (this.heatmapOptions?.radius) {\n this.initRadius = this.heatmapOptions.radius;\n }\n\n this.heatmapOptions = { ..._options };\n const options = {\n ..._options,\n container,\n };\n this.heatmap = h337.create(options);\n this.heatmap.setData(data);\n this.createLayer();\n\n if (!this.initOptions.noLisenerCamera) {\n this.addLisener();\n }\n\n if (this.initOptions.zoomToLayer && bounds) {\n this.viewer.camera.flyTo({\n destination: Rectangle.fromDegrees(...bounds),\n });\n }\n }\n }\n\n /**\n * 设置数据的最大最小值\n * @param dataOption\n */\n updateHeatMapMaxMin(dataOption) {\n const { min, max } = dataOption;\n if (this.heatmap) {\n if (typeof min === \"number\") {\n this.heatmap.setDataMin(min);\n if (this.heatmapDataOptions) this.heatmapDataOptions.min = min;\n }\n if (typeof max === \"number\") {\n this.heatmap.setDataMax(max);\n if (this.heatmapDataOptions) this.heatmapDataOptions.max = max;\n }\n }\n this.updateLayer();\n }\n\n /**\n * 更新热度图配置\n * @param options\n */\n updateHeatmap(options) {\n const { heatmapOptions } = this;\n this.heatmap.configure({ ...heatmapOptions, ...options });\n this.updateLayer();\n }\n\n /**\n * 更新半径\n * @param radius\n */\n updateRadius(radius) {\n const { heatmapOptions } = this;\n const currentData = this.heatmap.getData();\n if (currentData?.data) {\n for (let i in currentData.data) {\n const data = currentData.data[i];\n data.radius = radius;\n }\n }\n this.heatmap.setData(currentData);\n this.heatmapOptions = { ...heatmapOptions, ...{ radius } };\n this.updateLayer();\n if (this.initOptions?.onRadiusChange) {\n this.initOptions.onRadiusChange(radius);\n }\n }\n\n /**\n * 移除\n */\n remove() {\n if (this.element) {\n document.body.removeChild(this.element);\n this.element = undefined;\n if (this.provider instanceof ImageryLayer) {\n if (this.provider) this.viewer.imageryLayers.remove(this.provider);\n this.createSingleTileImageryLayer();\n } else if (this.provider instanceof Primitive) {\n this.viewer.scene.primitives.remove(this.provider);\n } else if (this.provider instanceof Entity) {\n this.viewer.entities.remove(this.provider);\n }\n if (this.cameraMoveEnd) {\n this.viewer.camera.moveEnd.removeEventListener(this.cameraMoveEnd);\n this.cameraMoveEnd = undefined;\n }\n }\n }\n\n createLayer() {\n if (this.initOptions.renderType === \"primitive\") {\n this.createPrimitive();\n } else if (this.initOptions.renderType === \"imagery\") {\n this.createSingleTileImageryLayer();\n } else {\n this.createEntity();\n }\n }\n\n createPrimitive() {\n const url = this.heatmap.getDataURL();\n this.provider = this.viewer.scene.primitives.add(\n new Primitive({\n geometryInstances: new GeometryInstance({\n geometry: new RectangleGeometry({\n rectangle: Rectangle.fromDegrees(...this.bounds),\n vertexFormat: EllipsoidSurfaceAppearance.VERTEX_FORMAT,\n }),\n }),\n appearance: new EllipsoidSurfaceAppearance({\n aboveGround: false,\n }),\n show: true,\n })\n );\n if (this.provider) {\n this.provider.appearance.material = new Material({\n fabric: {\n type: \"Image\",\n uniforms: {\n image: url,\n },\n },\n });\n }\n }\n\n createSingleTileImageryLayer() {\n const url = this.heatmap.getDataURL();\n this.provider = this.viewer.imageryLayers.addImageryProvider(\n new SingleTileImageryProvider({\n url: url,\n rectangle: Rectangle.fromDegrees(...this.bounds),\n })\n );\n }\n\n getImageMaterialProperty() {\n const url = this.heatmap.getDataURL();\n const material = new ImageMaterialProperty({\n image: url,\n });\n return material;\n }\n\n createEntity() {\n this.provider = this.viewer.entities.add({\n show: true,\n rectangle: {\n coordinates: Rectangle.fromDegrees(...this.bounds),\n material: this.getImageMaterialProperty(),\n },\n });\n }\n\n updateLayer() {\n const src = this.heatmap.getDataURL();\n if (this.provider instanceof ImageryLayer) {\n if (this.provider) this.viewer.imageryLayers.remove(this.provider);\n this.createSingleTileImageryLayer();\n } else if (this.provider instanceof Primitive) {\n this.provider.appearance.material.uniforms.image = src;\n } else if (this.provider instanceof Entity) {\n if (this.provider.rectangle)\n this.provider.rectangle.material = this.getImageMaterialProperty();\n }\n }\n\n /**\n * 添加相机的监听\n */\n addLisener() {\n const maxRadius = 100;\n const min = 6375000;\n const max = 10000000;\n this.cameraMoveEnd = () => {\n if (this.heatmapOptions && this.heatmap && this.heatmapDataOptions) {\n const h = this.viewer.camera.getMagnitude();\n const distance = this?.initOptions?.cameraHeightDistance\n ? this.initOptions.cameraHeightDistance\n : 1000;\n if (Math.abs(h - this.lastCameraHeight) > distance) {\n this.lastCameraHeight = h;\n if (typeof min === \"number\" && typeof max === \"number\") {\n const radius = parseInt(\n (\n this.initRadius +\n ((maxRadius - this.initRadius) * (h - min)) / (max - min)\n ).toFixed(0)\n );\n if (radius) {\n this.updateRadius(radius);\n }\n }\n }\n }\n };\n this.viewer.camera.moveEnd.addEventListener(this.cameraMoveEnd);\n }\n\n /**\n *\n * @param points\n * @param expand\n * @returns\n */\n getBounds(points) {\n if (points) {\n let lonMin = 180;\n let lonMax = -180;\n let latMin = 90;\n let latMax = -180;\n points.forEach(function (point) {\n const { x: longitude, y: latitude } = point;\n lonMin = longitude < lonMin ? longitude : lonMin;\n latMin = latitude < latMin ? latitude : latMin;\n lonMax = longitude > lonMax ? longitude : lonMax;\n latMax = latitude > latMax ? latitude : latMax;\n });\n const xRange = lonMax - lonMin ? lonMax - lonMin : 1;\n const yRange = latMax - latMin ? latMax - latMin : 1;\n return [\n lonMin - xRange / 10,\n latMin - yRange / 10,\n lonMax + xRange / 10,\n latMax + yRange / 10,\n ];\n }\n return [0, 0, 0, 0];\n }\n\n createContainer(bounds) {\n const container = document.createElement(\"div\");\n const width = 1000;\n const height = parseInt(\n ((1000 / (bounds[2] - bounds[0])) * (bounds[3] - bounds[1])).toFixed(0)\n );\n container.setAttribute(\n \"style\",\n `width:${width}px;height:${height}px;display:none;`\n );\n document.body.appendChild(container);\n return { container, width, height };\n }\n}\n"],"mappings":"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"}
@@ -153,5 +153,6 @@ var HeatmapLayer = /*#__PURE__*/function (_CustomDataSource) {
153
153
  }]);
154
154
  return HeatmapLayer;
155
155
  }(_cesium.CustomDataSource);
156
- var _default = exports["default"] = HeatmapLayer;
156
+ var _default = HeatmapLayer;
157
+ exports["default"] = _default;
157
158
  //# sourceMappingURL=HeatmapLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeatmapLayer.js","names":["_cesium","require","_createFeatureCollection","_heatmap","_interopRequireDefault","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","call","_typeof","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","n","toString","slice","name","test","len","arr2","l","u","a","f","next","done","getData","data","width","height","list","map","v","geometryInfo","_transformGeometry$co","transformGeometry","coordinates","x","y","latMin","Math","min","point","latMax","max","lonMin","lonMax","floor","HeatmapLayer","_CustomDataSource","_super","options","_options$data","_this","container","createDom","layer","h337","loadData","_map$container$getBou","getBoundingClientRect","heatMapDom","document","createElement","style","display","appendChild","_data","entities","removeAll","_map$container$getBou2","_getData","setData","canvas","getElementsByClassName","add","rectangle","Rectangle","fromDegrees","material","ImageMaterialProperty","image","transparent","destroy","removeChild","CustomDataSource","_default","exports"],"sources":["heatmap-layer/HeatmapLayer.js"],"sourcesContent":["import { CustomDataSource, Rectangle, ImageMaterialProperty } from 'cesium';\r\nimport {transformGeometry} from '../feature-layer/createFeatureCollection';\r\nimport h337 from 'heatmap.js';\r\n\r\nconst getData = (data, width, height) => {\r\n let list = data.map(v => {\r\n let {geometryInfo} = v;\r\n let [x, y] = transformGeometry(geometryInfo).coordinates;\r\n\r\n return {\r\n ...v,\r\n x,\r\n y,\r\n }\r\n });\r\n\r\n // 获取边界数据\r\n const value = 0.1;\r\n let latMin = Math.min(...list.map(point => point.y)) - value;\r\n let latMax = Math.max(...list.map(point => point.y)) + value;\r\n let lonMin = Math.min(...list.map(point => point.x)) - value;\r\n let lonMax = Math.max(...list.map(point => point.x)) + value;\r\n\r\n list = list.map(v => ({\r\n ...v,\r\n x: Math.floor(((v.x - lonMin) / (lonMax - lonMin)) * width),\r\n y: Math.floor(((v.y - latMin) / (latMax - latMin)) * height),\r\n }))\r\n\r\n return {\r\n data: list,\r\n latMin,\r\n latMax,\r\n lonMin,\r\n lonMax,\r\n max: 10,\r\n min: 0\r\n }\r\n}\r\n\r\nclass HeatmapLayer extends CustomDataSource{\r\n constructor(options) {\r\n super();\r\n\r\n this.map = options.map;\r\n\r\n this.container = this.createDom();\r\n this.layer = h337.create({\r\n container: this.container,\r\n })\r\n\r\n if (options.data?.length) {\r\n this.loadData(options.data);\r\n }\r\n }\r\n\r\n createDom() {\r\n const map = this.map;\r\n const {width, height} = map.container.getBoundingClientRect();\r\n\r\n const heatMapDom = document.createElement('div');\r\n heatMapDom.style.width = width + 'px';\r\n heatMapDom.style.height = height + 'px';\r\n heatMapDom.style.display = 'none';\r\n\r\n map.container.appendChild(heatMapDom);\r\n\r\n return heatMapDom;\r\n }\r\n\r\n loadData(_data) {\r\n const map = this.map;\r\n\r\n this.entities.removeAll();\r\n\r\n const {width, height} = map.container.getBoundingClientRect();\r\n\r\n const {data, max, min, lonMin, latMin, lonMax, latMax} = getData(_data, width, height);\r\n\r\n this.layer.setData({\r\n max,\r\n min,\r\n data\r\n });\r\n\r\n // 生成的热力图 canvas 元素类名为 heatmap-canvas\r\n const canvas = document.getElementsByClassName('heatmap-canvas');\r\n if (!canvas[0]) return;\r\n\r\n this.entities.add({\r\n name: 'heatmap',\r\n rectangle: {\r\n coordinates: Rectangle.fromDegrees(lonMin, latMin, lonMax, latMax),\r\n material: new ImageMaterialProperty({\r\n image: canvas[0],\r\n transparent: true,\r\n }),\r\n },\r\n })\r\n }\r\n\r\n destroy() {\r\n const map = this.map;\r\n this.container && map.container.removeChild(this.container);\r\n }\r\n}\r\n\r\n\r\nexport default HeatmapLayer;\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"HeatmapLayer.js","names":["_cesium","require","_createFeatureCollection","_heatmap","_interopRequireDefault","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","call","_typeof","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","n","toString","slice","name","test","len","arr2","l","u","a","f","next","done","getData","data","width","height","list","map","v","geometryInfo","_transformGeometry$co","transformGeometry","coordinates","x","y","latMin","Math","min","point","latMax","max","lonMin","lonMax","floor","HeatmapLayer","_CustomDataSource","_super","options","_options$data","_this","container","createDom","layer","h337","loadData","_map$container$getBou","getBoundingClientRect","heatMapDom","document","createElement","style","display","appendChild","_data","entities","removeAll","_map$container$getBou2","_getData","setData","canvas","getElementsByClassName","add","rectangle","Rectangle","fromDegrees","material","ImageMaterialProperty","image","transparent","destroy","removeChild","CustomDataSource","_default","exports"],"sources":["heatmap-layer/HeatmapLayer.js"],"sourcesContent":["import { CustomDataSource, Rectangle, ImageMaterialProperty } from 'cesium';\nimport {transformGeometry} from '../feature-layer/createFeatureCollection';\nimport h337 from 'heatmap.js';\n\nconst getData = (data, width, height) => {\n let list = data.map(v => {\n let {geometryInfo} = v;\n let [x, y] = transformGeometry(geometryInfo).coordinates;\n\n return {\n ...v,\n x,\n y,\n }\n });\n\n // 获取边界数据\n const value = 0.1;\n let latMin = Math.min(...list.map(point => point.y)) - value;\n let latMax = Math.max(...list.map(point => point.y)) + value;\n let lonMin = Math.min(...list.map(point => point.x)) - value;\n let lonMax = Math.max(...list.map(point => point.x)) + value;\n\n list = list.map(v => ({\n ...v,\n x: Math.floor(((v.x - lonMin) / (lonMax - lonMin)) * width),\n y: Math.floor(((v.y - latMin) / (latMax - latMin)) * height),\n }))\n\n return {\n data: list,\n latMin,\n latMax,\n lonMin,\n lonMax,\n max: 10,\n min: 0\n }\n}\n\nclass HeatmapLayer extends CustomDataSource{\n constructor(options) {\n super();\n\n this.map = options.map;\n\n this.container = this.createDom();\n this.layer = h337.create({\n container: this.container,\n })\n\n if (options.data?.length) {\n this.loadData(options.data);\n }\n }\n\n createDom() {\n const map = this.map;\n const {width, height} = map.container.getBoundingClientRect();\n\n const heatMapDom = document.createElement('div');\n heatMapDom.style.width = width + 'px';\n heatMapDom.style.height = height + 'px';\n heatMapDom.style.display = 'none';\n\n map.container.appendChild(heatMapDom);\n\n return heatMapDom;\n }\n\n loadData(_data) {\n const map = this.map;\n\n this.entities.removeAll();\n\n const {width, height} = map.container.getBoundingClientRect();\n\n const {data, max, min, lonMin, latMin, lonMax, latMax} = getData(_data, width, height);\n\n this.layer.setData({\n max,\n min,\n data\n });\n\n // 生成的热力图 canvas 元素类名为 heatmap-canvas\n const canvas = document.getElementsByClassName('heatmap-canvas');\n if (!canvas[0]) return;\n\n this.entities.add({\n name: 'heatmap',\n rectangle: {\n coordinates: Rectangle.fromDegrees(lonMin, latMin, lonMax, latMax),\n material: new ImageMaterialProperty({\n image: canvas[0],\n transparent: true,\n }),\n },\n })\n }\n\n destroy() {\n const map = this.map;\n this.container && map.container.removeChild(this.container);\n }\n}\n\n\nexport default HeatmapLayer;\n"],"mappings":"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"}
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
- /*
8
- * heatmap.js v2.0.0 | JavaScript Heatmap Library
9
- *
10
- * Copyright 2008-2014 Patrick Wied <heatmapjs@patrick-wied.at> - All rights reserved.
11
- * Dual licensed under MIT and Beerware license
12
- *
13
- * :: 2015-07-19 15:42
7
+ /*
8
+ * heatmap.js v2.0.0 | JavaScript Heatmap Library
9
+ *
10
+ * Copyright 2008-2014 Patrick Wied <heatmapjs@patrick-wied.at> - All rights reserved.
11
+ * Dual licensed under MIT and Beerware license
12
+ *
13
+ * :: 2015-07-19 15:42
14
14
  */
15
15
  // Heatmap Config stores default values and will be merged with instance config
16
16
  var HeatmapConfig = {
@@ -174,40 +174,40 @@ var Store = function StoreClosure() {
174
174
  },
175
175
  getData: function getData() {
176
176
  return this._unOrganizeData();
177
- } /*,
178
- TODO: rethink.
179
- getValueAt: function(point) {
180
- var value;
181
- var radius = 100;
182
- var x = point.x;
183
- var y = point.y;
184
- var data = this._data;
185
- if (data[x] && data[x][y]) {
186
- return data[x][y];
187
- } else {
188
- var values = [];
189
- // radial search for datapoints based on default radius
190
- for(var distance = 1; distance < radius; distance++) {
191
- var neighbors = distance * 2 +1;
192
- var startX = x - distance;
193
- var startY = y - distance;
194
- for(var i = 0; i < neighbors; i++) {
195
- for (var o = 0; o < neighbors; o++) {
196
- if ((i == 0 || i == neighbors-1) || (o == 0 || o == neighbors-1)) {
197
- if (data[startY+i] && data[startY+i][startX+o]) {
198
- values.push(data[startY+i][startX+o]);
199
- }
200
- } else {
201
- continue;
202
- }
203
- }
204
- }
205
- }
206
- if (values.length > 0) {
207
- return Math.max.apply(Math, values);
208
- }
209
- }
210
- return false;
177
+ } /*,
178
+ TODO: rethink.
179
+ getValueAt: function(point) {
180
+ var value;
181
+ var radius = 100;
182
+ var x = point.x;
183
+ var y = point.y;
184
+ var data = this._data;
185
+ if (data[x] && data[x][y]) {
186
+ return data[x][y];
187
+ } else {
188
+ var values = [];
189
+ // radial search for datapoints based on default radius
190
+ for(var distance = 1; distance < radius; distance++) {
191
+ var neighbors = distance * 2 +1;
192
+ var startX = x - distance;
193
+ var startY = y - distance;
194
+ for(var i = 0; i < neighbors; i++) {
195
+ for (var o = 0; o < neighbors; o++) {
196
+ if ((i == 0 || i == neighbors-1) || (o == 0 || o == neighbors-1)) {
197
+ if (data[startY+i] && data[startY+i][startX+o]) {
198
+ values.push(data[startY+i][startX+o]);
199
+ }
200
+ } else {
201
+ continue;
202
+ }
203
+ }
204
+ }
205
+ }
206
+ if (values.length > 0) {
207
+ return Math.max.apply(Math, values);
208
+ }
209
+ }
210
+ return false;
211
211
  }*/
212
212
  };
213
213
 
@@ -607,5 +607,6 @@ var heatmapFactory = {
607
607
  HeatmapConfig.plugins[pluginKey] = plugin;
608
608
  }
609
609
  };
610
- var _default = exports["default"] = heatmapFactory;
610
+ var _default = heatmapFactory;
611
+ exports["default"] = _default;
611
612
  //# sourceMappingURL=heatmap.js.map