@antv/l7-layers 2.16.1 → 2.16.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 (386) 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.d.ts +3 -0
  10. package/es/core/BaseLayer.js +360 -528
  11. package/es/core/BaseModel.d.ts +9 -71
  12. package/es/core/BaseModel.js +118 -429
  13. package/es/core/CommonStyleAttribute.d.ts +2 -0
  14. package/es/core/CommonStyleAttribute.js +66 -0
  15. package/es/core/LayerPickService.js +21 -32
  16. package/es/core/TextureService.js +0 -13
  17. package/es/core/interface.d.ts +13 -3
  18. package/es/core/interface.js +17 -24
  19. package/es/core/shape/Path.js +13 -20
  20. package/es/core/shape/extrude.js +27 -36
  21. package/es/core/triangulation.d.ts +12 -0
  22. package/es/core/triangulation.js +124 -114
  23. package/es/earth/index.js +9 -33
  24. package/es/earth/models/atmosphere.js +30 -54
  25. package/es/earth/models/base.js +47 -85
  26. package/es/earth/models/bloomsphere.js +30 -54
  27. package/es/earth/utils.js +9 -13
  28. package/es/heatmap/index.js +10 -40
  29. package/es/heatmap/models/grid.js +29 -53
  30. package/es/heatmap/models/grid3d.js +29 -53
  31. package/es/heatmap/models/heatmap.d.ts +1 -0
  32. package/es/heatmap/models/heatmap.js +99 -150
  33. package/es/heatmap/models/hexagon.js +29 -53
  34. package/es/heatmap/shaders/grid_vert.glsl +2 -2
  35. package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
  36. package/es/heatmap/shaders/hexagon_vert.glsl +2 -2
  37. package/es/heatmap/triangulation.js +0 -4
  38. package/es/image/index.js +9 -28
  39. package/es/image/models/image.js +66 -100
  40. package/es/index.js +9 -17
  41. package/es/line/index.d.ts +1 -0
  42. package/es/line/index.js +12 -36
  43. package/es/line/models/arc.js +72 -160
  44. package/es/line/models/arc_3d.js +67 -148
  45. package/es/line/models/earthArc_3d.js +66 -148
  46. package/es/line/models/{half.d.ts → flow.d.ts} +1 -11
  47. package/es/line/models/flow.js +167 -0
  48. package/es/line/models/great_circle.js +57 -135
  49. package/es/line/models/index.d.ts +1 -1
  50. package/es/line/models/index.js +3 -3
  51. package/es/line/models/line.js +98 -186
  52. package/es/line/models/linearline.js +46 -115
  53. package/es/line/models/simpleLine.d.ts +0 -1
  54. package/es/line/models/simpleLine.js +42 -114
  55. package/es/line/models/wall.js +52 -92
  56. package/es/line/shaders/dash/arc_dash_frag.glsl +3 -6
  57. package/es/line/shaders/dash/arc_dash_vert.glsl +6 -46
  58. package/es/line/shaders/dash/line_dash_frag.glsl +4 -7
  59. package/es/line/shaders/dash/line_dash_vert.glsl +3 -33
  60. package/es/line/shaders/flow/flow_line_frag.glsl +13 -0
  61. package/es/line/shaders/flow/flow_line_vert.glsl +83 -0
  62. package/es/line/shaders/line_arc_3d_frag.glsl +6 -6
  63. package/es/line/shaders/line_arc_3d_vert.glsl +4 -34
  64. package/es/line/shaders/line_arc_frag.glsl +7 -11
  65. package/es/line/shaders/line_arc_great_circle_frag.glsl +5 -6
  66. package/es/line/shaders/line_arc_great_circle_vert.glsl +4 -32
  67. package/es/line/shaders/line_arc_vert.glsl +9 -45
  68. package/es/line/shaders/line_frag.glsl +15 -17
  69. package/es/line/shaders/line_vert.glsl +3 -34
  70. package/es/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
  71. package/es/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
  72. package/es/line/shaders/linear/arc_linear_frag.glsl +2 -30
  73. package/es/line/shaders/linear/arc_linear_vert.glsl +9 -45
  74. package/es/line/shaders/linear/line_linear_frag.glsl +5 -6
  75. package/es/line/shaders/linearLine/line_linear_frag.glsl +2 -14
  76. package/es/line/shaders/linearLine/line_linear_vert.glsl +14 -32
  77. package/es/line/shaders/simple/simpleline_frag.glsl +1 -5
  78. package/es/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
  79. package/es/line/shaders/simple/simpleline_vert.glsl +7 -33
  80. package/es/mask/index.js +9 -28
  81. package/es/mask/models/fill.js +29 -54
  82. package/es/plugins/DataMappingPlugin.js +90 -141
  83. package/es/plugins/DataSourcePlugin.js +45 -68
  84. package/es/plugins/FeatureScalePlugin.js +67 -122
  85. package/es/plugins/LayerAnimateStylePlugin.js +0 -5
  86. package/es/plugins/LayerMaskPlugin.js +3 -11
  87. package/es/plugins/LayerModelPlugin.js +79 -104
  88. package/es/plugins/LayerStylePlugin.js +3 -9
  89. package/es/plugins/LightingPlugin.js +12 -18
  90. package/es/plugins/MultiPassRendererPlugin.js +11 -16
  91. package/es/plugins/PixelPickingPlugin.js +12 -21
  92. package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
  93. package/es/plugins/ShaderUniformPlugin.js +15 -29
  94. package/es/plugins/UpdateModelPlugin.js +0 -5
  95. package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
  96. package/es/point/index.d.ts +1 -0
  97. package/es/point/index.js +27 -77
  98. package/es/point/models/earthExtrude.d.ts +0 -3
  99. package/es/point/models/earthExtrude.js +60 -139
  100. package/es/point/models/earthFill.d.ts +0 -1
  101. package/es/point/models/earthFill.js +59 -140
  102. package/es/point/models/extrude.d.ts +0 -3
  103. package/es/point/models/extrude.js +60 -140
  104. package/es/point/models/fill.d.ts +0 -1
  105. package/es/point/models/fill.js +67 -158
  106. package/es/point/models/fillmage.js +66 -147
  107. package/es/point/models/image.js +52 -126
  108. package/es/point/models/index.js +2 -2
  109. package/es/point/models/normal.js +32 -56
  110. package/es/point/models/radar.d.ts +0 -1
  111. package/es/point/models/radar.js +42 -75
  112. package/es/point/models/simplePoint.d.ts +0 -1
  113. package/es/point/models/simplePoint.js +46 -115
  114. package/es/point/models/text.js +211 -344
  115. package/es/point/shaders/animate/wave_frag.glsl +1 -11
  116. package/es/point/shaders/earth/extrude_frag.glsl +5 -17
  117. package/es/point/shaders/earth/extrude_vert.glsl +14 -29
  118. package/es/point/shaders/earth/fill_frag.glsl +5 -14
  119. package/es/point/shaders/earth/fill_vert.glsl +1 -75
  120. package/es/point/shaders/extrude/extrude_frag.glsl +3 -29
  121. package/es/point/shaders/extrude/extrude_vert.glsl +27 -35
  122. package/es/point/shaders/fill_frag.glsl +9 -20
  123. package/es/point/shaders/fill_vert.glsl +16 -101
  124. package/es/point/shaders/image/fillImage_frag.glsl +2 -5
  125. package/es/point/shaders/image/fillImage_vert.glsl +4 -47
  126. package/es/point/shaders/image_frag.glsl +1 -5
  127. package/es/point/shaders/image_vert.glsl +1 -44
  128. package/es/point/shaders/normal_frag.glsl +0 -2
  129. package/es/point/shaders/normal_vert.glsl +2 -1
  130. package/es/point/shaders/radar/radar_vert.glsl +2 -2
  131. package/es/point/shaders/simplePoint_frag.glsl +0 -7
  132. package/es/point/shaders/simplePoint_vert.glsl +3 -45
  133. package/es/point/shaders/text_frag.glsl +6 -19
  134. package/es/point/shaders/text_vert.glsl +5 -66
  135. package/es/point/shape/extrude.js +4 -13
  136. package/es/polygon/index.d.ts +1 -0
  137. package/es/polygon/index.js +12 -40
  138. package/es/polygon/models/extrude.d.ts +0 -3
  139. package/es/polygon/models/extrude.js +122 -162
  140. package/es/polygon/models/fill.d.ts +0 -4
  141. package/es/polygon/models/fill.js +57 -130
  142. package/es/polygon/models/index.js +3 -2
  143. package/es/polygon/models/ocean.js +42 -76
  144. package/es/polygon/models/water.js +37 -71
  145. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
  146. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
  147. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
  148. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
  149. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
  150. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
  151. package/es/polygon/shaders/polygon_frag.glsl +0 -5
  152. package/es/polygon/shaders/polygon_linear_frag.glsl +0 -8
  153. package/es/polygon/shaders/polygon_linear_vert.glsl +0 -32
  154. package/es/polygon/shaders/polygon_vert.glsl +1 -27
  155. package/es/raster/buffers/triangulation.js +2 -4
  156. package/es/raster/index.js +9 -32
  157. package/es/raster/models/raster.js +80 -116
  158. package/es/raster/models/rasterRgb.js +84 -127
  159. package/es/raster/models/rasterTerrainRgb.js +56 -84
  160. package/es/tile/interaction/getRasterData.js +14 -20
  161. package/es/tile/interaction/utils.js +7 -9
  162. package/es/tile/manager/base.js +63 -96
  163. package/es/tile/service/TileLayerService.js +33 -55
  164. package/es/tile/service/TilePickService.js +26 -40
  165. package/es/tile/service/TileSourceService.js +3 -7
  166. package/es/tile/tileFactory/DebugTile.js +29 -46
  167. package/es/tile/tileFactory/ImageTile.js +20 -38
  168. package/es/tile/tileFactory/MaskTile.js +22 -43
  169. package/es/tile/tileFactory/RasterRGBTile.js +22 -42
  170. package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
  171. package/es/tile/tileFactory/RasterTile.js +30 -53
  172. package/es/tile/tileFactory/Tile.js +63 -97
  173. package/es/tile/tileFactory/VectorTile.js +41 -68
  174. package/es/tile/tileFactory/index.js +0 -11
  175. package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
  176. package/es/tile/tileFactory/util.js +0 -3
  177. package/es/tile/tileLayer/BaseLayer.js +105 -146
  178. package/es/tile/utils.js +1 -1
  179. package/es/utils/blend.js +0 -2
  180. package/es/utils/collision-index.js +9 -16
  181. package/es/utils/extrude_polyline.js +101 -149
  182. package/es/utils/grid-index.js +2 -27
  183. package/es/utils/identityScale.js +0 -8
  184. package/es/utils/layerData.js +32 -46
  185. package/es/utils/multiPassRender.js +11 -13
  186. package/es/utils/polylineNormal.js +31 -37
  187. package/es/utils/simpleLine.js +2 -16
  188. package/es/utils/stencil.js +2 -3
  189. package/es/utils/symbol-layout.js +27 -53
  190. package/es/wind/index.js +9 -29
  191. package/es/wind/models/utils.js +26 -51
  192. package/es/wind/models/wind.js +101 -147
  193. package/es/wind/models/windRender.js +53 -66
  194. package/lib/Geometry/index.js +9 -38
  195. package/lib/Geometry/models/billboard.js +51 -97
  196. package/lib/Geometry/models/index.js +0 -5
  197. package/lib/Geometry/models/plane.js +79 -151
  198. package/lib/Geometry/models/sprite.js +60 -127
  199. package/lib/canvas/index.js +10 -40
  200. package/lib/canvas/models/canvas.js +41 -101
  201. package/lib/canvas/models/index.js +0 -3
  202. package/lib/citybuliding/building.js +8 -35
  203. package/lib/citybuliding/models/build.js +57 -92
  204. package/lib/core/BaseLayer.js +358 -520
  205. package/lib/core/BaseModel.js +117 -441
  206. package/lib/core/CommonStyleAttribute.js +72 -0
  207. package/lib/core/LayerPickService.js +21 -37
  208. package/lib/core/TextureService.js +0 -16
  209. package/lib/core/interface.js +21 -31
  210. package/lib/core/schema.js +0 -1
  211. package/lib/core/shape/Path.js +14 -31
  212. package/lib/core/shape/extrude.js +27 -59
  213. package/lib/core/triangulation.js +125 -153
  214. package/lib/earth/index.js +9 -43
  215. package/lib/earth/models/atmosphere.js +30 -63
  216. package/lib/earth/models/base.js +47 -90
  217. package/lib/earth/models/bloomsphere.js +30 -63
  218. package/lib/earth/utils.js +7 -31
  219. package/lib/heatmap/index.js +10 -48
  220. package/lib/heatmap/models/grid.js +29 -61
  221. package/lib/heatmap/models/grid3d.js +29 -61
  222. package/lib/heatmap/models/heatmap.js +99 -166
  223. package/lib/heatmap/models/hexagon.js +29 -61
  224. package/lib/heatmap/models/index.js +0 -6
  225. package/lib/heatmap/shaders/grid_vert.glsl +2 -2
  226. package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
  227. package/lib/heatmap/shaders/hexagon_vert.glsl +2 -2
  228. package/lib/heatmap/triangulation.js +0 -5
  229. package/lib/image/index.js +9 -36
  230. package/lib/image/models/image.js +66 -109
  231. package/lib/image/models/index.js +0 -3
  232. package/lib/index.js +7 -61
  233. package/lib/line/index.js +12 -42
  234. package/lib/line/models/arc.js +70 -170
  235. package/lib/line/models/arc_3d.js +65 -159
  236. package/lib/line/models/earthArc_3d.js +64 -159
  237. package/lib/line/models/flow.js +174 -0
  238. package/lib/line/models/great_circle.js +57 -146
  239. package/lib/line/models/index.js +3 -14
  240. package/lib/line/models/line.js +96 -194
  241. package/lib/line/models/linearline.js +46 -127
  242. package/lib/line/models/simpleLine.js +42 -124
  243. package/lib/line/models/wall.js +52 -103
  244. package/lib/line/shaders/dash/arc_dash_frag.glsl +3 -6
  245. package/lib/line/shaders/dash/arc_dash_vert.glsl +6 -46
  246. package/lib/line/shaders/dash/line_dash_frag.glsl +4 -7
  247. package/lib/line/shaders/dash/line_dash_vert.glsl +3 -33
  248. package/lib/line/shaders/flow/flow_line_frag.glsl +13 -0
  249. package/lib/line/shaders/flow/flow_line_vert.glsl +83 -0
  250. package/lib/line/shaders/line_arc_3d_frag.glsl +6 -6
  251. package/lib/line/shaders/line_arc_3d_vert.glsl +4 -34
  252. package/lib/line/shaders/line_arc_frag.glsl +7 -11
  253. package/lib/line/shaders/line_arc_great_circle_frag.glsl +5 -6
  254. package/lib/line/shaders/line_arc_great_circle_vert.glsl +4 -32
  255. package/lib/line/shaders/line_arc_vert.glsl +9 -45
  256. package/lib/line/shaders/line_frag.glsl +15 -17
  257. package/lib/line/shaders/line_vert.glsl +3 -34
  258. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
  259. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
  260. package/lib/line/shaders/linear/arc_linear_frag.glsl +2 -30
  261. package/lib/line/shaders/linear/arc_linear_vert.glsl +9 -45
  262. package/lib/line/shaders/linear/line_linear_frag.glsl +5 -6
  263. package/lib/line/shaders/linearLine/line_linear_frag.glsl +2 -14
  264. package/lib/line/shaders/linearLine/line_linear_vert.glsl +14 -32
  265. package/lib/line/shaders/simple/simpleline_frag.glsl +1 -5
  266. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
  267. package/lib/line/shaders/simple/simpleline_vert.glsl +7 -33
  268. package/lib/mask/index.js +9 -36
  269. package/lib/mask/models/fill.js +29 -63
  270. package/lib/mask/models/index.js +0 -3
  271. package/lib/plugins/DataMappingPlugin.js +90 -152
  272. package/lib/plugins/DataSourcePlugin.js +45 -76
  273. package/lib/plugins/FeatureScalePlugin.js +67 -138
  274. package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
  275. package/lib/plugins/LayerMaskPlugin.js +4 -17
  276. package/lib/plugins/LayerModelPlugin.js +80 -113
  277. package/lib/plugins/LayerStylePlugin.js +4 -14
  278. package/lib/plugins/LightingPlugin.js +12 -25
  279. package/lib/plugins/MultiPassRendererPlugin.js +11 -22
  280. package/lib/plugins/PixelPickingPlugin.js +12 -27
  281. package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
  282. package/lib/plugins/ShaderUniformPlugin.js +15 -36
  283. package/lib/plugins/UpdateModelPlugin.js +1 -10
  284. package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
  285. package/lib/point/index.js +27 -83
  286. package/lib/point/models/earthExtrude.js +60 -150
  287. package/lib/point/models/earthFill.js +59 -170
  288. package/lib/point/models/extrude.js +60 -150
  289. package/lib/point/models/fill.js +65 -167
  290. package/lib/point/models/fillmage.js +64 -155
  291. package/lib/point/models/image.js +52 -136
  292. package/lib/point/models/index.js +1 -12
  293. package/lib/point/models/normal.js +32 -66
  294. package/lib/point/models/radar.js +42 -85
  295. package/lib/point/models/simplePoint.js +46 -125
  296. package/lib/point/models/text.js +209 -350
  297. package/lib/point/shaders/animate/wave_frag.glsl +1 -11
  298. package/lib/point/shaders/earth/extrude_frag.glsl +5 -17
  299. package/lib/point/shaders/earth/extrude_vert.glsl +14 -29
  300. package/lib/point/shaders/earth/fill_frag.glsl +5 -14
  301. package/lib/point/shaders/earth/fill_vert.glsl +1 -75
  302. package/lib/point/shaders/extrude/extrude_frag.glsl +3 -29
  303. package/lib/point/shaders/extrude/extrude_vert.glsl +27 -35
  304. package/lib/point/shaders/fill_frag.glsl +9 -20
  305. package/lib/point/shaders/fill_vert.glsl +16 -101
  306. package/lib/point/shaders/image/fillImage_frag.glsl +2 -5
  307. package/lib/point/shaders/image/fillImage_vert.glsl +4 -47
  308. package/lib/point/shaders/image_frag.glsl +1 -5
  309. package/lib/point/shaders/image_vert.glsl +1 -44
  310. package/lib/point/shaders/normal_frag.glsl +0 -2
  311. package/lib/point/shaders/normal_vert.glsl +2 -1
  312. package/lib/point/shaders/radar/radar_vert.glsl +2 -2
  313. package/lib/point/shaders/simplePoint_frag.glsl +0 -7
  314. package/lib/point/shaders/simplePoint_vert.glsl +3 -45
  315. package/lib/point/shaders/text_frag.glsl +6 -19
  316. package/lib/point/shaders/text_vert.glsl +5 -66
  317. package/lib/point/shape/extrude.js +4 -20
  318. package/lib/polygon/index.js +12 -48
  319. package/lib/polygon/models/extrude.js +122 -173
  320. package/lib/polygon/models/fill.js +57 -140
  321. package/lib/polygon/models/index.js +2 -14
  322. package/lib/polygon/models/ocean.js +42 -88
  323. package/lib/polygon/models/water.js +37 -82
  324. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
  325. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
  326. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
  327. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
  328. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
  329. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
  330. package/lib/polygon/shaders/polygon_frag.glsl +0 -5
  331. package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -8
  332. package/lib/polygon/shaders/polygon_linear_vert.glsl +0 -32
  333. package/lib/polygon/shaders/polygon_vert.glsl +1 -27
  334. package/lib/raster/buffers/triangulation.js +3 -7
  335. package/lib/raster/index.js +9 -40
  336. package/lib/raster/models/index.js +0 -5
  337. package/lib/raster/models/raster.js +80 -125
  338. package/lib/raster/models/rasterRgb.js +84 -139
  339. package/lib/raster/models/rasterTerrainRgb.js +56 -93
  340. package/lib/tile/interaction/getRasterData.js +14 -25
  341. package/lib/tile/interaction/utils.js +7 -19
  342. package/lib/tile/manager/base.js +63 -104
  343. package/lib/tile/service/TileLayerService.js +33 -60
  344. package/lib/tile/service/TilePickService.js +26 -48
  345. package/lib/tile/service/TileSourceService.js +2 -16
  346. package/lib/tile/style/utils.js +0 -3
  347. package/lib/tile/tileFactory/DebugTile.js +29 -54
  348. package/lib/tile/tileFactory/ImageTile.js +20 -46
  349. package/lib/tile/tileFactory/MaskTile.js +22 -51
  350. package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
  351. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
  352. package/lib/tile/tileFactory/RasterTile.js +30 -63
  353. package/lib/tile/tileFactory/Tile.js +63 -102
  354. package/lib/tile/tileFactory/VectorTile.js +41 -76
  355. package/lib/tile/tileFactory/index.js +0 -25
  356. package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
  357. package/lib/tile/tileFactory/util.js +0 -9
  358. package/lib/tile/tileLayer/BaseLayer.js +105 -153
  359. package/lib/tile/utils.js +1 -5
  360. package/lib/utils/blend.js +0 -5
  361. package/lib/utils/collision-index.js +9 -25
  362. package/lib/utils/extrude_polyline.js +101 -181
  363. package/lib/utils/grid-index.js +2 -28
  364. package/lib/utils/identityScale.js +0 -9
  365. package/lib/utils/layerData.js +32 -51
  366. package/lib/utils/multiPassRender.js +11 -16
  367. package/lib/utils/polylineNormal.js +31 -66
  368. package/lib/utils/simpleLine.js +2 -21
  369. package/lib/utils/stencil.js +0 -4
  370. package/lib/utils/symbol-layout.js +27 -55
  371. package/lib/wind/index.js +9 -37
  372. package/lib/wind/models/index.js +0 -3
  373. package/lib/wind/models/utils.js +26 -62
  374. package/lib/wind/models/wind.js +101 -157
  375. package/lib/wind/models/windRender.js +53 -71
  376. package/lib/wind/models/windShader.js +0 -1
  377. package/package.json +7 -7
  378. package/es/line/models/half.js +0 -298
  379. package/es/line/shaders/half/line_half_frag.glsl +0 -53
  380. package/es/line/shaders/half/line_half_vert.glsl +0 -169
  381. package/es/utils/dataMappingStyle.d.ts +0 -31
  382. package/es/utils/dataMappingStyle.js +0 -147
  383. package/lib/line/models/half.js +0 -315
  384. package/lib/line/shaders/half/line_half_frag.glsl +0 -53
  385. package/lib/line/shaders/half/line_half_vert.glsl +0 -169
  386. package/lib/utils/dataMappingStyle.js +0 -151
