@antv/l7-layers 2.15.5 → 2.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/es/Geometry/index.js +31 -9
  2. package/es/Geometry/models/billboard.js +89 -51
  3. package/es/Geometry/models/plane.js +143 -81
  4. package/es/Geometry/models/sprite.js +118 -60
  5. package/es/canvas/index.js +33 -10
  6. package/es/canvas/models/canvas.js +97 -41
  7. package/es/citybuliding/building.js +27 -8
  8. package/es/citybuliding/models/build.js +82 -57
  9. package/es/core/BaseLayer.js +486 -321
  10. package/es/core/BaseModel.js +126 -97
  11. package/es/core/LayerPickService.js +32 -21
  12. package/es/core/TextureService.js +13 -0
  13. package/es/core/interface.js +24 -17
  14. package/es/core/shape/Path.js +20 -13
  15. package/es/core/shape/extrude.js +31 -10
  16. package/es/core/triangulation.js +114 -54
  17. package/es/earth/index.js +33 -9
  18. package/es/earth/models/atmosphere.js +54 -30
  19. package/es/earth/models/base.js +85 -47
  20. package/es/earth/models/bloomsphere.js +54 -30
  21. package/es/earth/utils.js +13 -9
  22. package/es/heatmap/index.js +40 -10
  23. package/es/heatmap/models/grid.js +52 -28
  24. package/es/heatmap/models/grid3d.js +52 -28
  25. package/es/heatmap/models/heatmap.js +146 -91
  26. package/es/heatmap/models/hexagon.js +52 -28
  27. package/es/heatmap/triangulation.js +4 -0
  28. package/es/image/index.js +28 -9
  29. package/es/image/models/image.js +100 -66
  30. package/es/index.js +17 -9
  31. package/es/line/index.js +34 -9
  32. package/es/line/models/arc.js +118 -66
  33. package/es/line/models/arc_3d.js +108 -60
  34. package/es/line/models/earthArc_3d.js +111 -63
  35. package/es/line/models/great_circle.js +100 -56
  36. package/es/line/models/half.js +77 -46
  37. package/es/line/models/line.js +148 -94
  38. package/es/line/models/linearline.js +80 -45
  39. package/es/line/models/simpleLine.js +74 -41
  40. package/es/line/models/wall.js +92 -52
  41. package/es/mask/index.js +28 -9
  42. package/es/mask/models/fill.js +54 -29
  43. package/es/plugins/DataMappingPlugin.js +117 -80
  44. package/es/plugins/DataSourcePlugin.js +68 -45
  45. package/es/plugins/FeatureScalePlugin.js +122 -67
  46. package/es/plugins/LayerAnimateStylePlugin.js +5 -0
  47. package/es/plugins/LayerMaskPlugin.js +11 -3
  48. package/es/plugins/LayerModelPlugin.js +104 -67
  49. package/es/plugins/LayerStylePlugin.js +9 -3
  50. package/es/plugins/LightingPlugin.js +18 -12
  51. package/es/plugins/MultiPassRendererPlugin.js +16 -11
  52. package/es/plugins/PixelPickingPlugin.js +21 -12
  53. package/es/plugins/RegisterStyleAttributePlugin.js +12 -5
  54. package/es/plugins/ShaderUniformPlugin.js +27 -13
  55. package/es/plugins/UpdateModelPlugin.js +5 -0
  56. package/es/plugins/UpdateStyleAttributePlugin.js +11 -5
  57. package/es/point/index.js +77 -26
  58. package/es/point/models/earthExtrude.js +102 -61
  59. package/es/point/models/earthFill.js +87 -57
  60. package/es/point/models/extrude.js +101 -60
  61. package/es/point/models/fill.js +100 -70
  62. package/es/point/models/fillmage.js +107 -63
  63. package/es/point/models/image.js +88 -48
  64. package/es/point/models/index.js +2 -2
  65. package/es/point/models/normal.js +54 -30
  66. package/es/point/models/radar.js +64 -40
  67. package/es/point/models/simplePoint.js +69 -41
  68. package/es/point/models/text.d.ts +2 -1
  69. package/es/point/models/text.js +305 -201
  70. package/es/point/shape/extrude.js +13 -4
  71. package/es/polygon/index.js +40 -11
  72. package/es/polygon/models/extrude.js +92 -48
  73. package/es/polygon/models/fill.js +88 -54
  74. package/es/polygon/models/index.js +2 -3
  75. package/es/polygon/models/ocean.js +76 -42
  76. package/es/polygon/models/water.js +71 -37
  77. package/es/raster/buffers/triangulation.js +4 -2
  78. package/es/raster/index.js +32 -9
  79. package/es/raster/models/raster.js +116 -80
  80. package/es/raster/models/rasterRgb.js +127 -84
  81. package/es/raster/models/rasterTerrainRgb.js +84 -56
  82. package/es/tile/interaction/getRasterData.js +20 -14
  83. package/es/tile/interaction/utils.js +9 -7
  84. package/es/tile/manager/base.js +96 -63
  85. package/es/tile/service/TileLayerService.js +55 -33
  86. package/es/tile/service/TilePickService.js +40 -26
  87. package/es/tile/service/TileSourceService.js +7 -3
  88. package/es/tile/tileFactory/DebugTile.js +46 -29
  89. package/es/tile/tileFactory/ImageTile.js +38 -20
  90. package/es/tile/tileFactory/MaskTile.js +43 -22
  91. package/es/tile/tileFactory/RasterRGBTile.js +42 -22
  92. package/es/tile/tileFactory/RasterTerrainRGBTile.js +38 -20
  93. package/es/tile/tileFactory/RasterTile.js +53 -30
  94. package/es/tile/tileFactory/Tile.js +97 -63
  95. package/es/tile/tileFactory/VectorTile.js +68 -41
  96. package/es/tile/tileFactory/index.js +11 -0
  97. package/es/tile/tileFactory/layers/TileDebugLayer.js +27 -6
  98. package/es/tile/tileFactory/util.js +3 -0
  99. package/es/tile/tileLayer/BaseLayer.js +146 -105
  100. package/es/tile/utils.js +1 -1
  101. package/es/utils/blend.js +2 -0
  102. package/es/utils/collision-index.js +16 -9
  103. package/es/utils/dataMappingStyle.js +18 -8
  104. package/es/utils/extrude_polyline.js +149 -101
  105. package/es/utils/grid-index.js +27 -2
  106. package/es/utils/identityScale.js +8 -0
  107. package/es/utils/layerData.js +44 -30
  108. package/es/utils/multiPassRender.js +13 -11
  109. package/es/utils/polylineNormal.js +37 -31
  110. package/es/utils/simpleLine.js +16 -2
  111. package/es/utils/stencil.js +3 -2
  112. package/es/utils/symbol-layout.js +53 -27
  113. package/es/wind/index.js +29 -9
  114. package/es/wind/models/utils.js +51 -26
  115. package/es/wind/models/wind.js +147 -101
  116. package/es/wind/models/windRender.js +66 -53
  117. package/lib/Geometry/index.js +38 -9
  118. package/lib/Geometry/models/billboard.js +97 -51
  119. package/lib/Geometry/models/index.js +5 -0
  120. package/lib/Geometry/models/plane.js +151 -79
  121. package/lib/Geometry/models/sprite.js +127 -60
  122. package/lib/canvas/index.js +40 -10
  123. package/lib/canvas/models/canvas.js +101 -41
  124. package/lib/canvas/models/index.js +3 -0
  125. package/lib/citybuliding/building.js +35 -8
  126. package/lib/citybuliding/models/build.js +92 -57
  127. package/lib/core/BaseLayer.js +480 -321
  128. package/lib/core/BaseModel.js +139 -97
  129. package/lib/core/LayerPickService.js +37 -21
  130. package/lib/core/TextureService.js +16 -0
  131. package/lib/core/interface.js +31 -21
  132. package/lib/core/schema.js +1 -0
  133. package/lib/core/shape/Path.js +31 -14
  134. package/lib/core/shape/extrude.js +54 -10
  135. package/lib/core/triangulation.js +153 -53
  136. package/lib/earth/index.js +43 -9
  137. package/lib/earth/models/atmosphere.js +63 -30
  138. package/lib/earth/models/base.js +90 -47
  139. package/lib/earth/models/bloomsphere.js +63 -30
  140. package/lib/earth/utils.js +31 -7
  141. package/lib/heatmap/index.js +48 -10
  142. package/lib/heatmap/models/grid.js +60 -28
  143. package/lib/heatmap/models/grid3d.js +60 -28
  144. package/lib/heatmap/models/heatmap.js +162 -91
  145. package/lib/heatmap/models/hexagon.js +60 -28
  146. package/lib/heatmap/models/index.js +6 -0
  147. package/lib/heatmap/triangulation.js +5 -0
  148. package/lib/image/index.js +36 -9
  149. package/lib/image/models/image.js +109 -66
  150. package/lib/image/models/index.js +3 -0
  151. package/lib/index.js +61 -7
  152. package/lib/line/index.js +40 -9
  153. package/lib/line/models/arc.js +128 -64
  154. package/lib/line/models/arc_3d.js +119 -58
  155. package/lib/line/models/earthArc_3d.js +122 -61
  156. package/lib/line/models/great_circle.js +111 -56
  157. package/lib/line/models/half.js +87 -46
  158. package/lib/line/models/index.js +11 -0
  159. package/lib/line/models/line.js +156 -92
  160. package/lib/line/models/linearline.js +92 -45
  161. package/lib/line/models/simpleLine.js +84 -41
  162. package/lib/line/models/wall.js +103 -52
  163. package/lib/mask/index.js +36 -9
  164. package/lib/mask/models/fill.js +63 -29
  165. package/lib/mask/models/index.js +3 -0
  166. package/lib/plugins/DataMappingPlugin.js +128 -80
  167. package/lib/plugins/DataSourcePlugin.js +76 -45
  168. package/lib/plugins/FeatureScalePlugin.js +138 -67
  169. package/lib/plugins/LayerAnimateStylePlugin.js +10 -0
  170. package/lib/plugins/LayerMaskPlugin.js +17 -4
  171. package/lib/plugins/LayerModelPlugin.js +113 -68
  172. package/lib/plugins/LayerStylePlugin.js +14 -4
  173. package/lib/plugins/LightingPlugin.js +25 -12
  174. package/lib/plugins/MultiPassRendererPlugin.js +22 -11
  175. package/lib/plugins/PixelPickingPlugin.js +27 -12
  176. package/lib/plugins/RegisterStyleAttributePlugin.js +19 -5
  177. package/lib/plugins/ShaderUniformPlugin.js +34 -13
  178. package/lib/plugins/UpdateModelPlugin.js +10 -1
  179. package/lib/plugins/UpdateStyleAttributePlugin.js +16 -5
  180. package/lib/point/index.js +83 -26
  181. package/lib/point/models/earthExtrude.js +113 -61
  182. package/lib/point/models/earthFill.js +117 -57
  183. package/lib/point/models/extrude.js +111 -60
  184. package/lib/point/models/fill.js +109 -68
  185. package/lib/point/models/fillmage.js +115 -61
  186. package/lib/point/models/image.js +98 -48
  187. package/lib/point/models/index.js +12 -1
  188. package/lib/point/models/normal.js +64 -30
  189. package/lib/point/models/radar.js +74 -40
  190. package/lib/point/models/simplePoint.js +79 -41
  191. package/lib/point/models/text.js +314 -202
  192. package/lib/point/shape/extrude.js +20 -4
  193. package/lib/polygon/index.js +48 -11
  194. package/lib/polygon/models/extrude.js +103 -48
  195. package/lib/polygon/models/fill.js +98 -54
  196. package/lib/polygon/models/index.js +14 -2
  197. package/lib/polygon/models/ocean.js +88 -42
  198. package/lib/polygon/models/water.js +82 -37
  199. package/lib/raster/buffers/triangulation.js +7 -3
  200. package/lib/raster/index.js +40 -9
  201. package/lib/raster/models/index.js +5 -0
  202. package/lib/raster/models/raster.js +125 -80
  203. package/lib/raster/models/rasterRgb.js +139 -84
  204. package/lib/raster/models/rasterTerrainRgb.js +93 -56
  205. package/lib/tile/interaction/getRasterData.js +25 -14
  206. package/lib/tile/interaction/utils.js +19 -7
  207. package/lib/tile/manager/base.js +104 -63
  208. package/lib/tile/service/TileLayerService.js +60 -33
  209. package/lib/tile/service/TilePickService.js +48 -26
  210. package/lib/tile/service/TileSourceService.js +16 -2
  211. package/lib/tile/style/utils.js +3 -0
  212. package/lib/tile/tileFactory/DebugTile.js +54 -29
  213. package/lib/tile/tileFactory/ImageTile.js +46 -20
  214. package/lib/tile/tileFactory/MaskTile.js +51 -22
  215. package/lib/tile/tileFactory/RasterRGBTile.js +50 -22
  216. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +46 -20
  217. package/lib/tile/tileFactory/RasterTile.js +63 -30
  218. package/lib/tile/tileFactory/Tile.js +102 -63
  219. package/lib/tile/tileFactory/VectorTile.js +76 -41
  220. package/lib/tile/tileFactory/index.js +25 -0
  221. package/lib/tile/tileFactory/layers/TileDebugLayer.js +32 -6
  222. package/lib/tile/tileFactory/util.js +9 -0
  223. package/lib/tile/tileLayer/BaseLayer.js +153 -105
  224. package/lib/tile/utils.js +5 -1
  225. package/lib/utils/blend.js +5 -0
  226. package/lib/utils/collision-index.js +25 -9
  227. package/lib/utils/dataMappingStyle.js +19 -8
  228. package/lib/utils/extrude_polyline.js +181 -101
  229. package/lib/utils/grid-index.js +28 -2
  230. package/lib/utils/identityScale.js +9 -0
  231. package/lib/utils/layerData.js +49 -30
  232. package/lib/utils/multiPassRender.js +16 -11
  233. package/lib/utils/polylineNormal.js +66 -31
  234. package/lib/utils/simpleLine.js +21 -2
  235. package/lib/utils/stencil.js +4 -0
  236. package/lib/utils/symbol-layout.js +55 -27
  237. package/lib/wind/index.js +37 -9
  238. package/lib/wind/models/index.js +3 -0
  239. package/lib/wind/models/utils.js +62 -26
  240. package/lib/wind/models/wind.js +157 -101
  241. package/lib/wind/models/windRender.js +71 -53
  242. package/lib/wind/models/windShader.js +1 -0
  243. package/package.json +7 -7
