@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
@@ -1,74 +1,50 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
13
-
14
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
11
  var _initializerDefineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/initializerDefineProperty"));
17
-
18
12
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
-
20
13
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
21
-
22
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
15
  var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
25
-
26
16
  var _initializerWarningHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/initializerWarningHelper"));
27
-
28
17
  var _l7Core = require("@antv/l7-core");
29
-
30
18
  var _l7Maps = require("@antv/l7-maps");
31
-
32
19
  var _l7Utils = require("@antv/l7-utils");
33
-
34
20
  var _inversify = require("inversify");
35
-
36
21
  var _lodash = require("lodash");
37
-
38
22
  require("reflect-metadata");
39
-
40
23
  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
41
-
42
24
  var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inversify.inject)(_l7Core.TYPES.IMapService), _dec3 = (0, _inversify.inject)(_l7Core.TYPES.IFontService), _dec(_class = (_class2 = /*#__PURE__*/function () {
43
25
  function DataMappingPlugin() {
44
26
  (0, _classCallCheck2.default)(this, DataMappingPlugin);
45
27
  (0, _initializerDefineProperty2.default)(this, "mapService", _descriptor, this);
46
28
  (0, _initializerDefineProperty2.default)(this, "fontService", _descriptor2, this);
47
29
  }
48
-
49
30
  (0, _createClass2.default)(DataMappingPlugin, [{
50
31
  key: "apply",
51
32
  value: function apply(layer, _ref) {
52
33
  var _this = this;
53
-
54
34
  var styleAttributeService = _ref.styleAttributeService;
55
35
  layer.hooks.init.tapPromise('DataMappingPlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
56
36
  return _regenerator.default.wrap(function _callee$(_context) {
57
- while (1) {
58
- switch (_context.prev = _context.next) {
59
- case 0:
60
- layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.INIT); // 初始化重新生成 map
61
-
62
- _this.generateMaping(layer, {
63
- styleAttributeService: styleAttributeService
64
- });
65
-
66
- layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.INIT);
67
-
68
- case 3:
69
- case "end":
70
- return _context.stop();
71
- }
37
+ while (1) switch (_context.prev = _context.next) {
38
+ case 0:
39
+ layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.INIT);
40
+ // 初始化重新生成 map
41
+ _this.generateMaping(layer, {
42
+ styleAttributeService: styleAttributeService
43
+ });
44
+ layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.INIT);
45
+ case 3:
46
+ case "end":
47
+ return _context.stop();
72
48
  }
73
49
  }, _callee);
74
50
  })));
@@ -76,104 +52,95 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
76
52
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(flag) {
77
53
  var mappingResult;
78
54
  return _regenerator.default.wrap(function _callee2$(_context2) {
79
- while (1) {
80
- switch (_context2.prev = _context2.next) {
81
- case 0:
82
- if (flag) {
83
- _context2.next = 2;
84
- break;
85
- }
86
-
87
- return _context2.abrupt("return", flag);
88
-
89
- case 2:
90
- layer.dataState.dataMappingNeedUpdate = false;
91
- layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.UPDATE);
92
- mappingResult = _this.generateMaping(layer, {
93
- styleAttributeService: styleAttributeService
94
- });
95
- layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.UPDATE);
96
- return _context2.abrupt("return", mappingResult);
97
-
98
- case 7:
99
- case "end":
100
- return _context2.stop();
101
- }
55
+ while (1) switch (_context2.prev = _context2.next) {
56
+ case 0:
57
+ if (flag) {
58
+ _context2.next = 2;
59
+ break;
60
+ }
61
+ return _context2.abrupt("return", flag);
62
+ case 2:
63
+ layer.dataState.dataMappingNeedUpdate = false;
64
+ layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.UPDATE);
65
+ mappingResult = _this.generateMaping(layer, {
66
+ styleAttributeService: styleAttributeService
67
+ });
68
+ layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.UPDATE);
69
+ return _context2.abrupt("return", mappingResult);
70
+ case 7:
71
+ case "end":
72
+ return _context2.stop();
102
73
  }
103
74
  }, _callee2);
104
75
  }));
105
-
106
76
  return function (_x) {
107
77
  return _ref3.apply(this, arguments);
108
78
  };
109
- }()); // remapping before render
79
+ }());
110
80
 