@@ -6,9 +6,7 @@ import _createClass from "@babel/runtime/helpers/esm/createClass";
6
6
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
7
7
  import _applyDecoratedDescriptor from "@babel/runtime/helpers/esm/applyDecoratedDescriptor";
8
8
  import _initializerWarningHelper from "@babel/runtime/helpers/esm/initializerWarningHelper";
9
-
10
9
  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
11
-
12
10
  import _regeneratorRuntime from "@babel/runtime/regenerator";
13
11
  import { IDebugLog, ILayerStage, TYPES } from '@antv/l7-core';
14
12
  import { Version } from '@antv/l7-maps';
@@ -19,35 +17,27 @@ import 'reflect-metadata';
19
17
  var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService), _dec3 = inject(TYPES.IFontService), _dec(_class = (_class2 = /*#__PURE__*/function () {
20
18
  function DataMappingPlugin() {
21
19
  _classCallCheck(this, DataMappingPlugin);
22
-
23
20
  _initializerDefineProperty(this, "mapService", _descriptor, this);
24
-
25
21
  _initializerDefineProperty(this, "fontService", _descriptor2, this);
26
22
  }
27
-
28
23
  _createClass(DataMappingPlugin, [{
29
24
  key: "apply",
30
25
  value: function apply(layer, _ref) {
31
26
  var _this = this;
32
-
33
27
  var styleAttributeService = _ref.styleAttributeService;
34
28
  layer.hooks.init.tapPromise('DataMappingPlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
35
29
  return _regeneratorRuntime.wrap(function _callee$(_context) {
36
- while (1) {
37
- switch (_context.prev = _context.next) {
38
- case 0:
39
- layer.log(IDebugLog.MappingStart, ILayerStage.INIT); // 初始化重新生成 map
40
-
41
- _this.generateMaping(layer, {
42
- styleAttributeService: styleAttributeService
43
- });
44
-
45
- layer.log(IDebugLog.MappingEnd, ILayerStage.INIT);
46
-
47
- case 3:
48
- case "end":
49
- return _context.stop();
50
- }
30
+ while (1) switch (_context.prev = _context.next) {
31
+ case 0:
32
+ layer.log(IDebugLog.MappingStart, ILayerStage.INIT);
33
+ // 初始化重新生成 map
34
+ _this.generateMaping(layer, {
35
+ styleAttributeService: styleAttributeService
36
+ });
37
+ layer.log(IDebugLog.MappingEnd, ILayerStage.INIT);
38
+ case 3:
39
+ case "end":
40
+ return _context.stop();
51
41
  }
52
42
  }, _callee);
53
43
  })));
@@ -55,104 +45,95 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
55
45
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(flag) {
56
46
  var mappingResult;
57
47
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
58
- while (1) {
59
- switch (_context2.prev = _context2.next) {
60
- case 0:
61
- if (flag) {
62
- _context2.next = 2;
63
- break;
64
- }
65
-
66
- return _context2.abrupt("return", flag);
67
-
68
- case 2:
69
- layer.dataState.dataMappingNeedUpdate = false;
70
- layer.log(IDebugLog.MappingStart, ILayerStage.UPDATE);
71
- mappingResult = _this.generateMaping(layer, {
72
- styleAttributeService: styleAttributeService
73
- });
74
- layer.log(IDebugLog.MappingEnd, ILayerStage.UPDATE);
75
- return _context2.abrupt("return", mappingResult);
76
-
77
- case 7:
78
- case "end":
79
- return _context2.stop();
80
- }
48
+ while (1) switch (_context2.prev = _context2.next) {
49
+ case 0:
50
+ if (flag) {
51
+ _context2.next = 2;
52
+ break;
53
+ }
54
+ return _context2.abrupt("return", flag);
55
+ case 2:
56
+ layer.dataState.dataMappingNeedUpdate = false;
57
+ layer.log(IDebugLog.MappingStart, ILayerStage.UPDATE);
58
+ mappingResult = _this.generateMaping(layer, {
59
+ styleAttributeService: styleAttributeService
60
+ });
61
+ layer.log(IDebugLog.MappingEnd, ILayerStage.UPDATE);
62
+ return _context2.abrupt("return", mappingResult);
63
+ case 7:
64
+ case "end":
65
+ return _context2.stop();
81
66
  }
82
67
  }, _callee2);
83
68
  }));
84
-
85
69
  return function (_x) {
86
70
  return _ref3.apply(this, arguments);
87
71
  };
88
- }()); // remapping before render
72
+ }());
89
73
 