@@ -1,20 +1,32 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
9
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
10
14
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
+
11
16
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
12
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
+
13
20
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
+
14
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
15
24
  var _l7Core = require("@antv/l7-core");
25
+
16
26
  var _polygon = _interopRequireDefault(require("../../polygon"));
27
+
17
28
  var _util = require("./util");
29
+
18
30
  var Tile = /*#__PURE__*/function () {
19
31
  function Tile(sourceTile, parent) {
20
32
  (0, _classCallCheck2.default)(this, Tile);
@@ -29,13 +41,13 @@ var Tile = /*#__PURE__*/function () {
29
41
  this.z = sourceTile.z;
30
42
  this.key = "".concat(this.x, "_").concat(this.y, "_").concat(this.z);
31
43
  }
44
+
32
45
  (0, _createClass2.default)(Tile, [{
33
46
  key: "getLayers",
34
47
  value: function getLayers() {
35
48
  return this.layers;
36
- }
49
+ } // eslint-disable-next-line @typescript-eslint/no-unused-vars
37
50
 
38
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
39
51
  }, {
40
52
  key: "styleUpdate",
41
53
  value: function styleUpdate() {
@@ -45,18 +57,20 @@ var Tile = /*#__PURE__*/function () {
45
57
  key: "lnglatInBounds",
46
58
  value: function lnglatInBounds(lnglat) {
47
59
  var _this$sourceTile$boun = (0, _slicedToArray2.default)(this.sourceTile.bounds, 4),
48
- minLng = _this$sourceTile$boun[0],
49
- minLat = _this$sourceTile$boun[1],
50
- maxLng = _this$sourceTile$boun[2],
51
- maxLat = _this$sourceTile$boun[3];
60
+ minLng = _this$sourceTile$boun[0],
61
+ minLat = _this$sourceTile$boun[1],
62
+ maxLng = _this$sourceTile$boun[2],
63
+ maxLat = _this$sourceTile$boun[3];
64
+
52
65
  var lng = lnglat.lng,
53
- lat = lnglat.lat;
66
+ lat = lnglat.lat;
54
67
  return lng >= minLng && lng <= maxLng && lat >= minLat && lat <= maxLat;
55
68
  }
56
69
  }, {
57
70
  key: "getLayerOptions",
58
71
  value: function getLayerOptions() {
59
72
  var _options$maskLayers;
73
+
60
74
  var options = this.parent.getLayerConfig();
61
75
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, options), {}, {
62
76
  textAllowOverlap: true,
@@ -66,14 +80,16 @@ var Tile = /*#__PURE__*/function () {
66
80
  tileMask: (0, _util.isNeedMask)(this.parent.type),
67
81
  mask: options.mask || ((_options$maskLayers = options.maskLayers) === null || _options$maskLayers === void 0 ? void 0 : _options$maskLayers.length) !== 0 && options.enableMask
68
82
  });
69
- }
70
- // 获取Mask 图层
83
+ } // 获取Mask 图层
84
+
71
85
  }, {
72
86
  key: "getMaskLayer",
73
87
  value: function getMaskLayer() {
74
88
  var _this = this;
89
+
75
90
  var _this$parent$getLayer = this.parent.getLayerConfig(),
76
- maskLayers = _this$parent$getLayer.maskLayers;
91
+ maskLayers = _this$parent$getLayer.maskLayers;
92
+
77
93
  var layers = [];
78
94
  maskLayers === null || maskLayers === void 0 ? void 0 : maskLayers.forEach(function (layer) {
79
95
  if (!layer.tileLayer) {
@@ -81,9 +97,11 @@ var Tile = /*#__PURE__*/function () {
81
97
  layers.push(layer);
82
98
  return layer;
83
99
  }
100
+
84
101
  var tileLayer = layer.tileLayer;
85
102
  var tile = tileLayer.getTile(_this.sourceTile.key);
86
103
  var l = tile === null || tile === void 0 ? void 0 : tile.getLayers()[0];
104
+
87
105
  if (l) {
88
106
  layers.push(l);
89
107
  }
@@ -96,40 +114,48 @@ var Tile = /*#__PURE__*/function () {
96
114
  var _addTileMask = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
97
115
  var mask, container, mainLayer;
98
116
  return _regenerator.default.wrap(function _callee$(_context) {
99
- while (1) switch (_context.prev = _context.next) {
100
- case 0:
101
- mask = new _polygon.default({
102
- visible: false,
103
- enablePicking: false
104
- }).source({
105
- type: 'FeatureCollection',
106
- features: [this.sourceTile.bboxPolygon]
107
- }, {
108
- parser: {
109
- type: 'geojson',
110
- featureId: 'id'
117
+ while (1) {
118
+ switch (_context.prev = _context.next) {
119
+ case 0:
120
+ mask = new _polygon.default({
121
+ visible: false,
122
+ enablePicking: false
123
+ }).source({
124
+ type: 'FeatureCollection',
125
+ features: [this.sourceTile.bboxPolygon]
126
+ }, {
127
+ parser: {
128
+ type: 'geojson',
129
+ featureId: 'id'
130
+ }
131
+ }).shape('fill');
132
+ container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
133
+ mask.setContainer(container, this.parent.sceneContainer);
134
+ _context.next = 5;
135
+ return mask.init();
136
+
137
+ case 5:
138
+ this.tileMask = mask;
139
+ mainLayer = this.getMainLayer();
140
+
141
+ if (mainLayer !== undefined) {
142
+ mainLayer.tileMask = mask;
111
143
  }
112
- }).shape('fill');
113
- container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
114
- mask.setContainer(container, this.parent.sceneContainer);
115
- _context.next = 5;
116
- return mask.init();
117
- case 5:
118
- this.tileMask = mask;
119
- mainLayer = this.getMainLayer();
120
- if (mainLayer !== undefined) {
121
- mainLayer.tileMask = mask;
122
- }
123
- return _context.abrupt("return", mask);
124
- case 9:
125
- case "end":
126
- return _context.stop();
144
+
145
+ return _context.abrupt("return", mask);
146
+
147
+ case 9:
148
+ case "end":
149
+ return _context.stop();
150
+ }
127
151
  }
128
152
  }, _callee, this);
129
153
  }));
154
+
130
155
  function addTileMask() {
131
156
  return _addTileMask.apply(this, arguments);
132
157
  }
158
+
133
159
  return addTileMask;
134
160
  }()
135
161
  }, {
@@ -138,24 +164,30 @@ var Tile = /*#__PURE__*/function () {
138
164
  var _addMask = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(layer, mask) {
139
165
  var container;
140
166
  return _regenerator.default.wrap(function _callee2$(_context2) {
141
- while (1) switch (_context2.prev = _context2.next) {
142
- case 0:
143
- container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
144
- mask.setContainer(container, this.parent.sceneContainer);
145
- _context2.next = 4;
146
- return mask.init();
147
- case 4:
148
- layer.addMask(mask);
149
- this.tileMaskLayers.push(mask);
150
- case 6:
151
- case "end":
152
- return _context2.stop();
167
+ while (1) {
168
+ switch (_context2.prev = _context2.next) {
169
+ case 0:
170
+ container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
171
+ mask.setContainer(container, this.parent.sceneContainer);
172
+ _context2.next = 4;
173
+ return mask.init();
174
+
175
+ case 4:
176
+ layer.addMask(mask);
177
+ this.tileMaskLayers.push(mask);
178
+
179
+ case 6:
180
+ case "end":
181
+ return _context2.stop();
182
+ }
153
183
  }
154
184
  }, _callee2, this);
155
185
  }));
186
+
156
187
  function addMask(_x, _x2) {
157
188
  return _addMask.apply(this, arguments);
158
189
  }
190
+
159
191
  return addMask;
160
192
  }()
161
193
  }, {
@@ -164,24 +196,29 @@ var Tile = /*#__PURE__*/function () {
164
196
  var _addLayer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(layer) {
165
197
  var container;
166
198
  return _regenerator.default.wrap(function _callee3$(_context3) {
167
- while (1) switch (_context3.prev = _context3.next) {
168
- case 0:
169
- // set flag
170
- layer.isTileLayer = true;
171
- container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
172
- layer.setContainer(container, this.parent.sceneContainer);
173
- this.layers.push(layer);
174
- _context3.next = 6;
175
- return layer.init();
176
- case 6:
177
- case "end":
178
- return _context3.stop();
199
+ while (1) {
200
+ switch (_context3.prev = _context3.next) {
201
+ case 0:
202
+ // set flag
203
+ layer.isTileLayer = true;
204
+ container = (0, _l7Core.createLayerContainer)(this.parent.sceneContainer);
205
+ layer.setContainer(container, this.parent.sceneContainer);
206
+ this.layers.push(layer);
207
+ _context3.next = 6;
208
+ return layer.init();
209
+
210
+ case 6:
211
+ case "end":
212
+ return _context3.stop();
213
+ }
179
214
  }
180
215
  }, _callee3, this);
181
216
  }));
217
+
182
218
  function addLayer(_x3) {
183
219
  return _addLayer.apply(this, arguments);
184
220
  }
221
+
185
222
  return addLayer;
186
223
  }()
187
224
  }, {
@@ -197,10 +234,10 @@ var Tile = /*#__PURE__*/function () {
197
234
  l.updateLayerConfig((0, _defineProperty2.default)({}, key, value));
198
235
  });
199
236
  }
200
-
201
237
  /**
202
238
  * 一个 Tile 可能有多个 layer,但是在发生拾取、点击事件的时候只有一个生效
203
239
  */
240
+
204
241
  }, {
205
242
  key: "getMainLayer",
206
243
  value: function getMainLayer() {
@@ -211,12 +248,12 @@ var Tile = /*#__PURE__*/function () {
211
248
  value: function getFeatures(sourceLayer) {
212
249
  return [];
213
250
  }
214
-
215
251
  /**
216
252
  * 在一个 Tile 中可能存在一个相同 ID 的 feature
217
253
  * @param id
218
254
  * @returns
219
255
  */
256
+
220
257
  }, {
221
258
  key: "getFeatureById",
222
259
  value: function getFeatureById(id) {
@@ -226,6 +263,7 @@ var Tile = /*#__PURE__*/function () {
226
263
  key: "destroy",
227
264
  value: function destroy() {
228
265
  var _this$tileMask;
266
+
229
267
  (_this$tileMask = this.tileMask) === null || _this$tileMask === void 0 ? void 0 : _this$tileMask.destroy();
230
268
  this.layers.forEach(function (layer) {
231
269
  return layer.destroy();
@@ -234,4 +272,5 @@ var Tile = /*#__PURE__*/function () {
234
272
  }]);
235
273
  return Tile;
236
274
  }();
275
+
237
276
  exports.default = Tile;
@@ -1,87 +1,119 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
9
12
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
13
+
10
14
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
11
16
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
+
12
18
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
+
13
20
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
14
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
+
15
24
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
+
16
26
  var _Tile2 = _interopRequireDefault(require("./Tile"));
27
+
17
28
  var _util = require("./util");
29
+
18
30
  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); }; }
31
+
19
32
  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; } }
33
+
20
34
  var VectorTile = /*#__PURE__*/function (_Tile) {
21
35
  (0, _inherits2.default)(VectorTile, _Tile);
36
+
22
37
  var _super = _createSuper(VectorTile);
38
+
23
39
  function VectorTile() {
24
40
  (0, _classCallCheck2.default)(this, VectorTile);
25
41
  return _super.apply(this, arguments);
26
42
  }
43
+
27
44
  (0, _createClass2.default)(VectorTile, [{
28
45
  key: "initTileLayer",
29
46
  value: function () {
30
47
  var _initTileLayer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
31
48
  var attributes, layerOptions, vectorLayer, sourceOptions, layer;
32
49
  return _regenerator.default.wrap(function _callee$(_context) {
33
- while (1) switch (_context.prev = _context.next) {
34
- case 0:
35
- attributes = this.parent.getLayerAttributeConfig();
36
- layerOptions = this.getLayerOptions();
37
- vectorLayer = (0, _util.getTileLayer)(this.parent.type);
38
- sourceOptions = this.getSourceOption();
39
- if (sourceOptions) {
40
- _context.next = 7;
41
- break;
42
- }
43
- this.isLoaded = true;
44
- return _context.abrupt("return");
45
- case 7:
46
- layer = new vectorLayer((0, _objectSpread2.default)({}, layerOptions)).source(sourceOptions.data, sourceOptions.options); // 初始化数据映射
47
- Object.keys(attributes).forEach(function (type) {
48
- var _attributes$attr, _attributes$attr2;
49
- var attr = type;
50
- // @ts-ignore
51
- layer[attr]((_attributes$attr = attributes[attr]) === null || _attributes$attr === void 0 ? void 0 : _attributes$attr.field, (_attributes$attr2 = attributes[attr]) === null || _attributes$attr2 === void 0 ? void 0 : _attributes$attr2.values);
52
- });
53
- _context.next = 11;
54
- return this.addLayer(layer);
55
- case 11:
56
- if (!layerOptions.tileMask) {
50
+ while (1) {
51
+ switch (_context.prev = _context.next) {
52
+ case 0:
53
+ attributes = this.parent.getLayerAttributeConfig();
54
+ layerOptions = this.getLayerOptions();
55
+ vectorLayer = (0, _util.getTileLayer)(this.parent.type);
56
+ sourceOptions = this.getSourceOption();
57
+
58
+ if (sourceOptions) {
59
+ _context.next = 7;
60
+ break;
61
+ }
62
+
63
+ this.isLoaded = true;
64
+ return _context.abrupt("return");
65
+
66
+ case 7:
67
+ layer = new vectorLayer((0, _objectSpread2.default)({}, layerOptions)).source(sourceOptions.data, sourceOptions.options); // 初始化数据映射
68
+
69
+ Object.keys(attributes).forEach(function (type) {
70
+ var _attributes$attr, _attributes$attr2;
71
+
72
+ var attr = type; // @ts-ignore
73
+
74
+ layer[attr]((_attributes$attr = attributes[attr]) === null || _attributes$attr === void 0 ? void 0 : _attributes$attr.field, (_attributes$attr2 = attributes[attr]) === null || _attributes$attr2 === void 0 ? void 0 : _attributes$attr2.values);
75
+ });
76
+ _context.next = 11;
77
+ return this.addLayer(layer);
78
+
79
+ case 11:
80
+ if (!layerOptions.tileMask) {
81
+ _context.next = 14;
82
+ break;
83
+ }
84
+
57
85
  _context.next = 14;
58
- break;
59
- }
60
- _context.next = 14;
61
- return this.addTileMask();
62
- case 14:
63
- this.setLayerMinMaxZoom(layer);
64
- this.isLoaded = true;
65
- case 16:
66
- case "end":
67
- return _context.stop();
86
+ return this.addTileMask();
87
+
88
+ case 14:
89
+ this.setLayerMinMaxZoom(layer);
90
+ this.isLoaded = true;
91
+
92
+ case 16:
93
+ case "end":
94
+ return _context.stop();
95
+ }
68
96
  }
69
97
  }, _callee, this);
70
98
  }));
99
+
71
100
  function initTileLayer() {
72
101
  return _initTileLayer.apply(this, arguments);
73
102
  }
103
+
74
104
  return initTileLayer;
75
105
  }()
76
106
  }, {
77
107
  key: "getSourceOption",
78
108
  value: function getSourceOption() {
79
109
  var rawSource = this.parent.getSource();
110
+
80
111
  var _this$parent$getLayer = this.parent.getLayerConfig(),
81
- _this$parent$getLayer2 = _this$parent$getLayer.sourceLayer,
82
- sourceLayer = _this$parent$getLayer2 === void 0 ? 'defaultLayer' : _this$parent$getLayer2,
83
- _this$parent$getLayer3 = _this$parent$getLayer.featureId,
84
- featureId = _this$parent$getLayer3 === void 0 ? 'id' : _this$parent$getLayer3;
112
+ _this$parent$getLayer2 = _this$parent$getLayer.sourceLayer,
113
+ sourceLayer = _this$parent$getLayer2 === void 0 ? 'defaultLayer' : _this$parent$getLayer2,
114
+ _this$parent$getLayer3 = _this$parent$getLayer.featureId,
115
+ featureId = _this$parent$getLayer3 === void 0 ? 'id' : _this$parent$getLayer3;
116
+
85
117
  var features = this.getFeatures(sourceLayer);
86
118
  return {
87
119
  data: {
@@ -107,27 +139,29 @@ var VectorTile = /*#__PURE__*/function (_Tile) {
107
139
  minZoom: this.z - 1
108
140
  });
109
141
  }
110
- }
111
- // 获取瓦片数据
142
+ } // 获取瓦片数据
143
+
112
144
  }, {
113
145
  key: "getFeatures",
114
146
  value: function getFeatures(sourceLayer) {
115
147
  var source = this.sourceTile.data;
116
148
  return source.getTileData(sourceLayer);
117
149
  }
118
-
119
150
  /**
120
151
  * 在一个 Tile 中可能存在一个相同 ID 的 feature
121
152
  * @param id
122
153
  * @returns
123
154
  */
155
+
124
156
  }, {
125
157
  key: "getFeatureById",
126
158
  value: function getFeatureById(id) {
127
159
  var layer = this.getMainLayer();
160
+
128
161
  if (!layer) {
129
162
  return [];
130
163
  }
164
+
131
165
  var res = layer.getSource().data.dataArray.filter(function (d) {
132
166
  return d._id === id;
133
167
  });
@@ -136,4 +170,5 @@ var VectorTile = /*#__PURE__*/function (_Tile) {
136
170
  }]);
137
171
  return VectorTile;
138
172
  }(_Tile2.default);
173
+
139
174
  exports.default = VectorTile;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -8,15 +9,25 @@ var _exportNames = {
8
9
  getTileFactory: true
9
10
  };
10
11
  exports.getTileFactory = getTileFactory;
12
+
11
13
  var _l7Core = require("@antv/l7-core");
14
+
12
15
  var _DebugTile = _interopRequireDefault(require("./DebugTile"));
16
+
13
17
  var _ImageTile = _interopRequireDefault(require("./ImageTile"));
18
+
14
19
  var _MaskTile = _interopRequireDefault(require("./MaskTile"));
20
+
15
21
  var _RasterRGBTile = _interopRequireDefault(require("./RasterRGBTile"));
22
+
16
23
  var _RasterTerrainRGBTile = _interopRequireDefault(require("./RasterTerrainRGBTile"));
24
+
17
25
  var _RasterTile = _interopRequireDefault(require("./RasterTile"));
26
+
18
27
  var _VectorTile = _interopRequireDefault(require("./VectorTile"));
28
+
19
29
  var _interface = require("../interface");
30
+
20
31
  Object.keys(_interface).forEach(function (key) {
21
32
  if (key === "default" || key === "__esModule") return;
22
33
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -28,7 +39,9 @@ Object.keys(_interface).forEach(function (key) {
28
39
  }
29
40
  });
30
41
  });
