@antv/l7-layers 2.15.2 → 2.15.4

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 (242) hide show
  1. package/es/Geometry/index.js +9 -31
  2. package/es/Geometry/models/billboard.js +51 -89
  3. package/es/Geometry/models/plane.js +81 -143
  4. package/es/Geometry/models/sprite.js +60 -118
  5. package/es/canvas/index.js +10 -33
  6. package/es/canvas/models/canvas.js +41 -97
  7. package/es/citybuliding/building.js +8 -27
  8. package/es/citybuliding/models/build.js +57 -82
  9. package/es/core/BaseLayer.js +320 -484
  10. package/es/core/BaseModel.js +97 -126
  11. package/es/core/LayerPickService.js +21 -32
  12. package/es/core/TextureService.js +0 -13
  13. package/es/core/interface.js +17 -24
  14. package/es/core/shape/Path.js +13 -20
  15. package/es/core/shape/extrude.js +10 -31
  16. package/es/core/triangulation.js +54 -114
  17. package/es/earth/index.js +9 -33
  18. package/es/earth/models/atmosphere.js +30 -54
  19. package/es/earth/models/base.js +47 -85
  20. package/es/earth/models/bloomsphere.js +30 -54
  21. package/es/earth/utils.js +9 -13
  22. package/es/heatmap/index.js +10 -40
  23. package/es/heatmap/models/grid.js +28 -52
  24. package/es/heatmap/models/grid3d.js +28 -52
  25. package/es/heatmap/models/heatmap.js +91 -146
  26. package/es/heatmap/models/hexagon.js +28 -52
  27. package/es/heatmap/triangulation.js +0 -4
  28. package/es/image/index.js +9 -28
  29. package/es/image/models/image.js +66 -100
  30. package/es/index.js +9 -17
  31. package/es/line/index.js +9 -34
  32. package/es/line/models/arc.js +66 -118
  33. package/es/line/models/arc_3d.js +60 -108
  34. package/es/line/models/earthArc_3d.js +63 -111
  35. package/es/line/models/great_circle.js +56 -100
  36. package/es/line/models/half.js +46 -77
  37. package/es/line/models/line.js +94 -148
  38. package/es/line/models/linearline.js +45 -80
  39. package/es/line/models/simpleLine.js +41 -74
  40. package/es/line/models/wall.js +52 -92
  41. package/es/mask/index.js +9 -28
  42. package/es/mask/models/fill.js +29 -54
  43. package/es/plugins/DataMappingPlugin.js +80 -117
  44. package/es/plugins/DataSourcePlugin.js +45 -68
  45. package/es/plugins/FeatureScalePlugin.js +67 -122
  46. package/es/plugins/LayerAnimateStylePlugin.js +0 -5
  47. package/es/plugins/LayerMaskPlugin.js +3 -11
  48. package/es/plugins/LayerModelPlugin.js +67 -104
  49. package/es/plugins/LayerStylePlugin.js +3 -9
  50. package/es/plugins/LightingPlugin.js +12 -18
  51. package/es/plugins/MultiPassRendererPlugin.js +11 -16
  52. package/es/plugins/PixelPickingPlugin.js +12 -21
  53. package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
  54. package/es/plugins/ShaderUniformPlugin.js +13 -27
  55. package/es/plugins/UpdateModelPlugin.js +0 -5
  56. package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
  57. package/es/point/index.js +26 -77
  58. package/es/point/models/earthExtrude.js +61 -102
  59. package/es/point/models/earthFill.js +57 -87
  60. package/es/point/models/extrude.js +60 -101
  61. package/es/point/models/fill.js +70 -100
  62. package/es/point/models/fillmage.js +63 -107
  63. package/es/point/models/image.js +48 -88
  64. package/es/point/models/index.js +2 -2
  65. package/es/point/models/normal.js +30 -54
  66. package/es/point/models/radar.js +40 -64
  67. package/es/point/models/simplePoint.js +41 -69
  68. package/es/point/models/text.js +197 -299
  69. package/es/point/shape/extrude.js +4 -13
  70. package/es/polygon/index.js +11 -40
  71. package/es/polygon/models/extrude.js +48 -92
  72. package/es/polygon/models/fill.js +54 -88
  73. package/es/polygon/models/index.js +3 -2
  74. package/es/polygon/models/ocean.js +42 -76
  75. package/es/polygon/models/water.js +37 -71
  76. package/es/raster/buffers/triangulation.js +2 -4
  77. package/es/raster/index.js +9 -32
  78. package/es/raster/models/raster.js +80 -116
  79. package/es/raster/models/rasterRgb.js +84 -127
  80. package/es/raster/models/rasterTerrainRgb.js +56 -84
  81. package/es/tile/interaction/getRasterData.js +14 -20
  82. package/es/tile/interaction/utils.js +7 -9
  83. package/es/tile/manager/base.js +63 -96
  84. package/es/tile/service/TileLayerService.js +30 -52
  85. package/es/tile/service/TilePickService.js +26 -40
  86. package/es/tile/service/TileSourceService.js +3 -7
  87. package/es/tile/tileFactory/DebugTile.js +28 -45
  88. package/es/tile/tileFactory/ImageTile.js +20 -38
  89. package/es/tile/tileFactory/MaskTile.js +22 -43
  90. package/es/tile/tileFactory/RasterRGBTile.js +22 -42
  91. package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
  92. package/es/tile/tileFactory/RasterTile.js +30 -53
  93. package/es/tile/tileFactory/Tile.js +63 -97
  94. package/es/tile/tileFactory/VectorTile.js +41 -68
  95. package/es/tile/tileFactory/index.js +0 -11
  96. package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
  97. package/es/tile/tileFactory/util.js +0 -3
  98. package/es/tile/tileLayer/BaseLayer.js +105 -146
  99. package/es/tile/utils.js +1 -1
  100. package/es/utils/blend.js +0 -2
  101. package/es/utils/collision-index.js +9 -16
  102. package/es/utils/dataMappingStyle.js +8 -18
  103. package/es/utils/extrude_polyline.js +101 -149
  104. package/es/utils/grid-index.js +2 -27
  105. package/es/utils/identityScale.js +0 -8
  106. package/es/utils/layerData.js +30 -44
  107. package/es/utils/multiPassRender.js +11 -13
  108. package/es/utils/polylineNormal.js +31 -37
  109. package/es/utils/simpleLine.js +2 -16
  110. package/es/utils/stencil.js +2 -3
  111. package/es/utils/symbol-layout.js +27 -53
  112. package/es/wind/index.js +9 -29
  113. package/es/wind/models/utils.js +26 -51
  114. package/es/wind/models/wind.js +101 -147
  115. package/es/wind/models/windRender.js +53 -66
  116. package/lib/Geometry/index.js +9 -38
  117. package/lib/Geometry/models/billboard.js +51 -97
  118. package/lib/Geometry/models/index.js +0 -5
  119. package/lib/Geometry/models/plane.js +79 -151
  120. package/lib/Geometry/models/sprite.js +60 -127
  121. package/lib/canvas/index.js +10 -40
  122. package/lib/canvas/models/canvas.js +41 -101
  123. package/lib/canvas/models/index.js +0 -3
  124. package/lib/citybuliding/building.js +8 -35
  125. package/lib/citybuliding/models/build.js +57 -92
  126. package/lib/core/BaseLayer.js +320 -478
  127. package/lib/core/BaseModel.js +97 -139
  128. package/lib/core/LayerPickService.js +21 -37
  129. package/lib/core/TextureService.js +0 -16
  130. package/lib/core/interface.js +21 -31
  131. package/lib/core/schema.js +0 -1
  132. package/lib/core/shape/Path.js +14 -31
  133. package/lib/core/shape/extrude.js +10 -54
  134. package/lib/core/triangulation.js +53 -153
  135. package/lib/earth/index.js +9 -43
  136. package/lib/earth/models/atmosphere.js +30 -63
  137. package/lib/earth/models/base.js +47 -90
  138. package/lib/earth/models/bloomsphere.js +30 -63
  139. package/lib/earth/utils.js +7 -31
  140. package/lib/heatmap/index.js +10 -48
  141. package/lib/heatmap/models/grid.js +28 -60
  142. package/lib/heatmap/models/grid3d.js +28 -60
  143. package/lib/heatmap/models/heatmap.js +91 -162
  144. package/lib/heatmap/models/hexagon.js +28 -60
  145. package/lib/heatmap/models/index.js +0 -6
  146. package/lib/heatmap/triangulation.js +0 -5
  147. package/lib/image/index.js +9 -36
  148. package/lib/image/models/image.js +66 -109
  149. package/lib/image/models/index.js +0 -3
  150. package/lib/index.js +7 -61
  151. package/lib/line/index.js +9 -40
  152. package/lib/line/models/arc.js +64 -128
  153. package/lib/line/models/arc_3d.js +58 -119
  154. package/lib/line/models/earthArc_3d.js +61 -122
  155. package/lib/line/models/great_circle.js +56 -111
  156. package/lib/line/models/half.js +46 -87
  157. package/lib/line/models/index.js +0 -11
  158. package/lib/line/models/line.js +92 -156
  159. package/lib/line/models/linearline.js +45 -92
  160. package/lib/line/models/simpleLine.js +41 -84
  161. package/lib/line/models/wall.js +52 -103
  162. package/lib/mask/index.js +9 -36
  163. package/lib/mask/models/fill.js +29 -63
  164. package/lib/mask/models/index.js +0 -3
  165. package/lib/plugins/DataMappingPlugin.js +80 -128
  166. package/lib/plugins/DataSourcePlugin.js +45 -76
  167. package/lib/plugins/FeatureScalePlugin.js +67 -138
  168. package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
  169. package/lib/plugins/LayerMaskPlugin.js +4 -17
  170. package/lib/plugins/LayerModelPlugin.js +68 -113
  171. package/lib/plugins/LayerStylePlugin.js +4 -14
  172. package/lib/plugins/LightingPlugin.js +12 -25
  173. package/lib/plugins/MultiPassRendererPlugin.js +11 -22
  174. package/lib/plugins/PixelPickingPlugin.js +12 -27
  175. package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
  176. package/lib/plugins/ShaderUniformPlugin.js +13 -34
  177. package/lib/plugins/UpdateModelPlugin.js +1 -10
  178. package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
  179. package/lib/point/index.js +26 -83
  180. package/lib/point/models/earthExtrude.js +61 -113
  181. package/lib/point/models/earthFill.js +57 -117
  182. package/lib/point/models/extrude.js +60 -111
  183. package/lib/point/models/fill.js +68 -109
  184. package/lib/point/models/fillmage.js +61 -115
  185. package/lib/point/models/image.js +48 -98
  186. package/lib/point/models/index.js +1 -12
  187. package/lib/point/models/normal.js +30 -64
  188. package/lib/point/models/radar.js +40 -74
  189. package/lib/point/models/simplePoint.js +41 -79
  190. package/lib/point/models/text.js +197 -307
  191. package/lib/point/shape/extrude.js +4 -20
  192. package/lib/polygon/index.js +11 -48
  193. package/lib/polygon/models/extrude.js +48 -103
  194. package/lib/polygon/models/fill.js +54 -98
  195. package/lib/polygon/models/index.js +2 -14
  196. package/lib/polygon/models/ocean.js +42 -88
  197. package/lib/polygon/models/water.js +37 -82
  198. package/lib/raster/buffers/triangulation.js +3 -7
  199. package/lib/raster/index.js +9 -40
  200. package/lib/raster/models/index.js +0 -5
  201. package/lib/raster/models/raster.js +80 -125
  202. package/lib/raster/models/rasterRgb.js +84 -139
  203. package/lib/raster/models/rasterTerrainRgb.js +56 -93
  204. package/lib/tile/interaction/getRasterData.js +14 -25
  205. package/lib/tile/interaction/utils.js +7 -19
  206. package/lib/tile/manager/base.js +63 -104
  207. package/lib/tile/service/TileLayerService.js +30 -57
  208. package/lib/tile/service/TilePickService.js +26 -48
  209. package/lib/tile/service/TileSourceService.js +2 -16
  210. package/lib/tile/style/utils.js +0 -3
  211. package/lib/tile/tileFactory/DebugTile.js +28 -53
  212. package/lib/tile/tileFactory/ImageTile.js +20 -46
  213. package/lib/tile/tileFactory/MaskTile.js +22 -51
  214. package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
  215. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
  216. package/lib/tile/tileFactory/RasterTile.js +30 -63
  217. package/lib/tile/tileFactory/Tile.js +63 -102
  218. package/lib/tile/tileFactory/VectorTile.js +41 -76
  219. package/lib/tile/tileFactory/index.js +0 -25
  220. package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
  221. package/lib/tile/tileFactory/util.js +0 -9
  222. package/lib/tile/tileLayer/BaseLayer.js +105 -153
  223. package/lib/tile/utils.js +1 -5
  224. package/lib/utils/blend.js +0 -5
  225. package/lib/utils/collision-index.js +9 -25
  226. package/lib/utils/dataMappingStyle.js +8 -19
  227. package/lib/utils/extrude_polyline.js +101 -181
  228. package/lib/utils/grid-index.js +2 -28
  229. package/lib/utils/identityScale.js +0 -9
  230. package/lib/utils/layerData.js +30 -49
  231. package/lib/utils/multiPassRender.js +11 -16
  232. package/lib/utils/polylineNormal.js +31 -66
  233. package/lib/utils/simpleLine.js +2 -21
  234. package/lib/utils/stencil.js +0 -4
  235. package/lib/utils/symbol-layout.js +27 -55
  236. package/lib/wind/index.js +9 -37
  237. package/lib/wind/models/index.js +0 -3
  238. package/lib/wind/models/utils.js +26 -62
  239. package/lib/wind/models/wind.js +101 -157
  240. package/lib/wind/models/windRender.js +53 -71
  241. package/lib/wind/models/windShader.js +0 -1
  242. package/package.json +7 -7