74
+ // remapping before render
90
75
  layer.hooks.beforeRender.tap('DataMappingPlugin', function () {
91
76
  var source = layer.getSource();
92
-
93
77
  if (layer.layerModelNeedUpdate || !source || !source.inited) {
94
78
  return;
95
79
  }
96
-
97
80
  var attributes = styleAttributeService.getLayerStyleAttributes() || [];
98
81
  var filter = styleAttributeService.getLayerStyleAttribute('filter');
99
- var dataArray = source.data.dataArray; // TODO 数据为空的情况
100
-
82
+ var dataArray = source.data.dataArray;
83
+ // TODO 数据为空的情况
101
84
  if (Array.isArray(dataArray) && dataArray.length === 0) {
102
85
  return;
103
86
  }
104
-
105
87
  var attributesToRemapping = attributes.filter(function (attribute) {
106
88
  return attribute.needRemapping;
107
89
  } // 如果filter变化
108
90
  );
109
- var filterData = dataArray; // 数据过滤完 再执行数据映射
110
91
 
92
+ var filterData = dataArray;
93
+ // 数据过滤完 再执行数据映射
111
94
  if (filter !== null && filter !== void 0 && filter.needRemapping && filter !== null && filter !== void 0 && filter.scale) {
112
95
  filterData = dataArray.filter(function (record) {
113
96
  return _this.applyAttributeMapping(filter, record)[0];
114
97
  });
115
98
  }
116
-
117
99
  if (attributesToRemapping.length) {
118
100
  // 过滤数据
119
- var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData());
101
+ var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData() // TODO 优化
102
+ );
120
103
 
121
104
  layer.setEncodedData(encodeData);
122
- } // 处理文本更新,更新文字形状
123
- // layer.emit('remapping', null);
105
+ }
124
106
 
