@antv/l7-layers 2.17.4 → 2.17.5

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 (250) 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 +325 -483
  10. package/es/core/BaseModel.js +51 -80
  11. package/es/core/CommonStyleAttribute.js +2 -5
  12. package/es/core/LayerPickService.js +21 -32
  13. package/es/core/TextureService.js +0 -13
  14. package/es/core/interface.js +17 -24
  15. package/es/core/shape/Path.js +13 -20
  16. package/es/core/shape/extrude.js +27 -39
  17. package/es/core/triangulation.js +99 -136
  18. package/es/earth/index.js +9 -33
  19. package/es/earth/models/atmosphere.js +30 -54
  20. package/es/earth/models/base.js +47 -85
  21. package/es/earth/models/bloomsphere.js +30 -54
  22. package/es/earth/utils.js +9 -13
  23. package/es/heatmap/index.js +10 -40
  24. package/es/heatmap/models/grid.js +28 -52
  25. package/es/heatmap/models/grid3d.js +28 -52
  26. package/es/heatmap/models/heatmap.js +92 -149
  27. package/es/heatmap/models/hexagon.js +28 -52
  28. package/es/heatmap/triangulation.js +0 -4
  29. package/es/image/index.js +9 -28
  30. package/es/image/models/image.js +66 -100
  31. package/es/index.js +9 -17
  32. package/es/line/index.js +9 -35
  33. package/es/line/models/arc.js +63 -112
  34. package/es/line/models/arc_3d.js +58 -102
  35. package/es/line/models/earthArc_3d.js +60 -105
  36. package/es/line/models/flow.js +36 -60
  37. package/es/line/models/great_circle.js +53 -94
  38. package/es/line/models/line.js +92 -144
  39. package/es/line/models/linearline.js +42 -74
  40. package/es/line/models/simpleLine.js +38 -67
  41. package/es/line/models/wall.js +52 -92
  42. package/es/line/shaders/dash/line_dash_vert.glsl +1 -2
  43. package/es/line/shaders/line_frag.glsl +1 -3
  44. package/es/line/shaders/line_vert.glsl +2 -0
  45. package/es/line/shaders/linear/line_linear_frag.glsl +1 -1
  46. package/es/mask/index.js +9 -28
  47. package/es/mask/models/fill.js +29 -54
  48. package/es/plugins/DataMappingPlugin.js +78 -114
  49. package/es/plugins/DataSourcePlugin.js +45 -68
  50. package/es/plugins/FeatureScalePlugin.js +67 -122
  51. package/es/plugins/LayerAnimateStylePlugin.js +0 -5
  52. package/es/plugins/LayerMaskPlugin.js +3 -11
  53. package/es/plugins/LayerModelPlugin.js +69 -118
  54. package/es/plugins/LayerStylePlugin.js +4 -9
  55. package/es/plugins/LightingPlugin.js +12 -18
  56. package/es/plugins/MultiPassRendererPlugin.js +11 -16
  57. package/es/plugins/PixelPickingPlugin.js +12 -21
  58. package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
  59. package/es/plugins/ShaderUniformPlugin.js +13 -27
  60. package/es/plugins/UpdateModelPlugin.js +0 -5
  61. package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
  62. package/es/point/index.js +26 -78
  63. package/es/point/models/earthExtrude.js +58 -95
  64. package/es/point/models/earthFill.js +52 -80
  65. package/es/point/models/extrude.js +57 -94
  66. package/es/point/models/fill.js +56 -81
  67. package/es/point/models/fillmage.js +60 -100
  68. package/es/point/models/image.js +47 -83
  69. package/es/point/models/index.js +2 -2
  70. package/es/point/models/normal.js +30 -54
  71. package/es/point/models/radar.js +38 -63
  72. package/es/point/models/simplePoint.js +38 -62
  73. package/es/point/models/text.js +199 -296
  74. package/es/point/shape/extrude.js +4 -13
  75. package/es/polygon/index.js +11 -41
  76. package/es/polygon/models/extrude.js +87 -135
  77. package/es/polygon/models/fill.js +50 -79
  78. package/es/polygon/models/index.js +3 -2
  79. package/es/polygon/models/ocean.js +42 -76
  80. package/es/polygon/models/water.js +37 -71
  81. package/es/raster/buffers/triangulation.js +2 -4
  82. package/es/raster/index.js +9 -32
  83. package/es/raster/models/raster.js +80 -116
  84. package/es/raster/models/rasterRgb.js +84 -127
  85. package/es/raster/models/rasterTerrainRgb.js +56 -84
  86. package/es/tile/interaction/getRasterData.js +14 -20
  87. package/es/tile/interaction/utils.js +7 -9
  88. package/es/tile/manager/base.js +63 -96
  89. package/es/tile/service/TileLayerService.js +33 -55
  90. package/es/tile/service/TilePickService.js +26 -40
  91. package/es/tile/service/TileSourceService.js +3 -7
  92. package/es/tile/tileFactory/DebugTile.js +29 -46
  93. package/es/tile/tileFactory/ImageTile.js +20 -38
  94. package/es/tile/tileFactory/MaskTile.js +22 -43
  95. package/es/tile/tileFactory/RasterRGBTile.js +22 -42
  96. package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
  97. package/es/tile/tileFactory/RasterTile.js +30 -53
  98. package/es/tile/tileFactory/Tile.js +63 -97
  99. package/es/tile/tileFactory/VectorTile.js +41 -68
  100. package/es/tile/tileFactory/index.js +0 -11
  101. package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
  102. package/es/tile/tileFactory/util.js +0 -3
  103. package/es/tile/tileLayer/BaseLayer.js +105 -146
  104. package/es/tile/utils.js +1 -1
  105. package/es/utils/blend.js +0 -2
  106. package/es/utils/collision-index.js +9 -16
  107. package/es/utils/extrude_polyline.js +101 -149
  108. package/es/utils/grid-index.js +2 -27
  109. package/es/utils/identityScale.js +0 -8
  110. package/es/utils/layerData.js +30 -44
  111. package/es/utils/multiPassRender.js +11 -13
  112. package/es/utils/polylineNormal.js +31 -37
  113. package/es/utils/simpleLine.js +2 -16
  114. package/es/utils/stencil.js +2 -3
  115. package/es/utils/symbol-layout.js +27 -53
  116. package/es/wind/index.js +9 -29
  117. package/es/wind/models/utils.js +26 -51
  118. package/es/wind/models/wind.js +101 -147
  119. package/es/wind/models/windRender.js +53 -66
  120. package/lib/Geometry/index.js +9 -38
  121. package/lib/Geometry/models/billboard.js +51 -97
  122. package/lib/Geometry/models/index.js +0 -5
  123. package/lib/Geometry/models/plane.js +79 -151
  124. package/lib/Geometry/models/sprite.js +60 -127
  125. package/lib/canvas/index.js +10 -40
  126. package/lib/canvas/models/canvas.js +41 -101
  127. package/lib/canvas/models/index.js +0 -3
  128. package/lib/citybuliding/building.js +8 -35
  129. package/lib/citybuliding/models/build.js +57 -92
  130. package/lib/core/BaseLayer.js +325 -474
  131. package/lib/core/BaseModel.js +51 -90
  132. package/lib/core/CommonStyleAttribute.js +2 -7
  133. package/lib/core/LayerPickService.js +21 -37
  134. package/lib/core/TextureService.js +0 -16
  135. package/lib/core/interface.js +21 -31
  136. package/lib/core/schema.js +0 -1
  137. package/lib/core/shape/Path.js +14 -31
  138. package/lib/core/shape/extrude.js +27 -62
  139. package/lib/core/triangulation.js +98 -177
  140. package/lib/earth/index.js +9 -43
  141. package/lib/earth/models/atmosphere.js +30 -63
  142. package/lib/earth/models/base.js +47 -90
  143. package/lib/earth/models/bloomsphere.js +30 -63
  144. package/lib/earth/utils.js +7 -31
  145. package/lib/heatmap/index.js +10 -48
  146. package/lib/heatmap/models/grid.js +28 -60
  147. package/lib/heatmap/models/grid3d.js +28 -60
  148. package/lib/heatmap/models/heatmap.js +92 -166
  149. package/lib/heatmap/models/hexagon.js +28 -60
  150. package/lib/heatmap/models/index.js +0 -6
  151. package/lib/heatmap/triangulation.js +0 -5
  152. package/lib/image/index.js +9 -36
  153. package/lib/image/models/image.js +66 -109
  154. package/lib/image/models/index.js +0 -3
  155. package/lib/index.js +7 -61
  156. package/lib/line/index.js +9 -40
  157. package/lib/line/models/arc.js +61 -122
  158. package/lib/line/models/arc_3d.js +56 -113
  159. package/lib/line/models/earthArc_3d.js +58 -115
  160. package/lib/line/models/flow.js +36 -70
  161. package/lib/line/models/great_circle.js +53 -104
  162. package/lib/line/models/index.js +0 -11
  163. package/lib/line/models/line.js +90 -152
  164. package/lib/line/models/linearline.js +42 -86
  165. package/lib/line/models/simpleLine.js +38 -77
  166. package/lib/line/models/wall.js +52 -103
  167. package/lib/line/shaders/dash/line_dash_vert.glsl +1 -2
  168. package/lib/line/shaders/line_frag.glsl +1 -3
  169. package/lib/line/shaders/line_vert.glsl +2 -0
  170. package/lib/line/shaders/linear/line_linear_frag.glsl +1 -1
  171. package/lib/mask/index.js +9 -36
  172. package/lib/mask/models/fill.js +29 -63
  173. package/lib/mask/models/index.js +0 -3
  174. package/lib/plugins/DataMappingPlugin.js +78 -125
  175. package/lib/plugins/DataSourcePlugin.js +45 -76
  176. package/lib/plugins/FeatureScalePlugin.js +67 -138
  177. package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
  178. package/lib/plugins/LayerMaskPlugin.js +4 -17
  179. package/lib/plugins/LayerModelPlugin.js +70 -127
  180. package/lib/plugins/LayerStylePlugin.js +5 -14
  181. package/lib/plugins/LightingPlugin.js +12 -25
  182. package/lib/plugins/MultiPassRendererPlugin.js +11 -22
  183. package/lib/plugins/PixelPickingPlugin.js +12 -27
  184. package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
  185. package/lib/plugins/ShaderUniformPlugin.js +13 -34
  186. package/lib/plugins/UpdateModelPlugin.js +1 -10
  187. package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
  188. package/lib/point/index.js +26 -83
  189. package/lib/point/models/earthExtrude.js +58 -106
  190. package/lib/point/models/earthFill.js +52 -110
  191. package/lib/point/models/extrude.js +57 -103
  192. package/lib/point/models/fill.js +54 -90
  193. package/lib/point/models/fillmage.js +58 -107
  194. package/lib/point/models/image.js +47 -92
  195. package/lib/point/models/index.js +1 -12
  196. package/lib/point/models/normal.js +30 -64
  197. package/lib/point/models/radar.js +38 -72
  198. package/lib/point/models/simplePoint.js +38 -72
  199. package/lib/point/models/text.js +199 -305
  200. package/lib/point/shape/extrude.js +4 -20
  201. package/lib/polygon/index.js +11 -48
  202. package/lib/polygon/models/extrude.js +87 -146
  203. package/lib/polygon/models/fill.js +50 -89
  204. package/lib/polygon/models/index.js +2 -14
  205. package/lib/polygon/models/ocean.js +42 -88
  206. package/lib/polygon/models/water.js +37 -82
  207. package/lib/raster/buffers/triangulation.js +3 -7
  208. package/lib/raster/index.js +9 -40
  209. package/lib/raster/models/index.js +0 -5
  210. package/lib/raster/models/raster.js +80 -125
  211. package/lib/raster/models/rasterRgb.js +84 -139
  212. package/lib/raster/models/rasterTerrainRgb.js +56 -93
  213. package/lib/tile/interaction/getRasterData.js +14 -25
  214. package/lib/tile/interaction/utils.js +7 -19
  215. package/lib/tile/manager/base.js +63 -104
  216. package/lib/tile/service/TileLayerService.js +33 -60
  217. package/lib/tile/service/TilePickService.js +26 -48
  218. package/lib/tile/service/TileSourceService.js +2 -16
  219. package/lib/tile/style/utils.js +0 -3
  220. package/lib/tile/tileFactory/DebugTile.js +29 -54
  221. package/lib/tile/tileFactory/ImageTile.js +20 -46
  222. package/lib/tile/tileFactory/MaskTile.js +22 -51
  223. package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
  224. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
  225. package/lib/tile/tileFactory/RasterTile.js +30 -63
  226. package/lib/tile/tileFactory/Tile.js +63 -102
  227. package/lib/tile/tileFactory/VectorTile.js +41 -76
  228. package/lib/tile/tileFactory/index.js +0 -25
  229. package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
  230. package/lib/tile/tileFactory/util.js +0 -9
  231. package/lib/tile/tileLayer/BaseLayer.js +105 -153
  232. package/lib/tile/utils.js +1 -5
  233. package/lib/utils/blend.js +0 -5
  234. package/lib/utils/collision-index.js +9 -25
  235. package/lib/utils/extrude_polyline.js +101 -181
  236. package/lib/utils/grid-index.js +2 -28
  237. package/lib/utils/identityScale.js +0 -9
  238. package/lib/utils/layerData.js +30 -49
  239. package/lib/utils/multiPassRender.js +11 -16
  240. package/lib/utils/polylineNormal.js +31 -66
  241. package/lib/utils/simpleLine.js +2 -21
  242. package/lib/utils/stencil.js +0 -4
  243. package/lib/utils/symbol-layout.js +27 -55
  244. package/lib/wind/index.js +9 -37
  245. package/lib/wind/models/index.js +0 -3
  246. package/lib/wind/models/utils.js +26 -62
  247. package/lib/wind/models/wind.js +101 -157
  248. package/lib/wind/models/windRender.js +53 -71
  249. package/lib/wind/models/windShader.js +0 -1
  250. package/package.json +7 -7
