@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,47 +1,28 @@
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 _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
12
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
-
20
13
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
14
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
15
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
26
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
17
  var _l7Core = require("@antv/l7-core");
29
-
30
18
  var _l7Utils = require("@antv/l7-utils");
31
-
32
19
  var _BaseModel2 = _interopRequireDefault(require("../../core/BaseModel"));
33
-
34
20
  var _triangulation = require("../../core/triangulation");
35
-
36
21
  var _windRender = require("./windRender");
37
-
38
22
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
39
-
40
23
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
-
42
24
  /* babel-plugin-inline-import '../shaders/wind_frag.glsl' */
43
25
  var WindFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nvoid main() {\n vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));\n gl_FragColor = color;\n gl_FragColor.a *= u_opacity;\n}\n";
44
-
45
26
  /* babel-plugin-inline-import '../shaders/wind_vert.glsl' */
46
27
  var WindVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n \n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
47
28
  var defaultRampColors = {
@@ -54,34 +35,26 @@ var defaultRampColors = {
54
35
  0.6: '#f46d43',
55
36
  1.0: '#d53e4f'
56
37
  };
57
-
58
38
  var WindModel = /*#__PURE__*/function (_BaseModel) {
59
39
  (0, _inherits2.default)(WindModel, _BaseModel);
60
-
61
40
  var _super = _createSuper(WindModel);
62
-
63
41
  function WindModel() {
64
42
  var _this;
65
-
66
43
  (0, _classCallCheck2.default)(this, WindModel);
67
-
68
44
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
69
45
  args[_key] = arguments[_key];
70
46
  }
71
-
72
47
  _this = _super.call.apply(_super, [this].concat(args));
73
48
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sizeScale", 0.5);
74
49
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "frequency", new _l7Utils.FrequencyController(7.2));
75
50
  return _this;
76
51
  }