81
+ // remapping before render
111
82
  layer.hooks.beforeRender.tap('DataMappingPlugin', function () {
112
83
  var source = layer.getSource();
113
-
114
84
  if (layer.layerModelNeedUpdate || !source || !source.inited) {
115
85
  return;
116
86
  }
117
-
118
87
  var attributes = styleAttributeService.getLayerStyleAttributes() || [];
119
88
  var filter = styleAttributeService.getLayerStyleAttribute('filter');
120
- var dataArray = source.data.dataArray; // TODO 数据为空的情况
121
-
89
+ var dataArray = source.data.dataArray;
90
+ // TODO 数据为空的情况
122
91
  if (Array.isArray(dataArray) && dataArray.length === 0) {
123
92
  return;
124
93
  }
125
-
126
94
  var attributesToRemapping = attributes.filter(function (attribute) {
127
95
  return attribute.needRemapping;
128
96
  } // 如果filter变化
129
97
  );
130
- var filterData = dataArray; // 数据过滤完 再执行数据映射
131
98
 
99
+ var filterData = dataArray;
100
+ // 数据过滤完 再执行数据映射
132
101
  if (filter !== null && filter !== void 0 && filter.needRemapping && filter !== null && filter !== void 0 && filter.scale) {
133
102
  filterData = dataArray.filter(function (record) {
134
103
  return _this.applyAttributeMapping(filter, record)[0];
135
104
  });
136
105
  }
137
-
138
106
  if (attributesToRemapping.length) {
139
107
  // 过滤数据
140
- var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData());
108
+ var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData() // TODO 优化
109
+ );
141
110
 
142
111
  layer.setEncodedData(encodeData);
143
- } // 处理文本更新,更新文字形状
144
- // layer.emit('remapping', null);
112
+ }
145
113
 
114
+ // 处理文本更新,更新文字形状
115
+ // layer.emit('remapping', null);
146
116
  });
147
117
  }
148
118
  }, {
149
119
  key: "generateMaping",
150
120
  value: function generateMaping(layer, _ref4) {
151
121
  var _this2 = this;
152
-
153
122
  var styleAttributeService = _ref4.styleAttributeService;
154
123
  var attributes = styleAttributeService.getLayerStyleAttributes() || [];
155
124
  var filter = styleAttributeService.getLayerStyleAttribute('filter');
156
125
  var dataArray = layer.getSource().data.dataArray;
157
- var filterData = dataArray; // 数据过滤完 再执行数据映射
158
-
126
+ var filterData = dataArray;
127
+ // 数据过滤完 再执行数据映射
159
128
  if (filter !== null && filter !== void 0 && filter.scale) {
160
129
  filterData = dataArray.filter(function (record) {
161
130
  return _this2.applyAttributeMapping(filter, record)[0];
162
131
  });
163
- } // Tip: layer 对数据做处理
132
+ }
133
+ // Tip: layer 对数据做处理
164
134
  // 数据处理 在数据进行 mapping 生成 encodeData 之前对数据进行处理
165
135
  // 在各个 layer 中继承
166
136
 
167
-
168
- filterData = layer.processData(filterData);
137
+ filterData = layer.processData(filterData); // 目前只有简单线需要处理
169
138
  var encodeData = this.mapping(layer, attributes, filterData, undefined);
170
139
  layer.setEncodedData(encodeData);
171
-
172
140
  if (dataArray.length === 0 && layer.encodeDataLength === 0) {
173
141
  return false;
174
- } // 对外暴露事件
175
-
176
-
142
+ }
143
+ // 对外暴露事件
177
144
  layer.emit('dataUpdate', null);
178
145
  return true;
179
146
  }
@@ -181,13 +148,11 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
181
148
  key: "mapping",