107
+ // 处理文本更新,更新文字形状
108
+ // layer.emit('remapping', null);
125
109
  });
126
110
  }
127
111
  }, {
128
112
  key: "generateMaping",
129
113
  value: function generateMaping(layer, _ref4) {
130
114
  var _this2 = this;
131
-
132
115
  var styleAttributeService = _ref4.styleAttributeService;
133
116
  var attributes = styleAttributeService.getLayerStyleAttributes() || [];
134
117
  var filter = styleAttributeService.getLayerStyleAttribute('filter');
135
118
  var dataArray = layer.getSource().data.dataArray;
136
- var filterData = dataArray; // 数据过滤完 再执行数据映射
137
-
119
+ var filterData = dataArray;
120
+ // 数据过滤完 再执行数据映射
138
121
  if (filter !== null && filter !== void 0 && filter.scale) {
139
122
  filterData = dataArray.filter(function (record) {
140
123
  return _this2.applyAttributeMapping(filter, record)[0];
141
124
  });
142
- } // Tip: layer 对数据做处理
125
+ }
126
+ // Tip: layer 对数据做处理
143
127
  // 数据处理 在数据进行 mapping 生成 encodeData 之前对数据进行处理
144
128
  // 在各个 layer 中继承
145
129
 
146
-
147
- filterData = layer.processData(filterData);
130
+ filterData = layer.processData(filterData); // 目前只有简单线需要处理
148
131
  var encodeData = this.mapping(layer, attributes, filterData, undefined);
149
132
  layer.setEncodedData(encodeData);
150
-
151
133
  if (dataArray.length === 0 && layer.encodeDataLength === 0) {
152
134
  return false;
153
- } // 对外暴露事件
154
-
155
-
135
+ }
136
+ // 对外暴露事件
156
137
  layer.emit('dataUpdate', null);