42
+
31
43
  var _Tile = require("./Tile");
44
+
32
45
  Object.keys(_Tile).forEach(function (key) {
33
46
  if (key === "default" || key === "__esModule") return;
34
47
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -40,34 +53,46 @@ Object.keys(_Tile).forEach(function (key) {
40
53
  }
41
54
  });
42
55
  });
56
+
43
57
  function getTileFactory(layer) {
44
58
  var tileType = layer.type;
59
+
45
60
  switch (tileType) {
46
61
  case 'PolygonLayer':
47
62
  return _VectorTile.default;
63
+
48
64
  case 'LineLayer':
49
65
  return _VectorTile.default;
66
+
50
67
  case 'PointLayer':
51
68
  return _VectorTile.default;
69
+
52
70
  case 'TileDebugLayer':
53
71
  return _DebugTile.default;
72
+
54
73
  case 'MaskLayer':
55
74
  return _MaskTile.default;
75
+
56
76
  case 'RasterLayer':
57
77
  var dataType = layer.getSource().parser.dataType;
78
+
58
79
  switch (dataType) {
59
80
  case _l7Core.RasterTileType.RGB:
60
81
  case _l7Core.RasterTileType.CUSTOMRGB:
61
82
  return _RasterRGBTile.default;
83
+
62
84
  case _l7Core.RasterTileType.ARRAYBUFFER:
63
85
  case _l7Core.RasterTileType.CUSTOMARRAYBUFFER:
64
86
  return _RasterTile.default;
87
+
65
88
  case _l7Core.RasterTileType.TERRAINRGB:
66
89
  case _l7Core.RasterTileType.CUSTOMTERRAINRGB:
67
90
  return _RasterTerrainRGBTile.default;
91
+
68
92
  default:
69
93
  return _ImageTile.default;
70
94
  }
95
+
71
96
  default:
72
97
  return _VectorTile.default;
73
98
  }
@@ -1,31 +1,50 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
9
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
10
14
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
11
16
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
12
18
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
+
13
20
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
+
14
22
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
+
15
24
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
+
16
26
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
+
17
28
  var _BaseLayer2 = _interopRequireDefault(require("../../../core/BaseLayer"));
29
+
18
30
  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); }; }