@@ -1,142 +1,102 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.default = void 0;
11
-
12
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
-
16
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
-
18
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
-
20
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
-
22
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
15
  var _l7Core = require("@antv/l7-core");
25
-
26
16
  var _d3Array = require("d3-array");
27
-
28
17
  var d3interpolate = _interopRequireWildcard(require("d3-interpolate"));
29
-
30
18
  var d3 = _interopRequireWildcard(require("d3-scale"));
31
-
32
19
  var _inversify = require("inversify");
33
-
34
20
  var _lodash = require("lodash");
35
-
36
21
  require("reflect-metadata");
37
-
38
22
  var _identityScale = _interopRequireDefault(require("../utils/identityScale"));
39
-
40
23
  var _scaleMap, _dec, _class;
41
-
42
24
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
43
-
44
25
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
45
-
46
26
  var dateRegex = /^(?:(?!0000)[0-9]{4}([-/.]+)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-/.]?)0?2\2(?:29))(\s+([01]|([01][0-9]|2[0-3])):([0-9]|[0-5][0-9]):([0-9]|[0-5][0-9]))?$/;
47
27
  var scaleMap = (_scaleMap = {}, (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.LINEAR, d3.scaleLinear), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.POWER, d3.scalePow), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.LOG, d3.scaleLog), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.IDENTITY, _identityScale.default), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.SEQUENTIAL, d3.scaleSequential), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.TIME, d3.scaleTime), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.QUANTILE, d3.scaleQuantile), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.QUANTIZE, d3.scaleQuantize), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.THRESHOLD, d3.scaleThreshold), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.CAT, d3.scaleOrdinal), (0, _defineProperty2.default)(_scaleMap, _l7Core.ScaleTypes.DIVERGING, d3.scaleDiverging), _scaleMap);