@@ -1,65 +1,47 @@
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 _l7Core = require("@antv/l7-core");
19
-
20
13
  var _inversify = require("inversify");
21
-
22
14
  require("reflect-metadata");
23
-
24
15
  var _BaseLayer = _interopRequireDefault(require("../tile/tileLayer/BaseLayer"));
25
-
26
16
  var _dec, _class;
27
-
28
- var LayerModelPlugin = (
29
17
  /**
30
18
  * Layer Model 初始化,更新,销毁
31
19
  */
32
- _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
20
+ var LayerModelPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
33
21
  function LayerModelPlugin() {
34
22
  (0, _classCallCheck2.default)(this, LayerModelPlugin);
35
23
  }
36
-
37
24
  (0, _createClass2.default)(LayerModelPlugin, [{
38
25
  key: "build",
39
26
  value: function () {
40
27
  var _build = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(layer) {
41
28
  return _regenerator.default.wrap(function _callee$(_context) {
42
- while (1) {
43
- switch (_context.prev = _context.next) {
44
- case 0:
45
- // 更新Model 配置项 style options
46
- layer.prepareBuildModel(); // 初始化 Model
47
-
48
- _context.next = 3;
49
- return layer.buildModels();
50
-
51
- case 3:
52
- case "end":
53
- return _context.stop();
54
- }
29
+ while (1) switch (_context.prev = _context.next) {
30
+ case 0:
31
+ // 更新Model 配置项 style options
32
+ layer.prepareBuildModel();
33
+ // 初始化 Model
34
+ _context.next = 3;
35
+ return layer.buildModels();
36
+ case 3:
37
+ case "end":
38
+ return _context.stop();
55
39
  }
56
40
  }, _callee);
57
41
  }));
58
-
59
42
  function build(_x) {
60
43
  return _build.apply(this, arguments);
61
44
  }
62
-
63
45
  return build;
64
46
  }()
65
47
  }, {
@@ -67,27 +49,21 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
67
49
  value: function () {
68
50
  var _initLayerModel = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(layer) {
69
51
  return _regenerator.default.wrap(function _callee2$(_context2) {
70
- while (1) {
71
- switch (_context2.prev = _context2.next) {
72
- case 0:
73
- _context2.next = 2;
74
- return this.build(layer);
75
-
76
- case 2:
77
- layer.styleNeedUpdate = false;
78
-
79
- case 3:
80
- case "end":
81
- return _context2.stop();
82
- }
52
+ while (1) switch (_context2.prev = _context2.next) {
53
+ case 0:
54
+ _context2.next = 2;
55
+ return this.build(layer);
56
+ case 2:
57
+ layer.styleNeedUpdate = false;
58
+ case 3:
59
+ case "end":
60
+ return _context2.stop();
83
61
  }
84
62
  }, _callee2, this);
85
63
  }));
86
-
87
64
  function initLayerModel(_x2) {
88
65
  return _initLayerModel.apply(this, arguments);
89
66
  }
90
-
91
67
  return initLayerModel;
92
68
  }()
93
69
  }, {
@@ -95,117 +71,84 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
95
71
  value: function () {
96
72
  var _prepareLayerModel = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(layer) {
97
73
  return _regenerator.default.wrap(function _callee3$(_context3) {
98
- while (1) {
99
- switch (_context3.prev = _context3.next) {
100
- case 0:
101
- _context3.next = 2;
102
- return this.build(layer);
103
-
104
- case 2:
105
- layer.styleNeedUpdate = false;
106
-
107
- case 3:
108
- case "end":
109
- return _context3.stop();
110
- }
74
+ while (1) switch (_context3.prev = _context3.next) {
75
+ case 0:
76
+ _context3.next = 2;
77
+ return this.build(layer);
78
+ case 2:
79
+ layer.styleNeedUpdate = false;
80
+ case 3:
81
+ case "end":
82
+ return _context3.stop();
111
83
  }
112
84
  }, _callee3, this);
113
85
  }));
114
-
115
86
  function prepareLayerModel(_x3) {
116
87
  return _prepareLayerModel.apply(this, arguments);
117
88
  }
118
-
119
89
  return prepareLayerModel;
120
90
  }()
121
91
  }, {
122
92
  key: "apply",
123
93
  value: function apply(layer) {
124
94
  var _this = this;
125
-
126
95
  layer.hooks.init.tapPromise('LayerModelPlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
127
96
  return _regenerator.default.wrap(function _callee4$(_context4) {
128
- while (1) {
129
- switch (_context4.prev = _context4.next) {
97
+ while (1) switch (_context4.prev = _context4.next) {
98
+ case 0:
99
+ if (!layer.getSource().isTile) {
100
+ _context4.next = 4;
101
+ break;
102
+ }
103
+ layer.prepareBuildModel();
104
+ layer.tileLayer = new _BaseLayer.default(layer);
105
+ return _context4.abrupt("return");
106
+ case 4:
107
+ layer.log(_l7Core.IDebugLog.BuildModelStart, _l7Core.ILayerStage.INIT);
108
+ _context4.next = 7;
109
+ return _this.initLayerModel(layer);
110
+ case 7:
111
+ layer.log(_l7Core.IDebugLog.BuildModelEnd, _l7Core.ILayerStage.INIT);
112
+ case 8:
113
+ case "end":
114
+ return _context4.stop();
115
+ }
116
+ }, _callee4);
117
+ })));
118
+ layer.hooks.beforeRenderData.tapPromise('LayerModelPlugin', /*#__PURE__*/function () {
119
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(flag) {
120
+ return _regenerator.default.wrap(function _callee5$(_context5) {
121
+ while (1) switch (_context5.prev = _context5.next) {
130
122
  case 0:
123
+ if (flag) {
124
+ _context5.next = 2;
125
+ break;
126
+ }
127
+ return _context5.abrupt("return", false);
128
+ case 2:
131
129
  if (!layer.getSource().isTile) {
132
- _context4.next = 4;
130
+ _context5.next = 5;
133
131
  break;
134
132
  }
135
-
136
- layer.prepareBuildModel();
137
133
  layer.tileLayer = new _BaseLayer.default(layer);
138
- return _context4.abrupt("return");
139
-
140
- case 4:
141
- layer.log(_l7Core.IDebugLog.BuildModelStart, _l7Core.ILayerStage.INIT);
142
- _context4.next = 7;
143
- return _this.initLayerModel(layer);
144
-
145
- case 7:
146
- layer.log(_l7Core.IDebugLog.BuildModelEnd, _l7Core.ILayerStage.INIT);
147
-
134
+ return _context5.abrupt("return", false);
135
+ case 5:
136
+ layer.log(_l7Core.IDebugLog.BuildModelStart, _l7Core.ILayerStage.UPDATE);
137
+ _context5.next = 8;
138
+ return _this.prepareLayerModel(layer);
148
139
  case 8:
140
+ layer.log(_l7Core.IDebugLog.BuildModelEnd, _l7Core.ILayerStage.UPDATE);
141
+ return _context5.abrupt("return", true);
142
+ case 10:
149
143
  case "end":
150
- return _context4.stop();
151
- }
152
- }
153
- }, _callee4);
154
- })));
155
- layer.hooks.beforeRenderData.tapPromise('LayerModelPlugin', /*#__PURE__*/function () {
156
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(flag) {
157
- return _regenerator.default.wrap(function _callee5$(_context5) {
158
- while (1) {
159
- switch (_context5.prev = _context5.next) {
160
- case 0:
161
- if (flag) {
162
- _context5.next = 2;
163
- break;
164
- }
165
-
166
- return _context5.abrupt("return", false);
167
-
168
- case 2:
169
- if (!layer.getSource().isTile) {
170
- _context5.next = 5;
171
- break;
172
- }
173
-
174
- layer.tileLayer = new _BaseLayer.default(layer);
175
- return _context5.abrupt("return", false);
176
-
177
- case 5:
178
- layer.log(_l7Core.IDebugLog.BuildModelStart, _l7Core.ILayerStage.UPDATE);
179
- _context5.next = 8;
180
- return _this.prepareLayerModel(layer);
181
-
182
- case 8:
183
- layer.log(_l7Core.IDebugLog.BuildModelEnd, _l7Core.ILayerStage.UPDATE);
184
- return _context5.abrupt("return", true);
185
-
186
- case 10:
187
- case "end":
188
- return _context5.stop();
189
- }
144
+ return _context5.stop();
190
145
  }
191
146
  }, _callee5);
192
147
  }));
