@antv/l7-layers 2.10.0 → 2.10.2

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 (353) hide show
  1. package/es/Geometry/index.d.ts +2 -3
  2. package/es/Geometry/index.js +27 -17
  3. package/es/Geometry/models/billboard.d.ts +2 -2
  4. package/es/Geometry/models/billboard.js +77 -37
  5. package/es/Geometry/models/plane.d.ts +2 -2
  6. package/es/Geometry/models/plane.js +80 -40
  7. package/es/Geometry/models/sprite.d.ts +2 -2
  8. package/es/Geometry/models/sprite.js +83 -45
  9. package/es/canvas/index.d.ts +3 -4
  10. package/es/canvas/index.js +35 -24
  11. package/es/canvas/models/canvas.d.ts +2 -2
  12. package/es/canvas/models/canvas.js +54 -15
  13. package/es/citybuliding/building.d.ts +2 -3
  14. package/es/citybuliding/building.js +26 -17
  15. package/es/citybuliding/models/build.d.ts +2 -2
  16. package/es/citybuliding/models/build.js +70 -25
  17. package/es/core/BaseLayer.d.ts +21 -18
  18. package/es/core/BaseLayer.js +391 -261
  19. package/es/core/BaseModel.d.ts +2 -2
  20. package/es/core/BaseModel.js +47 -6
  21. package/es/core/LayerPickService.d.ts +9 -0
  22. package/es/core/LayerPickService.js +85 -0
  23. package/es/core/triangulation.js +8 -1
  24. package/es/earth/index.d.ts +3 -3
  25. package/es/earth/index.js +28 -9
  26. package/es/earth/models/atmosphere.d.ts +2 -2
  27. package/es/earth/models/atmosphere.js +67 -22
  28. package/es/earth/models/base.d.ts +2 -2
  29. package/es/earth/models/base.js +89 -43
  30. package/es/earth/models/bloomsphere.d.ts +2 -2
  31. package/es/earth/models/bloomsphere.js +67 -22
  32. package/es/heatmap/index.d.ts +2 -3
  33. package/es/heatmap/index.js +33 -22
  34. package/es/heatmap/models/grid.d.ts +2 -2
  35. package/es/heatmap/models/grid.js +68 -27
  36. package/es/heatmap/models/grid3d.d.ts +2 -2
  37. package/es/heatmap/models/grid3d.js +69 -28
  38. package/es/heatmap/models/heatmap.d.ts +2 -2
  39. package/es/heatmap/models/heatmap.js +40 -14
  40. package/es/heatmap/models/hexagon.d.ts +2 -2
  41. package/es/heatmap/models/hexagon.js +69 -28
  42. package/es/image/index.d.ts +2 -3
  43. package/es/image/index.js +27 -17
  44. package/es/image/models/dataImage.d.ts +2 -2
  45. package/es/image/models/dataImage.js +93 -54
  46. package/es/image/models/image.d.ts +2 -2
  47. package/es/image/models/image.js +108 -67
  48. package/es/image/models/tileDataImage.d.ts +2 -2
  49. package/es/image/models/tileDataImage.js +84 -43
  50. package/es/index.d.ts +2 -2
  51. package/es/index.js +2 -2
  52. package/es/line/index.d.ts +5 -4
  53. package/es/line/index.js +51 -25
  54. package/es/line/models/arc.d.ts +2 -2
  55. package/es/line/models/arc.js +73 -38
  56. package/es/line/models/arc_3d.d.ts +2 -2
  57. package/es/line/models/arc_3d.js +69 -34
  58. package/es/line/models/earthArc_3d.d.ts +2 -2
  59. package/es/line/models/earthArc_3d.js +72 -37
  60. package/es/line/models/great_circle.d.ts +2 -2
  61. package/es/line/models/great_circle.js +70 -29
  62. package/es/line/models/half.d.ts +2 -2
  63. package/es/line/models/half.js +40 -17
  64. package/es/line/models/index.d.ts +1 -1
  65. package/es/line/models/index.js +0 -2
  66. package/es/line/models/line.d.ts +2 -2
  67. package/es/line/models/line.js +79 -47
  68. package/es/line/models/linearline.d.ts +2 -2
  69. package/es/line/models/linearline.js +70 -31
  70. package/es/line/models/simpleLine.d.ts +2 -2
  71. package/es/line/models/simpleLine.js +71 -34
  72. package/es/line/models/simpleTileLine.d.ts +2 -2
  73. package/es/line/models/simpleTileLine.js +70 -30
  74. package/es/line/models/tile.d.ts +2 -2
  75. package/es/line/models/tile.js +40 -17
  76. package/es/line/models/wall.d.ts +2 -2
  77. package/es/line/models/wall.js +67 -22
  78. package/es/mask/index.d.ts +2 -4
  79. package/es/mask/index.js +27 -97
  80. package/es/mask/models/fill.d.ts +2 -2
  81. package/es/mask/models/fill.js +40 -16
  82. package/es/mask/models/index.d.ts +1 -1
  83. package/es/mask/models/index.js +1 -3
  84. package/es/plugins/DataMappingPlugin.js +80 -66
  85. package/es/plugins/DataSourcePlugin.js +64 -25
  86. package/es/plugins/FeatureScalePlugin.js +84 -44
  87. package/es/plugins/LayerAnimateStylePlugin.js +6 -3
  88. package/es/plugins/LayerModelPlugin.d.ts +2 -2
  89. package/es/plugins/LayerModelPlugin.js +124 -37
  90. package/es/plugins/LayerStylePlugin.js +1 -6
  91. package/es/plugins/MultiPassRendererPlugin.js +1 -1
  92. package/es/plugins/PixelPickingPlugin.js +1 -1
  93. package/es/plugins/RegisterStyleAttributePlugin.js +4 -17
  94. package/es/plugins/ShaderUniformPlugin.js +7 -2
  95. package/es/plugins/UpdateStyleAttributePlugin.js +8 -5
  96. package/es/point/index.d.ts +4 -4
  97. package/es/point/index.js +55 -23
  98. package/es/point/models/earthExtrude.d.ts +2 -2
  99. package/es/point/models/earthExtrude.js +73 -30
  100. package/es/point/models/earthFill.d.ts +2 -2
  101. package/es/point/models/earthFill.js +66 -21
  102. package/es/point/models/extrude.d.ts +2 -2
  103. package/es/point/models/extrude.js +40 -17
  104. package/es/point/models/fill.d.ts +2 -2
  105. package/es/point/models/fill.js +43 -20
  106. package/es/point/models/fillmage.d.ts +2 -2
  107. package/es/point/models/fillmage.js +82 -43
  108. package/es/point/models/image.d.ts +2 -2
  109. package/es/point/models/image.js +72 -31
  110. package/es/point/models/index.d.ts +1 -1
  111. package/es/point/models/index.js +0 -2
  112. package/es/point/models/normal.d.ts +2 -2
  113. package/es/point/models/normal.js +71 -30
  114. package/es/point/models/radar.d.ts +2 -2
  115. package/es/point/models/radar.js +75 -35
  116. package/es/point/models/simplePoint.d.ts +2 -2
  117. package/es/point/models/simplePoint.js +70 -29
  118. package/es/point/models/text.d.ts +3 -2
  119. package/es/point/models/text.js +164 -107
  120. package/es/point/models/tile.d.ts +2 -2
  121. package/es/point/models/tile.js +77 -35
  122. package/es/point/models/tileText.d.ts +2 -2
  123. package/es/point/models/tileText.js +151 -116
  124. package/es/polygon/index.d.ts +2 -3
  125. package/es/polygon/index.js +27 -24
  126. package/es/polygon/models/extrude.d.ts +2 -2
  127. package/es/polygon/models/extrude.js +66 -29
  128. package/es/polygon/models/fill.d.ts +2 -2
  129. package/es/polygon/models/fill.js +76 -43
  130. package/es/polygon/models/index.d.ts +1 -1
  131. package/es/polygon/models/index.js +0 -2
  132. package/es/polygon/models/ocean.d.ts +2 -2
  133. package/es/polygon/models/ocean.js +69 -28
  134. package/es/polygon/models/tile.d.ts +2 -2
  135. package/es/polygon/models/tile.js +70 -30
  136. package/es/polygon/models/water.d.ts +2 -2
  137. package/es/polygon/models/water.js +69 -28
  138. package/es/raster/index.d.ts +3 -4
  139. package/es/raster/index.js +28 -22
  140. package/es/raster/models/index.d.ts +1 -1
  141. package/es/raster/models/index.js +1 -3
  142. package/es/raster/models/raster.d.ts +2 -2
  143. package/es/raster/models/raster.js +36 -13
  144. package/es/raster/models/rasterRgb.d.ts +2 -2
  145. package/es/raster/models/rasterRgb.js +36 -13
  146. package/es/raster/models/rasterTile.d.ts +2 -2
  147. package/es/raster/models/rasterTile.js +77 -36
  148. package/es/raster/raster.d.ts +1 -1
  149. package/es/raster/raster.js +42 -22
  150. package/es/tile/interaction/getRasterData.d.ts +2 -2
  151. package/es/tile/interaction/utils.js +3 -11
  152. package/es/tile/interface.d.ts +5 -4
  153. package/es/tile/manager/base.d.ts +17 -12
  154. package/es/tile/manager/base.js +212 -47
  155. package/es/tile/service/TileLayerService.d.ts +33 -0
  156. package/es/tile/service/TileLayerService.js +172 -0
  157. package/es/tile/service/TilePickService.d.ts +22 -0
  158. package/es/tile/service/TilePickService.js +124 -0
  159. package/es/tile/style/constants.d.ts +1 -13
  160. package/es/tile/style/constants.js +6 -15
  161. package/es/tile/style/utils.d.ts +1 -8
  162. package/es/tile/style/utils.js +0 -126
  163. package/es/tile/tileFactory/DebugTile.d.ts +16 -0
  164. package/es/tile/tileFactory/DebugTile.js +100 -0
  165. package/es/tile/tileFactory/ImageTile.d.ts +14 -0
  166. package/es/tile/tileFactory/ImageTile.js +89 -0
  167. package/es/tile/tileFactory/MaskTile.d.ts +17 -0
  168. package/es/tile/tileFactory/MaskTile.js +98 -0
  169. package/es/tile/tileFactory/RasterRGBTile.d.ts +16 -0
  170. package/es/tile/tileFactory/RasterRGBTile.js +91 -0
  171. package/es/tile/tileFactory/RasterTile.d.ts +27 -0
  172. package/es/tile/tileFactory/RasterTile.js +186 -0
  173. package/es/tile/tileFactory/Tile.d.ts +23 -0
  174. package/es/tile/tileFactory/Tile.js +136 -0
  175. package/es/tile/tileFactory/VectorTile.d.ts +20 -0
  176. package/es/tile/tileFactory/VectorTile.js +158 -0
  177. package/es/tile/tileFactory/index.d.ts +10 -4
  178. package/es/tile/tileFactory/index.js +30 -23
  179. package/es/tile/tileFactory/layers/{rasterDataLayer.d.ts → RasterDataLayer.d.ts} +3 -3
  180. package/es/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +33 -21
  181. package/es/tile/tileFactory/layers/{tileTest.d.ts → TileDebugLayer.d.ts} +2 -2
  182. package/es/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +23 -10
  183. package/es/tile/tileFactory/util.d.ts +6 -0
  184. package/es/tile/tileFactory/util.js +33 -0
  185. package/es/tile/tileLayer/BaseLayer.d.ts +46 -0
  186. package/es/tile/tileLayer/BaseLayer.js +358 -0
  187. package/es/tile/utils.d.ts +1 -11
  188. package/es/tile/utils.js +0 -127
  189. package/es/utils/dataMappingStyle.d.ts +4 -4
  190. package/es/utils/dataMappingStyle.js +19 -19
  191. package/es/utils/layerData.js +5 -11
  192. package/es/wind/index.d.ts +2 -3
  193. package/es/wind/index.js +27 -17
  194. package/es/wind/models/wind.d.ts +2 -2
  195. package/es/wind/models/wind.js +120 -104
  196. package/lib/Geometry/index.js +29 -17
  197. package/lib/Geometry/models/billboard.js +79 -37
  198. package/lib/Geometry/models/plane.js +82 -40
  199. package/lib/Geometry/models/sprite.js +85 -45
  200. package/lib/canvas/index.js +37 -24
  201. package/lib/canvas/models/canvas.js +56 -15
  202. package/lib/citybuliding/building.js +28 -17
  203. package/lib/citybuliding/models/build.js +72 -25
  204. package/lib/core/BaseLayer.js +391 -256
  205. package/lib/core/BaseModel.js +48 -6
  206. package/lib/core/LayerPickService.js +96 -0
  207. package/lib/core/triangulation.js +8 -1
  208. package/lib/earth/index.js +30 -9
  209. package/lib/earth/models/atmosphere.js +69 -22
  210. package/lib/earth/models/base.js +90 -42
  211. package/lib/earth/models/bloomsphere.js +69 -22
  212. package/lib/heatmap/index.js +35 -22
  213. package/lib/heatmap/models/grid.js +70 -27
  214. package/lib/heatmap/models/grid3d.js +71 -28
  215. package/lib/heatmap/models/heatmap.js +40 -14
  216. package/lib/heatmap/models/hexagon.js +71 -28
  217. package/lib/image/index.js +29 -17
  218. package/lib/image/models/dataImage.js +95 -54
  219. package/lib/image/models/image.js +110 -67
  220. package/lib/image/models/tileDataImage.js +86 -43
  221. package/lib/index.js +5 -5
  222. package/lib/line/index.js +53 -26
  223. package/lib/line/models/arc.js +75 -38
  224. package/lib/line/models/arc_3d.js +71 -34
  225. package/lib/line/models/earthArc_3d.js +74 -37
  226. package/lib/line/models/great_circle.js +72 -29
  227. package/lib/line/models/half.js +40 -17
  228. package/lib/line/models/index.js +0 -3
  229. package/lib/line/models/line.js +81 -47
  230. package/lib/line/models/linearline.js +72 -31
  231. package/lib/line/models/simpleLine.js +73 -34
  232. package/lib/line/models/simpleTileLine.js +72 -30
  233. package/lib/line/models/tile.js +40 -17
  234. package/lib/line/models/wall.js +69 -22
  235. package/lib/mask/index.js +28 -99
  236. package/lib/mask/models/fill.js +40 -16
  237. package/lib/mask/models/index.js +1 -4
  238. package/lib/plugins/DataMappingPlugin.js +81 -65
  239. package/lib/plugins/DataSourcePlugin.js +71 -30
  240. package/lib/plugins/FeatureScalePlugin.js +86 -44
  241. package/lib/plugins/LayerAnimateStylePlugin.js +6 -3
  242. package/lib/plugins/LayerModelPlugin.js +131 -41
  243. package/lib/plugins/LayerStylePlugin.js +1 -6
  244. package/lib/plugins/MultiPassRendererPlugin.js +1 -1
  245. package/lib/plugins/PixelPickingPlugin.js +1 -1
  246. package/lib/plugins/RegisterStyleAttributePlugin.js +4 -17
  247. package/lib/plugins/ShaderUniformPlugin.js +7 -2
  248. package/lib/plugins/UpdateStyleAttributePlugin.js +8 -5
  249. package/lib/point/index.js +56 -24
  250. package/lib/point/models/earthExtrude.js +75 -30
  251. package/lib/point/models/earthFill.js +68 -21
  252. package/lib/point/models/extrude.js +40 -17
  253. package/lib/point/models/fill.js +44 -21
  254. package/lib/point/models/fillmage.js +84 -43
  255. package/lib/point/models/image.js +74 -31
  256. package/lib/point/models/index.js +0 -3
  257. package/lib/point/models/normal.js +73 -30
  258. package/lib/point/models/radar.js +77 -35
  259. package/lib/point/models/simplePoint.js +72 -29
  260. package/lib/point/models/text.js +164 -106
  261. package/lib/point/models/tile.js +79 -35
  262. package/lib/point/models/tileText.js +151 -115
  263. package/lib/polygon/index.js +29 -25
  264. package/lib/polygon/models/extrude.js +68 -29
  265. package/lib/polygon/models/fill.js +78 -43
  266. package/lib/polygon/models/index.js +0 -3
  267. package/lib/polygon/models/ocean.js +71 -28
  268. package/lib/polygon/models/tile.js +72 -30
  269. package/lib/polygon/models/water.js +71 -28
  270. package/lib/raster/index.js +30 -22
  271. package/lib/raster/models/index.js +1 -4
  272. package/lib/raster/models/raster.js +36 -13
  273. package/lib/raster/models/rasterRgb.js +36 -13
  274. package/lib/raster/models/rasterTile.js +79 -36
  275. package/lib/raster/raster.js +44 -22
  276. package/lib/tile/interaction/utils.js +3 -11
  277. package/lib/tile/manager/base.js +213 -47
  278. package/lib/tile/service/TileLayerService.js +185 -0
  279. package/lib/tile/service/TilePickService.js +136 -0
  280. package/lib/tile/style/constants.js +8 -19
  281. package/lib/tile/style/utils.js +0 -140
  282. package/lib/tile/tileFactory/DebugTile.js +115 -0
  283. package/lib/tile/tileFactory/ImageTile.js +104 -0
  284. package/lib/tile/tileFactory/MaskTile.js +113 -0
  285. package/lib/tile/tileFactory/RasterRGBTile.js +106 -0
  286. package/lib/tile/tileFactory/RasterTile.js +205 -0
  287. package/lib/tile/tileFactory/Tile.js +146 -0
  288. package/lib/tile/tileFactory/VectorTile.js +173 -0
  289. package/lib/tile/tileFactory/index.js +42 -24
  290. package/lib/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +35 -21
  291. package/lib/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +24 -11
  292. package/lib/tile/tileFactory/util.js +48 -0
  293. package/lib/tile/tileLayer/BaseLayer.js +373 -0
  294. package/lib/tile/utils.js +0 -146
  295. package/lib/utils/dataMappingStyle.js +21 -21
  296. package/lib/utils/layerData.js +4 -10
  297. package/lib/wind/index.js +29 -17
  298. package/lib/wind/models/wind.js +122 -104
  299. package/package.json +7 -7
  300. package/es/tile/interaction/TilePickService.d.ts +0 -16
  301. package/es/tile/interaction/TilePickService.js +0 -129
  302. package/es/tile/manager/layerManager.d.ts +0 -19
  303. package/es/tile/manager/layerManager.js +0 -254
  304. package/es/tile/manager/mapLayerManager.d.ts +0 -7
  305. package/es/tile/manager/mapLayerManager.js +0 -119
  306. package/es/tile/models/tileModel.d.ts +0 -10
  307. package/es/tile/models/tileModel.js +0 -81
  308. package/es/tile/render/TileRenderService.d.ts +0 -10
  309. package/es/tile/render/TileRenderService.js +0 -68
  310. package/es/tile/style/TileStyleService.d.ts +0 -17
  311. package/es/tile/style/TileStyleService.js +0 -118
  312. package/es/tile/tileFactory/base.d.ts +0 -45
  313. package/es/tile/tileFactory/base.js +0 -403
  314. package/es/tile/tileFactory/layers/vectorLayer.d.ts +0 -30
  315. package/es/tile/tileFactory/layers/vectorLayer.js +0 -253
  316. package/es/tile/tileFactory/line.d.ts +0 -12
  317. package/es/tile/tileFactory/line.js +0 -59
  318. package/es/tile/tileFactory/mask.d.ts +0 -12
  319. package/es/tile/tileFactory/mask.js +0 -60
  320. package/es/tile/tileFactory/point.d.ts +0 -12
  321. package/es/tile/tileFactory/point.js +0 -60
  322. package/es/tile/tileFactory/polygon.d.ts +0 -12
  323. package/es/tile/tileFactory/polygon.js +0 -59
  324. package/es/tile/tileFactory/raster.d.ts +0 -12
  325. package/es/tile/tileFactory/raster.js +0 -55
  326. package/es/tile/tileFactory/rasterData.d.ts +0 -12
  327. package/es/tile/tileFactory/rasterData.js +0 -81
  328. package/es/tile/tileFactory/test.d.ts +0 -12
  329. package/es/tile/tileFactory/test.js +0 -94
  330. package/es/tile/tileLayer/MapTileLayer.d.ts +0 -6
  331. package/es/tile/tileLayer/MapTileLayer.js +0 -48
  332. package/es/tile/tileLayer/TileLayer.d.ts +0 -22
  333. package/es/tile/tileLayer/TileLayer.js +0 -198
  334. package/es/tile/tileLayer/base.d.ts +0 -33
  335. package/es/tile/tileLayer/base.js +0 -212
  336. package/lib/tile/interaction/TilePickService.js +0 -143
  337. package/lib/tile/manager/layerManager.js +0 -275
  338. package/lib/tile/manager/mapLayerManager.js +0 -134
  339. package/lib/tile/models/tileModel.js +0 -94
  340. package/lib/tile/render/TileRenderService.js +0 -78
  341. package/lib/tile/style/TileStyleService.js +0 -133
  342. package/lib/tile/tileFactory/base.js +0 -427
  343. package/lib/tile/tileFactory/layers/vectorLayer.js +0 -268
  344. package/lib/tile/tileFactory/line.js +0 -70
  345. package/lib/tile/tileFactory/mask.js +0 -71
  346. package/lib/tile/tileFactory/point.js +0 -71
  347. package/lib/tile/tileFactory/polygon.js +0 -70
  348. package/lib/tile/tileFactory/raster.js +0 -68
  349. package/lib/tile/tileFactory/rasterData.js +0 -93
  350. package/lib/tile/tileFactory/test.js +0 -106
  351. package/lib/tile/tileLayer/MapTileLayer.js +0 -63
  352. package/lib/tile/tileLayer/TileLayer.js +0 -215
  353. package/lib/tile/tileLayer/base.js +0 -225