48
28
  /**
49
29
  * 根据 Source 原始数据为指定字段创建 Scale,保存在 StyleAttribute 上,供下游插件使用
50
30
  */
51
-
52
31
  var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
53
32
  function FeatureScalePlugin() {
54
33
  (0, _classCallCheck2.default)(this, FeatureScalePlugin);
55
34
  (0, _defineProperty2.default)(this, "scaleOptions", {});
56
35
  }
57
-
58
36
  (0, _createClass2.default)(FeatureScalePlugin, [{
59
37
  key: "apply",
60
38
  value: function apply(layer, _ref) {
61
39
  var _this = this;
62
-
63
40
  var styleAttributeService = _ref.styleAttributeService;
64
41
  layer.hooks.init.tapPromise('FeatureScalePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
65
42
  var _layer$getSource;
66
-
67
43
  var attributes, dataArray;
68
44
  return _regenerator.default.wrap(function _callee$(_context) {
69
- while (1) {
70
- switch (_context.prev = _context.next) {
45
+ while (1) switch (_context.prev = _context.next) {
46
+ case 0:
47
+ layer.log(_l7Core.IDebugLog.ScaleInitStart, _l7Core.ILayerStage.INIT);
48
+ _this.scaleOptions = layer.getScaleOptions();
49
+ attributes = styleAttributeService.getLayerStyleAttributes();
50
+ dataArray = (_layer$getSource = layer.getSource()) === null || _layer$getSource === void 0 ? void 0 : _layer$getSource.data.dataArray;
51
+ if (!(Array.isArray(dataArray) && dataArray.length === 0)) {
52
+ _context.next = 8;
53
+ break;
54
+ }
55
+ return _context.abrupt("return");
56
+ case 8:
57
+ _this.caculateScalesForAttributes(attributes || [], dataArray);
58
+ case 9:
59
+ layer.log(_l7Core.IDebugLog.ScaleInitEnd, _l7Core.ILayerStage.INIT);
60
+ case 10:
61
+ case "end":
62
+ return _context.stop();
63
+ }
64
+ }, _callee);
65
+ })));
66
+
67
+ // 检测数据是否需要更新
68
+ layer.hooks.beforeRenderData.tapPromise('FeatureScalePlugin', /*#__PURE__*/function () {
69
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(flag) {
70
+ var attributes, dataArray;
71
+ return _regenerator.default.wrap(function _callee2$(_context2) {
72
+ while (1) switch (_context2.prev = _context2.next) {
71
73
  case 0:
72
- layer.log(_l7Core.IDebugLog.ScaleInitStart, _l7Core.ILayerStage.INIT);
74
+ if (flag) {
75
+ _context2.next = 2;
76
+ break;
77
+ }
78
+ return _context2.abrupt("return", flag);
79
+ case 2:
80
+ layer.log(_l7Core.IDebugLog.ScaleInitStart, _l7Core.ILayerStage.UPDATE);
73
81
  _this.scaleOptions = layer.getScaleOptions();
74
82
  attributes = styleAttributeService.getLayerStyleAttributes();
75
- dataArray = (_layer$getSource = layer.getSource()) === null || _layer$getSource === void 0 ? void 0 : _layer$getSource.data.dataArray;
76
-
83
+ dataArray = layer.getSource().data.dataArray;
77
84
  if (!(Array.isArray(dataArray) && dataArray.length === 0)) {
78
- _context.next = 8;
85
+ _context2.next = 8;
79
86
  break;
80
87
  }
81
-
82
- return _context.abrupt("return");
83
-
88
+ return _context2.abrupt("return", true);
84
89
  case 8:
85
90
  _this.caculateScalesForAttributes(attributes || [], dataArray);
86
-
87
- case 9:
88
- layer.log(_l7Core.IDebugLog.ScaleInitEnd, _l7Core.ILayerStage.INIT);
89
-
90
- case 10:
91
+ layer.log(_l7Core.IDebugLog.ScaleInitEnd, _l7Core.ILayerStage.UPDATE);
92
+ layer.layerModelNeedUpdate = true;
93
+ return _context2.abrupt("return", true);
94
+ case 12:
91
95
  case "end":
92
- return _context.stop();
93
- }
94
- }
95
- }, _callee);
96
- }))); // 检测数据是否需要更新
97
-
98
- layer.hooks.beforeRenderData.tapPromise('FeatureScalePlugin', /*#__PURE__*/function () {
99
- var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(flag) {
100
- var attributes, dataArray;
101
- return _regenerator.default.wrap(function _callee2$(_context2) {
102
- while (1) {
103
- switch (_context2.prev = _context2.next) {
104
- case 0:
105
- if (flag) {
106
- _context2.next = 2;
107
- break;
108
- }
109
-
110
- return _context2.abrupt("return", flag);
111
-
112
- case 2:
113
- layer.log(_l7Core.IDebugLog.ScaleInitStart, _l7Core.ILayerStage.UPDATE);
114
- _this.scaleOptions = layer.getScaleOptions();
115
- attributes = styleAttributeService.getLayerStyleAttributes();
116
- dataArray = layer.getSource().data.dataArray;
117
-
118
- if (!(Array.isArray(dataArray) && dataArray.length === 0)) {
119
- _context2.next = 8;
120
- break;
121
- }
122
-
123
- return _context2.abrupt("return", true);
124
-
125
- case 8:
126
- _this.caculateScalesForAttributes(attributes || [], dataArray);
127
-
128
- layer.log(_l7Core.IDebugLog.ScaleInitEnd, _l7Core.ILayerStage.UPDATE);
129
- layer.layerModelNeedUpdate = true;
130
- return _context2.abrupt("return", true);
131
-
132
- case 12:
133
- case "end":
134
- return _context2.stop();
135
- }
96
+ return _context2.stop();
136
97
  }
137
98
  }, _callee2);
138
99
  }));
139
-
140
100
  return function (_x) {
141
101
  return _ref3.apply(this, arguments);
142
102
  };
@@ -145,20 +105,16 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
145
105
  if (layer.layerModelNeedUpdate) {
146
106
  return;
147
107
  }
148
-
149
108
  _this.scaleOptions = layer.getScaleOptions();
150
109
  var attributes = styleAttributeService.getLayerStyleAttributes();
151
110
  var dataArray = layer.getSource().data.dataArray;
152
-
153
111
  if (Array.isArray(dataArray) && dataArray.length === 0) {
154
112
  return;
155
113
  }
156
-
157
114
  if (attributes) {
158
115
  var attributesToRescale = attributes.filter(function (attribute) {
159
116
  return attribute.needRescale;
160
117
  });
161
-
162
118
  if (attributesToRescale.length) {
163
119
  _this.caculateScalesForAttributes(attributesToRescale, dataArray);
164
120
  }
@@ -174,30 +130,28 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
174
130
  key: "caculateScalesForAttributes",
175
131
  value: function caculateScalesForAttributes(attributes, dataArray) {
176
132
  var _this2 = this;
177
-
178
133
  attributes.forEach(function (attribute) {
179
134
  if (attribute.scale) {
180
135
  // 创建Scale
181
- var attributeScale = attribute.scale; // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
182
-
136
+ var attributeScale = attribute.scale;
137
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
183
138
  attributeScale.names = _this2.parseFields(attribute.scale.field || []);
184
- var scales = []; // 为每个字段创建 Scale
185
-
139
+ var scales = [];
140
+ // 为每个字段创建 Scale
186
141
  attributeScale.names.forEach(function (field) {
187
142
  var _attribute$scale;
188
-
189
143
  scales.push(_this2.createScale(field, attribute.name, (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.values, dataArray));
190
- }); // 为scales 设置值区间 Range
144
+ });
191
145
 
146
+ // 为scales 设置值区间 Range
192
147
  if (scales.some(function (scale) {
193
148
  return scale.type === _l7Core.StyleScaleType.VARIABLE;
194
149
  })) {
195
150
  attributeScale.type = _l7Core.StyleScaleType.VARIABLE;
196
151
  scales.forEach(function (scale) {
197
- var _scale$option;
198
-
199
152
  // 如果设置了回调, 这不需要设置range
200
153
  if (!attributeScale.callback && attributeScale.values !== 'text') {
154
+ var _scale$option;
201
155
  switch ((_scale$option = scale.option) === null || _scale$option === void 0 ? void 0 : _scale$option.type) {
202
156
  case _l7Core.ScaleTypes.LOG:
203
157
  case _l7Core.ScaleTypes.LINEAR:
@@ -206,36 +160,29 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
206
160
  var tick = scale.scale.ticks(attributeScale.values.length);
207
161
  scale.scale.domain(tick);
208
162
  }
209
-
210
163
  attributeScale.values ? scale.scale.range(attributeScale.values) : scale.scale.range(scale.option.domain);
211
164
  break;
212
-
213
165
  case _l7Core.ScaleTypes.QUANTILE:
214
166
  case _l7Core.ScaleTypes.QUANTIZE:
215
167
  case _l7Core.ScaleTypes.THRESHOLD:
216
168
  scale.scale.range(attributeScale.values); //
217
-
218
169
  break;
219
-
220
170
  case _l7Core.ScaleTypes.IDENTITY:
221
171
  // 不做处理xe
222
172
  break;
223
-
224
173
  case _l7Core.ScaleTypes.CAT:
225
174
  attributeScale.values ? scale.scale.range(attributeScale.values) : scale.scale.range(scale.option.domain);
226
175
  break;
227
-
228
176
  case _l7Core.ScaleTypes.DIVERGING:
229
177
  case _l7Core.ScaleTypes.SEQUENTIAL:
230
- scale.scale.interpolator( // @ts-ignore
178
+ scale.scale.interpolator(
179
+ // @ts-ignore
231
180
  d3interpolate.interpolateRgbBasis(attributeScale.values));
232
181
  break;
233
182
  }
234
183
  }
235
-
236
184
  if (attributeScale.values === 'text') {
237
185
  var _scale$option2;
238
-
239
186
  scale.scale.range((_scale$option2 = scale.option) === null || _scale$option2 === void 0 ? void 0 : _scale$option2.domain);
240
187
  }
241
188
  });
@@ -246,7 +193,6 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
246
193
  return scale.scale(attributeScale.names[index]);
247
194
  });
248
195
  }
249
-
250
196
  attributeScale.scalers = scales.map(function (scale) {
251
197
  return {
252
198
  field: scale.field,
@@ -258,30 +204,27 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
258
204
  }
259
205
  });
260
206
  }
207
+
261
208
  /**
262
209
  * @example
263
210
  * 'w*h' => ['w', 'h']
264
211
  * 'w' => ['w']
265
212
  */
266
-
267
213
  }, {
268
214
  key: "parseFields",
269
215
  value: function parseFields(field) {
270
216
  if (Array.isArray(field)) {
271
217
  return field;
272
218
  }
273
-
274
219
  if ((0, _lodash.isString)(field)) {
275
220
  return field.split('*');
276
221
  }
277
-
278
222
  return [field];
279
223
  }
280
224
  }, {
281
225
  key: "createScale",
282
226
  value: function createScale(field, name, values, data) {
283
227
  var _this$scaleOptions$na, _find;
284
-
285
228
  // scale 支持根据视觉通道和字段
286
229
  var scaleOption = this.scaleOptions[name] && ((_this$scaleOptions$na = this.scaleOptions[name]) === null || _this$scaleOptions$na === void 0 ? void 0 : _this$scaleOptions$na.field) === field ? this.scaleOptions[name] // TODO zi
287
230
  : this.scaleOptions[field];
@@ -291,7 +234,6 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
291
234
  type: _l7Core.StyleScaleType.VARIABLE,
292
235
  option: scaleOption
293
236
  };
294
-
295
237
  if (!data || !data.length) {
296
238
  if (scaleOption && scaleOption.type) {
297
239
  styleScale.scale = this.createDefaultScale(scaleOption);
@@ -299,46 +241,39 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
299
241
  styleScale.scale = d3.scaleOrdinal([field]);
300
242
  styleScale.type = _l7Core.StyleScaleType.CONSTANT;
301
243
  }
302
-
303
244
  return styleScale;
304
- } // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
305
-
306
-
245
+ }
246
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
307
247
  var firstValue = (_find = data.find(function (d) {
308
248
  return !(0, _lodash.isNil)(d[field]);
309
- })) === null || _find === void 0 ? void 0 : _find[field]; // 常量 Scale
310
-
249
+ })) === null || _find === void 0 ? void 0 : _find[field];
250
+ // 常量 Scale
311
251
  if (this.isNumber(field) || (0, _lodash.isNil)(firstValue) && !scaleOption) {
312
252
  styleScale.scale = d3.scaleOrdinal([field]);
313
253
  styleScale.type = _l7Core.StyleScaleType.CONSTANT;
314
254
  } else {
315
255
  // 根据数据类型判断 默认等分位,时间,和枚举类型
316
256
  var type = scaleOption && scaleOption.type || this.getDefaultType(firstValue);
317
-
318
257
  if (values === 'text') {
319
258
  // text 为内置变 如果是文本则为cat
320
259
  type = _l7Core.ScaleTypes.CAT;
321
260
  }
322
-
323
261
  var cfg = this.createScaleConfig(type, field, scaleOption, data);
324
262
  styleScale.scale = this.createDefaultScale(cfg);
325
263
  styleScale.option = cfg;
326
264
  }
