@antv/l7-layers 2.10.2 → 2.10.4

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 (372) hide show
  1. package/es/Geometry/index.d.ts +3 -2
  2. package/es/Geometry/index.js +24 -34
  3. package/es/Geometry/models/billboard.d.ts +2 -2
  4. package/es/Geometry/models/billboard.js +45 -85
  5. package/es/Geometry/models/plane.d.ts +2 -2
  6. package/es/Geometry/models/plane.js +49 -89
  7. package/es/Geometry/models/sprite.d.ts +2 -2
  8. package/es/Geometry/models/sprite.js +54 -92
  9. package/es/canvas/index.d.ts +3 -2
  10. package/es/canvas/index.js +26 -36
  11. package/es/canvas/models/canvas.d.ts +2 -2
  12. package/es/canvas/models/canvas.js +23 -62
  13. package/es/citybuliding/building.d.ts +3 -2
  14. package/es/citybuliding/building.js +24 -33
  15. package/es/citybuliding/models/build.d.ts +2 -2
  16. package/es/citybuliding/models/build.js +31 -76
  17. package/es/core/BaseLayer.d.ts +18 -21
  18. package/es/core/BaseLayer.js +273 -393
  19. package/es/core/BaseModel.d.ts +2 -2
  20. package/es/core/BaseModel.js +13 -54
  21. package/es/core/shape/Path.js +1 -1
  22. package/es/core/shape/extrude.js +1 -1
  23. package/es/core/triangulation.js +3 -10
  24. package/es/earth/index.d.ts +2 -2
  25. package/es/earth/index.js +16 -35
  26. package/es/earth/models/atmosphere.d.ts +2 -2
  27. package/es/earth/models/atmosphere.js +27 -72
  28. package/es/earth/models/base.d.ts +2 -2
  29. package/es/earth/models/base.js +50 -96
  30. package/es/earth/models/bloomsphere.d.ts +2 -2
  31. package/es/earth/models/bloomsphere.js +27 -72
  32. package/es/earth/utils.js +1 -1
  33. package/es/heatmap/index.d.ts +3 -2
  34. package/es/heatmap/index.js +29 -40
  35. package/es/heatmap/models/grid.d.ts +2 -2
  36. package/es/heatmap/models/grid.js +32 -73
  37. package/es/heatmap/models/grid3d.d.ts +2 -2
  38. package/es/heatmap/models/grid3d.js +33 -74
  39. package/es/heatmap/models/heatmap.d.ts +2 -2
  40. package/es/heatmap/models/heatmap.js +22 -48
  41. package/es/heatmap/models/hexagon.d.ts +2 -2
  42. package/es/heatmap/models/hexagon.js +33 -74
  43. package/es/image/index.d.ts +3 -2
  44. package/es/image/index.js +24 -34
  45. package/es/image/models/dataImage.d.ts +2 -2
  46. package/es/image/models/dataImage.js +59 -98
  47. package/es/image/models/image.d.ts +2 -2
  48. package/es/image/models/image.js +72 -113
  49. package/es/image/models/tileDataImage.d.ts +2 -2
  50. package/es/image/models/tileDataImage.js +48 -89
  51. package/es/index.d.ts +2 -2
  52. package/es/index.js +2 -2
  53. package/es/line/index.d.ts +4 -5
  54. package/es/line/index.js +32 -58
  55. package/es/line/models/arc.d.ts +2 -2
  56. package/es/line/models/arc.js +45 -80
  57. package/es/line/models/arc_3d.d.ts +2 -2
  58. package/es/line/models/arc_3d.js +41 -76
  59. package/es/line/models/earthArc_3d.d.ts +2 -2
  60. package/es/line/models/earthArc_3d.js +44 -79
  61. package/es/line/models/great_circle.d.ts +2 -2
  62. package/es/line/models/great_circle.js +36 -77
  63. package/es/line/models/half.d.ts +2 -2
  64. package/es/line/models/half.js +23 -46
  65. package/es/line/models/index.d.ts +1 -1
  66. package/es/line/models/index.js +2 -0
  67. package/es/line/models/line.d.ts +2 -2
  68. package/es/line/models/line.js +54 -86
  69. package/es/line/models/linearline.d.ts +2 -2
  70. package/es/line/models/linearline.js +38 -77
  71. package/es/line/models/simpleLine.d.ts +2 -2
  72. package/es/line/models/simpleLine.js +39 -76
  73. package/es/line/models/simpleTileLine.d.ts +2 -2
  74. package/es/line/models/simpleTileLine.js +35 -75
  75. package/es/line/models/tile.d.ts +2 -2
  76. package/es/line/models/tile.js +23 -46
  77. package/es/line/models/wall.d.ts +2 -2
  78. package/es/line/models/wall.js +29 -74
  79. package/es/mask/index.d.ts +4 -2
  80. package/es/mask/index.js +104 -34
  81. package/es/mask/models/fill.d.ts +2 -2
  82. package/es/mask/models/fill.js +22 -46
  83. package/es/mask/models/index.d.ts +1 -1
  84. package/es/mask/models/index.js +3 -1
  85. package/es/plugins/DataMappingPlugin.js +72 -83
  86. package/es/plugins/DataSourcePlugin.js +32 -68
  87. package/es/plugins/FeatureScalePlugin.js +48 -88
  88. package/es/plugins/LayerAnimateStylePlugin.js +3 -3
  89. package/es/plugins/LayerModelPlugin.d.ts +2 -2
  90. package/es/plugins/LayerModelPlugin.js +39 -126
  91. package/es/plugins/LayerStylePlugin.js +8 -3
  92. package/es/plugins/LightingPlugin.js +4 -4
  93. package/es/plugins/MultiPassRendererPlugin.js +3 -3
  94. package/es/plugins/PixelPickingPlugin.js +3 -3
  95. package/es/plugins/RegisterStyleAttributePlugin.js +18 -3
  96. package/es/plugins/ShaderUniformPlugin.js +6 -6
  97. package/es/plugins/UpdateModelPlugin.js +2 -2
  98. package/es/plugins/UpdateStyleAttributePlugin.js +5 -6
  99. package/es/point/index.d.ts +4 -4
  100. package/es/point/index.js +30 -62
  101. package/es/point/models/earthExtrude.d.ts +2 -2
  102. package/es/point/models/earthExtrude.js +37 -80
  103. package/es/point/models/earthFill.d.ts +2 -2
  104. package/es/point/models/earthFill.js +28 -73
  105. package/es/point/models/extrude.d.ts +2 -2
  106. package/es/point/models/extrude.js +25 -48
  107. package/es/point/models/fill.d.ts +2 -2
  108. package/es/point/models/fill.js +28 -51
  109. package/es/point/models/fillmage.d.ts +2 -2
  110. package/es/point/models/fillmage.js +51 -90
  111. package/es/point/models/image.d.ts +2 -2
  112. package/es/point/models/image.js +38 -79
  113. package/es/point/models/index.d.ts +1 -1
  114. package/es/point/models/index.js +2 -0
  115. package/es/point/models/normal.d.ts +2 -2
  116. package/es/point/models/normal.js +36 -77
  117. package/es/point/models/radar.d.ts +2 -2
  118. package/es/point/models/radar.js +43 -83
  119. package/es/point/models/simplePoint.d.ts +2 -2
  120. package/es/point/models/simplePoint.js +35 -76
  121. package/es/point/models/text.d.ts +2 -3
  122. package/es/point/models/text.js +116 -173
  123. package/es/point/models/tile.d.ts +2 -2
  124. package/es/point/models/tile.js +40 -82
  125. package/es/point/models/tileText.d.ts +2 -2
  126. package/es/point/models/tileText.js +125 -160
  127. package/es/point/shape/extrude.js +1 -1
  128. package/es/polygon/index.d.ts +3 -2
  129. package/es/polygon/index.js +31 -34
  130. package/es/polygon/models/extrude.d.ts +2 -2
  131. package/es/polygon/models/extrude.js +38 -75
  132. package/es/polygon/models/fill.d.ts +2 -2
  133. package/es/polygon/models/fill.js +48 -81
  134. package/es/polygon/models/index.d.ts +1 -1
  135. package/es/polygon/models/index.js +2 -0
  136. package/es/polygon/models/ocean.d.ts +2 -2
  137. package/es/polygon/models/ocean.js +34 -75
  138. package/es/polygon/models/tile.d.ts +2 -2
  139. package/es/polygon/models/tile.js +35 -75
  140. package/es/polygon/models/water.d.ts +2 -2
  141. package/es/polygon/models/water.js +34 -75
  142. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -1
  143. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +2 -1
  144. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +2 -1
  145. package/es/raster/index.d.ts +4 -3
  146. package/es/raster/index.js +29 -35
  147. package/es/raster/models/index.d.ts +1 -1
  148. package/es/raster/models/index.js +3 -1
  149. package/es/raster/models/raster.d.ts +2 -2
  150. package/es/raster/models/raster.js +19 -42
  151. package/es/raster/models/rasterRgb.d.ts +2 -2
  152. package/es/raster/models/rasterRgb.js +21 -44
  153. package/es/raster/models/rasterTile.d.ts +2 -2
  154. package/es/raster/models/rasterTile.js +41 -82
  155. package/es/raster/raster.d.ts +1 -1
  156. package/es/raster/raster.js +31 -51
  157. package/es/tile/interaction/TilePickService.d.ts +16 -0
  158. package/es/tile/interaction/TilePickService.js +129 -0
  159. package/es/tile/interaction/getRasterData.d.ts +2 -2
  160. package/es/tile/interaction/getRasterData.js +1 -1
  161. package/es/tile/interaction/utils.js +12 -4
  162. package/es/tile/interface.d.ts +4 -5
  163. package/es/tile/manager/base.d.ts +12 -17
  164. package/es/tile/manager/base.js +51 -216
  165. package/es/tile/manager/layerManager.d.ts +19 -0
  166. package/es/tile/manager/layerManager.js +254 -0
  167. package/es/tile/manager/mapLayerManager.d.ts +7 -0
  168. package/es/tile/manager/mapLayerManager.js +119 -0
  169. package/es/tile/models/tileModel.d.ts +10 -0
  170. package/es/tile/models/tileModel.js +81 -0
  171. package/es/tile/render/TileRenderService.d.ts +10 -0
  172. package/es/tile/render/TileRenderService.js +68 -0
  173. package/es/tile/style/TileStyleService.d.ts +17 -0
  174. package/es/tile/style/TileStyleService.js +118 -0
  175. package/es/tile/style/constants.d.ts +13 -1
  176. package/es/tile/style/constants.js +15 -6
  177. package/es/tile/style/utils.d.ts +8 -1
  178. package/es/tile/style/utils.js +127 -1
  179. package/es/tile/tileFactory/base.d.ts +45 -0
  180. package/es/tile/tileFactory/base.js +403 -0
  181. package/es/tile/tileFactory/index.d.ts +4 -10
  182. package/es/tile/tileFactory/index.js +23 -30
  183. package/es/tile/tileFactory/layers/{RasterDataLayer.d.ts → rasterDataLayer.d.ts} +3 -3
  184. package/es/tile/tileFactory/layers/{RasterDataLayer.js → rasterDataLayer.js} +28 -40
  185. package/es/tile/tileFactory/layers/{TileDebugLayer.d.ts → tileTest.d.ts} +2 -2
  186. package/es/tile/tileFactory/layers/{TileDebugLayer.js → tileTest.js} +17 -30
  187. package/es/tile/tileFactory/layers/vectorLayer.d.ts +30 -0
  188. package/es/tile/tileFactory/layers/vectorLayer.js +253 -0
  189. package/es/tile/tileFactory/line.d.ts +12 -0
  190. package/es/tile/tileFactory/line.js +59 -0
  191. package/es/tile/tileFactory/mask.d.ts +12 -0
  192. package/es/tile/tileFactory/mask.js +60 -0
  193. package/es/tile/tileFactory/point.d.ts +12 -0
  194. package/es/tile/tileFactory/point.js +60 -0
  195. package/es/tile/tileFactory/polygon.d.ts +12 -0
  196. package/es/tile/tileFactory/polygon.js +59 -0
  197. package/es/tile/tileFactory/raster.d.ts +12 -0
  198. package/es/tile/tileFactory/raster.js +55 -0
  199. package/es/tile/tileFactory/rasterData.d.ts +12 -0
  200. package/es/tile/tileFactory/rasterData.js +81 -0
  201. package/es/tile/tileFactory/test.d.ts +12 -0
  202. package/es/tile/tileFactory/test.js +94 -0
  203. package/es/tile/tileLayer/MapTileLayer.d.ts +6 -0
  204. package/es/tile/tileLayer/MapTileLayer.js +48 -0
  205. package/es/tile/tileLayer/TileLayer.d.ts +22 -0
  206. package/es/tile/tileLayer/TileLayer.js +198 -0
  207. package/es/tile/tileLayer/base.d.ts +33 -0
  208. package/es/tile/tileLayer/base.js +212 -0
  209. package/es/tile/utils.d.ts +11 -1
  210. package/es/tile/utils.js +129 -0
  211. package/es/utils/blend.js +1 -1
  212. package/es/utils/collision-index.js +4 -4
  213. package/es/utils/dataMappingStyle.d.ts +4 -4
  214. package/es/utils/dataMappingStyle.js +18 -16
  215. package/es/utils/extrude_polyline.js +5 -5
  216. package/es/utils/grid-index.js +3 -3
  217. package/es/utils/layerData.js +11 -5
  218. package/es/utils/multiPassRender.js +1 -1
  219. package/es/utils/polylineNormal.js +1 -1
  220. package/es/utils/simpleLine.js +3 -3
  221. package/es/wind/index.d.ts +3 -2
  222. package/es/wind/index.js +24 -34
  223. package/es/wind/models/wind.d.ts +2 -2
  224. package/es/wind/models/wind.js +111 -127
  225. package/es/wind/models/windRender.js +3 -3
  226. package/lib/Geometry/index.js +17 -29
  227. package/lib/Geometry/models/billboard.js +37 -79
  228. package/lib/Geometry/models/plane.js +40 -82
  229. package/lib/Geometry/models/sprite.js +45 -85
  230. package/lib/canvas/index.js +19 -31
  231. package/lib/canvas/models/canvas.js +15 -56
  232. package/lib/citybuliding/building.js +17 -28
  233. package/lib/citybuliding/models/build.js +25 -72
  234. package/lib/core/BaseLayer.js +256 -381
  235. package/lib/core/BaseModel.js +6 -48
  236. package/lib/core/triangulation.js +1 -8
  237. package/lib/earth/index.js +9 -30
  238. package/lib/earth/models/atmosphere.js +22 -69
  239. package/lib/earth/models/base.js +42 -90
  240. package/lib/earth/models/bloomsphere.js +22 -69
  241. package/lib/heatmap/index.js +22 -35
  242. package/lib/heatmap/models/grid.js +27 -70
  243. package/lib/heatmap/models/grid3d.js +28 -71
  244. package/lib/heatmap/models/heatmap.js +14 -40
  245. package/lib/heatmap/models/hexagon.js +28 -71
  246. package/lib/image/index.js +17 -29
  247. package/lib/image/models/dataImage.js +54 -95
  248. package/lib/image/models/image.js +67 -110
  249. package/lib/image/models/tileDataImage.js +43 -86
  250. package/lib/index.js +5 -5
  251. package/lib/line/index.js +26 -53
  252. package/lib/line/models/arc.js +38 -75
  253. package/lib/line/models/arc_3d.js +34 -71
  254. package/lib/line/models/earthArc_3d.js +37 -74
  255. package/lib/line/models/great_circle.js +29 -72
  256. package/lib/line/models/half.js +17 -40
  257. package/lib/line/models/index.js +3 -0
  258. package/lib/line/models/line.js +47 -81
  259. package/lib/line/models/linearline.js +31 -72
  260. package/lib/line/models/simpleLine.js +34 -73
  261. package/lib/line/models/simpleTileLine.js +30 -72
  262. package/lib/line/models/tile.js +17 -40
  263. package/lib/line/models/wall.js +22 -69
  264. package/lib/mask/index.js +99 -28
  265. package/lib/mask/models/fill.js +16 -40
  266. package/lib/mask/models/index.js +4 -1
  267. package/lib/plugins/DataMappingPlugin.js +64 -77
  268. package/lib/plugins/DataSourcePlugin.js +30 -68
  269. package/lib/plugins/FeatureScalePlugin.js +44 -86
  270. package/lib/plugins/LayerModelPlugin.js +41 -131
  271. package/lib/plugins/LayerStylePlugin.js +6 -1
  272. package/lib/plugins/MultiPassRendererPlugin.js +1 -1
  273. package/lib/plugins/PixelPickingPlugin.js +1 -1
  274. package/lib/plugins/RegisterStyleAttributePlugin.js +16 -1
  275. package/lib/plugins/UpdateStyleAttributePlugin.js +3 -4
  276. package/lib/point/index.js +24 -56
  277. package/lib/point/models/earthExtrude.js +30 -75
  278. package/lib/point/models/earthFill.js +21 -68
  279. package/lib/point/models/extrude.js +17 -40
  280. package/lib/point/models/fill.js +21 -44
  281. package/lib/point/models/fillmage.js +43 -84
  282. package/lib/point/models/image.js +31 -74
  283. package/lib/point/models/index.js +3 -0
  284. package/lib/point/models/normal.js +30 -73
  285. package/lib/point/models/radar.js +35 -77
  286. package/lib/point/models/simplePoint.js +29 -72
  287. package/lib/point/models/text.js +106 -164
  288. package/lib/point/models/tile.js +35 -79
  289. package/lib/point/models/tileText.js +115 -151
  290. package/lib/polygon/index.js +25 -29
  291. package/lib/polygon/models/extrude.js +32 -71
  292. package/lib/polygon/models/fill.js +43 -78
  293. package/lib/polygon/models/index.js +3 -0
  294. package/lib/polygon/models/ocean.js +28 -71
  295. package/lib/polygon/models/tile.js +30 -72
  296. package/lib/polygon/models/water.js +28 -71
  297. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -1
  298. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +2 -1
  299. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +2 -1
  300. package/lib/raster/index.js +22 -30
  301. package/lib/raster/models/index.js +4 -1
  302. package/lib/raster/models/raster.js +13 -36
  303. package/lib/raster/models/rasterRgb.js +13 -36
  304. package/lib/raster/models/rasterTile.js +36 -79
  305. package/lib/raster/raster.js +22 -44
  306. package/lib/tile/interaction/TilePickService.js +143 -0
  307. package/lib/tile/interaction/utils.js +11 -3
  308. package/lib/tile/manager/base.js +47 -213
  309. package/lib/tile/manager/layerManager.js +275 -0
  310. package/lib/tile/manager/mapLayerManager.js +134 -0
  311. package/lib/tile/models/tileModel.js +94 -0
  312. package/lib/tile/render/TileRenderService.js +78 -0
  313. package/lib/tile/style/TileStyleService.js +133 -0
  314. package/lib/tile/style/constants.js +19 -8
  315. package/lib/tile/style/utils.js +140 -0
  316. package/lib/tile/tileFactory/base.js +427 -0
  317. package/lib/tile/tileFactory/index.js +24 -42
  318. package/lib/tile/tileFactory/layers/{RasterDataLayer.js → rasterDataLayer.js} +21 -35
  319. package/lib/tile/tileFactory/layers/{TileDebugLayer.js → tileTest.js} +11 -24
  320. package/lib/tile/tileFactory/layers/vectorLayer.js +268 -0
  321. package/lib/tile/tileFactory/line.js +70 -0
  322. package/lib/tile/tileFactory/mask.js +71 -0
  323. package/lib/tile/tileFactory/point.js +71 -0
  324. package/lib/tile/tileFactory/polygon.js +70 -0
  325. package/lib/tile/tileFactory/raster.js +68 -0
  326. package/lib/tile/tileFactory/rasterData.js +93 -0
  327. package/lib/tile/tileFactory/test.js +106 -0
  328. package/lib/tile/tileLayer/MapTileLayer.js +63 -0
  329. package/lib/tile/tileLayer/TileLayer.js +215 -0
  330. package/lib/tile/tileLayer/base.js +225 -0
  331. package/lib/tile/utils.js +148 -0
  332. package/lib/utils/dataMappingStyle.js +20 -18
  333. package/lib/utils/layerData.js +10 -4
  334. package/lib/wind/index.js +17 -29
  335. package/lib/wind/models/wind.js +104 -122
  336. package/package.json +7 -7
  337. package/es/core/LayerPickService.d.ts +0 -9
  338. package/es/core/LayerPickService.js +0 -85
  339. package/es/tile/service/TileLayerService.d.ts +0 -33
  340. package/es/tile/service/TileLayerService.js +0 -172
  341. package/es/tile/service/TilePickService.d.ts +0 -22
  342. package/es/tile/service/TilePickService.js +0 -124
  343. package/es/tile/tileFactory/DebugTile.d.ts +0 -16
  344. package/es/tile/tileFactory/DebugTile.js +0 -100
  345. package/es/tile/tileFactory/ImageTile.d.ts +0 -14
  346. package/es/tile/tileFactory/ImageTile.js +0 -89
  347. package/es/tile/tileFactory/MaskTile.d.ts +0 -17
  348. package/es/tile/tileFactory/MaskTile.js +0 -98
  349. package/es/tile/tileFactory/RasterRGBTile.d.ts +0 -16
  350. package/es/tile/tileFactory/RasterRGBTile.js +0 -91
  351. package/es/tile/tileFactory/RasterTile.d.ts +0 -27
  352. package/es/tile/tileFactory/RasterTile.js +0 -186
  353. package/es/tile/tileFactory/Tile.d.ts +0 -23
  354. package/es/tile/tileFactory/Tile.js +0 -136
  355. package/es/tile/tileFactory/VectorTile.d.ts +0 -20
  356. package/es/tile/tileFactory/VectorTile.js +0 -158
  357. package/es/tile/tileFactory/util.d.ts +0 -6
  358. package/es/tile/tileFactory/util.js +0 -33
  359. package/es/tile/tileLayer/BaseLayer.d.ts +0 -46
  360. package/es/tile/tileLayer/BaseLayer.js +0 -358
  361. package/lib/core/LayerPickService.js +0 -96
  362. package/lib/tile/service/TileLayerService.js +0 -185
  363. package/lib/tile/service/TilePickService.js +0 -136
  364. package/lib/tile/tileFactory/DebugTile.js +0 -115
  365. package/lib/tile/tileFactory/ImageTile.js +0 -104
  366. package/lib/tile/tileFactory/MaskTile.js +0 -113
  367. package/lib/tile/tileFactory/RasterRGBTile.js +0 -106
  368. package/lib/tile/tileFactory/RasterTile.js +0 -205
  369. package/lib/tile/tileFactory/Tile.js +0 -146
  370. package/lib/tile/tileFactory/VectorTile.js +0 -173
  371. package/lib/tile/tileFactory/util.js +0 -48
  372. package/lib/tile/tileLayer/BaseLayer.js +0 -373