157
138
  return true;
158
139
  }
@@ -160,13 +141,11 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
160
141
  key: "mapping",
161
142
  value: function mapping(layer, attributes, data, predata) {
162
143
  var _this3 = this;
163
-
164
144
  var _ref5 = layer.getLayerConfig(),
165
- _ref5$arrow = _ref5.arrow,
166
- arrow = _ref5$arrow === void 0 ? {
167
- enable: false
168
- } : _ref5$arrow;
169
-
145
+ _ref5$arrow = _ref5.arrow,
146
+ arrow = _ref5$arrow === void 0 ? {
147
+ enable: false
148
+ } : _ref5$arrow;
170
149
  var usedAttributes = attributes.filter(function (attribute) {
171
150
  return attribute.scale !== undefined;
172
151
  }).filter(function (attribute) {
@@ -174,52 +153,47 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
174
153
  });
175
154
  var mappedData = data.map(function (record, i) {
176
155
  var preRecord = predata ? predata[i] : {};
177
-
178
156
  var encodeRecord = _objectSpread({
179
157
  id: record._id,
180
158
  coordinates: record.coordinates
181
159
  }, preRecord);
182
-
183
160
  usedAttributes.forEach(function (attribute) {
184
- var values = _this3.applyAttributeMapping(attribute, record); // TODO: 支持每个属性配置 postprocess
185
-
186
-
187
- if (attribute.name === 'color') {
161
+ var values = _this3.applyAttributeMapping(attribute, record);
162
+ // TODO: 支持每个属性配置 postprocess}
163
+ if (attribute.name === 'color' || attribute.name === 'stroke') {
188
164
  values = values.map(function (c) {
189
165
  return rgb2arr(c);
190
166
  });
191
- } // @ts-ignore
192
-
193
-
194
- encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values; // 增加对 layer/text/iconfont unicode 映射的解析
167
+ }
168
+ // @ts-ignore
169
+ encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values;
195
170
 
171
+ // 增加对 layer/text/iconfont unicode 映射的解析
196
172
  if (attribute.name === 'shape') {
197
173
  encodeRecord.shape = _this3.fontService.getIconFontKey(encodeRecord[attribute.name]);
198
174
  }
199
175
  });
200
-
201
- if (arrow.enable && (encodeRecord.shape === 'line' || encodeRecord.shape === 'halfLine')) {
176
+ if (arrow.enable && encodeRecord.shape === 'line') {
202
177
  // 只有在线图层且支持配置箭头的时候进行插入顶点的处理
203
- var coords = encodeRecord.coordinates; // @ts-ignore
204
-
178
+ var coords = encodeRecord.coordinates;
179
+ // @ts-ignore
205
180
  if (layer.arrowInsertCount < layer.encodeDataLength) {
206
181
  // Tip: arrowInsert 的判断用于确保每一条线数据 arrow 的属性点只会被植入一次
207
182
  var arrowPoint = _this3.getArrowPoints(coords[0], coords[1]);
208
-
209
- encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint); // @ts-ignore
210
-
183
+ encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint);
184
+ // @ts-ignore
211
185
  layer.arrowInsertCount++;
212
186
  }
213
187
  }
214
-
215
188
  return encodeRecord;
216
189
  });
