@antv/l7-layers 2.9.27-alpha.2 → 2.9.27-alpha.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 (342) hide show
  1. package/es/Geometry/index.js +6 -2
  2. package/es/Geometry/models/billboard.js +3 -7
  3. package/es/Geometry/models/plane.js +5 -7
  4. package/es/Geometry/models/sprite.js +4 -7
  5. package/es/canvas/index.d.ts +4 -0
  6. package/es/canvas/index.js +38 -2
  7. package/es/citybuliding/building.js +6 -2
  8. package/es/citybuliding/models/build.js +2 -3
  9. package/es/core/BaseLayer.d.ts +20 -12
  10. package/es/core/BaseLayer.js +61 -85
  11. package/es/core/BaseModel.d.ts +2 -2
  12. package/es/core/BaseModel.js +22 -19
  13. package/es/core/interface.d.ts +20 -1
  14. package/es/core/triangulation.d.ts +6 -0
  15. package/es/core/triangulation.js +64 -2
  16. package/es/earth/index.js +3 -1
  17. package/es/earth/models/atmosphere.js +4 -7
  18. package/es/earth/models/base.js +12 -18
  19. package/es/earth/models/bloomsphere.js +4 -8
  20. package/es/earth/shaders/atmosphere_frag.glsl +1 -1
  21. package/es/earth/shaders/bloomsphere_frag.glsl +1 -1
  22. package/es/heatmap/index.d.ts +2 -2
  23. package/es/heatmap/index.js +7 -5
  24. package/es/heatmap/models/grid.js +1 -3
  25. package/es/heatmap/models/grid3d.js +4 -11
  26. package/es/heatmap/models/heatmap.js +8 -9
  27. package/es/heatmap/models/hexagon.js +2 -6
  28. package/es/heatmap/triangulation.js +0 -1
  29. package/es/image/index.d.ts +1 -1
  30. package/es/image/index.js +10 -3
  31. package/es/image/models/dataImage.d.ts +1 -1
  32. package/es/image/models/dataImage.js +14 -39
  33. package/es/image/models/image.js +5 -10
  34. package/es/image/models/index.d.ts +1 -1
  35. package/es/image/models/index.js +3 -1
  36. package/es/image/models/tileDataImage.d.ts +19 -0
  37. package/es/image/models/tileDataImage.js +174 -0
  38. package/es/line/index.d.ts +1 -0
  39. package/es/line/index.js +8 -2
  40. package/es/line/models/arc.js +10 -10
  41. package/es/line/models/arc_3d.js +8 -10
  42. package/es/line/models/earthArc_3d.js +8 -10
  43. package/es/line/models/great_circle.js +7 -7
  44. package/es/line/models/half.js +3 -4
  45. package/es/line/models/line.js +10 -9
  46. package/es/line/models/linearline.js +3 -4
  47. package/es/line/models/simpleLine.js +5 -4
  48. package/es/line/models/simpleTileLine.d.ts +9 -0
  49. package/es/line/models/simpleTileLine.js +100 -0
  50. package/es/line/models/tile.d.ts +1 -4
  51. package/es/line/models/tile.js +50 -223
  52. package/es/line/models/wall.js +11 -47
  53. package/es/line/shaders/dash/arc_dash_vert.glsl +2 -0
  54. package/es/line/shaders/dash/line_dash_frag.glsl +1 -1
  55. package/es/line/shaders/line_arc2d_vert.glsl +2 -2
  56. package/es/line/shaders/line_arc_3d_frag.glsl +10 -10
  57. package/es/line/shaders/line_arc_3d_vert.glsl +5 -6
  58. package/es/line/shaders/line_arc_frag.glsl +9 -10
  59. package/es/line/shaders/line_arc_great_circle_frag.glsl +6 -6
  60. package/es/line/shaders/line_arc_great_circle_vert.glsl +2 -3
  61. package/es/line/shaders/line_arc_vert.glsl +6 -4
  62. package/es/line/shaders/line_bezier_vert.glsl +2 -2
  63. package/es/line/shaders/line_frag.glsl +5 -6
  64. package/es/line/shaders/line_vert.glsl +1 -1
  65. package/es/line/shaders/linear/arc3d_linear_frag.glsl +6 -7
  66. package/es/line/shaders/linear/arc3d_linear_vert.glsl +11 -12
  67. package/es/line/shaders/linear/arc_linear_frag.glsl +1 -1
  68. package/es/line/shaders/tile/line_tile_map_vert.glsl +25 -0
  69. package/es/line/shaders/tile/line_tile_vert.glsl +19 -177
  70. package/es/line/shaders/tile/simpleline_map_vert.glsl +15 -0
  71. package/es/line/shaders/tile/simpleline_vert.glsl +21 -0
  72. package/es/line/shaders/{wall_frag.glsl → wall/wall_frag.glsl} +21 -25
  73. package/es/line/shaders/wall/wall_vert.glsl +77 -0
  74. package/es/mask/index.d.ts +1 -0
  75. package/es/mask/index.js +80 -5
  76. package/es/mask/models/fill.d.ts +2 -1
  77. package/es/mask/models/fill.js +13 -10
  78. package/es/mask/shaders/mask_vert.glsl +0 -6
  79. package/es/plugins/DataMappingPlugin.d.ts +4 -3
  80. package/es/plugins/DataMappingPlugin.js +129 -58
  81. package/es/plugins/DataSourcePlugin.js +3 -2
  82. package/es/plugins/FeatureScalePlugin.d.ts +0 -2
  83. package/es/plugins/FeatureScalePlugin.js +8 -51
  84. package/es/plugins/LayerAnimateStylePlugin.d.ts +0 -2
  85. package/es/plugins/LayerAnimateStylePlugin.js +7 -27
  86. package/es/plugins/LayerModelPlugin.js +2 -6
  87. package/es/plugins/LightingPlugin.js +1 -7
  88. package/es/plugins/MultiPassRendererPlugin.d.ts +0 -1
  89. package/es/plugins/MultiPassRendererPlugin.js +4 -16
  90. package/es/plugins/PixelPickingPlugin.d.ts +1 -1
  91. package/es/plugins/PixelPickingPlugin.js +8 -28
  92. package/es/plugins/RegisterStyleAttributePlugin.d.ts +4 -0
  93. package/es/plugins/RegisterStyleAttributePlugin.js +56 -5
  94. package/es/plugins/UpdateStyleAttributePlugin.js +2 -9
  95. package/es/point/index.js +9 -6
  96. package/es/point/models/earthExtrude.d.ts +1 -1
  97. package/es/point/models/earthExtrude.js +9 -14
  98. package/es/point/models/earthFill.js +2 -2
  99. package/es/point/models/extrude.d.ts +1 -1
  100. package/es/point/models/extrude.js +9 -12
  101. package/es/point/models/fill.d.ts +1 -1
  102. package/es/point/models/fill.js +8 -9
  103. package/es/point/models/fillmage.js +5 -6
  104. package/es/point/models/image.js +3 -3
  105. package/es/point/models/index.d.ts +1 -1
  106. package/es/point/models/index.js +3 -3
  107. package/es/point/models/normal.d.ts +0 -1
  108. package/es/point/models/normal.js +9 -62
  109. package/es/point/models/radar.js +5 -70
  110. package/es/point/models/simplePoint.d.ts +0 -1
  111. package/es/point/models/simplePoint.js +2 -11
  112. package/es/point/models/text.js +7 -10
  113. package/es/point/models/tile.d.ts +0 -7
  114. package/es/point/models/tile.js +24 -158
  115. package/es/point/models/tileText.d.ts +0 -4
  116. package/es/point/models/tileText.js +99 -188
  117. package/es/point/shaders/animate/wave_frag.glsl +4 -4
  118. package/es/point/shaders/earth/fill_vert.glsl +0 -1
  119. package/es/point/shaders/fill_vert.glsl +0 -1
  120. package/es/point/shaders/normal_frag.glsl +1 -10
  121. package/es/point/shaders/normal_vert.glsl +5 -60
  122. package/es/point/shaders/radar/radar_frag.glsl +4 -15
  123. package/es/point/shaders/radar/radar_vert.glsl +4 -54
  124. package/es/point/shaders/tile/fill_tile_frag.glsl +10 -17
  125. package/es/point/shaders/tile/fill_tile_vert.glsl +20 -123
  126. package/es/point/shaders/tile/text_frag.glsl +33 -0
  127. package/es/point/shaders/tile/text_map_frag.glsl +31 -0
  128. package/es/point/shaders/tile/text_map_vert.glsl +38 -0
  129. package/es/point/shaders/tile/text_vert.glsl +48 -0
  130. package/es/polygon/index.js +6 -2
  131. package/es/polygon/models/extrude.js +4 -8
  132. package/es/polygon/models/fill.js +3 -4
  133. package/es/polygon/models/ocean.d.ts +0 -2
  134. package/es/polygon/models/ocean.js +13 -47
  135. package/es/polygon/models/tile.d.ts +1 -4
  136. package/es/polygon/models/tile.js +25 -57
  137. package/es/polygon/models/water.d.ts +0 -2
  138. package/es/polygon/models/water.js +13 -47
  139. package/es/polygon/shaders/polygon_frag.glsl +2 -2
  140. package/es/polygon/shaders/polygon_vert.glsl +2 -2
  141. package/es/polygon/shaders/tile/polygon_tile_map_vert.glsl +16 -0
  142. package/es/polygon/shaders/tile/polygon_tile_vert.glsl +20 -60
  143. package/es/polygon/shaders/water/polygon_ocean_frag.glsl +1 -2
  144. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +0 -31
  145. package/es/polygon/shaders/water/polygon_water_frag.glsl +1 -3
  146. package/es/polygon/shaders/water/polygon_water_vert.glsl +0 -29
  147. package/es/raster/buffers/triangulation.js +1 -4
  148. package/es/raster/index.js +6 -2
  149. package/es/raster/models/raster.d.ts +1 -1
  150. package/es/raster/models/raster.js +6 -5
  151. package/es/shader/minify_frag.glsl +7 -0
  152. package/es/shader/minify_picking_frag.glsl +10 -0
  153. package/es/tile/manager/baseMapTileLayerManager.d.ts +29 -0
  154. package/es/tile/manager/baseMapTileLayerManager.js +207 -0
  155. package/es/tile/manager/tileLayerManager.d.ts +2 -2
  156. package/es/tile/manager/tileLayerManager.js +12 -2
  157. package/es/tile/manager/tilePickerManager.d.ts +2 -3
  158. package/es/tile/manager/tilePickerManager.js +1 -2
  159. package/es/tile/models/tileModel.d.ts +1 -0
  160. package/es/tile/models/tileModel.js +18 -2
  161. package/es/tile/tileFactory/base.d.ts +1 -1
  162. package/es/tile/tileFactory/base.js +58 -33
  163. package/es/tile/tileFactory/line.js +3 -0
  164. package/es/tile/tileFactory/point.js +3 -0
  165. package/es/tile/tileFactory/polygon.js +3 -0
  166. package/es/tile/tileFactory/raster.js +3 -0
  167. package/es/tile/tileFactory/rasterData.js +3 -0
  168. package/es/tile/tileFactory/rasterDataLayer.js +6 -2
  169. package/es/tile/tileFactory/test.js +26 -5
  170. package/es/tile/tileFactory/vectorLayer.d.ts +4 -1
  171. package/es/tile/tileFactory/vectorLayer.js +110 -7
  172. package/es/tile/tileLayer/baseMapTileLayer.d.ts +29 -0
  173. package/es/tile/tileLayer/baseMapTileLayer.js +188 -0
  174. package/es/tile/tileLayer/baseTileLayer.d.ts +4 -4
  175. package/es/tile/tileLayer/baseTileLayer.js +46 -75
  176. package/es/tile/tileTest.d.ts +1 -0
  177. package/es/tile/tileTest.js +3 -2
  178. package/es/tile/tmsMapTileLayer.d.ts +9 -0
  179. package/es/tile/tmsMapTileLayer.js +119 -0
  180. package/es/tile/tmsTileLayer.d.ts +2 -0
  181. package/es/tile/tmsTileLayer.js +24 -2
  182. package/es/tile/utils.d.ts +4 -0
  183. package/es/tile/utils.js +30 -0
  184. package/es/utils/dataMappingStyle.js +3 -0
  185. package/es/utils/layerData.js +2 -2
  186. package/es/utils/updateShape.js +2 -2
  187. package/es/wind/index.js +6 -2
  188. package/es/wind/models/wind.js +8 -8
  189. package/es/wind/shaders/wind_vert.glsl +1 -1
  190. package/lib/Geometry/index.js +6 -2
  191. package/lib/Geometry/models/billboard.js +3 -7
  192. package/lib/Geometry/models/plane.js +5 -7
  193. package/lib/Geometry/models/sprite.js +4 -7
  194. package/lib/canvas/index.js +37 -2
  195. package/lib/citybuliding/building.js +6 -2
  196. package/lib/citybuliding/models/build.js +2 -3
  197. package/lib/core/BaseLayer.js +61 -85
  198. package/lib/core/BaseModel.js +22 -19
  199. package/lib/core/triangulation.js +66 -2
  200. package/lib/earth/index.js +3 -1
  201. package/lib/earth/models/atmosphere.js +4 -7
  202. package/lib/earth/models/base.js +12 -18
  203. package/lib/earth/models/bloomsphere.js +4 -8
  204. package/lib/earth/shaders/atmosphere_frag.glsl +1 -1
  205. package/lib/earth/shaders/bloomsphere_frag.glsl +1 -1
  206. package/lib/heatmap/index.js +7 -5
  207. package/lib/heatmap/models/grid.js +1 -3
  208. package/lib/heatmap/models/grid3d.js +4 -11
  209. package/lib/heatmap/models/heatmap.js +8 -9
  210. package/lib/heatmap/models/hexagon.js +2 -6
  211. package/lib/heatmap/triangulation.js +0 -1
  212. package/lib/image/index.js +10 -3
  213. package/lib/image/models/dataImage.js +13 -38
  214. package/lib/image/models/image.js +5 -10
  215. package/lib/image/models/index.js +4 -1
  216. package/lib/image/models/tileDataImage.js +188 -0
  217. package/lib/line/index.js +7 -2
  218. package/lib/line/models/arc.js +10 -10
  219. package/lib/line/models/arc_3d.js +8 -10
  220. package/lib/line/models/earthArc_3d.js +8 -10
  221. package/lib/line/models/great_circle.js +7 -7
  222. package/lib/line/models/half.js +3 -4
  223. package/lib/line/models/line.js +10 -9
  224. package/lib/line/models/linearline.js +3 -4
  225. package/lib/line/models/simpleLine.js +5 -4
  226. package/lib/line/models/simpleTileLine.js +115 -0
  227. package/lib/line/models/tile.js +50 -224
  228. package/lib/line/models/wall.js +11 -47
  229. package/lib/line/shaders/dash/arc_dash_vert.glsl +2 -0
  230. package/lib/line/shaders/dash/line_dash_frag.glsl +1 -1
  231. package/lib/line/shaders/line_arc2d_vert.glsl +2 -2
  232. package/lib/line/shaders/line_arc_3d_frag.glsl +10 -10
  233. package/lib/line/shaders/line_arc_3d_vert.glsl +5 -6
  234. package/lib/line/shaders/line_arc_frag.glsl +9 -10
  235. package/lib/line/shaders/line_arc_great_circle_frag.glsl +6 -6
  236. package/lib/line/shaders/line_arc_great_circle_vert.glsl +2 -3
  237. package/lib/line/shaders/line_arc_vert.glsl +6 -4
  238. package/lib/line/shaders/line_bezier_vert.glsl +2 -2
  239. package/lib/line/shaders/line_frag.glsl +5 -6
  240. package/lib/line/shaders/line_vert.glsl +1 -1
  241. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +6 -7
  242. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +11 -12
  243. package/lib/line/shaders/linear/arc_linear_frag.glsl +1 -1
  244. package/lib/line/shaders/tile/line_tile_map_vert.glsl +25 -0
  245. package/lib/line/shaders/tile/line_tile_vert.glsl +19 -177
  246. package/lib/line/shaders/tile/simpleline_map_vert.glsl +15 -0
  247. package/lib/line/shaders/tile/simpleline_vert.glsl +21 -0
  248. package/lib/line/shaders/{wall_frag.glsl → wall/wall_frag.glsl} +21 -25
  249. package/lib/line/shaders/wall/wall_vert.glsl +77 -0
  250. package/lib/mask/index.js +82 -5
  251. package/lib/mask/models/fill.js +14 -10
  252. package/lib/mask/shaders/mask_vert.glsl +0 -6
  253. package/lib/plugins/DataMappingPlugin.js +127 -57
  254. package/lib/plugins/DataSourcePlugin.js +3 -2
  255. package/lib/plugins/FeatureScalePlugin.js +6 -50
  256. package/lib/plugins/LayerAnimateStylePlugin.js +6 -29
  257. package/lib/plugins/LayerModelPlugin.js +2 -6
  258. package/lib/plugins/LightingPlugin.js +1 -7
  259. package/lib/plugins/MultiPassRendererPlugin.js +3 -19
  260. package/lib/plugins/PixelPickingPlugin.js +8 -28
  261. package/lib/plugins/RegisterStyleAttributePlugin.js +56 -5
  262. package/lib/plugins/UpdateStyleAttributePlugin.js +2 -9
  263. package/lib/point/index.js +9 -6
  264. package/lib/point/models/earthExtrude.js +9 -14
  265. package/lib/point/models/earthFill.js +2 -2
  266. package/lib/point/models/extrude.js +9 -12
  267. package/lib/point/models/fill.js +8 -9
  268. package/lib/point/models/fillmage.js +5 -6
  269. package/lib/point/models/image.js +3 -3
  270. package/lib/point/models/index.js +1 -1
  271. package/lib/point/models/normal.js +8 -61
  272. package/lib/point/models/radar.js +5 -70
  273. package/lib/point/models/simplePoint.js +1 -10
  274. package/lib/point/models/text.js +7 -10
  275. package/lib/point/models/tile.js +23 -159
  276. package/lib/point/models/tileText.js +98 -187
  277. package/lib/point/shaders/animate/wave_frag.glsl +4 -4
  278. package/lib/point/shaders/earth/fill_vert.glsl +0 -1
  279. package/lib/point/shaders/fill_vert.glsl +0 -1
  280. package/lib/point/shaders/normal_frag.glsl +1 -10
  281. package/lib/point/shaders/normal_vert.glsl +5 -60
  282. package/lib/point/shaders/radar/radar_frag.glsl +4 -15
  283. package/lib/point/shaders/radar/radar_vert.glsl +4 -54
  284. package/lib/point/shaders/tile/fill_tile_frag.glsl +10 -17
  285. package/lib/point/shaders/tile/fill_tile_vert.glsl +20 -123
  286. package/lib/point/shaders/tile/text_frag.glsl +33 -0
  287. package/lib/point/shaders/tile/text_map_frag.glsl +31 -0
  288. package/lib/point/shaders/tile/text_map_vert.glsl +38 -0
  289. package/lib/point/shaders/tile/text_vert.glsl +48 -0
  290. package/lib/polygon/index.js +6 -2
  291. package/lib/polygon/models/extrude.js +4 -8
  292. package/lib/polygon/models/fill.js +3 -4
  293. package/lib/polygon/models/ocean.js +14 -47
  294. package/lib/polygon/models/tile.js +24 -57
  295. package/lib/polygon/models/water.js +14 -47
  296. package/lib/polygon/shaders/polygon_frag.glsl +2 -2
  297. package/lib/polygon/shaders/polygon_vert.glsl +2 -2
  298. package/lib/polygon/shaders/tile/polygon_tile_map_vert.glsl +16 -0
  299. package/lib/polygon/shaders/tile/polygon_tile_vert.glsl +20 -60
  300. package/lib/polygon/shaders/water/polygon_ocean_frag.glsl +1 -2
  301. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +0 -31
  302. package/lib/polygon/shaders/water/polygon_water_frag.glsl +1 -3
  303. package/lib/polygon/shaders/water/polygon_water_vert.glsl +0 -29
  304. package/lib/raster/buffers/triangulation.js +1 -4
  305. package/lib/raster/index.js +6 -2
  306. package/lib/raster/models/raster.js +6 -5
  307. package/lib/shader/minify_frag.glsl +7 -0
  308. package/lib/shader/minify_picking_frag.glsl +10 -0
  309. package/lib/tile/manager/baseMapTileLayerManager.js +222 -0
  310. package/lib/tile/manager/tileLayerManager.js +12 -2
  311. package/lib/tile/manager/tilePickerManager.js +1 -2
  312. package/lib/tile/models/tileModel.js +19 -2
  313. package/lib/tile/tileFactory/base.js +60 -33
  314. package/lib/tile/tileFactory/line.js +3 -0
  315. package/lib/tile/tileFactory/point.js +3 -0
  316. package/lib/tile/tileFactory/polygon.js +3 -0
  317. package/lib/tile/tileFactory/raster.js +3 -0
  318. package/lib/tile/tileFactory/rasterData.js +3 -0
  319. package/lib/tile/tileFactory/rasterDataLayer.js +6 -2
  320. package/lib/tile/tileFactory/test.js +26 -5
  321. package/lib/tile/tileFactory/vectorLayer.js +112 -8
  322. package/lib/tile/tileLayer/baseMapTileLayer.js +195 -0
  323. package/lib/tile/tileLayer/baseTileLayer.js +46 -75
  324. package/lib/tile/tileTest.js +3 -2
  325. package/lib/tile/tmsMapTileLayer.js +136 -0
  326. package/lib/tile/tmsTileLayer.js +25 -2
  327. package/lib/tile/utils.js +38 -0
  328. package/lib/utils/dataMappingStyle.js +3 -0
  329. package/lib/utils/layerData.js +2 -2
  330. package/lib/utils/updateShape.js +2 -2
  331. package/lib/wind/index.js +6 -2
  332. package/lib/wind/models/wind.js +7 -7
  333. package/lib/wind/shaders/wind_vert.glsl +1 -1
  334. package/package.json +8 -7
  335. package/es/line/shaders/tile/line_tile_frag.glsl +0 -79
  336. package/es/line/shaders/wall_vert.glsl +0 -111
  337. package/es/mask/shaders/mask_frag.glsl +0 -7
  338. package/es/polygon/shaders/tile/polygon_tile_frag.glsl +0 -12
  339. package/lib/line/shaders/tile/line_tile_frag.glsl +0 -79
  340. package/lib/line/shaders/wall_vert.glsl +0 -111
  341. package/lib/mask/shaders/mask_frag.glsl +0 -7
  342. package/lib/polygon/shaders/tile/polygon_tile_frag.glsl +0 -12
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _baseMapTileLayerManager = require("../manager/baseMapTileLayerManager");
17
+
18
+ var _lodash = require("lodash");
19
+
20
+ var BaseTileLayer = /*#__PURE__*/function () {
21
+ function BaseTileLayer(_ref) {
22
+ var _parentSource$data;
23
+
24
+ var parent = _ref.parent,
25
+ rendererService = _ref.rendererService,
26
+ mapService = _ref.mapService,
27
+ layerService = _ref.layerService;
28
+ (0, _classCallCheck2.default)(this, BaseTileLayer);
29
+ (0, _defineProperty2.default)(this, "type", 'baseTile');
30
+ (0, _defineProperty2.default)(this, "initedTileset", false);
31
+ (0, _defineProperty2.default)(this, "viewchange", (0, _lodash.debounce)(this.mapchange, 200));
32
+ var parentSource = parent.getSource();
33
+
34
+ var _ref2 = (parentSource === null || parentSource === void 0 ? void 0 : (_parentSource$data = parentSource.data) === null || _parentSource$data === void 0 ? void 0 : _parentSource$data.tilesetOptions) || {},
35
+ sourceLayer = _ref2.sourceLayer;
36
+
37
+ this.sourceLayer = sourceLayer;
38
+ this.parent = parent;
39
+ this.mapService = mapService;
40
+ this.layerService = layerService;
41
+ this.tileLayerManager = new _baseMapTileLayerManager.BaseMapTileLayerManager(parent, mapService, rendererService);
42
+ this.initTileSetManager();
43
+ }
44
+ /**
45
+ * 渲染瓦片的图层
46
+ */
47
+
48
+
49
+ (0, _createClass2.default)(BaseTileLayer, [{
50
+ key: "children",
51
+ get: function get() {
52
+ return this.tileLayerManager.children;
53
+ }
54
+ }, {
55
+ key: "render",
56
+ value: function render() {
57
+ if (this.tileLayerManager) {
58
+ this.tileLayerManager.render();
59
+ }
60
+ } // eslint-disable-next-line @typescript-eslint/no-unused-vars
61
+
62
+ }, {
63
+ key: "tileLoaded",
64
+ value: function tileLoaded(tile) {//
65
+ }
66
+ }, {
67
+ key: "tileError",
68
+ value: function tileError(error) {
69
+ console.warn('error:', error);
70
+ }
71
+ }, {
72
+ key: "tileUnLoad",
73
+ value: function tileUnLoad(tile) {
74
+ this.tileLayerManager.removeChilds(tile.layerIDList, false);
75
+ }
76
+ }, {
77
+ key: "tileUpdate",
78
+ value: function tileUpdate() {
79
+ // Base Function
80
+ if (!this.tilesetManager) {
81
+ return;
82
+ }
83
+
84
+ if (this.tilesetManager.isLoaded) {
85
+ // 将事件抛出,图层上可以使用瓦片
86
+ this.parent.emit('tiles-loaded', this.tilesetManager.currentTiles);
87
+ }
88
+ }
89
+ }, {
90
+ key: "initTileSetManager",
91
+ value: function initTileSetManager() {
92
+ var _this$tilesetManager;
93
+
94
+ var source = this.parent.getSource();
95
+ this.tilesetManager = source.tileset;
96
+
97
+ if (!this.initedTileset) {
98
+ this.bindTilesetEvent();
99
+ this.initedTileset = true;
100
+ }
101
+
102
+ var _this$getCurrentView = this.getCurrentView(),
103
+ latLonBounds = _this$getCurrentView.latLonBounds,
104
+ zoom = _this$getCurrentView.zoom;
105
+
106
+ (_this$tilesetManager = this.tilesetManager) === null || _this$tilesetManager === void 0 ? void 0 : _this$tilesetManager.update(zoom, latLonBounds);
107
+ }
108
+ }, {
109
+ key: "mapchange",
110
+ value: function mapchange() {
111
+ var _this$tilesetManager2;
112
+
113
+ var _this$getCurrentView2 = this.getCurrentView(),
114
+ latLonBounds = _this$getCurrentView2.latLonBounds,
115
+ zoom = _this$getCurrentView2.zoom;
116
+
117
+ if (this.mapService.version === 'GAODE1.x') {
118
+ var _this$parent$getLayer = this.parent.getLayerConfig(),
119
+ visible = _this$parent$getLayer.visible;
120
+
121
+ if (zoom < 3 && visible) {
122
+ this.parent.updateLayerConfig({
123
+ visible: false
124
+ });
125
+ this.layerService.reRender();
126
+ } else if (zoom >= 3 && !visible) {
127
+ this.parent.updateLayerConfig({
128
+ visible: true
129
+ });
130
+ this.layerService.reRender();
131
+ }
132
+ }
133
+
134
+ if (this.lastViewStates && this.lastViewStates.zoom === zoom && this.lastViewStates.latLonBounds.toString() === latLonBounds.toString()) {
135
+ return;
136
+ }
137
+
138
+ this.lastViewStates = {
139
+ zoom: zoom,
140
+ latLonBounds: latLonBounds
141
+ };
142
+ (_this$tilesetManager2 = this.tilesetManager) === null || _this$tilesetManager2 === void 0 ? void 0 : _this$tilesetManager2.update(zoom, latLonBounds);
143
+ }
144
+ }, {
145
+ key: "bindTilesetEvent",
146
+ value: function bindTilesetEvent() {
147
+ var _this = this;
148
+
149
+ if (!this.tilesetManager) {
150
+ return;
151
+ } // 瓦片数据加载成功
152
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
153
+
154
+
155
+ this.tilesetManager.on('tile-loaded', function (tile) {// 将事件抛出,图层上可以监听使用
156
+ }); // 瓦片数据从缓存删除或被执行重新加载
157
+
158
+ this.tilesetManager.on('tile-unload', function (tile) {
159
+ // 将事件抛出,图层上可以监听使用
160
+ _this.tileUnLoad(tile);
161
+ }); // 瓦片数据加载失败
162
+
163
+ this.tilesetManager.on('tile-error', function (error, tile) {
164
+ // 将事件抛出,图层上可以监听使用
165
+ _this.tileError(error);
166
+ }); // 瓦片显隐状态更新
167
+
168
+ this.tilesetManager.on('tile-update', function () {
169
+ _this.tileUpdate();
170
+ }); // 地图视野发生改变
171
+
172
+ this.mapService.on('zoomend', function () {
173
+ return _this.viewchange();
174
+ });
175
+ this.mapService.on('moveend', function () {
176
+ return _this.viewchange();
177
+ });
178
+ } // 防抖操作
179
+
180
+ }, {
181
+ key: "getCurrentView",
182
+ value: function getCurrentView() {
183
+ var bounds = this.mapService.getBounds();
184
+ var latLonBounds = [bounds[0][0], bounds[0][1], bounds[1][0], bounds[1][1]];
185
+ var zoom = this.mapService.getZoom();
186
+ return {
187
+ latLonBounds: latLonBounds,
188
+ zoom: zoom
189
+ };
190
+ }
191
+ }]);
192
+ return BaseTileLayer;
193
+ }();
194
+
195
+ exports.default = BaseTileLayer;
@@ -21,6 +21,8 @@ var _l7Utils = require("@antv/l7-utils");
21
21
 