@@ -7,10 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
11
 
16
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -36,75 +32,41 @@ var DataSourcePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__
36
32
  var _this = this;
37
33
 
38
34
  this.mapService = layer.getContainer().get(_l7Core.TYPES.IMapService);
39
- layer.hooks.init.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
40
- var source, _ref2, data, options;
41
-
42
- return _regenerator.default.wrap(function _callee$(_context) {
43
- while (1) {
44
- switch (_context.prev = _context.next) {
45
- case 0:
46
- source = layer.getSource();
47
-
48
- if (source) {
49
- _context.next = 6;
50
- break;
51
- }
52
-
53
- // Tip: 用户没有传入 source 的时候使用图层的默认数据
54
- _ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
55
- source = new _l7Source.default(data, options);
56
- _context.next = 6;
57
- return new Promise(function (resolve) {
58
- source.on('update', function (e) {
59
- if (e.type === 'inited') {
60
- layer.initSource(source);
61
- }
62
-
63
- resolve(null);
64
- });
65
- });
66
-
67
- case 6:
68
- if (source.inited) {
69
- _this.updateClusterData(layer);
70
- } else {
71
- source.once('update', function () {
72
- _this.updateClusterData(layer);
73
- });
74
- }
75
-
76
- case 7:
77
- case "end":
78
- return _context.stop();
79
- }
80
- }
81
- }, _callee);
82
- }))); // 检测数据是否需要更新
83
-
84
- layer.hooks.beforeRenderData.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
85
- var neeUpdateCluster, dataSourceNeedUpdate;
86
- return _regenerator.default.wrap(function _callee2$(_context2) {
87
- while (1) {
88
- switch (_context2.prev = _context2.next) {
89
- case 0:
90
- neeUpdateCluster = _this.updateClusterData(layer);
91
- dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
92
- layer.dataState.dataSourceNeedUpdate = false;
93
- return _context2.abrupt("return", neeUpdateCluster || dataSourceNeedUpdate);
94
-
95
- case 4:
96
- case "end":
97
- return _context2.stop();
98
- }
99
- }
100
- }, _callee2);
101
- })));
35
+ layer.hooks.init.tap('DataSourcePlugin', function () {
36
+ var source = layer.getSource();
37
+
38
+ if (!source) {
39
+ // Tip: 用户没有传入 source 的时候使用图层的默认数据
40
+ var _ref = layer.sourceOption || layer.defaultSourceConfig,
41
+ data = _ref.data,
42
+ options = _ref.options;
43
+
44
+ source = new _l7Source.default(data, options);
45
+ layer.setSource(source);
46
+ }
47
+
48
+ if (source.inited) {
49
+ _this.updateClusterData(layer);
50
+ } else {
51
+ source.once('update', function () {
52
+ _this.updateClusterData(layer);
53
+ });
54
+ }
55
+ }); // 检测数据是否需要更新
56
+
57
+ layer.hooks.beforeRenderData.tap('DataSourcePlugin', function () {
58
+ var neeUpdateCluster = _this.updateClusterData(layer);
59
+
60
+ var dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
61
+ layer.dataState.dataSourceNeedUpdate = false;
62
+ return neeUpdateCluster || dataSourceNeedUpdate;
63
+ });
102
64
  }