217
190
  attributes.forEach(function (attribute) {
218
191
  attribute.needRemapping = false;
219
- }); // 调整数据兼容 Amap2.0
220
-
221
- this.adjustData2Amap2Coordinates(mappedData, layer); // 调整数据兼容 SimpleCoordinates
192
+ });
193
+ // 调整数据兼容 Amap2.0
194
+ this.adjustData2Amap2Coordinates(mappedData, layer);
222
195
 
196
+ // 调整数据兼容 SimpleCoordinates
223
197
  this.adjustData2SimpleCoordinates(mappedData);
224
198
  return mappedData;
225
199
  }
@@ -227,48 +201,29 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
227
201
  key: "adjustData2Amap2Coordinates",
228
202
  value: function adjustData2Amap2Coordinates(mappedData, layer) {
229
203
  var _this4 = this;
230
-
231
204
  // 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
232
205
  if (mappedData.length > 0 && this.mapService.version === Version['GAODE2.x']) {
233
206
  var layerCenter = layer.coordCenter || layer.getSource().center;
234
-
235
- if (typeof mappedData[0].coordinates[0] === 'number') {
236
- // 单个的点数据
207
+ // 单个的点数据
208
+ // @ts-ignore
209
+ mappedData
210
+ // TODO: 避免经纬度被重复计算导致坐标位置偏移
211
+ .filter(function (d) {
212
+ return !d.originCoordinates;
213
+ }).map(function (d) {
214
+ d.version = Version['GAODE2.x'];
237
215
  // @ts-ignore
238
- mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
239
- .filter(function (d) {
240
- return !d.originCoordinates;
241
- }).map(function (d) {
242
- d.version = Version['GAODE2.x']; // @ts-ignore
243
-
244
- d.originCoordinates = cloneDeep(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
245
- // @ts-ignore
246
- // d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
247
-
248
- d.coordinates = _this4.mapService.lngLatToCoordByLayer(d.coordinates, layerCenter);
249
- });
250
- } else {
251
- // 连续的线、面数据
252
- mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
253
- .filter(function (d) {
254
- return !d.originCoordinates;
255
- }).map(function (d) {
256
- d.version = Version['GAODE2.x']; // @ts-ignore
257
-
258
- d.originCoordinates = cloneDeep(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
259
- // @ts-ignore
260
- // d.coordinates = this.mapService.lngLatToCoords(d.coordinates);
261
-
262
- d.coordinates = _this4.mapService.lngLatToCoordsByLayer(d.coordinates, layerCenter);
263
- });
264
- }
216
+ d.originCoordinates = cloneDeep(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
217
+ // @ts-ignore
218
+ // d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
219
+ d.coordinates = _this4.mapService.coordToAMap2RelativeCoordinates(d.coordinates, layerCenter);
220
+ });
265
221
  }
266
222
  }
267
223
  }, {
268
224
  key: "adjustData2SimpleCoordinates",
269
225
  value: function adjustData2SimpleCoordinates(mappedData) {
270
226
  var _this5 = this;
271
-
272
227
  if (mappedData.length > 0 && this.mapService.version === Version.SIMPLE) {
273
228
  mappedData.map(function (d) {
274
229
  if (!d.simpleCoordinate) {
@@ -282,11 +237,9 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
282
237
  key: "unProjectCoordinates",
283
238
  value: function unProjectCoordinates(coordinates) {
284
239
  var _this6 = this;
285
-
286
240
  if (typeof coordinates[0] === 'number') {
287
241
  return this.mapService.simpleMapCoord.unproject(coordinates);
288
242
  }
289
-
290
243
  if (coordinates[0] && coordinates[0][0] instanceof Array) {
291
244
  // @ts-ignore
292
245
  var coords = [];
@@ -295,20 +248,20 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
295
248
  var c1 = [];
296
249
  coord.map(function (co) {
297
250
  c1.push(_this6.mapService.simpleMapCoord.unproject(co));
298
- }); // @ts-ignore
299
-
251
+ });
252
+ // @ts-ignore
300
253
  coords.push(c1);
301
- }); // @ts-ignore
302
-
254
+ });
255
+ // @ts-ignore
303
256
  return coords;
304
257
  } else {
305
258
  // @ts-ignore
306
- var _coords = []; // @ts-ignore
307
-
259
+ var _coords = [];
260
+ // @ts-ignore
308
261
  coordinates.map(function (coord) {
309
262
  _coords.push(_this6.mapService.simpleMapCoord.unproject(coord));
310
- }); // @ts-ignore
311
-
263
+ });
264
+ // @ts-ignore
312
265
  return _coords;
313
266
  }
314
267
  }