22
22
  var _tileLayerManager = require("../manager/tileLayerManager");
23
23
 
24
+ var _lodash = require("lodash");
25
+
24
26
  var BaseTileLayer = /*#__PURE__*/function () {
25
27
  function BaseTileLayer(_ref) {
26
28
  var _parentSource$data;
@@ -38,18 +40,17 @@ var BaseTileLayer = /*#__PURE__*/function () {
38
40
  select: null,
39
41
  active: null
40
42
  });
43
+ (0, _defineProperty2.default)(this, "viewchange", (0, _lodash.debounce)(this.mapchange, 200));
41
44
  var parentSource = parent.getSource();
42
45
 
43
46
  var _ref2 = (parentSource === null || parentSource === void 0 ? void 0 : (_parentSource$data = parentSource.data) === null || _parentSource$data === void 0 ? void 0 : _parentSource$data.tilesetOptions) || {},
44
- sourceLayer = _ref2.sourceLayer,
45
- coords = _ref2.coords,
46
- featureId = _ref2.featureId;
47
+ sourceLayer = _ref2.sourceLayer;
47
48
 
48
49
  this.sourceLayer = sourceLayer;
49
50
  this.parent = parent;
50
51
  this.mapService = mapService;
51
52
  this.layerService = layerService;
52
- this.tileLayerManager = new _tileLayerManager.TileLayerManager(parent, mapService, rendererService, pickingService, layerService, transforms);
53
+ this.tileLayerManager = new _tileLayerManager.TileLayerManager(parent, mapService, rendererService, pickingService, transforms);
53
54
  this.initTileSetManager();
54
55
  this.bindSubLayerEvent();
55
56
  this.bindSubLayerPick();
@@ -126,35 +127,11 @@ var BaseTileLayer = /*#__PURE__*/function () {
126
127
  }, {
127
128
  key: "tileUpdate",
128
129
  value: function tileUpdate() {
129
- var _this2 = this;
130
-
131
130
  // Base Function
132
131
  if (!this.tilesetManager) {
133
132
  return;
134
133
  }
135
134
 
136
- this.tilesetManager.tiles.filter(function (tile) {
137
- return tile.isLoaded;
138
- }).map(function (tile) {
139
- if (tile.layerIDList.length === 0) {
140
- var _this2$tileLayerManag = _this2.tileLayerManager.createTile(tile),
141
- layers = _this2$tileLayerManag.layers,
142
- layerIDList = _this2$tileLayerManag.layerIDList;
143
-
144
- tile.layerIDList = layerIDList;
145
-
146
- _this2.tileLayerManager.addChilds(layers);
147
- } else {
148
- if (!tile.isVisibleChange) {
149
- return;
150
- }
151
-
152
- var _layers = _this2.tileLayerManager.getChilds(tile.layerIDList);
153
-
154
- _this2.tileLayerManager.updateLayersConfig(_layers, 'visible', tile.isVisible);
155
- }
156
- });
157
-
158
135
  if (this.tilesetManager.isLoaded) {
159
136
  // 将事件抛出,图层上可以使用瓦片
160
137
  this.parent.emit('tiles-loaded', this.tilesetManager.currentTiles);
@@ -163,12 +140,12 @@ var BaseTileLayer = /*#__PURE__*/function () {
163
140
  }, {
164
141
  key: "setPickState",
165
142
  value: function setPickState(layers) {
166
- var _this3 = this;
143
+ var _this2 = this;
167
144
 
168
145
  if (this.pickColors.select) {
169
146
  var selectedId = (0, _l7Utils.decodePickingColor)(this.pickColors.select);
170
147
  layers.map(function (layer) {
171
- _this3.selectFeature(layer, _this3.pickColors.select);
148
+ _this2.selectFeature(layer, _this2.pickColors.select);
172
149
 
173
150
  layer.setCurrentSelectedId(selectedId);
174
151
  });
@@ -180,7 +157,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
180
157
  layers.filter(function (layer) {
181
158
  return layer.inited && layer.isVisible();
182
159
  }).map(function (layer) {
183
- layer.hooks.beforeHighlight.call(_this3.pickColors.active);
160
+ layer.hooks.beforeHighlight.call(_this2.pickColors.active);
184
161
  layer.setCurrentPickId(_selectedId);
185
162
  });
186
163
  }
@@ -188,7 +165,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
188
165
  }, {
189
166
  key: "bindSubLayerPick",
190
167
  value: function bindSubLayerPick() {
191
- var _this4 = this;
168
+ var _this3 = this;
192
169
 
193
170
  this.tileLayerManager.tilePickManager.on('pick', function (e) {
194
171
  // @ts-ignore
@@ -198,19 +175,19 @@ var BaseTileLayer = /*#__PURE__*/function () {
198
175
  b = _e$pickedColors[2];
199
176
 
200
177
  if (e.type === 'click') {
201
- var restLayers = _this4.children.filter(function (child) {
178
+ var restLayers = _this3.children.filter(function (child) {
202
179
  return child.inited && child.isVisible() && child.isVector;
203
180
  }).filter(function (child) {
204
181
  return child !== e.layer;
205
182
  });
206
183
 
207
- _this4.setSelect(restLayers, [r, g, b]);
184
+ _this3.setSelect(restLayers, [r, g, b]);
208
185
  } else {
209
- _this4.setHighlight([r, g, b]);
186
+ _this3.setHighlight([r, g, b]);
210
187
  }
211
188
  });
212
189
  this.tileLayerManager.tilePickManager.on('unpick', function () {
213
- _this4.pickColors.active = null;
190
+ _this3.pickColors.active = null;
214
191
  });
215
192
  }
216
193
  }, {
@@ -233,21 +210,21 @@ var BaseTileLayer = /*#__PURE__*/function () {
233
210
  }, {
234
211
  key: "setSelect",
235
212
  value: function setSelect(layers, pickedColors) {
236
- var _this5 = this;
213
+ var _this4 = this;
237
214
 
238
215
  var selectedId = (0, _l7Utils.decodePickingColor)(pickedColors);
239
216
  layers.map(function (layer) {
240
217
  if (layer.getCurrentSelectedId() === null || selectedId !== layer.getCurrentSelectedId()) {
241
- _this5.selectFeature(layer, pickedColors);
218
+ _this4.selectFeature(layer, pickedColors);
242
219
 
243
220
  layer.setCurrentSelectedId(selectedId);
244
- _this5.pickColors.select = pickedColors;
221
+ _this4.pickColors.select = pickedColors;
245
222
  } else {
246
- _this5.selectFeature(layer, new Uint8Array([0, 0, 0, 0])); // toggle select
223
+ _this4.selectFeature(layer, new Uint8Array([0, 0, 0, 0])); // toggle select
247
224
 
248
225
 
249
226
  layer.setCurrentSelectedId(null);
250
- _this5.pickColors.select = null;
227
+ _this4.pickColors.select = null;
251
228
  }
252
229
  }); // unselect normal layer
253
230
 
@@ -257,7 +234,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
257
234
  }).filter(function (layer) {
258
235
  return layer.getCurrentSelectedId() !== null;
259
236
  }).map(function (layer) {
260
- _this5.selectFeature(layer, new Uint8Array([0, 0, 0, 0]));
237
+ _this4.selectFeature(layer, new Uint8Array([0, 0, 0, 0]));
261
238
 
262
239
  layer.setCurrentSelectedId(null);
263
240
  });
@@ -276,7 +253,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
276
253
  }, {
277
254
  key: "bindSubLayerEvent",
278
255
  value: function bindSubLayerEvent() {
279
- var _this6 = this;
256
+ var _this5 = this;
280
257
 
281
258
  /**
282
259
  * layer.on('click', (ev) => {}); // 鼠标左键点击图层事件
@@ -296,41 +273,41 @@ var BaseTileLayer = /*#__PURE__*/function () {
296
273
  * layer.on('unpick', (ev) => {}); // 图层外的操作的所有事件
297
274
  */
298
275
  this.parent.on('subLayerClick', function (e) {
299
- _this6.parent.emit('click', (0, _objectSpread2.default)({}, e));
276
+ _this5.parent.emit('click', (0, _objectSpread2.default)({}, e));
300
277
  });
301
278
  this.parent.on('subLayerMouseMove', function (e) {
302
- return _this6.parent.emit('mousemove', (0, _objectSpread2.default)({}, e));
279
+ return _this5.parent.emit('mousemove', (0, _objectSpread2.default)({}, e));
303
280
  });
304
281
  this.parent.on('subLayerMouseUp', function (e) {
305
- return _this6.parent.emit('mouseup', (0, _objectSpread2.default)({}, e));
282
+ return _this5.parent.emit('mouseup', (0, _objectSpread2.default)({}, e));
306
283
  });
307
284
  this.parent.on('subLayerMouseEnter', function (e) {
308
- return _this6.parent.emit('mouseenter', (0, _objectSpread2.default)({}, e));
285
+ return _this5.parent.emit('mouseenter', (0, _objectSpread2.default)({}, e));
309
286
  });
310
287
  this.parent.on('subLayerMouseOut', function (e) {
311
- return _this6.parent.emit('mouseout', (0, _objectSpread2.default)({}, e));
288
+ return _this5.parent.emit('mouseout', (0, _objectSpread2.default)({}, e));
312
289
  });
313
290
  this.parent.on('subLayerMouseDown', function (e) {
314
- return _this6.parent.emit('mousedown', (0, _objectSpread2.default)({}, e));
291
+ return _this5.parent.emit('mousedown', (0, _objectSpread2.default)({}, e));
315
292
  });
316
293
  this.parent.on('subLayerContextmenu', function (e) {
317
- return _this6.parent.emit('contextmenu', (0, _objectSpread2.default)({}, e));
294
+ return _this5.parent.emit('contextmenu', (0, _objectSpread2.default)({}, e));
318
295
  }); // vector layer 图层外事件
319
296
 
320
297
  this.parent.on('subLayerUnClick', function (e) {
321
- return _this6.parent.emit('unclick', (0, _objectSpread2.default)({}, e));
298
+ return _this5.parent.emit('unclick', (0, _objectSpread2.default)({}, e));
322
299
  });
323
300
  this.parent.on('subLayerUnMouseMove', function (e) {
324
- return _this6.parent.emit('unmousemove', (0, _objectSpread2.default)({}, e));
301
+ return _this5.parent.emit('unmousemove', (0, _objectSpread2.default)({}, e));
325
302
  });
326
303
  this.parent.on('subLayerUnMouseUp', function (e) {
327
- return _this6.parent.emit('unmouseup', (0, _objectSpread2.default)({}, e));
304
+ return _this5.parent.emit('unmouseup', (0, _objectSpread2.default)({}, e));
328
305
  });
329
306
  this.parent.on('subLayerUnMouseDown', function (e) {
330
- return _this6.parent.emit('unmousedown', (0, _objectSpread2.default)({}, e));
307
+ return _this5.parent.emit('unmousedown', (0, _objectSpread2.default)({}, e));
331
308
  });
332
309
  this.parent.on('subLayerUnContextmenu', function (e) {
333
- return _this6.parent.emit('uncontextmenu', (0, _objectSpread2.default)({}, e));
310
+ return _this5.parent.emit('uncontextmenu', (0, _objectSpread2.default)({}, e));
334
311
  });
335
312
  }
336
313
  }, {
@@ -369,12 +346,12 @@ var BaseTileLayer = /*#__PURE__*/function () {
369
346
  this.parent.updateLayerConfig({
370
347
  visible: false
371
348
  });
372
- this.layerService.updateLayerRenderList();
349
+ this.layerService.reRender();
373
350
  } else if (zoom >= 3 && !visible) {
374
351
  this.parent.updateLayerConfig({
375
352
  visible: true
376
353
  });
377
- this.layerService.updateLayerRenderList();
354
+ this.layerService.reRender();
378
355
  }
379
356
  }
380
357
 
@@ -386,49 +363,43 @@ var BaseTileLayer = /*#__PURE__*/function () {
386
363
  zoom: zoom,
387
364
  latLonBounds: latLonBounds
388
365
  };
389
-
390
- if (this.timer) {
391
- clearTimeout(this.timer);
392
- this.timer = null;
393
- } // this.timer = setTimeout(() => {
394
-
395
-
396
- (_this$tilesetManager2 = this.tilesetManager) === null || _this$tilesetManager2 === void 0 ? void 0 : _this$tilesetManager2.update(zoom, latLonBounds); // }, 250);
366
+ (_this$tilesetManager2 = this.tilesetManager) === null || _this$tilesetManager2 === void 0 ? void 0 : _this$tilesetManager2.update(zoom, latLonBounds);
397
367
  }
398
368
  }, {
399
369
  key: "bindTilesetEvent",
400
370
  value: function bindTilesetEvent() {
401
- var _this7 = this;
371
+ var _this6 = this;
402
372
 
403
373
  if (!this.tilesetManager) {
404
374
  return;
405
375
  } // 瓦片数据加载成功
406
376
 
407
377
 
408
- this.tilesetManager.on('tile-loaded', function (tile) {// todo: 将事件抛出,图层上可以监听使用
378
+ this.tilesetManager.on('tile-loaded', function (tile) {// 将事件抛出,图层上可以监听使用
409
379
  }); // 瓦片数据从缓存删除或被执行重新加载
410
380
 
411
381
  this.tilesetManager.on('tile-unload', function (tile) {
412
- // todo: 将事件抛出,图层上可以监听使用
413
- _this7.tileUnLoad(tile);
382
+ // 将事件抛出,图层上可以监听使用
383
+ _this6.tileUnLoad(tile);
414
384
  }); // 瓦片数据加载失败
415
385
 
416
386
  this.tilesetManager.on('tile-error', function (error, tile) {
417
- // todo: 将事件抛出,图层上可以监听使用
418
- _this7.tileError(error);
387
+ // 将事件抛出,图层上可以监听使用
388
+ _this6.tileError(error);
419
389
  }); // 瓦片显隐状态更新
420
390
 
421
391
  this.tilesetManager.on('tile-update', function () {
422
- _this7.tileUpdate();
392
+ _this6.tileUpdate();
423
393
  }); // 地图视野发生改变
424
394
 
425
395
  this.mapService.on('zoomend', function () {
426
- return _this7.mapchange();
396
+ return _this6.viewchange();
427
397
  });
428
398
  this.mapService.on('moveend', function () {
429
- return _this7.mapchange();
399
+ return _this6.viewchange();
430
400
  });
431
- }
401
+ } // 防抖操作
402
+
432
403
  }, {
433
404
  key: "getCurrentView",
434
405
  value: function getCurrentView() {
@@ -49,7 +49,8 @@ var TileDebugLayer = /*#__PURE__*/function (_BaseLayer) {
49
49
  data: [],
50
50
  options: {
51
51
  parser: {
52
- type: 'testTile'
52
+ type: 'testTile',
53
+ cancelExtent: true
53
54
  }
54
55
  }
55
56
  });
@@ -65,7 +66,7 @@ var TileDebugLayer = /*#__PURE__*/function (_BaseLayer) {
65
66
  this.layerModel.initModels(function (models) {
66
67
  _this2.models = models;
67
68
 
68
- _this2.renderLayers();
69
+ _this2.emit('modelLoaded', null);
69
70
  });
70
71
  }
71
72
  }]);
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.TMSBaseMapTileLayer = void 0;
9
+
10
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _baseMapTileLayer = _interopRequireDefault(require("./tileLayer/baseMapTileLayer"));
27
+
28
+ var _utils = require("./utils");
29
+
30
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
31
+
32
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
33
+
34
+ var TMSBaseMapTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
35
+ (0, _inherits2.default)(TMSBaseMapTileLayer, _BaseTileLayer);
36
+
37
+ var _super = _createSuper(TMSBaseMapTileLayer);
38
+
39
+ function TMSBaseMapTileLayer() {
40
+ var _this;
41
+
42
+ (0, _classCallCheck2.default)(this, TMSBaseMapTileLayer);
43
+
44
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
45
+ args[_key] = arguments[_key];
46
+ }
47
+
48
+ _this = _super.call.apply(_super, [this].concat(args));
49
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'BaseMapTMS');
50
+ return _this;
51
+ }
52
+
53
+ (0, _createClass2.default)(TMSBaseMapTileLayer, [{
54
+ key: "tileUnLoad",
55
+ value: function tileUnLoad(tile) {
56
+ this.tileLayerManager.removeChilds(tile.layerIDList, false);
57
+ }
58
+ }, {
59
+ key: "tileUpdate",
60
+ value: function tileUpdate() {
61
+ var _this2 = this;
62
+
63
+ if (!this.tilesetManager) {
64
+ return;
65
+ }
66
+
67
+ this.tilesetManager.tiles.filter(function (tile) {
68
+ return tile.isLoaded;
69
+ }).map(function (tile) {
70
+ var _tile$data;
71
+
72
+ if ((_tile$data = tile.data) !== null && _tile$data !== void 0 && _tile$data.layers && _this2.sourceLayer) {
73
+ // vector
74
+ var vectorTileLayer = tile.data.layers[_this2.sourceLayer];
75
+ var features = vectorTileLayer === null || vectorTileLayer === void 0 ? void 0 : vectorTileLayer.features;
76
+
77
+ if (!(Array.isArray(features) && features.length > 0)) {
78
+ return;
79
+ }
80
+ }
81
+
82
+ if (!tile.parentLayerIDList.includes(_this2.parent.id)) {
83
+ var _tile$layerIDList;
84
+
85
+ var _this2$tileLayerManag = _this2.tileLayerManager.createTile(tile),
86
+ layers = _this2$tileLayerManag.layers,
87
+ layerIDList = _this2$tileLayerManag.layerIDList;
88
+
89
+ tile.parentLayerIDList.push(_this2.parent.id);
90
+
91
+ (_tile$layerIDList = tile.layerIDList).push.apply(_tile$layerIDList, (0, _toConsumableArray2.default)(layerIDList));
92
+
93
+ _this2.tileLayerManager.addChilds(layers);
94
+ } else {
95
+ if (!tile.isVisibleChange) {
96
+ return;
97
+ }
98
+
99
+ var _layers = _this2.tileLayerManager.getChilds(tile.layerIDList);
100
+
101
+ _this2.updateTileVisible(tile, _layers);
102
+ }
103
+ });
104
+
105
+ if (this.tilesetManager.isLoaded) {
106
+ // 将事件抛出,图层上可以使用瓦片
107
+ this.parent.emit('tiles-loaded', this.tilesetManager.currentTiles);
108
+ }
109
+ }
110
+ }, {
111
+ key: "emitTileVisibleEvent",
112
+ value: function emitTileVisibleEvent(tile, callback) {
113
+ if (tile.isVisible) {
114
+ callback();
115
+ } else {
116
+ (0, _utils.tileAllLoad)(tile, function () {
117
+ callback();
118
+ });
119
+ }
120
+ }
121
+ }, {
122
+ key: "updateTileVisible",
123
+ value: function updateTileVisible(tile, layers) {
124
+ var _this3 = this;
125
+
126
+ this.emitTileVisibleEvent(tile, function () {
127
+ _this3.tileLayerManager.updateLayersConfig(layers, 'visible', tile.isVisible);
128
+
129
+ _this3.layerService.reRender();
130
+ });
131
+ }
132
+ }]);
133
+ return TMSBaseMapTileLayer;
134
+ }(_baseMapTileLayer.default);
135
+
136
+ exports.TMSBaseMapTileLayer = TMSBaseMapTileLayer;