103
65
  }, {
104
66
  key: "updateClusterData",
105
67
  value: function updateClusterData(layer) {
106
68
  // Tip: 矢量瓦片不需要进行聚合操作
107
- if (layer.isTileLayer || layer.tileLayer || !layer.getSource()) {
69
+ if (layer.isTileLayer || layer.tileLayer) {
108
70
  return false;
109
71
  }
110
72
 
@@ -9,12 +9,8 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.default = void 0;
11
11
 
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
12
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
13
 
16
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
-
18
14
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
15
 
20
16
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -72,80 +68,39 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
72
68
  var _this = this;
73
69
 
74
70
  var styleAttributeService = _ref.styleAttributeService;
75
- layer.hooks.init.tapPromise('FeatureScalePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
76
- var _layer$getSource;
77
-
78
- var attributes, dataArray;
79
- return _regenerator.default.wrap(function _callee$(_context) {
80
- while (1) {
81
- switch (_context.prev = _context.next) {
82
- case 0:
83
- _this.scaleOptions = layer.getScaleOptions();
84
- attributes = styleAttributeService.getLayerStyleAttributes();
85
- dataArray = (_layer$getSource = layer.getSource()) === null || _layer$getSource === void 0 ? void 0 : _layer$getSource.data.dataArray;
86
-
87
- if (!(Array.isArray(dataArray) && dataArray.length === 0)) {
88
- _context.next = 7;
89
- break;
90
- }
91
-
92
- return _context.abrupt("return");
71
+ layer.hooks.init.tap('FeatureScalePlugin', function () {
72
+ _this.scaleOptions = layer.getScaleOptions();
73
+ var attributes = styleAttributeService.getLayerStyleAttributes();
93
74
 
94
- case 7:
95
- _this.caculateScalesForAttributes(attributes || [], dataArray);
75
+ _this.getSourceData(layer, function (_ref2) {
76
+ var dataArray = _ref2.dataArray;
96
77
 
97
- case 8:
98
- case "end":
99
- return _context.stop();
100
- }
78
+ if (Array.isArray(dataArray) && dataArray.length === 0) {
79
+ return;
80
+ } else {
81
+ _this.caculateScalesForAttributes(attributes || [], dataArray);
101
82
  }
102
- }, _callee);
103
- }))); // 检测数据是否需要更新
104
-
105
- layer.hooks.beforeRenderData.tapPromise('FeatureScalePlugin', /*#__PURE__*/function () {
106
- var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(flag) {
107
- var attributes, dataArray;
108
- return _regenerator.default.wrap(function _callee2$(_context2) {
109
- while (1) {
110
- switch (_context2.prev = _context2.next) {
111
- case 0:
112
- if (flag) {
113
- _context2.next = 2;
114
- break;
115
- }
116
-
117
- return _context2.abrupt("return", flag);
118
-
119
- case 2:
120
- _this.scaleOptions = layer.getScaleOptions();
121
- attributes = styleAttributeService.getLayerStyleAttributes();
122
- dataArray = layer.getSource().data.dataArray;
83
+ });
84
+ }); // 检测数据是否需要更新
123
85
 
124
- if (!(Array.isArray(dataArray) && dataArray.length === 0)) {
125
- _context2.next = 7;
126
- break;
127
- }
86
+ layer.hooks.beforeRenderData.tap('FeatureScalePlugin', function () {
87
+ _this.scaleOptions = layer.getScaleOptions();
88
+ var attributes = styleAttributeService.getLayerStyleAttributes();
128
89
 
129
- return _context2.abrupt("return");
90
+ _this.getSourceData(layer, function (_ref3) {
91
+ var dataArray = _ref3.dataArray;
130
92
 
131
- case 7:
132
- _this.caculateScalesForAttributes(attributes || [], dataArray);
93
+ if (Array.isArray(dataArray) && dataArray.length === 0) {
94
+ return;
95
+ }
133
96
 
134
- layer.layerModelNeedUpdate = true;
135
- return _context2.abrupt("return", true);
97
+ _this.caculateScalesForAttributes(attributes || [], dataArray);
136
98
 
137
- case 10:
138
- case "end":
139
- return _context2.stop();
140
- }
141
- }
142
- }, _callee2);
143
- }));
99
+ layer.layerModelNeedUpdate = true;
100
+ });
144
101
 
145
- return function (_x) {
146
- return _ref3.apply(this, arguments);
147
- };
148
- }());
102
+ return true;
103
+ });
149
104
  layer.hooks.beforeRender.tap('FeatureScalePlugin', function () {
150
105
  var _layer$getLayerConfig = layer.getLayerConfig(),
151
106
  usage = _layer$getLayerConfig.usage;
@@ -156,20 +111,23 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
156
111
 
157
112
  _this.scaleOptions = layer.getScaleOptions();
158
113
  var attributes = styleAttributeService.getLayerStyleAttributes();
159
- var dataArray = layer.getSource().data.dataArray;
160
-
161
- if (Array.isArray(dataArray) && dataArray.length === 0) {
162
- return;
163
- }
164
114
 
165
115
  if (attributes) {
166
- var attributesToRescale = attributes.filter(function (attribute) {
167
- return attribute.needRescale;
168
- });
116
+ _this.getSourceData(layer, function (_ref4) {
117
+ var dataArray = _ref4.dataArray;
169
118
 
170
- if (attributesToRescale.length) {
171
- _this.caculateScalesForAttributes(attributesToRescale, dataArray);
172
- }
119
+ if (dataArray.length === 0) {
120
+ return;
121
+ }
122
+
123
+ var attributesToRescale = attributes.filter(function (attribute) {
124
+ return attribute.needRescale;
125
+ });
126
+
127
+ if (attributesToRescale.length) {
128
+ _this.caculateScalesForAttributes(attributesToRescale, dataArray);
129
+ }
130
+ });
173
131
  }
174
132
  });