193
-
194
148
  return function (_x4) {
195
149
  return _ref2.apply(this, arguments);
196
150
  };
197
151
  }());
198
- layer.hooks.beforeRender.tap('LayerModelPlugin', function () {
199
- // 判断数据映射是否需要更新
200
- if (layer.styleNeedUpdate) {
201
- _this.prepareLayerModel(layer).then(function () {
202
- layer.styleNeedUpdate = false;
203
- layer.renderLayers();
204
- });
205
- }
206
-
207
- layer.styleNeedUpdate = false;
208
- });
209
152
  }
210
153
  }]);
211
154
  return LayerModelPlugin;
@@ -1,43 +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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _inversify = require("inversify");
15
-
16
11
  require("reflect-metadata");
17
-
18
12
  var _dec, _class;
19
-
20
- var LayerStylePlugin = (
21
13
  /**
22
14
  * 更新图层样式,初始图层相关配置
23
15
  */
24
- _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
16
+ var LayerStylePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
25
17
  function LayerStylePlugin() {
26
18
  (0, _classCallCheck2.default)(this, LayerStylePlugin);
27
19
  }
28
-
29
20
  (0, _createClass2.default)(LayerStylePlugin, [{
30
21
  key: "apply",
31
22
  value: function apply(layer) {
32
23
  layer.hooks.afterInit.tap('LayerStylePlugin', function () {
33
24
  var _layer$getLayerConfig = layer.getLayerConfig(),
34
- autoFit = _layer$getLayerConfig.autoFit,
35
- fitBoundsOptions = _layer$getLayerConfig.fitBoundsOptions; // mask 初始化
36
-
37
-
25
+ autoFit = _layer$getLayerConfig.autoFit,
26
+ fitBoundsOptions = _layer$getLayerConfig.fitBoundsOptions;
27
+ // mask 初始化
38
28
  if (autoFit) {
39
29
  layer.fitBounds(fitBoundsOptions);
40
30
  }
31
+ layer.styleNeedUpdate = false;
41
32
  });
42
33
  }
43
34
  }]);
@@ -1,27 +1,18 @@
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
8
  exports.generateLightingUniforms = generateLightingUniforms;
10
-
11
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
-
13
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
-
15
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
16
-
17
12
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
18
-
19
13
  var _inversify = require("inversify");
20
-
21
14
  require("reflect-metadata");
22
-
23
15
  var _dec, _class;
24
-
25
16
  var _excluded = ["type"];
26
17
  var lightTypeUniformMap = {
27
18
  directional: {
@@ -59,7 +50,6 @@ var DEFAULT_SPOT_LIGHT = {
59
50
  exponent: 40,
60
51
  blur: 5
61
52
  };
62
-
63
53
  function generateLightingUniforms(lights) {
64
54
  var lightsMap = {
65
55
  u_DirectionalLights: new Array(3).fill((0, _objectSpread2.default)({}, DEFAULT_DIRECTIONAL_LIGHT)),
@@ -67,46 +57,43 @@ function generateLightingUniforms(lights) {
67
57
  u_SpotLights: new Array(3).fill((0, _objectSpread2.default)({}, DEFAULT_SPOT_LIGHT)),
68
58
  u_NumOfSpotLights: 0
69
59
  };
70
-
71
60
  if (!lights || !lights.length) {
72
61
  lights = [DEFAULT_LIGHT];
73
62
  }
74
-
75
63
  lights.forEach(function (_ref) {
76
64
  var _ref$type = _ref.type,
77
- type = _ref$type === void 0 ? 'directional' : _ref$type,
78
- rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
65
+ type = _ref$type === void 0 ? 'directional' : _ref$type,
66
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
79
67
  var lightsUniformName = lightTypeUniformMap[type].lights;
80
- var lightsNumUniformName = lightTypeUniformMap[type].num; // @ts-ignore
81
-
82
- var num = lightsMap[lightsNumUniformName]; // @ts-ignore
83
-
84
- lightsMap[lightsUniformName][num] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, lightsMap[lightsUniformName][num]), rest); // @ts-ignore
68
+ var lightsNumUniformName = lightTypeUniformMap[type].num;
85
69
 
70
+ // @ts-ignore
71
+ var num = lightsMap[lightsNumUniformName];
72
+ // @ts-ignore
73
+ lightsMap[lightsUniformName][num] = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, lightsMap[lightsUniformName][num]), rest);
74
+ // @ts-ignore
86
75
  lightsMap[lightsNumUniformName]++;
87
76
  });
88
77
  return lightsMap;
89
78
  }