327
-
328
265
  return styleScale;
329
266
  }
330
267
  }, {
331
268
  key: "getDefaultType",
332
269
  value: function getDefaultType(firstValue) {
333
270
  var type = _l7Core.ScaleTypes.LINEAR;
334
-
335
271
  if (typeof firstValue === 'string') {
336
272
  type = dateRegex.test(firstValue) ? _l7Core.ScaleTypes.TIME : _l7Core.ScaleTypes.CAT;
337
273
  }
338
-
339
274
  return type;
340
- } // 生成Scale 默认配置
341
-
275
+ }
276
+ // 生成Scale 默认配置
342
277
  }, {
343
278
  key: "createScaleConfig",
344
279
  value: function createScaleConfig(type, field, scaleOption, data) {
@@ -348,7 +283,6 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
348
283
  var values = (data === null || data === void 0 ? void 0 : data.map(function (item) {
349
284
  return item[field];
350
285
  })) || [];
351
-
352
286
  if (scaleOption !== null && scaleOption !== void 0 && scaleOption.domain) {
353
287
  cfg.domain = scaleOption === null || scaleOption === void 0 ? void 0 : scaleOption.domain;
354
288
  } else if (type === _l7Core.ScaleTypes.CAT || type === _l7Core.ScaleTypes.IDENTITY) {
@@ -363,38 +297,33 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
363
297
  // linear/Power/log
364
298
  cfg.domain = (0, _d3Array.extent)(values);
365
299
  }
366
-
367
300
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, cfg), scaleOption);
368
- } // 创建Scale 实例
301
+ }
369
302
 