175
133
  }
@@ -373,12 +331,12 @@ var FeatureScalePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
373
331
 
374
332
  }, {
375
333
  key: "createDefaultScale",
376
- value: function createDefaultScale(_ref4) {
377
- var type = _ref4.type,
378
- domain = _ref4.domain,
379
- unknown = _ref4.unknown,
380
- clamp = _ref4.clamp,
381
- nice = _ref4.nice;
334
+ value: function createDefaultScale(_ref5) {
335
+ var type = _ref5.type,
336
+ domain = _ref5.domain,
337
+ unknown = _ref5.unknown,
338
+ clamp = _ref5.clamp,
339
+ nice = _ref5.nice;
382
340
  // @ts-ignore
383
341
  var scale = scaleMap[type]();
384
342
 
@@ -7,10 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
11
 
16
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -19,8 +15,6 @@ var _inversify = require("inversify");
19
15
 
20
16
  require("reflect-metadata");
21
17
 
22
- var _BaseLayer = _interopRequireDefault(require("../tile/tileLayer/BaseLayer"));
23
-
24
18
  var _dec, _class;
25
19
 
26
20
  var LayerModelPlugin = (
@@ -34,138 +28,54 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
34
28
 
35
29
  (0, _createClass2.default)(LayerModelPlugin, [{
36
30
  key: "initLayerModel",
37
- value: function () {
38
- var _initLayerModel = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(layer) {
39
- return _regenerator.default.wrap(function _callee$(_context) {
40
- while (1) {
41
- switch (_context.prev = _context.next) {
42
- case 0:
43
- // 更新Model 配置项
44
- layer.prepareBuildModel(); // 初始化 Model
45
-
46
- _context.next = 3;
47
- return layer.buildModels();
48
-
49
- case 3:
50
- layer.styleNeedUpdate = false;
51
-
52
- case 4:
53
- case "end":
54
- return _context.stop();
55
- }
56
- }
57
- }, _callee);
58
- }));
59
-
60
- function initLayerModel(_x) {
61
- return _initLayerModel.apply(this, arguments);
62
- }
63
-
64
- return initLayerModel;
65
- }()
31
+ value: function initLayerModel(layer) {
32
+ // 更新Model 配置项
33
+ layer.prepareBuildModel(); // 初始化 Model
34
+
35
+ layer.buildModels();
36
+ layer.styleNeedUpdate = false;
37
+ }
66
38
  }, {
67
39
  key: "prepareLayerModel",
68
- value: function () {
69
- var _prepareLayerModel = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(layer) {
70
- return _regenerator.default.wrap(function _callee2$(_context2) {
71
- while (1) {
72
- switch (_context2.prev = _context2.next) {
73
- case 0:
74
- // 更新Model 配置项
75
- layer.prepareBuildModel(); // clear layerModel resource
76
- // 初始化 Model
77
-
78
- _context2.next = 3;
79
- return layer.buildModels();
80
-
81
- case 3:
82
- layer.layerModelNeedUpdate = false;
83
-
84
- case 4:
85
- case "end":
86
- return _context2.stop();
87
- }
88
- }
89
- }, _callee2);
90
- }));
91
-
92
- function prepareLayerModel(_x2) {
93
- return _prepareLayerModel.apply(this, arguments);
94
- }
95
-
96
- return prepareLayerModel;
97
- }()
40
+ value: function prepareLayerModel(layer) {
41
+ var _layer$layerModel;
42
+
43
+ // 更新Model 配置项
44
+ layer.prepareBuildModel(); // clear layerModel resource
45
+
46
+ (_layer$layerModel = layer.layerModel) === null || _layer$layerModel === void 0 ? void 0 : _layer$layerModel.clearModels(); // 初始化 Model
47
+
48
+ layer.buildModels();
49
+ layer.layerModelNeedUpdate = false;
50
+ }
98
51
  }, {
99
52
  key: "apply",
100
53
  value: function apply(layer) {
101
54
  var _this = this;
102
55
 
103
- layer.hooks.init.tapPromise('LayerModelPlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
104
- return _regenerator.default.wrap(function _callee3$(_context3) {
105
- while (1) {
106
- switch (_context3.prev = _context3.next) {
107
- case 0:
108
- if (!layer.getSource().isTile) {
109
- _context3.next = 4;
110
- break;
111
- }
112
-
113
- layer.prepareBuildModel();
114
- layer.tileLayer = new _BaseLayer.default(layer);
115
- return _context3.abrupt("return");
116
-
117
- case 4:
118
- _context3.next = 6;
119
- return _this.initLayerModel(layer);
120
-
121
- case 6:
122
- case "end":
123
- return _context3.stop();
124
- }
125
- }
126
- }, _callee3);
127
- })));
128
- layer.hooks.beforeRenderData.tapPromise('LayerModelPlugin', /*#__PURE__*/function () {
129
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(flag) {
130
- return _regenerator.default.wrap(function _callee4$(_context4) {
131
- while (1) {
132
- switch (_context4.prev = _context4.next) {
133
- case 0:
134
- if (flag) {
135
- _context4.next = 2;
136
- break;
137
- }
138
-
139
- return _context4.abrupt("return", false);
140
-
141
- case 2:
142
- if (!layer.getSource().isTile) {
143
- _context4.next = 5;
144
- break;
145
- }
146
-
147
- layer.tileLayer = new _BaseLayer.default(layer);
148
- return _context4.abrupt("return");
149
-
150
- case 5:
151
- _context4.next = 7;
152
- return _this.prepareLayerModel(layer);
153
-
154
- case 7:
155
- return _context4.abrupt("return", true);
156
-
157
- case 8:
158
- case "end":
159
- return _context4.stop();
160
- }
161
- }
162
- }, _callee4);
163
- }));
164
-
165
- return function (_x3) {
166
- return _ref2.apply(this, arguments);
167
- };
168
- }());
56
+ layer.hooks.init.tap('LayerModelPlugin', function () {
57
+ layer.inited = true;
58
+ layer.modelLoaded = false;
59
+ var source = layer.getSource();
60
+
61
+ if (source.inited) {
62
+ _this.initLayerModel(layer);
63
+ }
64
+ });
65
+ layer.hooks.beforeRenderData.tap('DataSourcePlugin', function () {
66
+ var source = layer.getSource();
67
+ layer.modelLoaded = false;
68
+
69
+ if (source.inited) {
70
+ _this.prepareLayerModel(layer);
71
+ } else {
72
+ source.once('update', function () {
73
+ _this.prepareLayerModel(layer);
74
+ });
75
+ }
76
+
77
+ return false;
78
+ });
169
79
  }