package/es/tile/utils.js CHANGED
@@ -1,6 +1,4 @@
1
- import { createLayerContainer } from '@antv/l7-core';
2
1
  import { DOM } from '@antv/l7-utils';
3
- import { updateLayersConfig } from "./style/utils";
4
2
  export var tileVectorParser = ['mvt', 'geojsonvt', 'testTile'];
5
3
  /**
6
4
  * 判断当前图层是否是瓦片图层
@@ -12,66 +10,6 @@ export function isTileGroup(layer) {
12
10
  var source = layer.getSource();
13
11
  return tileVectorParser.includes(source.parser.type);
14
12
  }
15
- export function isVectorTile(parserType) {
16
- return tileVectorParser.indexOf(parserType) >= 0;
17
- }
18
- export function registerLayers(parentLayer, layers) {
19
- layers.map(function (layer) {
20
- var container = createLayerContainer(parentLayer.sceneContainer);
21
- layer.setContainer(container, parentLayer.sceneContainer);
22
- layer.init();
23
- });
24
- }
25
- export function getLayerShape(layerType, layer) {
26
- var _layerShape$scale;
27
-
28
- var layerShape = layer.getAttribute('shape');
29
-
30
- if (layerShape && (_layerShape$scale = layerShape.scale) !== null && _layerShape$scale !== void 0 && _layerShape$scale.field) {
31
- var _layerShape$scale2;
32
-
33
- if (((_layerShape$scale2 = layerShape.scale) === null || _layerShape$scale2 === void 0 ? void 0 : _layerShape$scale2.values) === 'text') {
34
- return [layerShape.scale.field, layerShape.scale.values];
35
- }
36
-
37
- return layerShape.scale.field;
38
- }
39
-
40
- switch (layerType) {
41
- case 'PolygonLayer':
42
- return 'fill';
43
-
44
- case 'LineLayer':
45
- return 'tileline';
46
-
47
- case 'PointLayer':
48
- return 'circle';
49
-
50
- case 'RasterLayer':
51
- return 'image';
52
-
53
- default:
54
- return '';
55
- }
56
- }
57
- export function getMaskValue(layerType, mask) {
58
- switch (layerType) {
59
- case 'PolygonLayer':
60
- return true;
61
-
62
- case 'LineLayer':
63
- return true;
64
-
65
- case 'PointLayer':
66
- return false;
67
-
68
- case 'RasterLayer':
69
- return mask;
70
-
71
- default:
72
- return mask;
73
- }
74
- }
75
13
  export function getContainerSize(container) {
76
14
  if (container.getContext) {
77
15
  return {
@@ -81,69 +19,4 @@ export function getContainerSize(container) {
81
19
  } else {
82
20
  return container.getBoundingClientRect();
83
21
  }
84
- }
85
- export function isTileLoaded(tile) {
86
- return tile.layerIDList.length === tile.loadedLayers;
87
- }
88
- export function isTileChildLoaded(tile) {
89
- var children = tile.children;
90
- return children.filter(function (child) {
91
- return isTileLoaded(child);
92
- }).length === children.length;
93
- }
94
- export function isTileParentLoaded(tile) {
95
- var parent = tile.parent;
96
-
97
- if (!parent) {
98
- return true;
99
- } else {
100
- return isTileLoaded(parent);
101
- }
102
- }
103
- export function tileAllLoad(tile, callback) {
104
- var timer = window.setInterval(function () {
105
- var tileLoaded = isTileLoaded(tile);
106
- var tileChildLoaded = isTileChildLoaded(tile);
107
- var tileParentLoaded = isTileParentLoaded(tile);
108
-
109
- if (tileLoaded && tileChildLoaded && tileParentLoaded) {
110
- callback();
111
- window.clearInterval(timer);
112
- }
113
- }, 36);
114
- }
115
-
116
- function dispatchTileVisibleChange(tile, callback) {
117
- if (tile.isVisible) {
118
- callback();
119
- } else {
120
- tileAllLoad(tile, function () {
121
- callback();
122
- });
123
- }
124
- }
125
-
126
- function updateImmediately(layers) {
127
- var immediately = true;
128
- layers.map(function (layer) {
129
- if (layer.type !== 'PointLayer') {
130
- immediately = false;
131
- }
132
- });
133
- return immediately;
134
- }
135
-
136
- export function updateTileVisible(tile, layers, layerService) {
137
- if (layers.length === 0) return;
138
-
139
- if (updateImmediately(layers)) {
140
- updateLayersConfig(layers, 'visible', tile.isVisible);
141
- layerService.reRender();
142
- return;
143
- }
144
-
145
- dispatchTileVisibleChange(tile, function () {
146
- updateLayersConfig(layers, 'visible', tile.isVisible);
147
- layerService.reRender();
148
- });
149
22
  }
@@ -16,16 +16,16 @@ interface IConfigToUpdate {
16
16
  * @param configToUpdate
17
17
  * @param layer
18
18
  */