303
+ // 创建Scale 实例
370
304
  }, {
371
305
  key: "createDefaultScale",
372
306
  value: function createDefaultScale(_ref4) {
373
307
  var type = _ref4.type,
374
- domain = _ref4.domain,
375
- unknown = _ref4.unknown,
376
- clamp = _ref4.clamp,
377
- nice = _ref4.nice;
308
+ domain = _ref4.domain,
309
+ unknown = _ref4.unknown,
310
+ clamp = _ref4.clamp,
311
+ nice = _ref4.nice;
378
312
  // @ts-ignore
379
313
  var scale = scaleMap[type]();
380
-
381
314
  if (domain && scale.domain) {
382
315
  scale.domain(domain);
383
316
  }
384
-
385
317
  if (unknown) {
386
318
  scale.unknown(unknown);
387
319
  }
388
-
389
320
  if (clamp !== undefined && scale.clamp) {
390
321
  scale.clamp(clamp);
391
322
  }
392
-
393
323
  if (nice !== undefined && scale.nice) {
394
324
  scale.nice(nice);
395
- } // TODO 其他属性支持
396
-
397
-
325
+ }
326
+ // TODO 其他属性支持
398
327
  return scale;
399
328
  }
400
329
  }]);
@@ -1,36 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
11
  var _inversify = require("inversify");