170
80
  }]);
171
81
  return LayerModelPlugin;
@@ -30,12 +30,17 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
30
30
  key: "apply",
31
31
  value: function apply(layer) {
32
32
  layer.hooks.afterInit.tap('LayerStylePlugin', function () {
33
+ // 更新图层默认状态
34
+ layer.updateLayerConfig({});
35
+
33
36
  var _layer$getLayerConfig = layer.getLayerConfig(),
34
37
  autoFit = _layer$getLayerConfig.autoFit,
35
38
  fitBoundsOptions = _layer$getLayerConfig.fitBoundsOptions;
36
39
 
37
40
  if (autoFit) {
38
- layer.fitBounds(fitBoundsOptions);
41
+ setTimeout(function () {
42
+ layer.fitBounds(fitBoundsOptions);
43
+ }, 100);
39
44
  }
40
45
  });
41
46
  }
@@ -46,7 +46,7 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
46
46
  var rendererService = _ref.rendererService,
47
47
  postProcessingPassFactory = _ref.postProcessingPassFactory,
48
48
  normalPassFactory = _ref.normalPassFactory;
49
- layer.hooks.init.tapPromise('MultiPassRendererPlugin', function () {
49
+ layer.hooks.init.tap('MultiPassRendererPlugin', function () {
50
50
  var _layer$getLayerConfig = layer.getLayerConfig(),
51
51
  enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer,
52
52
  _layer$getLayerConfig2 = _layer$getLayerConfig.passes,
@@ -36,7 +36,7 @@ var PixelPickingPlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#
36
36
  value: function apply(layer, _ref) {
37
37
  var styleAttributeService = _ref.styleAttributeService;
38
38
  // TODO: 由于 Shader 目前无法根据是否开启拾取进行内容修改,因此即使不开启也需要生成 a_PickingColor
39
- layer.hooks.init.tapPromise('PixelPickingPlugin', function () {
39
+ layer.hooks.init.tap('PixelPickingPlugin', function () {
40
40
  var _layer$getLayerConfig = layer.getLayerConfig(),
41
41
  enablePicking = _layer$getLayerConfig.enablePicking;
42
42
 
@@ -36,7 +36,7 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
36
36
  var _this = this;
37
37
 
38
38
  var styleAttributeService = _ref.styleAttributeService;
39
- layer.hooks.init.tapPromise('RegisterStyleAttributePlugin', function () {
39
+ layer.hooks.init.tap('RegisterStyleAttributePlugin', function () {
40
40
  // 过滤 tileGroup layer (瓦片图层不需要注册)
41
41
  if ((0, _utils.isTileGroup)(layer)) {
42
42
  return;
@@ -52,6 +52,21 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
52
52
  if (layer.type === 'MaskLayer') {
53
53
  this.registerPositionAttribute(styleAttributeService);
54
54
  return;
55
+ } // 用途为 basemap 的 Layer 也只需要注册 a_Position
56
+
57
+
58
+ var _layer$getLayerConfig = layer.getLayerConfig(),
59
+ usage = _layer$getLayerConfig.usage;
60
+
61
+ if (usage === 'basemap') {
62
+ this.registerPositionAttribute(styleAttributeService);
63
+ return;
64
+ }
65
+
66
+ if (layer.isTileLayer) {
67
+ this.registerPositionAttribute(styleAttributeService);
68
+ this.registerColorAttribute(styleAttributeService);
69
+ return;
55
70
  } // Tip: normal render layer
56
71
 
57
72
 
@@ -32,7 +32,7 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
32
32
  var _this = this;
33
33
 
34
34
  var styleAttributeService = _ref.styleAttributeService;
35
- layer.hooks.init.tapPromise('UpdateStyleAttributePlugin', function () {
35
+ layer.hooks.init.tap('UpdateStyleAttributePlugin', function () {
36
36
  _this.initStyleAttribute(layer, {
37
37
  styleAttributeService: styleAttributeService
38
38
  });
@@ -41,12 +41,11 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
41
41
  var _layer$getLayerConfig = layer.getLayerConfig(),
42
42
  usage = _layer$getLayerConfig.usage;
43
43
 
44
- if (layer.layerModelNeedUpdate || layer.tileLayer || usage === 'basemap' // TODO: Chore 不走该流程 应从外部统一控制,而不是打补丁
45
- ) {
44
+ if (layer.layerModelNeedUpdate || layer.tileLayer || usage === 'basemap') {
46
45
  return;
47
46
  }
48
47
 
49
- if (layer.inited) {
48
+ if (layer.modelLoaded) {
50
49
  _this.updateStyleAttribute(layer, {
51
50
  styleAttributeService: styleAttributeService
52
51
  });