31
+
19
32
  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; } }
33
+
20
34
  var TileDebugLayer = /*#__PURE__*/function (_BaseLayer) {
21
35
  (0, _inherits2.default)(TileDebugLayer, _BaseLayer);
36
+
22
37
  var _super = _createSuper(TileDebugLayer);
38
+
23
39
  function TileDebugLayer() {
24
40
  var _this;
41
+
25
42
  (0, _classCallCheck2.default)(this, TileDebugLayer);
43
+
26
44
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
27
45
  args[_key] = arguments[_key];
28
46
  }
47
+
29
48
  _this = _super.call.apply(_super, [this].concat(args));
30
49
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'TileDebugLayer');
31
50
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "zIndex", 10000);
@@ -39,26 +58,33 @@ var TileDebugLayer = /*#__PURE__*/function (_BaseLayer) {
39
58
  });
40
59
  return _this;
41
60
  }
61
+
42
62
  (0, _createClass2.default)(TileDebugLayer, [{
43
63
  key: "buildModels",
44
64
  value: function () {
45
65
  var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
46
66
  return _regenerator.default.wrap(function _callee$(_context) {
47
- while (1) switch (_context.prev = _context.next) {
48
- case 0:
49
- return _context.abrupt("return");
50
- case 1:
51
- case "end":
52
- return _context.stop();
67
+ while (1) {
68
+ switch (_context.prev = _context.next) {
69
+ case 0:
70
+ return _context.abrupt("return");
71
+
72
+ case 1:
73
+ case "end":
74
+ return _context.stop();
75
+ }
53
76
  }
54
77
  }, _callee);
55
78
  }));
79
+
56
80
  function buildModels() {
57
81
  return _buildModels.apply(this, arguments);
58
82
  }
83
+
59
84
  return buildModels;
60
85
  }()
61
86
  }]);
62
87
  return TileDebugLayer;
63
88
  }(_BaseLayer2.default);
89
+
64
90
  exports.default = TileDebugLayer;