@@ -316,25 +269,22 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
316
269
  key: "applyAttributeMapping",
317
270
  value: function applyAttributeMapping(attribute, record) {
318
271
  var _attribute$scale;
319
-
320
272
  if (!attribute.scale) {
321
273
  return [];
322
274
  }
323
-
324
275
  var scalers = (attribute === null || attribute === void 0 ? void 0 : (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.scalers) || [];
325
276
  var params = [];
326
277
  scalers.forEach(function (_ref6) {
327
278
  var _attribute$scale2;
328
-
329
279
  var field = _ref6.field;
330
-
331
280
  if (record.hasOwnProperty(field) || ((_attribute$scale2 = attribute.scale) === null || _attribute$scale2 === void 0 ? void 0 : _attribute$scale2.type) === 'variable') {
332
281
  // TODO:多字段,常量
333
282
  params.push(record[field]);
334
283
  }
335
284
  });
336
285
  var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
337
- return mappingResult; // return attribute.mapping ? attribute.mapping(params) : [];
286
+ return mappingResult;
287
+ // return attribute.mapping ? attribute.mapping(params) : [];
338
288
  }
339
289
  }, {
340
290
  key: "getArrowPoints",
@@ -345,7 +295,6 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
345
295
  return arrowPoint;
346
296
  }
347
297
  }]);
348
-
349
298
  return DataMappingPlugin;