182
149
  value: function mapping(layer, attributes, data, predata) {
183
150
  var _this3 = this;
184
-
185
151
  var _ref5 = layer.getLayerConfig(),
186
- _ref5$arrow = _ref5.arrow,
187
- arrow = _ref5$arrow === void 0 ? {
188
- enable: false
189
- } : _ref5$arrow;
190
-
152
+ _ref5$arrow = _ref5.arrow,
153
+ arrow = _ref5$arrow === void 0 ? {
154
+ enable: false
155
+ } : _ref5$arrow;
191
156
  var usedAttributes = attributes.filter(function (attribute) {
192
157
  return attribute.scale !== undefined;
193
158
  }).filter(function (attribute) {
@@ -200,45 +165,42 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
200
165
  coordinates: record.coordinates
201
166
  }, preRecord);
202
167
  usedAttributes.forEach(function (attribute) {
203
- var values = _this3.applyAttributeMapping(attribute, record); // TODO: 支持每个属性配置 postprocess
204
-
205
-
206
- if (attribute.name === 'color') {
168
+ var values = _this3.applyAttributeMapping(attribute, record);
169
+ // TODO: 支持每个属性配置 postprocess}
170
+ if (attribute.name === 'color' || attribute.name === 'stroke') {
207
171
  values = values.map(function (c) {
208
172
  return (0, _l7Utils.rgb2arr)(c);
209
173
  });
210
- } // @ts-ignore
211
-
212
-
213
- encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values; // 增加对 layer/text/iconfont unicode 映射的解析
174
+ }
175
+ // @ts-ignore
176
+ encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values;
214
177
 
178
+ // 增加对 layer/text/iconfont unicode 映射的解析
215
179
  if (attribute.name === 'shape') {
216
180
  encodeRecord.shape = _this3.fontService.getIconFontKey(encodeRecord[attribute.name]);
217
181
  }
218
182
  });
219
-
220
- if (arrow.enable && (encodeRecord.shape === 'line' || encodeRecord.shape === 'halfLine')) {
183
+ if (arrow.enable && encodeRecord.shape === 'line') {
221
184
  // 只有在线图层且支持配置箭头的时候进行插入顶点的处理
222
- var coords = encodeRecord.coordinates; // @ts-ignore
223
-
185
+ var coords = encodeRecord.coordinates;
186
+ // @ts-ignore
224
187
  if (layer.arrowInsertCount < layer.encodeDataLength) {
225
188
  // Tip: arrowInsert 的判断用于确保每一条线数据 arrow 的属性点只会被植入一次
226
189
  var arrowPoint = _this3.getArrowPoints(coords[0], coords[1]);
227
-
228
- encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint); // @ts-ignore
229
-
190
+ encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint);
191
+ // @ts-ignore
230
192
  layer.arrowInsertCount++;
231
193
  }
232
194
  }
233
-
234
195
  return encodeRecord;
235
196
  });
236
197
  attributes.forEach(function (attribute) {
237
198
  attribute.needRemapping = false;
238
- }); // 调整数据兼容 Amap2.0
239
-
240
- this.adjustData2Amap2Coordinates(mappedData, layer); // 调整数据兼容 SimpleCoordinates
199
+ });
200
+ // 调整数据兼容 Amap2.0
201
+ this.adjustData2Amap2Coordinates(mappedData, layer);
241
202
 
203
+ // 调整数据兼容 SimpleCoordinates
242
204
  this.adjustData2SimpleCoordinates(mappedData);
243
205
  return mappedData;
244
206
  }
@@ -246,48 +208,29 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
246
208
  key: "adjustData2Amap2Coordinates",
247
209
  value: function adjustData2Amap2Coordinates(mappedData, layer) {
248
210
  var _this4 = this;
249
-
250
211
  // 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
251
212
  if (mappedData.length > 0 && this.mapService.version === _l7Maps.Version['GAODE2.x']) {
252
213
  var layerCenter = layer.coordCenter || layer.getSource().center;
253
-
254
- if (typeof mappedData[0].coordinates[0] === 'number') {
255
- // 单个的点数据
214
+ // 单个的点数据
215
+ // @ts-ignore
216
+ mappedData
217
+ // TODO: 避免经纬度被重复计算导致坐标位置偏移
218
+ .filter(function (d) {
219
+ return !d.originCoordinates;
220
+ }).map(function (d) {
221
+ d.version = _l7Maps.Version['GAODE2.x'];
256
222
  // @ts-ignore
257
- mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
258
- .filter(function (d) {
259
- return !d.originCoordinates;
260
- }).map(function (d) {
261
- d.version = _l7Maps.Version['GAODE2.x']; // @ts-ignore
262
-
263
- d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
264
- // @ts-ignore
265
- // d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
266
-
267
- d.coordinates = _this4.mapService.lngLatToCoordByLayer(d.coordinates, layerCenter);
268
- });
269
- } else {
270
- // 连续的线、面数据
271
- mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
272
- .filter(function (d) {
273
- return !d.originCoordinates;
274
- }).map(function (d) {
275
- d.version = _l7Maps.Version['GAODE2.x']; // @ts-ignore
276
-
277
- d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
278
- // @ts-ignore
279
- // d.coordinates = this.mapService.lngLatToCoords(d.coordinates);
280
-
281
- d.coordinates = _this4.mapService.lngLatToCoordsByLayer(d.coordinates, layerCenter);
282
- });
283
- }
223
+ d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
224
+ // @ts-ignore
225
+ // d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
226
+ d.coordinates = _this4.mapService.coordToAMap2RelativeCoordinates(d.coordinates, layerCenter);
227
+ });
284
228
  }
285
229
  }