17
-
18
12
  require("reflect-metadata");
19
-
20
13
  var _dec, _class;
21
-
22
14
  var LayerAnimateStylePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
23
15
  function LayerAnimateStylePlugin() {
24
16
  (0, _classCallCheck2.default)(this, LayerAnimateStylePlugin);
25
17
  }
26
-
27
18
  (0, _createClass2.default)(LayerAnimateStylePlugin, [{
28
19
  key: "apply",
29
20
  value: function apply(layer) {
30
21
  layer.hooks.beforeRender.tap('LayerAnimateStylePlugin', function () {
31
22
  // @ts-ignore
32
23
  var animateStatus = layer.animateStatus;
33
-
34
24
  if (animateStatus) {
35
25
  layer.models.forEach(function (model) {
36
26
  model.addUniforms((0, _objectSpread2.default)({}, layer.layerModel.getAnimateUniforms()));
@@ -1,47 +1,34 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
11
  var _inversify = require("inversify");
17
-
18
12
  require("reflect-metadata");
19
-
20
13
  var _dec, _class;
21
-
22
- var LayerStylePlugin = (
23
14
  /**
24
15
  * 更新图层样式,初始图层相关配置
25
16
  */
26
- _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
17
+ var LayerStylePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
27
18
  function LayerStylePlugin() {
28
19
  (0, _classCallCheck2.default)(this, LayerStylePlugin);
29
20
  }
30
-
31
21
  (0, _createClass2.default)(LayerStylePlugin, [{
32
22
  key: "apply",
33
23
  value: function apply(layer) {
34
24
  layer.hooks.afterInit.tap('LayerMaskPlugin', function () {
35
25
  var _layer$getLayerConfig = layer.getLayerConfig(),
36
- maskLayers = _layer$getLayerConfig.maskLayers,
37
- enableMask = _layer$getLayerConfig.enableMask; // mask 初始化
38
-
39
-
26
+ maskLayers = _layer$getLayerConfig.maskLayers,
27
+ enableMask = _layer$getLayerConfig.enableMask;
28
+ // mask 初始化
40
29
  if (!layer.tileLayer && maskLayers && maskLayers.length > 0) {
41
30
  var _layer$masks;
42
-
43
31
  (_layer$masks = layer.masks).push.apply(_layer$masks, (0, _toConsumableArray2.default)(maskLayers));
44
-
45
32
  layer.updateLayerConfig({
46
33
  mask: true && enableMask
47
34
  });