350
299
  }(), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "mapService", [_dec2], {
351
300
  configurable: true,
@@ -1,9 +1,7 @@
1
1
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
2
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
3
  import _createClass from "@babel/runtime/helpers/esm/createClass";
4
-
5
4
  var _dec, _class;
6
-
7
5
  import _regeneratorRuntime from "@babel/runtime/regenerator";
8
6
  import { IDebugLog, ILayerStage, TYPES } from '@antv/l7-core';
9
7
  import Source from '@antv/l7-source';
@@ -13,79 +11,64 @@ var DataSourcePlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function
13
11
  function DataSourcePlugin() {
14
12
  _classCallCheck(this, DataSourcePlugin);
15
13
  }
16
-
17
14
  _createClass(DataSourcePlugin, [{
18
15
  key: "apply",
19
16
  value: function apply(layer) {
20
17
  var _this = this;
21
-
22
18
  this.mapService = layer.getContainer().get(TYPES.IMapService);
23
19
  layer.hooks.init.tapPromise('DataSourcePlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
24
20
  var source, _ref2, data, options;
25
-
26
21
  return _regeneratorRuntime.wrap(function _callee$(_context) {
27
- while (1) {
28
- switch (_context.prev = _context.next) {
29
- case 0:
30
- layer.log(IDebugLog.SourceInitStart, ILayerStage.INIT);
31
- source = layer.getSource();
32
-
33
- if (!source) {
34
- // Tip: 用户没有传入 source 的时候使用图层的默认数据
35
- _ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
36
- source = new Source(data, options);
37
- layer.setSource(source);
38
- }
39
-
40
- if (!source.inited) {
41
- _context.next = 8;
42
- break;
43
- }
44
-
45
- _this.updateClusterData(layer);
46
-
47
- layer.log(IDebugLog.SourceInitEnd, ILayerStage.INIT);
48
- _context.next = 10;
22
+ while (1) switch (_context.prev = _context.next) {
23
+ case 0:
24
+ layer.log(IDebugLog.SourceInitStart, ILayerStage.INIT);
25
+ source = layer.getSource();
26
+ if (!source) {
27
+ // Tip: 用户没有传入 source 的时候使用图层的默认数据
28
+ _ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
29
+ source = new Source(data, options);
30
+ layer.setSource(source);
31
+ }
32
+ if (!source.inited) {
33
+ _context.next = 8;
49
34
  break;
50
-
51
- case 8:
52
- _context.next = 10;
53
- return new Promise(function (resolve) {
54
- source.on('update', function (e) {
55
- if (e.type === 'inited') {
56
- _this.updateClusterData(layer);
57
-
58
- layer.log(IDebugLog.SourceInitEnd, ILayerStage.INIT);
59
- }
60
-
61
- resolve(null);
62
- });
35
+ }
36
+ _this.updateClusterData(layer);
37
+ layer.log(IDebugLog.SourceInitEnd, ILayerStage.INIT);
38
+ _context.next = 10;
39
+ break;
40
+ case 8:
41
+ _context.next = 10;
42
+ return new Promise(function (resolve) {
43
+ source.on('update', function (e) {
44
+ if (e.type === 'inited') {
45
+ _this.updateClusterData(layer);
46
+ layer.log(IDebugLog.SourceInitEnd, ILayerStage.INIT);
47
+ }
48
+ resolve(null);
63
49
  });
64
-
65
- case 10:
66
- case "end":
67
- return _context.stop();
68
- }
50
+ });
51
+ case 10:
52
+ case "end":
53
+ return _context.stop();
69
54
  }
70
55
  }, _callee);
71
- }))); // 检测数据是否需要更新
56
+ })));
72
57
 
58
+ // 检测数据是否需要更新
73
59
  layer.hooks.beforeRenderData.tapPromise('DataSourcePlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
74
60
  var neeUpdateCluster, dataSourceNeedUpdate, needScale;
75
61
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
76
- while (1) {
77
- switch (_context2.prev = _context2.next) {
78
- case 0:
79
- neeUpdateCluster = _this.updateClusterData(layer);
80
- dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
81
- layer.dataState.dataSourceNeedUpdate = false;
82
- needScale = neeUpdateCluster || dataSourceNeedUpdate;
83
- return _context2.abrupt("return", needScale);
84
-
85
- case 5:
86
- case "end":
87
- return _context2.stop();
88
- }
62
+ while (1) switch (_context2.prev = _context2.next) {
63
+ case 0:
64
+ neeUpdateCluster = _this.updateClusterData(layer);
65
+ dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
66
+ layer.dataState.dataSourceNeedUpdate = false;
67
+ needScale = neeUpdateCluster || dataSourceNeedUpdate;
68
+ return _context2.abrupt("return", needScale);
69
+ case 5:
70
+ case "end":
71
+ return _context2.stop();
89
72
  }
90
73
  }, _callee2);
91
74
  })));
@@ -97,33 +80,27 @@ var DataSourcePlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function
97
80
  if (layer.isTileLayer || layer.tileLayer || !layer.getSource()) {
98
81
  return false;
99
82
  }
100
-
101
83
  var source = layer.getSource();
102
84
  var cluster = source.cluster;
103
85
  var _source$clusterOption = source.clusterOptions.zoom,
104
- zoom = _source$clusterOption === void 0 ? 0 : _source$clusterOption;
86
+ zoom = _source$clusterOption === void 0 ? 0 : _source$clusterOption;
105
87
  var newZoom = this.mapService.getZoom() - 1;
106
88
  var dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
107
-
108
89
  if (cluster && dataSourceNeedUpdate) {
109
90
  // 数据发生更新
110
91
  source.updateClusterData(Math.floor(newZoom));
111
- } // 如果 dataSource 有更新,跳过 zoom 的判断,直接更新一次
112
-
113
-
92
+ }
93
+ // 如果 dataSource 有更新,跳过 zoom 的判断,直接更新一次
114
94
  if (cluster && Math.abs(layer.clusterZoom - newZoom) >= 1) {
115
95
  if (zoom !== Math.floor(newZoom)) {
116
96
  source.updateClusterData(Math.floor(newZoom));
117
97
  }
118
-
119
98
  layer.clusterZoom = newZoom;
120
99
  return true;
121
100
  }
122
-
123
101
  return false;
124
102
  }
125
103
  }]);
126
-
127
104
  return DataSourcePlugin;
128
105
  }()) || _class);
129
106
  export { DataSourcePlugin as default };