286
230
  }, {
287
231
  key: "adjustData2SimpleCoordinates",
288
232
  value: function adjustData2SimpleCoordinates(mappedData) {
289
233
  var _this5 = this;
290
-
291
234
  if (mappedData.length > 0 && this.mapService.version === _l7Maps.Version.SIMPLE) {
292
235
  mappedData.map(function (d) {
293
236
  if (!d.simpleCoordinate) {
@@ -301,11 +244,9 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
301
244
  key: "unProjectCoordinates",
302
245
  value: function unProjectCoordinates(coordinates) {
303
246
  var _this6 = this;
304
-
305
247
  if (typeof coordinates[0] === 'number') {
306
248
  return this.mapService.simpleMapCoord.unproject(coordinates);
307
249
  }
308
-
309
250
  if (coordinates[0] && coordinates[0][0] instanceof Array) {
310
251
  // @ts-ignore
311
252
  var coords = [];
@@ -314,20 +255,20 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
314
255
  var c1 = [];
315
256
  coord.map(function (co) {
316
257
  c1.push(_this6.mapService.simpleMapCoord.unproject(co));
317
- }); // @ts-ignore
318
-
258
+ });
259
+ // @ts-ignore
319
260
  coords.push(c1);
320
- }); // @ts-ignore
321
-
261
+ });
262
+ // @ts-ignore
322
263
  return coords;
323
264
  } else {
324
265
  // @ts-ignore
325
- var _coords = []; // @ts-ignore
326
-
266
+ var _coords = [];
267
+ // @ts-ignore
327
268
  coordinates.map(function (coord) {
328
269
  _coords.push(_this6.mapService.simpleMapCoord.unproject(coord));
329
- }); // @ts-ignore
330
-
270
+ });
271
+ // @ts-ignore
331
272
  return _coords;
332
273
  }
333
274
  }
@@ -335,25 +276,22 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
335
276
  key: "applyAttributeMapping",
336
277
  value: function applyAttributeMapping(attribute, record) {
337
278
  var _attribute$scale;
338
-
339
279
  if (!attribute.scale) {
340
280
  return [];
341
281
  }
342
-
343
282
  var scalers = (attribute === null || attribute === void 0 ? void 0 : (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.scalers) || [];
344
283
  var params = [];
345
284
  scalers.forEach(function (_ref6) {
346
285
  var _attribute$scale2;
347
-
348
286
  var field = _ref6.field;
349
-
350
287
  if (record.hasOwnProperty(field) || ((_attribute$scale2 = attribute.scale) === null || _attribute$scale2 === void 0 ? void 0 : _attribute$scale2.type) === 'variable') {
351
288
  // TODO:多字段,常量
352
289
  params.push(record[field]);
353
290
  }
354
291
  });
355
292
  var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
356
- return mappingResult; // return attribute.mapping ? attribute.mapping(params) : [];
293
+ return mappingResult;
294
+ // return attribute.mapping ? attribute.mapping(params) : [];
357
295
  }
358
296
  }, {
359
297
  key: "getArrowPoints",
@@ -1,107 +1,81 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
12
  var _l7Core = require("@antv/l7-core");
19
-
20
13
  var _l7Source = _interopRequireDefault(require("@antv/l7-source"));
21
-
22
14
  var _inversify = require("inversify");
23
-
24
15
  require("reflect-metadata");
25
-
26
16
  var _dec, _class;
27
-
28
17
  var DataSourcePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
29
18
  function DataSourcePlugin() {
30
19
  (0, _classCallCheck2.default)(this, DataSourcePlugin);
31
20
  }
32
-
33
21
  (0, _createClass2.default)(DataSourcePlugin, [{
34
22
  key: "apply",
35
23
  value: function apply(layer) {
36
24
  var _this = this;
37
-
38
25
  this.mapService = layer.getContainer().get(_l7Core.TYPES.IMapService);
39
26
  layer.hooks.init.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
40
27
  var source, _ref2, data, options;
41
-
42
28
  return _regenerator.default.wrap(function _callee$(_context) {
43
- while (1) {
44
- switch (_context.prev = _context.next) {
45
- case 0:
46
- layer.log(_l7Core.IDebugLog.SourceInitStart, _l7Core.ILayerStage.INIT);
47
- source = layer.getSource();
48
-
49
- if (!source) {
50
- // Tip: 用户没有传入 source 的时候使用图层的默认数据
51
- _ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
52
- source = new _l7Source.default(data, options);
53
- layer.setSource(source);
54
- }
55
-
56
- if (!source.inited) {
57
- _context.next = 8;
58
- break;
59
- }
60
-
61
- _this.updateClusterData(layer);
62
-
63
- layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
64
- _context.next = 10;
29
+ while (1) switch (_context.prev = _context.next) {
30
+ case 0:
31
+ layer.log(_l7Core.IDebugLog.SourceInitStart, _l7Core.ILayerStage.INIT);
32
+ source = layer.getSource();
33
+ if (!source) {
34
+ // Tip: 用户没有传入 source 的时候使用图层的默认数据
35
+ _ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
36
+ source = new _l7Source.default(data, options);
37
+ layer.setSource(source);
38
+ }
39
+ if (!source.inited) {
40
+ _context.next = 8;
65
41
  break;
66
-
67
- case 8:
68
- _context.next = 10;
69
- return new Promise(function (resolve) {
70
- source.on('update', function (e) {
71
- if (e.type === 'inited') {
72
- _this.updateClusterData(layer);
73
-
74
- layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
75
- }
76
-
77
- resolve(null);
78
- });
42
+ }
43
+ _this.updateClusterData(layer);
44
+ layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
45
+ _context.next = 10;
46
+ break;
47
+ case 8:
48
+ _context.next = 10;
49
+ return new Promise(function (resolve) {
50
+ source.on('update', function (e) {
51
+ if (e.type === 'inited') {
52
+ _this.updateClusterData(layer);
53
+ layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
54
+ }
55
+ resolve(null);
79
56
  });
80
-
81
- case 10:
82
- case "end":
83
- return _context.stop();
84
- }
57
+ });
58
+ case 10:
59
+ case "end":
60
+ return _context.stop();
85
61
  }
86
62
  }, _callee);
87
- }))); // 检测数据是否需要更新
63
+ })));
88
64
 