19
- declare function handleStyleDataMapping(configToUpdate: IConfigToUpdate, layer: any): void;
19
+ declare function styleDataMapping(configToUpdate: IConfigToUpdate, layer: any): void;
20
20
  /**
21
21
  * 根据传入参数 float 的类型和值做相应的操作
22
22
  */
23
- declare function handleStyleFloat(fieldName: string, layer: ILayer, styleFloat: any): void;
23
+ declare function floatStyleMapping(fieldName: string, layer: ILayer, styleFloat: any): void;
24
24
  /**
25
25
  * 根据传入参数 stroke / color 的类型和值做相应的操作
26
26
  * @param fieldName
27
27
  * @param layer
28
28
  * @param styleColor
29
29
  */
30
- declare function handleStyleColor(fieldName: string, layer: ILayer, styleColor: any): void;
31
- export { handleStyleDataMapping, handleStyleFloat, handleStyleColor };
30
+ declare function colorStyleMapping(fieldName: string, layer: ILayer, styleColor: any): void;
31
+ export { styleDataMapping, floatStyleMapping, colorStyleMapping };
@@ -19,43 +19,45 @@ function registerStyleAttribute(fieldName, layer, field, values, updateOptions)
19
19
  */
20
20
 
21
21
 
22
- function handleStyleDataMapping(configToUpdate, layer) {
22
+ function styleDataMapping(configToUpdate, layer) {
23
23
  // 瓦片图层不需要进行样式数据映射
24
- if (layer.tileLayer || layer.isTileLayer) return;
24
+ if (layer.tileLayer || layer.isTileLayer) {
25
+ return;
26
+ }
25
27
 
26
28
  if (configToUpdate.opacity) {
27
29
  // 处理 style 中 opacity 属性的数据映射
28
- handleStyleFloat('opacity', layer, configToUpdate.opacity);
30
+ floatStyleMapping('opacity', layer, configToUpdate.opacity);
29
31
  }
30
32
 
31
33
  if (configToUpdate.strokeWidth) {
32
34
  // 处理 style 中 strokeWidth 属性的数据映射
33
- handleStyleFloat('strokeWidth', layer, configToUpdate.strokeWidth);
35
+ floatStyleMapping('strokeWidth', layer, configToUpdate.strokeWidth);
34
36
  }
35
37
 
36
38
  if (configToUpdate.strokeOpacity) {
37
39
  // 处理 style 中 strokeOpacity 属性的数据映射
38
- handleStyleFloat('strokeOpacity', layer, configToUpdate.strokeOpacity);
40
+ floatStyleMapping('strokeOpacity', layer, configToUpdate.strokeOpacity);
39
41
  }
40
42
 
41
43
  if (configToUpdate.stroke) {
42
44
  // 处理 style 中 stroke (strokeColor) 属性的数据映射
43
- handleStyleColor('stroke', layer, configToUpdate.stroke);
45
+ colorStyleMapping('stroke', layer, configToUpdate.stroke);
44
46
  }
45
47
 
46
48
  if (configToUpdate.offsets) {
47
49
  // 处理 style 中 offsets 属性的数据映射
48
- handleStyleOffsets('offsets', layer, configToUpdate.offsets);
50
+ offsetStyleMapping('offsets', layer, configToUpdate.offsets);
49
51
  }
50
52
 
51
53
  if (configToUpdate.textOffset) {
52
54
  // 处理 style 中 textOffset 属性的数据映射
53
- handleStyleOffsets('textOffset', layer, configToUpdate.textOffset);
55
+ offsetStyleMapping('textOffset', layer, configToUpdate.textOffset);
54
56
  }
55
57
 
56
58
  if (configToUpdate.thetaOffset) {
57
59
  // 处理 style 中 thetaOffset 属性的数据映射
58
- handleStyleFloat('thetaOffset', layer, configToUpdate.thetaOffset);
60
+ floatStyleMapping('thetaOffset', layer, configToUpdate.thetaOffset);
59
61
  }
60
62
  }
61
63
  /**
@@ -63,15 +65,14 @@ function handleStyleDataMapping(configToUpdate, layer) {
63
65
  */
64
66
 
65
67
 
66
- function handleStyleFloat(fieldName, layer, styleFloat) {
68
+ function floatStyleMapping(fieldName, layer, styleFloat) {
67
69
  if (isString(styleFloat)) {
68
70
  // 如果传入的 styleFloat 是 string 类型,那么就认为其对应的是传入数据的字段
69
71
  registerStyleAttribute(fieldName, layer, styleFloat, function (value) {
70
72
  return value;
71
73
  });
72
- } else if (isNumber(styleFloat)) {
73
- // 传入 number、默认值处理
74
- registerStyleAttribute(fieldName, layer, [styleFloat], undefined);
74
+ } else if (isNumber(styleFloat)) {// 传入 number、默认值处理
75
+ // registerStyleAttribute(fieldName, layer, [styleFloat], undefined);
75
76
  } else if (Array.isArray(styleFloat) && styleFloat.length === 2) {
76
77
  // 传入的 styleFloat 是长度为 2 的数组
77
78
  if (isString(styleFloat[0]) && isFunction(styleFloat[1])) {
@@ -97,7 +98,7 @@ function handleStyleFloat(fieldName, layer, styleFloat) {
97
98
  */
98
99
 
99
100
 
100
- function handleStyleOffsets(fieldName, layer, styleOffsets) {
101
+ function offsetStyleMapping(fieldName, layer, styleOffsets) {
101
102
  if (isString(styleOffsets)) {
102
103
  // 如果传入的 styleOffsets 是 string 类型,那么就认为其对应的是传入数据的字段
103
104
  registerStyleAttribute(fieldName, layer, styleOffsets, function (value) {
@@ -122,10 +123,9 @@ function handleStyleOffsets(fieldName, layer, styleOffsets) {
122
123
  */
123
124
 
124
125
 
125
- function handleStyleColor(fieldName, layer, styleColor) {
126
- if (isString(styleColor)) {
127
- // 如果传入的 styleColor 是 string 类型,那么就认为其是颜色值
128
- registerStyleAttribute(fieldName, layer, styleColor, undefined);
126
+ function colorStyleMapping(fieldName, layer, styleColor) {
127
+ if (isString(styleColor)) {// 如果传入的 styleColor 是 string 类型,那么就认为其是颜色值
128
+ // registerStyleAttribute(fieldName, layer, styleColor, undefined);
129
129
  } else if (Array.isArray(styleColor) && styleColor.length === 2) {
130
130
  // 传入的 styleColor 是长度为 2 的数组
131
131
  if (isString(styleColor[0]) && isFunction(styleColor[1])) {
@@ -144,4 +144,4 @@ function handleStyleColor(fieldName, layer, styleColor) {
144
144
  }
145
145
  }
146
146
 
147
- export { handleStyleDataMapping, handleStyleFloat, handleStyleColor };
147
+ export { styleDataMapping, floatStyleMapping, colorStyleMapping };
@@ -1,6 +1,6 @@
1
1
  import { Version } from '@antv/l7-maps';
2
2
  import Source from '@antv/l7-source';
3
- import { isColor, normalize, rgb2arr } from '@antv/l7-utils';
3
+ import { normalize, rgb2arr } from '@antv/l7-utils';
4
4
  import { cloneDeep } from 'lodash';
5
5
 
6
6
  function getArrowPoints(p1, p2) {
@@ -91,7 +91,7 @@ function unProjectCoordinates(coordinates, mapService) {
91
91
  }
92
92
  }
93
93
 
94
- function applyAttributeMapping(attribute, record, minimumColor) {
94
+ function applyAttributeMapping(attribute, record) {
95
95
  var _attribute$scale;
96
96
 
97
97
  if (!attribute.scale) {
@@ -111,15 +111,10 @@ function applyAttributeMapping(attribute, record, minimumColor) {
111
111
  }
112
112
  });
113
113
  var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
114
-
115
- if (attribute.name === 'color' && !isColor(mappingResult[0])) {
116
- return [minimumColor];
117
- }
118
-
119
114
  return mappingResult;
120
115
  }
121
116
 
122
- function mapping(attributes, data, fontService, mapService, minimumColor, layer) {
117
+ function mapping(attributes, data, fontService, mapService, layer) {
123
118
  var _ref2 = layer === null || layer === void 0 ? void 0 : layer.getLayerConfig(),
124
119
  _ref2$arrow = _ref2.arrow,
125
120
  arrow = _ref2$arrow === void 0 ? {
@@ -134,7 +129,7 @@ function mapping(attributes, data, fontService, mapService, minimumColor, layer)
134
129
  attributes.filter(function (attribute) {
135
130
  return attribute.scale !== undefined;
136
131
  }).forEach(function (attribute) {
137
- var values = applyAttributeMapping(attribute, record, minimumColor);
132
+ var values = applyAttributeMapping(attribute, record);
138
133
  attribute.needRemapping = false; // TODO: 支持每个属性配置 postprocess
139
134
 
140
135
  if (attribute.name === 'color') {
@@ -169,11 +164,10 @@ function mapping(attributes, data, fontService, mapService, minimumColor, layer)
169
164
 
170
165
  export function calculateData(layer, fontService, mapService, styleAttributeService, data, options) {
171
166
  var source = new Source(data, options);
172
- var bottomColor = layer.getBottomColor();
173
167
  var attributes = styleAttributeService.getLayerStyleAttributes() || [];
174
168
  var dataArray = source.data.dataArray;
175
169
  var filterData = dataArray;
176
- var mappedEncodeData = mapping(attributes, filterData, fontService, mapService, bottomColor, layer);
170
+ var mappedEncodeData = mapping(attributes, filterData, fontService, mapService, layer);
177
171
  source.destroy();
178
172
  return mappedEncodeData;
179
173
  }
@@ -3,9 +3,8 @@ import { IWindLayerStyleOptions } from '../core/interface';
3
3
  import { WindModelType } from './models';
4
4
  export default class WindLayer extends BaseLayer<IWindLayerStyleOptions> {
5
5
  type: string;
6
- buildModels(): void;
7
- rebuildModels(): void;
6
+ buildModels(): Promise<void>;
8
7
  renderModels(): this;
9
8
  protected getDefaultConfig(): {};
10
- protected getModelType(): WindModelType;
9
+ getModelType(): WindModelType;
11
10
  }
package/es/wind/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
1
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
3
  import _createClass from "@babel/runtime/helpers/createClass";
3
4
  import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
@@ -5,6 +6,7 @@ import _inherits from "@babel/runtime/helpers/inherits";
5
6
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
7
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
8
10
 
9
11
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
12
 
@@ -36,24 +38,32 @@ var WindLayer = /*#__PURE__*/function (_BaseLayer) {
36
38
 
37
39
  _createClass(WindLayer, [{
38
40
  key: "buildModels",
39
- value: function buildModels() {
40
- var _this2 = this;
41
-
42
- var modelType = this.getModelType();
43
- this.layerModel = new WindModels[modelType](this);
44
- this.layerModel.initModels(function (models) {
45
- _this2.dispatchModelLoad(models);
46
- });
47
- }
48
- }, {
49
- key: "rebuildModels",
50
- value: function rebuildModels() {
51
- var _this3 = this;
41
+ value: function () {
42
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
43
+ var modelType;
44
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
45
+ while (1) {
46
+ switch (_context.prev = _context.next) {
47
+ case 0:
48
+ modelType = this.getModelType();
49
+ this.layerModel = new WindModels[modelType](this);
50
+ _context.next = 4;
51
+ return this.initLayerModels();
52
+
53
+ case 4:
54
+ case "end":
55
+ return _context.stop();
56
+ }
57
+ }
58
+ }, _callee, this);
59
+ }));
60
+
61
+ function buildModels() {
62
+ return _buildModels.apply(this, arguments);
63
+ }
52
64
 
53
- this.layerModel.buildModels(function (models) {
54
- _this3.dispatchModelLoad(models);
55
- });
56
- }
65
+ return buildModels;
66
+ }()
57
67
  }, {
58
68
  key: "renderModels",
59
69
  value: function renderModels() {
@@ -10,12 +10,12 @@ export default class WindModel extends BaseModel {
10
10
  private cacheZoom;
11
11
  render(): void;
12
12
  getUninforms(): IModelUniform;
13
- initModels(callbackModel: (models: IModel[]) => void): void;
13
+ initModels(): Promise<IModel[]>;
14
14
  getWindSize(): {
15
15
  imageWidth: number;
16
16
  imageHeight: number;
17
17
  };
18
- buildModels(callbackModel: (models: IModel[]) => void): void;
18
+ buildModels(): Promise<IModel[]>;
19
19
  clearModels(): void;
20
20
  protected registerBuiltinAttributes(): void;
21
21
  private getZoomScale;