77
-
78
52
  (0, _createClass2.default)(WindModel, [{
79
53
  key: "render",
80
54
  value: function render(options) {
81
55
  var _this2 = this;
82
-
83
- this.drawColorMode(options); // Tip: 控制风场的平均更新频率
84
-
56
+ this.drawColorMode(options);
57
+ // Tip: 控制风场的平均更新频率
85
58
  this.frequency.run(function () {
86
59
  _this2.drawWind();
87
60
  });
@@ -96,92 +69,80 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
96
69
  value: function () {
97
70
  var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
98
71
  var _source$data,
99
- _source$data2,
100
- _source$data2$images,
101
- _this3 = this;
102
-
72
+ _source$data2,
73
+ _source$data2$images,
74
+ _this3 = this;
103
75
  var _ref, _ref$uMin, uMin, _ref$uMax, uMax, _ref$vMin, vMin, _ref$vMax, vMax, _ref$fadeOpacity, fadeOpacity, _ref$speedFactor, speedFactor, _ref$dropRate, dropRate, _ref$dropRateBump, dropRateBump, _ref$rampColors, rampColors, _ref$sizeScale, sizeScale, createTexture2D, source, glContext, model;
104
-
105
76
  return _regenerator.default.wrap(function _callee$(_context) {
106
- while (1) {
107
- switch (_context.prev = _context.next) {
108
- case 0:
109
- _ref = this.layer.getLayerConfig(), _ref$uMin = _ref.uMin, uMin = _ref$uMin === void 0 ? -21.32 : _ref$uMin, _ref$uMax = _ref.uMax, uMax = _ref$uMax === void 0 ? 26.8 : _ref$uMax, _ref$vMin = _ref.vMin, vMin = _ref$vMin === void 0 ? -21.57 : _ref$vMin, _ref$vMax = _ref.vMax, vMax = _ref$vMax === void 0 ? 21.42 : _ref$vMax, _ref$fadeOpacity = _ref.fadeOpacity, fadeOpacity = _ref$fadeOpacity === void 0 ? 0.996 : _ref$fadeOpacity, _ref$speedFactor = _ref.speedFactor, speedFactor = _ref$speedFactor === void 0 ? 0.25 : _ref$speedFactor, _ref$dropRate = _ref.dropRate, dropRate = _ref$dropRate === void 0 ? 0.003 : _ref$dropRate, _ref$dropRateBump = _ref.dropRateBump, dropRateBump = _ref$dropRateBump === void 0 ? 0.01 : _ref$dropRateBump, _ref$rampColors = _ref.rampColors, rampColors = _ref$rampColors === void 0 ? defaultRampColors : _ref$rampColors, _ref$sizeScale = _ref.sizeScale, sizeScale = _ref$sizeScale === void 0 ? 0.5 : _ref$sizeScale;
110
- createTexture2D = this.rendererService.createTexture2D;
111
- source = this.layer.getSource();
112
- this.texture = createTexture2D({
113
- height: 0,
114
- width: 0
115
- });
116
- this.cacheZoom = Math.floor(this.mapService.getZoom());
117
- glContext = this.rendererService.getGLContext();
118
- this.imageCoords = (_source$data = source.data) === null || _source$data === void 0 ? void 0 : _source$data.dataArray[0].coordinates;
119
- (_source$data2 = source.data) === null || _source$data2 === void 0 ? void 0 : (_source$data2$images = _source$data2.images) === null || _source$data2$images === void 0 ? void 0 : _source$data2$images.then(function (imageData) {
120
- var _this3$texture;
121
-
122
- _this3.sizeScale = sizeScale * _this3.getZoomScale();
123
-
124
- var _this3$getWindSize = _this3.getWindSize(),
125
- imageWidth = _this3$getWindSize.imageWidth,
126
- imageHeight = _this3$getWindSize.imageHeight;
127
-
128
- var options = {
129
- glContext: glContext,
130
- imageWidth: imageWidth,
131
- imageHeight: imageHeight,
132
- fadeOpacity: fadeOpacity,
133
- speedFactor: speedFactor,
134
- dropRate: dropRate,
135
- dropRateBump: dropRateBump,
136
- rampColors: rampColors
137
- };
138
- _this3.wind = new _windRender.Wind(options); // imageData[0] 风场图
139
-
140
- _this3.wind.setWind({
141
- uMin: uMin,
142
- uMax: uMax,
143
- vMin: vMin,
144
- vMax: vMax,
145
- image: imageData[0]
146
- });
147
-
148
- (_this3$texture = _this3.texture) === null || _this3$texture === void 0 ? void 0 : _this3$texture.destroy();
149
- _this3.texture = createTexture2D({
150
- width: imageWidth,
151
- height: imageHeight
152
- });
153
-
154
- _this3.layerService.reRender();
77
+ while (1) switch (_context.prev = _context.next) {
78
+ case 0:
79
+ _ref = this.layer.getLayerConfig(), _ref$uMin = _ref.uMin, uMin = _ref$uMin === void 0 ? -21.32 : _ref$uMin, _ref$uMax = _ref.uMax, uMax = _ref$uMax === void 0 ? 26.8 : _ref$uMax, _ref$vMin = _ref.vMin, vMin = _ref$vMin === void 0 ? -21.57 : _ref$vMin, _ref$vMax = _ref.vMax, vMax = _ref$vMax === void 0 ? 21.42 : _ref$vMax, _ref$fadeOpacity = _ref.fadeOpacity, fadeOpacity = _ref$fadeOpacity === void 0 ? 0.996 : _ref$fadeOpacity, _ref$speedFactor = _ref.speedFactor, speedFactor = _ref$speedFactor === void 0 ? 0.25 : _ref$speedFactor, _ref$dropRate = _ref.dropRate, dropRate = _ref$dropRate === void 0 ? 0.003 : _ref$dropRate, _ref$dropRateBump = _ref.dropRateBump, dropRateBump = _ref$dropRateBump === void 0 ? 0.01 : _ref$dropRateBump, _ref$rampColors = _ref.rampColors, rampColors = _ref$rampColors === void 0 ? defaultRampColors : _ref$rampColors, _ref$sizeScale = _ref.sizeScale, sizeScale = _ref$sizeScale === void 0 ? 0.5 : _ref$sizeScale;
80
+ createTexture2D = this.rendererService.createTexture2D;
81
+ source = this.layer.getSource();
82
+ this.texture = createTexture2D({
83
+ height: 0,
84
+ width: 0
85
+ });
86
+ this.cacheZoom = Math.floor(this.mapService.getZoom());
87
+ glContext = this.rendererService.getGLContext();
88
+ this.imageCoords = (_source$data = source.data) === null || _source$data === void 0 ? void 0 : _source$data.dataArray[0].coordinates;
89
+ (_source$data2 = source.data) === null || _source$data2 === void 0 ? void 0 : (_source$data2$images = _source$data2.images) === null || _source$data2$images === void 0 ? void 0 : _source$data2$images.then(function (imageData) {
90
+ var _this3$texture;
91
+ _this3.sizeScale = sizeScale * _this3.getZoomScale();
92
+ var _this3$getWindSize = _this3.getWindSize(),
93
+ imageWidth = _this3$getWindSize.imageWidth,
94
+ imageHeight = _this3$getWindSize.imageHeight;
95
+ var options = {
96
+ glContext: glContext,
97
+ imageWidth: imageWidth,
98
+ imageHeight: imageHeight,
99
+ fadeOpacity: fadeOpacity,
100
+ speedFactor: speedFactor,
101
+ dropRate: dropRate,
102
+ dropRateBump: dropRateBump,
103
+ rampColors: rampColors
104
+ };
105
+ _this3.wind = new _windRender.Wind(options);
106
+
107
+ // imageData[0] 风场图
108
+ _this3.wind.setWind({
109
+ uMin: uMin,
110
+ uMax: uMax,
111
+ vMin: vMin,
112
+ vMax: vMax,
113
+ image: imageData[0]
155
114
  });
156
- _context.next = 10;
157
- return this.layer.buildLayerModel({
158
- moduleName: 'wind',
159
- vertexShader: WindVert,
160
- fragmentShader: WindFrag,
161
- triangulation: _triangulation.RasterImageTriangulation,
162
- primitive: _l7Core.gl.TRIANGLES,
163
- depth: {
164
- enable: false
165
- }
115
+ (_this3$texture = _this3.texture) === null || _this3$texture === void 0 ? void 0 : _this3$texture.destroy();
116
+ _this3.texture = createTexture2D({
117
+ width: imageWidth,
118
+ height: imageHeight
166
119
  });
167
-
168
- case 10:
169
- model = _context.sent;
170
- this.colorModel = model;
171
- return _context.abrupt("return", [model]);
172
-
173
- case 13:
174
- case "end":
175
- return _context.stop();
176
- }
120
+ _this3.layerService.reRender();
121
+ });
122
+ _context.next = 10;
123
+ return this.layer.buildLayerModel({
124
+ moduleName: 'wind',
125
+ vertexShader: WindVert,
126
+ fragmentShader: WindFrag,
127
+ triangulation: _triangulation.RasterImageTriangulation,
128
+ primitive: _l7Core.gl.TRIANGLES,
129
+ depth: {
130
+ enable: false
131
+ }
132
+ });
133
+ case 10:
134
+ model = _context.sent;
135
+ this.colorModel = model;
136
+ return _context.abrupt("return", [model]);
137
+ case 13:
138
+ case "end":
139
+ return _context.stop();
177
140
  }
178
141
  }, _callee, this);
179
142
  }));
180
-
181
143
  function initModels() {
182
144
  return _initModels.apply(this, arguments);
183
145
  }
184
-
185
146
  return initModels;
186
147
  }()
187
148
  }, {
@@ -201,30 +162,24 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
201
162
  value: function () {
202
163
  var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
203
164
  return _regenerator.default.wrap(function _callee2$(_context2) {
204
- while (1) {
205
- switch (_context2.prev = _context2.next) {
206
- case 0:
207
- return _context2.abrupt("return", this.initModels());
208
-
209
- case 1:
210
- case "end":
211
- return _context2.stop();
212
- }
165
+ while (1) switch (_context2.prev = _context2.next) {
166
+ case 0:
167
+ return _context2.abrupt("return", this.initModels());
168
+ case 1:
169
+ case "end":
170
+ return _context2.stop();
213
171
  }
214
172
  }, _callee2, this);
215
173
  }));
216
-
217
174
  function buildModels() {
218
175
  return _buildModels.apply(this, arguments);
219
176
  }
220
-
221
177
  return buildModels;
222
178
  }()
223
179
  }, {
224
180
  key: "clearModels",
225
181
  value: function clearModels() {
226
182
  var _this$texture, _this$wind;
227
-
228
183
  (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
229
184
  (_this$wind = this.wind) === null || _this$wind === void 0 ? void 0 : _this$wind.destroy();
230
185
  }
@@ -260,45 +215,40 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
260
215
  value: function drawWind() {
261
216
  if (this.wind) {
262
217
  var _ref2 = this.layer.getLayerConfig(),
263
- _ref2$uMin = _ref2.uMin,
264
- uMin = _ref2$uMin === void 0 ? -21.32 : _ref2$uMin,
265
- _ref2$uMax = _ref2.uMax,
266
- uMax = _ref2$uMax === void 0 ? 26.8 : _ref2$uMax,
267
- _ref2$vMin = _ref2.vMin,
268
- vMin = _ref2$vMin === void 0 ? -21.57 : _ref2$vMin,
269
- _ref2$vMax = _ref2.vMax,
270
- vMax = _ref2$vMax === void 0 ? 21.42 : _ref2$vMax,
271
- _ref2$numParticles = _ref2.numParticles,
272
- numParticles = _ref2$numParticles === void 0 ? 65535 : _ref2$numParticles,
273
- _ref2$fadeOpacity = _ref2.fadeOpacity,
274
- fadeOpacity = _ref2$fadeOpacity === void 0 ? 0.996 : _ref2$fadeOpacity,
275
- _ref2$speedFactor = _ref2.speedFactor,
276
- speedFactor = _ref2$speedFactor === void 0 ? 0.25 : _ref2$speedFactor,
277
- _ref2$dropRate = _ref2.dropRate,
278
- dropRate = _ref2$dropRate === void 0 ? 0.003 : _ref2$dropRate,
279
- _ref2$dropRateBump = _ref2.dropRateBump,
280
- dropRateBump = _ref2$dropRateBump === void 0 ? 0.01 : _ref2$dropRateBump,
281
- _ref2$rampColors = _ref2.rampColors,
282
- rampColors = _ref2$rampColors === void 0 ? defaultRampColors : _ref2$rampColors,
283
- _ref2$sizeScale = _ref2.sizeScale,
284
- sizeScale = _ref2$sizeScale === void 0 ? 0.5 : _ref2$sizeScale;
285
-
218
+ _ref2$uMin = _ref2.uMin,
219
+ uMin = _ref2$uMin === void 0 ? -21.32 : _ref2$uMin,
220
+ _ref2$uMax = _ref2.uMax,
221
+ uMax = _ref2$uMax === void 0 ? 26.8 : _ref2$uMax,
222
+ _ref2$vMin = _ref2.vMin,
223
+ vMin = _ref2$vMin === void 0 ? -21.57 : _ref2$vMin,
224
+ _ref2$vMax = _ref2.vMax,
225
+ vMax = _ref2$vMax === void 0 ? 21.42 : _ref2$vMax,
226
+ _ref2$numParticles = _ref2.numParticles,
227
+ numParticles = _ref2$numParticles === void 0 ? 65535 : _ref2$numParticles,
228
+ _ref2$fadeOpacity = _ref2.fadeOpacity,
229
+ fadeOpacity = _ref2$fadeOpacity === void 0 ? 0.996 : _ref2$fadeOpacity,
230
+ _ref2$speedFactor = _ref2.speedFactor,
231
+ speedFactor = _ref2$speedFactor === void 0 ? 0.25 : _ref2$speedFactor,
232
+ _ref2$dropRate = _ref2.dropRate,
233
+ dropRate = _ref2$dropRate === void 0 ? 0.003 : _ref2$dropRate,
234
+ _ref2$dropRateBump = _ref2.dropRateBump,
235
+ dropRateBump = _ref2$dropRateBump === void 0 ? 0.01 : _ref2$dropRateBump,
236
+ _ref2$rampColors = _ref2.rampColors,
237
+ rampColors = _ref2$rampColors === void 0 ? defaultRampColors : _ref2$rampColors,
238
+ _ref2$sizeScale = _ref2.sizeScale,
239
+ sizeScale = _ref2$sizeScale === void 0 ? 0.5 : _ref2$sizeScale;
286
240
  var newNumParticles = numParticles;
287
241
  var currentZoom = Math.floor(this.mapService.getZoom());
288
-
289
242
  if (typeof sizeScale === 'number' && sizeScale !== this.sizeScale || currentZoom !== this.cacheZoom) {
290
243
  var zoomScale = this.getZoomScale();
291
244
  this.sizeScale = sizeScale;
292
245
  newNumParticles *= zoomScale;
293
-
294
246
  var _this$getWindSize = this.getWindSize(),
295
- imageWidth = _this$getWindSize.imageWidth,
296
- imageHeight = _this$getWindSize.imageHeight;
297
-
247
+ imageWidth = _this$getWindSize.imageWidth,
248
+ imageHeight = _this$getWindSize.imageHeight;
298
249
  this.wind.reSize(imageWidth, imageHeight);
299
250
  this.cacheZoom = currentZoom;
300
251
  }
301
-
302
252
  this.wind.updateWindDir(uMin, uMax, vMin, vMax);
303
253
  this.wind.updateParticelNum(newNumParticles);
304
254
  this.wind.updateColorRampTexture(rampColors);
@@ -306,13 +256,11 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
306
256
  this.wind.speedFactor = speedFactor;
307
257
  this.wind.dropRate = dropRate;
308
258
  this.wind.dropRateBump = dropRateBump;
309
-
310
259
  var _this$wind$draw = this.wind.draw(),
311
- d = _this$wind$draw.d,
312
- w = _this$wind$draw.w,
313
- h = _this$wind$draw.h; // 恢复 L7 渲染流程中 gl 状态
314
-
315
-
260
+ d = _this$wind$draw.d,
261
+ w = _this$wind$draw.w,
262
+ h = _this$wind$draw.h;
263
+ // 恢复 L7 渲染流程中 gl 状态
316
264
  this.rendererService.setBaseState();
317
265
  this.texture.update({
318
266
  data: d,
@@ -325,12 +273,9 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
325
273
  key: "drawColorMode",
326
274
  value: function drawColorMode() {
327
275
  var _this$colorModel;
328
-
329
276
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
330
-
331
277
  var _ref3 = this.layer.getLayerConfig(),
332
- opacity = _ref3.opacity;
333
-
278
+ opacity = _ref3.opacity;
334
279
  this.layerService.beforeRenderData(this.layer);
335
280
  this.layer.hooks.beforeRender.call();
336
281
  this.layerService.renderMask(this.layer.masks);
@@ -347,5 +292,4 @@ var WindModel = /*#__PURE__*/function (_BaseModel) {
347
292
  }]);
348
293
  return WindModel;
349
294
  }(_BaseModel2.default);
350
-
351
295
  exports.default = WindModel;