65
+ // 检测数据是否需要更新
89
66
  layer.hooks.beforeRenderData.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
90
67
  var neeUpdateCluster, dataSourceNeedUpdate, needScale;
91
68
  return _regenerator.default.wrap(function _callee2$(_context2) {
92
- while (1) {
93
- switch (_context2.prev = _context2.next) {
94
- case 0:
95
- neeUpdateCluster = _this.updateClusterData(layer);
96
- dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
97
- layer.dataState.dataSourceNeedUpdate = false;
98
- needScale = neeUpdateCluster || dataSourceNeedUpdate;
99
- return _context2.abrupt("return", needScale);
100
-
101
- case 5:
102
- case "end":
103
- return _context2.stop();
104
- }
69
+ while (1) switch (_context2.prev = _context2.next) {
70
+ case 0:
71
+ neeUpdateCluster = _this.updateClusterData(layer);
72
+ dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
73
+ layer.dataState.dataSourceNeedUpdate = false;
74
+ needScale = neeUpdateCluster || dataSourceNeedUpdate;
75
+ return _context2.abrupt("return", needScale);
76
+ case 5:
77
+ case "end":
78
+ return _context2.stop();
105
79
  }
106
80
  }, _callee2);
107
81
  })));
@@ -113,29 +87,24 @@ var DataSourcePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__
113
87
  if (layer.isTileLayer || layer.tileLayer || !layer.getSource()) {
114
88
  return false;
115
89
  }
116
-
117
90
  var source = layer.getSource();
118
91
  var cluster = source.cluster;
119
92
  var _source$clusterOption = source.clusterOptions.zoom,
120
- zoom = _source$clusterOption === void 0 ? 0 : _source$clusterOption;
93
+ zoom = _source$clusterOption === void 0 ? 0 : _source$clusterOption;
121
94
  var newZoom = this.mapService.getZoom() - 1;
122
95
  var dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
123
-
124
96
  if (cluster && dataSourceNeedUpdate) {
125
97
  // 数据发生更新
126
98
  source.updateClusterData(Math.floor(newZoom));
127
- } // 如果 dataSource 有更新,跳过 zoom 的判断,直接更新一次
128
-
129
-
99
+ }
100
+ // 如果 dataSource 有更新,跳过 zoom 的判断,直接更新一次
130
101
  if (cluster && Math.abs(layer.clusterZoom - newZoom) >= 1) {
131
102
  if (zoom !== Math.floor(newZoom)) {
132
103
  source.updateClusterData(Math.floor(newZoom));
133
104
  }
134
-
135
105
  layer.clusterZoom = newZoom;
136
106
  return true;
137
107
  }
138
-
139
108
  return false;
140
109
  }
141
110
  }]);