79
+
90
80
  /**
91
81
  * 光照 & Shadow
92
82
  */
93
-
94
-
95
83
  var LightingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
96
84
  function LightingPlugin() {
97
85
  (0, _classCallCheck2.default)(this, LightingPlugin);
98
86
  }
99
-
100
87
  (0, _createClass2.default)(LightingPlugin, [{
101
88
  key: "apply",
102
89
  value: function apply(layer) {
103
90
  layer.hooks.beforeRender.tap('LightingPlugin', function () {
104
91
  var _layer$getLayerConfig = layer.getLayerConfig(),
105
- enableLighting = _layer$getLayerConfig.enableLighting;
106
-
92
+ enableLighting = _layer$getLayerConfig.enableLighting;
107
93
  if (enableLighting) {
108
94
  layer.models.forEach(function (model) {
109
- return (// @ts-ignore
95
+ return (
96
+ // @ts-ignore
110
97
  model.addUniforms((0, _objectSpread2.default)({}, generateLightingUniforms()))
111
98
  );
112
99
  });
@@ -1,25 +1,16 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _inversify = require("inversify");
15
-
16
11
  require("reflect-metadata");
17
-
18
12
  var _multiPassRender = require("../utils/multiPassRender");
19
-
20
13
  var _dec, _class;
21
-
22
- var MultiPassRendererPlugin = (
23
14
  /**
24
15
  * 自定义渲染管线:
25
16
  * ClearPass -> PixelPickingPass(可选) -> RenderPass/TAAPass -> PostProcessing -> CopyPass
@@ -33,28 +24,27 @@ var MultiPassRendererPlugin = (
33
24
  * ],
34
25
  * })
35
26
  */
36
- _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
27
+ var MultiPassRendererPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
37
28
  function MultiPassRendererPlugin() {
38
29
  (0, _classCallCheck2.default)(this, MultiPassRendererPlugin);
39
30
  }
40
-
41
31
  (0, _createClass2.default)(MultiPassRendererPlugin, [{
42
32
  key: "apply",
43
33
  value: function apply(layer, _ref) {
44
34
  var _this = this;
45
-
46
35
  var rendererService = _ref.rendererService,
47
- postProcessingPassFactory = _ref.postProcessingPassFactory,
48
- normalPassFactory = _ref.normalPassFactory;
36
+ postProcessingPassFactory = _ref.postProcessingPassFactory,
37
+ normalPassFactory = _ref.normalPassFactory;
49
38
  layer.hooks.init.tapPromise('MultiPassRendererPlugin', function () {
50
39
  var _layer$getLayerConfig = layer.getLayerConfig(),
51
- enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer,
52
- _layer$getLayerConfig2 = _layer$getLayerConfig.passes,
53
- passes = _layer$getLayerConfig2 === void 0 ? [] : _layer$getLayerConfig2; // SceneConfig 的 enableMultiPassRenderer 配置项可以统一关闭
54
-
40
+ enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer,
41
+ _layer$getLayerConfig2 = _layer$getLayerConfig.passes,
42
+ passes = _layer$getLayerConfig2 === void 0 ? [] : _layer$getLayerConfig2;
55
43
 
56
- _this.enabled = !!enableMultiPassRenderer && layer.getLayerConfig().enableMultiPassRenderer !== false; // 根据 LayerConfig passes 配置项初始化
44
+ // SceneConfig enableMultiPassRenderer 配置项可以统一关闭
45
+ _this.enabled = !!enableMultiPassRenderer && layer.getLayerConfig().enableMultiPassRenderer !== false;
57
46
 
47
+ // 根据 LayerConfig passes 配置项初始化
58
48
  if (_this.enabled) {
59
49
  layer.multiPassRenderer = (0, _multiPassRender.createMultiPassRenderer)(layer, passes, postProcessingPassFactory, normalPassFactory);
60
50
  layer.multiPassRenderer.setRenderFlag(true);
@@ -64,9 +54,8 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
64
54
  if (_this.enabled) {
65
55
  // 渲染前根据 viewport 调整 FBO size
66
56
  var _rendererService$getV = rendererService.getViewportSize(),
67
- width = _rendererService$getV.width,
68
- height = _rendererService$getV.height;
69
-
57
+ width = _rendererService$getV.width,
58
+ height = _rendererService$getV.height;
70
59
  layer.multiPassRenderer.resize(width, height);
71
60
  }
72
61
  });
@@ -1,26 +1,17 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _l7Core = require("@antv/l7-core");
15
-
16
11
  var _l7Utils = require("@antv/l7-utils");
17
-
18
12
  var _inversify = require("inversify");
19
-
20
13
  require("reflect-metadata");
21
-
22
14
  var _dec, _class;
23
-
24
15
  var PickingStage = {
25
16
  NONE: 0.0,
26
17
  ENCODE: 1.0,
@@ -30,7 +21,6 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
30
21
  function PixelPickingPlugin() {
31
22
  (0, _classCallCheck2.default)(this, PixelPickingPlugin);
32
23
  }
33
-
34
24
  (0, _createClass2.default)(PixelPickingPlugin, [{
35
25
  key: "apply",
36
26
  value: function apply(layer, _ref) {
@@ -38,8 +28,7 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
38
28
  // TODO: 由于 Shader 目前无法根据是否开启拾取进行内容修改,因此即使不开启也需要生成 a_PickingColor
39
29
  layer.hooks.init.tapPromise('PixelPickingPlugin', function () {
40
30
  var _layer$getLayerConfig = layer.getLayerConfig(),
41
- enablePicking = _layer$getLayerConfig.enablePicking;
42
-
31
+ enablePicking = _layer$getLayerConfig.enablePicking;
43
32
  styleAttributeService.registerStyleAttribute({
44
33
  name: 'pickingColor',
45
34
  type: _l7Core.AttributeType.Attribute,
@@ -58,12 +47,11 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
58
47
  }
59
48
  }
60
49
  });
61
- }); // 必须要与 PixelPickingPass 结合使用,因此必须开启 multiPassRenderer
62
-
50
+ });
51
+ // 必须要与 PixelPickingPass 结合使用,因此必须开启 multiPassRenderer
63
52
  layer.hooks.beforePickingEncode.tap('PixelPickingPlugin', function () {
64
53
  var _layer$getLayerConfig2 = layer.getLayerConfig(),
65
- enablePicking = _layer$getLayerConfig2.enablePicking;
66
-
54
+ enablePicking = _layer$getLayerConfig2.enablePicking;
67
55
  if (enablePicking && layer.isVisible()) {
68
56
  layer.models.forEach(function (model) {
69
57
  return model.addUniforms({
@@ -74,9 +62,8 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
74
62
  });
75
63
  layer.hooks.afterPickingEncode.tap('PixelPickingPlugin', function () {
76
64
  var _layer$getLayerConfig3 = layer.getLayerConfig(),
77
- enablePicking = _layer$getLayerConfig3.enablePicking; // 区分选中高亮 和滑过高亮
78
-
79
-
65
+ enablePicking = _layer$getLayerConfig3.enablePicking;
66
+ // 区分选中高亮 和滑过高亮
80
67
  if (enablePicking && layer.isVisible()) {
81
68
  layer.models.forEach(function (model) {
82
69
  return model.addUniforms({
@@ -87,10 +74,9 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
87
74
  });
88
75
  layer.hooks.beforeHighlight.tap('PixelPickingPlugin', function (pickedColor) {
89
76
  var _layer$getLayerConfig4 = layer.getLayerConfig(),
90
- highlightColor = _layer$getLayerConfig4.highlightColor,
91
- _layer$getLayerConfig5 = _layer$getLayerConfig4.activeMix,
92
- activeMix = _layer$getLayerConfig5 === void 0 ? 0 : _layer$getLayerConfig5;
93
-
77
+ highlightColor = _layer$getLayerConfig4.highlightColor,
78
+ _layer$getLayerConfig5 = _layer$getLayerConfig4.activeMix,
79
+ activeMix = _layer$getLayerConfig5 === void 0 ? 0 : _layer$getLayerConfig5;
94
80
  var highlightColorInArray = typeof highlightColor === 'string' ? (0, _l7Utils.rgb2arr)(highlightColor) : highlightColor || [1, 0, 0, 1];
95
81
  layer.updateLayerConfig({
96
82
  pickedFeatureID: (0, _l7Utils.decodePickingColor)(new Uint8Array(pickedColor))
@@ -108,10 +94,9 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
108
94
  });
109
95
  layer.hooks.beforeSelect.tap('PixelPickingPlugin', function (pickedColor) {
110
96
  var _layer$getLayerConfig6 = layer.getLayerConfig(),
111
- selectColor = _layer$getLayerConfig6.selectColor,
112
- _layer$getLayerConfig7 = _layer$getLayerConfig6.selectMix,
113
- selectMix = _layer$getLayerConfig7 === void 0 ? 0 : _layer$getLayerConfig7;
114
-
97
+ selectColor = _layer$getLayerConfig6.selectColor,
98
+ _layer$getLayerConfig7 = _layer$getLayerConfig6.selectMix,
99
+ selectMix = _layer$getLayerConfig7 === void 0 ? 0 : _layer$getLayerConfig7;
115
100
  var highlightColorInArray = typeof selectColor === 'string' ? (0, _l7Utils.rgb2arr)(selectColor) : selectColor || [1, 0, 0, 1];
116
101
  layer.updateLayerConfig({
117
102
  pickedFeatureID: (0, _l7Utils.decodePickingColor)(new Uint8Array(pickedColor))
@@ -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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _l7Core = require("@antv/l7-core");
15
-
16
11
  var _inversify = require("inversify");
17
-
18
12
  require("reflect-metadata");
19
-
20
13
  var _utils = require("../tile/utils");
21
-
22
14
  var _dec, _class;
23
-
24
- var RegisterStyleAttributePlugin = (
25
15
  /**
26
16
  * 在初始化阶段完成属性的注册,以及首次根据 Layer 指定的三角化方法完成 indices 和 attribute 的创建
27
17
  */
28
- _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
18
+ var RegisterStyleAttributePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
29
19
  function RegisterStyleAttributePlugin() {
30
20
  (0, _classCallCheck2.default)(this, RegisterStyleAttributePlugin);
31
21
  }
32
-
33
22
  (0, _createClass2.default)(RegisterStyleAttributePlugin, [{
34
23
  key: "apply",
35
24
  value: function apply(layer, _ref) {
36
25
  var _this = this;
37
-
38
26
  var styleAttributeService = _ref.styleAttributeService;
39
27
  layer.hooks.init.tapPromise('RegisterStyleAttributePlugin', function () {
40
28
  // 过滤 tileGroup layer (瓦片图层不需要注册)
41
29
  if ((0, _utils.isTileGroup)(layer)) {
42
30
  return;
43
31
  }
44
-
45
32
  _this.registerBuiltinAttributes(styleAttributeService, layer);
46
33
  });
47
34
  }
@@ -52,11 +39,10 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
52
39
  if (layer.type === 'MaskLayer') {
53
40
  this.registerPositionAttribute(styleAttributeService);
54
41
  return;
55
- } // Tip: normal render layer
56
-
57
-
58
- this.registerPositionAttribute(styleAttributeService); // this.registerFilterAttribute(styleAttributeService);//数据层数据过滤
59
-
42
+ }
43
+ // Tip: normal render layer
44
+ this.registerPositionAttribute(styleAttributeService);
45
+ // this.registerFilterAttribute(styleAttributeService);//数据层数据过滤
60
46
  this.registerColorAttribute(styleAttributeService);
61
47
  this.registerVertexIdAttribute(styleAttributeService);
62
48
  }