@antv/l7-layers 2.25.5 → 2.25.7

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 (717) hide show
  1. package/package.json +6 -6
  2. package/es/canvas/index.d.ts +0 -18
  3. package/es/canvas/index.js +0 -70
  4. package/es/canvas/models/canvas.d.ts +0 -23
  5. package/es/canvas/models/canvas.js +0 -141
  6. package/es/canvas/models/constants.d.ts +0 -2
  7. package/es/canvas/models/constants.js +0 -6
  8. package/es/canvas/models/index.d.ts +0 -2
  9. package/es/canvas/models/index.js +0 -2
  10. package/es/citybuilding/building.d.ts +0 -7
  11. package/es/citybuilding/building.js +0 -25
  12. package/es/citybuilding/models/build.d.ts +0 -33
  13. package/es/citybuilding/models/build.js +0 -160
  14. package/es/citybuilding/shaders/build_frag.glsl +0 -123
  15. package/es/citybuilding/shaders/build_vert.glsl +0 -58
  16. package/es/core/BaseLayer.d.ts +0 -265
  17. package/es/core/BaseLayer.js +0 -1310
  18. package/es/core/BaseModel.d.ts +0 -95
  19. package/es/core/BaseModel.js +0 -367
  20. package/es/core/CommonStyleAttribute.d.ts +0 -16
  21. package/es/core/CommonStyleAttribute.js +0 -114
  22. package/es/core/LayerPickService.d.ts +0 -12
  23. package/es/core/LayerPickService.js +0 -102
  24. package/es/core/TextureService.d.ts +0 -15
  25. package/es/core/TextureService.js +0 -65
  26. package/es/core/constant.d.ts +0 -6
  27. package/es/core/constant.js +0 -19
  28. package/es/core/interface.d.ts +0 -284
  29. package/es/core/interface.js +0 -32
  30. package/es/core/line_trangluation.d.ts +0 -19
  31. package/es/core/line_trangluation.js +0 -86
  32. package/es/core/schema.d.ts +0 -27
  33. package/es/core/schema.js +0 -25
  34. package/es/core/shape/Path.d.ts +0 -40
  35. package/es/core/shape/Path.js +0 -69
  36. package/es/core/shape/arrow.d.ts +0 -25
  37. package/es/core/shape/arrow.js +0 -144
  38. package/es/core/shape/extrude.d.ts +0 -17
  39. package/es/core/shape/extrude.js +0 -133
  40. package/es/core/triangulation.d.ts +0 -136
  41. package/es/core/triangulation.js +0 -601
  42. package/es/core/utils.d.ts +0 -5
  43. package/es/core/utils.js +0 -36
  44. package/es/earth/index.d.ts +0 -22
  45. package/es/earth/index.js +0 -54
  46. package/es/earth/models/atmosphere.d.ts +0 -30
  47. package/es/earth/models/atmosphere.js +0 -116
  48. package/es/earth/models/base.d.ts +0 -37
  49. package/es/earth/models/base.js +0 -172
  50. package/es/earth/models/bloomsphere.d.ts +0 -30
  51. package/es/earth/models/bloomsphere.js +0 -115
  52. package/es/earth/shaders/atmosphere/atmosphere_frag.glsl +0 -17
  53. package/es/earth/shaders/atmosphere/atmosphere_vert.glsl +0 -24
  54. package/es/earth/shaders/base/base_frag.glsl +0 -11
  55. package/es/earth/shaders/base/base_vert.glsl +0 -52
  56. package/es/earth/shaders/bloomshpere/bloomsphere_frag.glsl +0 -15
  57. package/es/earth/shaders/bloomshpere/bloomsphere_vert.glsl +0 -20
  58. package/es/earth/utils.d.ts +0 -26
  59. package/es/earth/utils.js +0 -99
  60. package/es/geometry/index.d.ts +0 -22
  61. package/es/geometry/index.js +0 -53
  62. package/es/geometry/models/billboard.d.ts +0 -39
  63. package/es/geometry/models/billboard.js +0 -175
  64. package/es/geometry/models/index.d.ts +0 -5
  65. package/es/geometry/models/index.js +0 -9
  66. package/es/geometry/models/plane.d.ts +0 -58
  67. package/es/geometry/models/plane.js +0 -308
  68. package/es/geometry/models/sprite.d.ts +0 -48
  69. package/es/geometry/models/sprite.js +0 -225
  70. package/es/geometry/shaders/billboard_frag.glsl +0 -18
  71. package/es/geometry/shaders/billboard_vert.glsl +0 -43
  72. package/es/geometry/shaders/plane_frag.glsl +0 -23
  73. package/es/geometry/shaders/plane_vert.glsl +0 -31
  74. package/es/geometry/shaders/sprite_frag.glsl +0 -23
  75. package/es/geometry/shaders/sprite_vert.glsl +0 -21
  76. package/es/heatmap/index.d.ts +0 -13
  77. package/es/heatmap/index.js +0 -87
  78. package/es/heatmap/models/grid.d.ts +0 -29
  79. package/es/heatmap/models/grid.js +0 -83
  80. package/es/heatmap/models/grid3d.d.ts +0 -31
  81. package/es/heatmap/models/grid3d.js +0 -122
  82. package/es/heatmap/models/heatmap.d.ts +0 -46
  83. package/es/heatmap/models/heatmap.js +0 -447
  84. package/es/heatmap/models/hexagon.d.ts +0 -29
  85. package/es/heatmap/models/hexagon.js +0 -83
  86. package/es/heatmap/models/index.d.ts +0 -5
  87. package/es/heatmap/models/index.js +0 -12
  88. package/es/heatmap/shaders/grid/grid_frag.glsl +0 -9
  89. package/es/heatmap/shaders/grid/grid_vert.glsl +0 -30
  90. package/es/heatmap/shaders/grid3d/grid_3d_frag.glsl +0 -17
  91. package/es/heatmap/shaders/grid3d/grid_3d_vert.glsl +0 -34
  92. package/es/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +0 -23
  93. package/es/heatmap/shaders/heatmap/heatmap_3d_vert.glsl +0 -59
  94. package/es/heatmap/shaders/heatmap/heatmap_frag.glsl +0 -40
  95. package/es/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +0 -17
  96. package/es/heatmap/shaders/heatmap/heatmap_framebuffer_vert.glsl +0 -36
  97. package/es/heatmap/shaders/heatmap/heatmap_vert.glsl +0 -21
  98. package/es/heatmap/shaders/hexagon/hexagon_frag.glsl +0 -8
  99. package/es/heatmap/shaders/hexagon/hexagon_vert.glsl +0 -30
  100. package/es/heatmap/triangulation.d.ts +0 -5
  101. package/es/heatmap/triangulation.js +0 -33
  102. package/es/image/index.d.ts +0 -9
  103. package/es/image/index.js +0 -28
  104. package/es/image/models/image.d.ts +0 -31
  105. package/es/image/models/image.js +0 -113
  106. package/es/image/models/index.d.ts +0 -5
  107. package/es/image/models/index.js +0 -5
  108. package/es/image/shaders/dataImage_frag.glsl +0 -32
  109. package/es/image/shaders/image_frag.glsl +0 -38
  110. package/es/image/shaders/image_vert.glsl +0 -20
  111. package/es/index.d.ts +0 -18
  112. package/es/index.js +0 -18
  113. package/es/line/index.d.ts +0 -36
  114. package/es/line/index.js +0 -90
  115. package/es/line/models/arc.d.ts +0 -40
  116. package/es/line/models/arc.js +0 -279
  117. package/es/line/models/arc_3d.d.ts +0 -40
  118. package/es/line/models/arc_3d.js +0 -269
  119. package/es/line/models/flow.d.ts +0 -31
  120. package/es/line/models/flow.js +0 -140
  121. package/es/line/models/great_circle.d.ts +0 -34
  122. package/es/line/models/great_circle.js +0 -240
  123. package/es/line/models/index.d.ts +0 -5
  124. package/es/line/models/index.js +0 -18
  125. package/es/line/models/line.d.ts +0 -44
  126. package/es/line/models/line.js +0 -273
  127. package/es/line/models/simple_line.d.ts +0 -33
  128. package/es/line/models/simple_line.js +0 -118
  129. package/es/line/models/wall.d.ts +0 -34
  130. package/es/line/models/wall.js +0 -223
  131. package/es/line/shaders/arc/line_arc_frag.glsl +0 -92
  132. package/es/line/shaders/arc/line_arc_vert.glsl +0 -156
  133. package/es/line/shaders/arc3d/line_arc_3d_frag.glsl +0 -108
  134. package/es/line/shaders/arc3d/line_arc_3d_vert.glsl +0 -177
  135. package/es/line/shaders/flow/flow_line_frag.glsl +0 -13
  136. package/es/line/shaders/flow/flow_line_vert.glsl +0 -76
  137. package/es/line/shaders/greatCircle/line_arc_great_circle_frag.glsl +0 -99
  138. package/es/line/shaders/greatCircle/line_arc_great_circle_vert.glsl +0 -165
  139. package/es/line/shaders/line/line_frag.glsl +0 -122
  140. package/es/line/shaders/line/line_vert.glsl +0 -101
  141. package/es/line/shaders/simple/simpleline_frag.glsl +0 -30
  142. package/es/line/shaders/simple/simpleline_vert.glsl +0 -45
  143. package/es/line/shaders/wall/wall_frag.glsl +0 -94
  144. package/es/line/shaders/wall/wall_vert.glsl +0 -90
  145. package/es/mask/index.d.ts +0 -16
  146. package/es/mask/index.js +0 -21
  147. package/es/mask/models/fill.d.ts +0 -18
  148. package/es/mask/models/fill.js +0 -61
  149. package/es/mask/models/index.d.ts +0 -5
  150. package/es/mask/models/index.js +0 -5
  151. package/es/mask/shaders/mask_vert.glsl +0 -14
  152. package/es/plugins/DataMappingPlugin.d.ts +0 -12
  153. package/es/plugins/DataMappingPlugin.js +0 -226
  154. package/es/plugins/DataSourcePlugin.d.ts +0 -6
  155. package/es/plugins/DataSourcePlugin.js +0 -75
  156. package/es/plugins/FeatureScalePlugin.d.ts +0 -20
  157. package/es/plugins/FeatureScalePlugin.js +0 -295
  158. package/es/plugins/LayerAnimateStylePlugin.d.ts +0 -4
  159. package/es/plugins/LayerAnimateStylePlugin.js +0 -14
  160. package/es/plugins/LayerMaskPlugin.d.ts +0 -7
  161. package/es/plugins/LayerMaskPlugin.js +0 -19
  162. package/es/plugins/LayerModelPlugin.d.ts +0 -10
  163. package/es/plugins/LayerModelPlugin.js +0 -60
  164. package/es/plugins/LayerStylePlugin.d.ts +0 -7
  165. package/es/plugins/LayerStylePlugin.js +0 -18
  166. package/es/plugins/LightingPlugin.d.ts +0 -35
  167. package/es/plugins/LightingPlugin.js +0 -84
  168. package/es/plugins/MultiPassRendererPlugin.d.ts +0 -22
  169. package/es/plugins/MultiPassRendererPlugin.js +0 -52
  170. package/es/plugins/PixelPickingPlugin.d.ts +0 -11
  171. package/es/plugins/PixelPickingPlugin.js +0 -146
  172. package/es/plugins/RegisterStyleAttributePlugin.d.ts +0 -10
  173. package/es/plugins/RegisterStyleAttributePlugin.js +0 -72
  174. package/es/plugins/ShaderUniformPlugin.d.ts +0 -17
  175. package/es/plugins/ShaderUniformPlugin.js +0 -196
  176. package/es/plugins/UpdateModelPlugin.d.ts +0 -7
  177. package/es/plugins/UpdateModelPlugin.js +0 -20
  178. package/es/plugins/UpdateStyleAttributePlugin.d.ts +0 -9
  179. package/es/plugins/UpdateStyleAttributePlugin.js +0 -54
  180. package/es/plugins/index.d.ts +0 -15
  181. package/es/plugins/index.js +0 -18
  182. package/es/point/index.d.ts +0 -35
  183. package/es/point/index.js +0 -153
  184. package/es/point/models/billboard_point.d.ts +0 -35
  185. package/es/point/models/billboard_point.js +0 -95
  186. package/es/point/models/earthExtrude.d.ts +0 -32
  187. package/es/point/models/earthExtrude.js +0 -199
  188. package/es/point/models/earthFill.d.ts +0 -31
  189. package/es/point/models/earthFill.js +0 -158
  190. package/es/point/models/extrude.d.ts +0 -32
  191. package/es/point/models/extrude.js +0 -195
  192. package/es/point/models/fill.d.ts +0 -47
  193. package/es/point/models/fill.js +0 -180
  194. package/es/point/models/fillImage.d.ts +0 -42
  195. package/es/point/models/fillImage.js +0 -189
  196. package/es/point/models/image.d.ts +0 -48
  197. package/es/point/models/image.js +0 -293
  198. package/es/point/models/index.d.ts +0 -5
  199. package/es/point/models/index.js +0 -24
  200. package/es/point/models/normal.d.ts +0 -36
  201. package/es/point/models/normal.js +0 -89
  202. package/es/point/models/radar.d.ts +0 -37
  203. package/es/point/models/radar.js +0 -115
  204. package/es/point/models/text.d.ts +0 -85
  205. package/es/point/models/text.js +0 -503
  206. package/es/point/shaders/billboard/billboard_point_frag.glsl +0 -48
  207. package/es/point/shaders/billboard/billboard_point_vert.glsl +0 -33
  208. package/es/point/shaders/earthExtrude/earthExtrude_frag.glsl +0 -36
  209. package/es/point/shaders/earthExtrude/earthExtrude_vert.glsl +0 -118
  210. package/es/point/shaders/earthFill/earthFill_frag.glsl +0 -79
  211. package/es/point/shaders/earthFill/earthFill_vert.glsl +0 -46
  212. package/es/point/shaders/extrude/extrude_frag.glsl +0 -29
  213. package/es/point/shaders/extrude/extrude_vert.glsl +0 -95
  214. package/es/point/shaders/fill/fill_frag.glsl +0 -97
  215. package/es/point/shaders/fill/fill_vert.glsl +0 -79
  216. package/es/point/shaders/fillImage/fillImage_frag.glsl +0 -23
  217. package/es/point/shaders/fillImage/fillImage_vert.glsl +0 -46
  218. package/es/point/shaders/image/image_frag.glsl +0 -45
  219. package/es/point/shaders/image/image_vert.glsl +0 -47
  220. package/es/point/shaders/normal/normal_frag.glsl +0 -5
  221. package/es/point/shaders/normal/normal_vert.glsl +0 -22
  222. package/es/point/shaders/radar/radar_frag.glsl +0 -52
  223. package/es/point/shaders/radar/radar_vert.glsl +0 -53
  224. package/es/point/shaders/text/text_frag.glsl +0 -47
  225. package/es/point/shaders/text/text_vert.glsl +0 -65
  226. package/es/point/shape/extrude.d.ts +0 -15
  227. package/es/point/shape/extrude.js +0 -48
  228. package/es/polygon/index.d.ts +0 -18
  229. package/es/polygon/index.js +0 -71
  230. package/es/polygon/models/extrude.d.ts +0 -41
  231. package/es/polygon/models/extrude.js +0 -248
  232. package/es/polygon/models/extrusion.d.ts +0 -40
  233. package/es/polygon/models/extrusion.js +0 -137
  234. package/es/polygon/models/fill.d.ts +0 -32
  235. package/es/polygon/models/fill.js +0 -127
  236. package/es/polygon/models/index.d.ts +0 -5
  237. package/es/polygon/models/index.js +0 -26
  238. package/es/polygon/models/ocean.d.ts +0 -37
  239. package/es/polygon/models/ocean.js +0 -172
  240. package/es/polygon/models/water.d.ts +0 -35
  241. package/es/polygon/models/water.js +0 -150
  242. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +0 -24
  243. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +0 -49
  244. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +0 -53
  245. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +0 -74
  246. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +0 -55
  247. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +0 -54
  248. package/es/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +0 -8
  249. package/es/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +0 -24
  250. package/es/polygon/shaders/fill/fill_frag.glsl +0 -8
  251. package/es/polygon/shaders/fill/fill_linear_frag.glsl +0 -23
  252. package/es/polygon/shaders/fill/fill_linear_vert.glsl +0 -36
  253. package/es/polygon/shaders/fill/fill_vert.glsl +0 -35
  254. package/es/polygon/shaders/ocean/ocean_frag.glsl +0 -277
  255. package/es/polygon/shaders/ocean/ocean_vert.glsl +0 -21
  256. package/es/polygon/shaders/water/polygon_water_frag.glsl +0 -78
  257. package/es/polygon/shaders/water/polygon_water_vert.glsl +0 -22
  258. package/es/raster/buffers/triangulation.d.ts +0 -6
  259. package/es/raster/buffers/triangulation.js +0 -25
  260. package/es/raster/index.d.ts +0 -11
  261. package/es/raster/index.js +0 -55
  262. package/es/raster/models/index.d.ts +0 -5
  263. package/es/raster/models/index.js +0 -10
  264. package/es/raster/models/raster.d.ts +0 -35
  265. package/es/raster/models/raster.js +0 -156
  266. package/es/raster/models/rasterRgb.d.ts +0 -35
  267. package/es/raster/models/rasterRgb.js +0 -158
  268. package/es/raster/models/rasterTerrainRgb.d.ts +0 -30
  269. package/es/raster/models/rasterTerrainRgb.js +0 -118
  270. package/es/raster/shaders/raster/raster_2d_frag.glsl +0 -37
  271. package/es/raster/shaders/raster/raster_2d_vert.glsl +0 -21
  272. package/es/raster/shaders/rgb/raster_rgb_frag.glsl +0 -30
  273. package/es/raster/shaders/rgb/raster_rgb_vert.glsl +0 -21
  274. package/es/raster/shaders/terrain/terrain_rgb_frag.glsl +0 -40
  275. package/es/raster/shaders/terrain/terrain_rgb_vert.glsl +0 -19
  276. package/es/shader/minify_frag.glsl +0 -11
  277. package/es/shader/minify_picking_frag.glsl +0 -10
  278. package/es/tile/core/BaseLayer.d.ts +0 -50
  279. package/es/tile/core/BaseLayer.js +0 -256
  280. package/es/tile/core/TileDebugLayer.d.ts +0 -15
  281. package/es/tile/core/TileDebugLayer.js +0 -23
  282. package/es/tile/interaction/getFeatureData.d.ts +0 -0
  283. package/es/tile/interaction/getFeatureData.js +0 -0
  284. package/es/tile/interaction/getRasterData.d.ts +0 -4
  285. package/es/tile/interaction/getRasterData.js +0 -45
  286. package/es/tile/interaction/utils.d.ts +0 -11
  287. package/es/tile/interaction/utils.js +0 -69
  288. package/es/tile/interface.d.ts +0 -29
  289. package/es/tile/interface.js +0 -1
  290. package/es/tile/service/TileLayerService.d.ts +0 -58
  291. package/es/tile/service/TileLayerService.js +0 -195
  292. package/es/tile/service/TilePickService.d.ts +0 -26
  293. package/es/tile/service/TilePickService.js +0 -126
  294. package/es/tile/service/TileSourceService.d.ts +0 -7
  295. package/es/tile/service/TileSourceService.js +0 -26
  296. package/es/tile/tile/DebugTile.d.ts +0 -16
  297. package/es/tile/tile/DebugTile.js +0 -47
  298. package/es/tile/tile/ImageTile.d.ts +0 -14
  299. package/es/tile/tile/ImageTile.js +0 -39
  300. package/es/tile/tile/MaskTile.d.ts +0 -18
  301. package/es/tile/tile/MaskTile.js +0 -54
  302. package/es/tile/tile/RasterRGBTile.d.ts +0 -11
  303. package/es/tile/tile/RasterRGBTile.js +0 -47
  304. package/es/tile/tile/RasterTerrainRGBTile.d.ts +0 -14
  305. package/es/tile/tile/RasterTerrainRGBTile.js +0 -39
  306. package/es/tile/tile/RasterTile.d.ts +0 -18
  307. package/es/tile/tile/RasterTile.js +0 -81
  308. package/es/tile/tile/Tile.d.ts +0 -112
  309. package/es/tile/tile/Tile.js +0 -166
  310. package/es/tile/tile/VectorTile.d.ts +0 -26
  311. package/es/tile/tile/VectorTile.js +0 -87
  312. package/es/tile/tile/index.d.ts +0 -12
  313. package/es/tile/tile/index.js +0 -44
  314. package/es/tile/tile/util.d.ts +0 -5
  315. package/es/tile/tile/util.js +0 -18
  316. package/es/tile/utils/constants.d.ts +0 -1
  317. package/es/tile/utils/constants.js +0 -8
  318. package/es/tile/utils/utils.d.ts +0 -8
  319. package/es/tile/utils/utils.js +0 -11
  320. package/es/utils/blend.d.ts +0 -2
  321. package/es/utils/blend.js +0 -57
  322. package/es/utils/collision-index.d.ts +0 -47
  323. package/es/utils/collision-index.js +0 -87
  324. package/es/utils/extrude_polyline.d.ts +0 -53
  325. package/es/utils/extrude_polyline.js +0 -319
  326. package/es/utils/grid-index.d.ts +0 -28
  327. package/es/utils/grid-index.js +0 -128
  328. package/es/utils/identityScale.d.ts +0 -8
  329. package/es/utils/identityScale.js +0 -26
  330. package/es/utils/load-image.d.ts +0 -1
  331. package/es/utils/load-image.js +0 -22
  332. package/es/utils/multiPassRender.d.ts +0 -16
  333. package/es/utils/multiPassRender.js +0 -37
  334. package/es/utils/polylineNormal.d.ts +0 -9
  335. package/es/utils/polylineNormal.js +0 -182
  336. package/es/utils/rampcolor_legend.d.ts +0 -6
  337. package/es/utils/rampcolor_legend.js +0 -12
  338. package/es/utils/scale.d.ts +0 -87
  339. package/es/utils/scale.js +0 -595
  340. package/es/utils/simpleLine.d.ts +0 -23
  341. package/es/utils/simpleLine.js +0 -76
  342. package/es/utils/stencil.d.ts +0 -7
  343. package/es/utils/stencil.js +0 -49
  344. package/es/utils/symbol-layout.d.ts +0 -43
  345. package/es/utils/symbol-layout.js +0 -251
  346. package/es/wind/index.d.ts +0 -11
  347. package/es/wind/index.js +0 -34
  348. package/es/wind/models/index.d.ts +0 -5
  349. package/es/wind/models/index.js +0 -5
  350. package/es/wind/models/utils.d.ts +0 -19
  351. package/es/wind/models/utils.js +0 -213
  352. package/es/wind/models/wind.d.ts +0 -38
  353. package/es/wind/models/wind.js +0 -240
  354. package/es/wind/models/windRender.d.ts +0 -104
  355. package/es/wind/models/windRender.js +0 -333
  356. package/es/wind/models/windShader.d.ts +0 -12
  357. package/es/wind/models/windShader.js +0 -151
  358. package/es/wind/shaders/wind_frag.glsl +0 -9
  359. package/es/wind/shaders/wind_vert.glsl +0 -14
  360. package/lib/canvas/index.d.ts +0 -18
  361. package/lib/canvas/index.js +0 -79
  362. package/lib/canvas/models/canvas.d.ts +0 -23
  363. package/lib/canvas/models/canvas.js +0 -149
  364. package/lib/canvas/models/constants.d.ts +0 -2
  365. package/lib/canvas/models/constants.js +0 -12
  366. package/lib/canvas/models/index.d.ts +0 -2
  367. package/lib/canvas/models/index.js +0 -27
  368. package/lib/citybuilding/building.d.ts +0 -7
  369. package/lib/citybuilding/building.js +0 -33
  370. package/lib/citybuilding/models/build.d.ts +0 -33
  371. package/lib/citybuilding/models/build.js +0 -168
  372. package/lib/citybuilding/shaders/build_frag.glsl +0 -123
  373. package/lib/citybuilding/shaders/build_vert.glsl +0 -58
  374. package/lib/core/BaseLayer.d.ts +0 -265
  375. package/lib/core/BaseLayer.js +0 -1317
  376. package/lib/core/BaseModel.d.ts +0 -95
  377. package/lib/core/BaseModel.js +0 -375
  378. package/lib/core/CommonStyleAttribute.d.ts +0 -16
  379. package/lib/core/CommonStyleAttribute.js +0 -120
  380. package/lib/core/LayerPickService.d.ts +0 -12
  381. package/lib/core/LayerPickService.js +0 -110
  382. package/lib/core/TextureService.d.ts +0 -15
  383. package/lib/core/TextureService.js +0 -73
  384. package/lib/core/constant.d.ts +0 -6
  385. package/lib/core/constant.js +0 -25
  386. package/lib/core/interface.d.ts +0 -284
  387. package/lib/core/interface.js +0 -34
  388. package/lib/core/line_trangluation.d.ts +0 -19
  389. package/lib/core/line_trangluation.js +0 -94
  390. package/lib/core/schema.d.ts +0 -27
  391. package/lib/core/schema.js +0 -31
  392. package/lib/core/shape/Path.d.ts +0 -40
  393. package/lib/core/shape/Path.js +0 -81
  394. package/lib/core/shape/arrow.d.ts +0 -25
  395. package/lib/core/shape/arrow.js +0 -158
  396. package/lib/core/shape/extrude.d.ts +0 -17
  397. package/lib/core/shape/extrude.js +0 -142
  398. package/lib/core/triangulation.d.ts +0 -136
  399. package/lib/core/triangulation.js +0 -628
  400. package/lib/core/utils.d.ts +0 -5
  401. package/lib/core/utils.js +0 -44
  402. package/lib/earth/index.d.ts +0 -22
  403. package/lib/earth/index.js +0 -62
  404. package/lib/earth/models/atmosphere.d.ts +0 -30
  405. package/lib/earth/models/atmosphere.js +0 -124
  406. package/lib/earth/models/base.d.ts +0 -37
  407. package/lib/earth/models/base.js +0 -180
  408. package/lib/earth/models/bloomsphere.d.ts +0 -30
  409. package/lib/earth/models/bloomsphere.js +0 -123
  410. package/lib/earth/shaders/atmosphere/atmosphere_frag.glsl +0 -17
  411. package/lib/earth/shaders/atmosphere/atmosphere_vert.glsl +0 -24
  412. package/lib/earth/shaders/base/base_frag.glsl +0 -11
  413. package/lib/earth/shaders/base/base_vert.glsl +0 -52
  414. package/lib/earth/shaders/bloomshpere/bloomsphere_frag.glsl +0 -15
  415. package/lib/earth/shaders/bloomshpere/bloomsphere_vert.glsl +0 -20
  416. package/lib/earth/utils.d.ts +0 -26
  417. package/lib/earth/utils.js +0 -107
  418. package/lib/geometry/index.d.ts +0 -22
  419. package/lib/geometry/index.js +0 -61
  420. package/lib/geometry/models/billboard.d.ts +0 -39
  421. package/lib/geometry/models/billboard.js +0 -183
  422. package/lib/geometry/models/index.d.ts +0 -5
  423. package/lib/geometry/models/index.js +0 -16
  424. package/lib/geometry/models/plane.d.ts +0 -58
  425. package/lib/geometry/models/plane.js +0 -316
  426. package/lib/geometry/models/sprite.d.ts +0 -48
  427. package/lib/geometry/models/sprite.js +0 -233
  428. package/lib/geometry/shaders/billboard_frag.glsl +0 -18
  429. package/lib/geometry/shaders/billboard_vert.glsl +0 -43
  430. package/lib/geometry/shaders/plane_frag.glsl +0 -23
  431. package/lib/geometry/shaders/plane_vert.glsl +0 -31
  432. package/lib/geometry/shaders/sprite_frag.glsl +0 -23
  433. package/lib/geometry/shaders/sprite_vert.glsl +0 -21
  434. package/lib/heatmap/index.d.ts +0 -13
  435. package/lib/heatmap/index.js +0 -95
  436. package/lib/heatmap/models/grid.d.ts +0 -29
  437. package/lib/heatmap/models/grid.js +0 -91
  438. package/lib/heatmap/models/grid3d.d.ts +0 -31
  439. package/lib/heatmap/models/grid3d.js +0 -130
  440. package/lib/heatmap/models/heatmap.d.ts +0 -46
  441. package/lib/heatmap/models/heatmap.js +0 -455
  442. package/lib/heatmap/models/hexagon.d.ts +0 -29
  443. package/lib/heatmap/models/hexagon.js +0 -91
  444. package/lib/heatmap/models/index.d.ts +0 -5
  445. package/lib/heatmap/models/index.js +0 -19
  446. package/lib/heatmap/shaders/grid/grid_frag.glsl +0 -9
  447. package/lib/heatmap/shaders/grid/grid_vert.glsl +0 -30
  448. package/lib/heatmap/shaders/grid3d/grid_3d_frag.glsl +0 -17
  449. package/lib/heatmap/shaders/grid3d/grid_3d_vert.glsl +0 -34
  450. package/lib/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +0 -23
  451. package/lib/heatmap/shaders/heatmap/heatmap_3d_vert.glsl +0 -59
  452. package/lib/heatmap/shaders/heatmap/heatmap_frag.glsl +0 -40
  453. package/lib/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +0 -17
  454. package/lib/heatmap/shaders/heatmap/heatmap_framebuffer_vert.glsl +0 -36
  455. package/lib/heatmap/shaders/heatmap/heatmap_vert.glsl +0 -21
  456. package/lib/heatmap/shaders/hexagon/hexagon_frag.glsl +0 -8
  457. package/lib/heatmap/shaders/hexagon/hexagon_vert.glsl +0 -30
  458. package/lib/heatmap/triangulation.d.ts +0 -5
  459. package/lib/heatmap/triangulation.js +0 -39
  460. package/lib/image/index.d.ts +0 -9
  461. package/lib/image/index.js +0 -36
  462. package/lib/image/models/image.d.ts +0 -31
  463. package/lib/image/models/image.js +0 -121
  464. package/lib/image/models/index.d.ts +0 -5
  465. package/lib/image/models/index.js +0 -12
  466. package/lib/image/shaders/dataImage_frag.glsl +0 -32
  467. package/lib/image/shaders/image_frag.glsl +0 -38
  468. package/lib/image/shaders/image_vert.glsl +0 -20
  469. package/lib/index.d.ts +0 -18
  470. package/lib/index.js +0 -148
  471. package/lib/line/index.d.ts +0 -36
  472. package/lib/line/index.js +0 -98
  473. package/lib/line/models/arc.d.ts +0 -40
  474. package/lib/line/models/arc.js +0 -287
  475. package/lib/line/models/arc_3d.d.ts +0 -40
  476. package/lib/line/models/arc_3d.js +0 -277
  477. package/lib/line/models/flow.d.ts +0 -31
  478. package/lib/line/models/flow.js +0 -148
  479. package/lib/line/models/great_circle.d.ts +0 -34
  480. package/lib/line/models/great_circle.js +0 -248
  481. package/lib/line/models/index.d.ts +0 -5
  482. package/lib/line/models/index.js +0 -25
  483. package/lib/line/models/line.d.ts +0 -44
  484. package/lib/line/models/line.js +0 -281
  485. package/lib/line/models/simple_line.d.ts +0 -33
  486. package/lib/line/models/simple_line.js +0 -126
  487. package/lib/line/models/wall.d.ts +0 -34
  488. package/lib/line/models/wall.js +0 -231
  489. package/lib/line/shaders/arc/line_arc_frag.glsl +0 -92
  490. package/lib/line/shaders/arc/line_arc_vert.glsl +0 -156
  491. package/lib/line/shaders/arc3d/line_arc_3d_frag.glsl +0 -108
  492. package/lib/line/shaders/arc3d/line_arc_3d_vert.glsl +0 -177
  493. package/lib/line/shaders/flow/flow_line_frag.glsl +0 -13
  494. package/lib/line/shaders/flow/flow_line_vert.glsl +0 -76
  495. package/lib/line/shaders/greatCircle/line_arc_great_circle_frag.glsl +0 -99
  496. package/lib/line/shaders/greatCircle/line_arc_great_circle_vert.glsl +0 -165
  497. package/lib/line/shaders/line/line_frag.glsl +0 -122
  498. package/lib/line/shaders/line/line_vert.glsl +0 -101
  499. package/lib/line/shaders/simple/simpleline_frag.glsl +0 -30
  500. package/lib/line/shaders/simple/simpleline_vert.glsl +0 -45
  501. package/lib/line/shaders/wall/wall_frag.glsl +0 -94
  502. package/lib/line/shaders/wall/wall_vert.glsl +0 -90
  503. package/lib/mask/index.d.ts +0 -16
  504. package/lib/mask/index.js +0 -29
  505. package/lib/mask/models/fill.d.ts +0 -18
  506. package/lib/mask/models/fill.js +0 -69
  507. package/lib/mask/models/index.d.ts +0 -5
  508. package/lib/mask/models/index.js +0 -12
  509. package/lib/mask/shaders/mask_vert.glsl +0 -14
  510. package/lib/plugins/DataMappingPlugin.d.ts +0 -12
  511. package/lib/plugins/DataMappingPlugin.js +0 -234
  512. package/lib/plugins/DataSourcePlugin.d.ts +0 -6
  513. package/lib/plugins/DataSourcePlugin.js +0 -83
  514. package/lib/plugins/FeatureScalePlugin.d.ts +0 -20
  515. package/lib/plugins/FeatureScalePlugin.js +0 -303
  516. package/lib/plugins/LayerAnimateStylePlugin.d.ts +0 -4
  517. package/lib/plugins/LayerAnimateStylePlugin.js +0 -22
  518. package/lib/plugins/LayerMaskPlugin.d.ts +0 -7
  519. package/lib/plugins/LayerMaskPlugin.js +0 -26
  520. package/lib/plugins/LayerModelPlugin.d.ts +0 -10
  521. package/lib/plugins/LayerModelPlugin.js +0 -68
  522. package/lib/plugins/LayerStylePlugin.d.ts +0 -7
  523. package/lib/plugins/LayerStylePlugin.js +0 -25
  524. package/lib/plugins/LightingPlugin.d.ts +0 -35
  525. package/lib/plugins/LightingPlugin.js +0 -93
  526. package/lib/plugins/MultiPassRendererPlugin.d.ts +0 -22
  527. package/lib/plugins/MultiPassRendererPlugin.js +0 -59
  528. package/lib/plugins/PixelPickingPlugin.d.ts +0 -11
  529. package/lib/plugins/PixelPickingPlugin.js +0 -154
  530. package/lib/plugins/RegisterStyleAttributePlugin.d.ts +0 -10
  531. package/lib/plugins/RegisterStyleAttributePlugin.js +0 -78
  532. package/lib/plugins/ShaderUniformPlugin.d.ts +0 -17
  533. package/lib/plugins/ShaderUniformPlugin.js +0 -203
  534. package/lib/plugins/UpdateModelPlugin.d.ts +0 -7
  535. package/lib/plugins/UpdateModelPlugin.js +0 -27
  536. package/lib/plugins/UpdateStyleAttributePlugin.d.ts +0 -9
  537. package/lib/plugins/UpdateStyleAttributePlugin.js +0 -61
  538. package/lib/plugins/index.d.ts +0 -15
  539. package/lib/plugins/index.js +0 -26
  540. package/lib/point/index.d.ts +0 -35
  541. package/lib/point/index.js +0 -161
  542. package/lib/point/models/billboard_point.d.ts +0 -35
  543. package/lib/point/models/billboard_point.js +0 -104
  544. package/lib/point/models/earthExtrude.d.ts +0 -32
  545. package/lib/point/models/earthExtrude.js +0 -207
  546. package/lib/point/models/earthFill.d.ts +0 -31
  547. package/lib/point/models/earthFill.js +0 -166
  548. package/lib/point/models/extrude.d.ts +0 -32
  549. package/lib/point/models/extrude.js +0 -203
  550. package/lib/point/models/fill.d.ts +0 -47
  551. package/lib/point/models/fill.js +0 -188
  552. package/lib/point/models/fillImage.d.ts +0 -42
  553. package/lib/point/models/fillImage.js +0 -197
  554. package/lib/point/models/image.d.ts +0 -48
  555. package/lib/point/models/image.js +0 -301
  556. package/lib/point/models/index.d.ts +0 -5
  557. package/lib/point/models/index.js +0 -32
  558. package/lib/point/models/normal.d.ts +0 -36
  559. package/lib/point/models/normal.js +0 -98
  560. package/lib/point/models/radar.d.ts +0 -37
  561. package/lib/point/models/radar.js +0 -123
  562. package/lib/point/models/text.d.ts +0 -85
  563. package/lib/point/models/text.js +0 -512
  564. package/lib/point/shaders/billboard/billboard_point_frag.glsl +0 -48
  565. package/lib/point/shaders/billboard/billboard_point_vert.glsl +0 -33
  566. package/lib/point/shaders/earthExtrude/earthExtrude_frag.glsl +0 -36
  567. package/lib/point/shaders/earthExtrude/earthExtrude_vert.glsl +0 -118
  568. package/lib/point/shaders/earthFill/earthFill_frag.glsl +0 -79
  569. package/lib/point/shaders/earthFill/earthFill_vert.glsl +0 -46
  570. package/lib/point/shaders/extrude/extrude_frag.glsl +0 -29
  571. package/lib/point/shaders/extrude/extrude_vert.glsl +0 -95
  572. package/lib/point/shaders/fill/fill_frag.glsl +0 -97
  573. package/lib/point/shaders/fill/fill_vert.glsl +0 -79
  574. package/lib/point/shaders/fillImage/fillImage_frag.glsl +0 -23
  575. package/lib/point/shaders/fillImage/fillImage_vert.glsl +0 -46
  576. package/lib/point/shaders/image/image_frag.glsl +0 -45
  577. package/lib/point/shaders/image/image_vert.glsl +0 -47
  578. package/lib/point/shaders/normal/normal_frag.glsl +0 -5
  579. package/lib/point/shaders/normal/normal_vert.glsl +0 -22
  580. package/lib/point/shaders/radar/radar_frag.glsl +0 -52
  581. package/lib/point/shaders/radar/radar_vert.glsl +0 -53
  582. package/lib/point/shaders/text/text_frag.glsl +0 -47
  583. package/lib/point/shaders/text/text_vert.glsl +0 -65
  584. package/lib/point/shape/extrude.d.ts +0 -15
  585. package/lib/point/shape/extrude.js +0 -56
  586. package/lib/polygon/index.d.ts +0 -18
  587. package/lib/polygon/index.js +0 -79
  588. package/lib/polygon/models/extrude.d.ts +0 -41
  589. package/lib/polygon/models/extrude.js +0 -256
  590. package/lib/polygon/models/extrusion.d.ts +0 -40
  591. package/lib/polygon/models/extrusion.js +0 -145
  592. package/lib/polygon/models/fill.d.ts +0 -32
  593. package/lib/polygon/models/fill.js +0 -135
  594. package/lib/polygon/models/index.d.ts +0 -5
  595. package/lib/polygon/models/index.js +0 -33
  596. package/lib/polygon/models/ocean.d.ts +0 -37
  597. package/lib/polygon/models/ocean.js +0 -180
  598. package/lib/polygon/models/water.d.ts +0 -35
  599. package/lib/polygon/models/water.js +0 -158
  600. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +0 -24
  601. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +0 -49
  602. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +0 -53
  603. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +0 -74
  604. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +0 -55
  605. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +0 -54
  606. package/lib/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +0 -8
  607. package/lib/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +0 -24
  608. package/lib/polygon/shaders/fill/fill_frag.glsl +0 -8
  609. package/lib/polygon/shaders/fill/fill_linear_frag.glsl +0 -23
  610. package/lib/polygon/shaders/fill/fill_linear_vert.glsl +0 -36
  611. package/lib/polygon/shaders/fill/fill_vert.glsl +0 -35
  612. package/lib/polygon/shaders/ocean/ocean_frag.glsl +0 -277
  613. package/lib/polygon/shaders/ocean/ocean_vert.glsl +0 -21
  614. package/lib/polygon/shaders/water/polygon_water_frag.glsl +0 -78
  615. package/lib/polygon/shaders/water/polygon_water_vert.glsl +0 -22
  616. package/lib/raster/buffers/triangulation.d.ts +0 -6
  617. package/lib/raster/buffers/triangulation.js +0 -33
  618. package/lib/raster/index.d.ts +0 -11
  619. package/lib/raster/index.js +0 -63
  620. package/lib/raster/models/index.d.ts +0 -5
  621. package/lib/raster/models/index.js +0 -17
  622. package/lib/raster/models/raster.d.ts +0 -35
  623. package/lib/raster/models/raster.js +0 -164
  624. package/lib/raster/models/rasterRgb.d.ts +0 -35
  625. package/lib/raster/models/rasterRgb.js +0 -166
  626. package/lib/raster/models/rasterTerrainRgb.d.ts +0 -30
  627. package/lib/raster/models/rasterTerrainRgb.js +0 -126
  628. package/lib/raster/shaders/raster/raster_2d_frag.glsl +0 -37
  629. package/lib/raster/shaders/raster/raster_2d_vert.glsl +0 -21
  630. package/lib/raster/shaders/rgb/raster_rgb_frag.glsl +0 -30
  631. package/lib/raster/shaders/rgb/raster_rgb_vert.glsl +0 -21
  632. package/lib/raster/shaders/terrain/terrain_rgb_frag.glsl +0 -40
  633. package/lib/raster/shaders/terrain/terrain_rgb_vert.glsl +0 -19
  634. package/lib/shader/minify_frag.glsl +0 -11
  635. package/lib/shader/minify_picking_frag.glsl +0 -10
  636. package/lib/tile/core/BaseLayer.d.ts +0 -50
  637. package/lib/tile/core/BaseLayer.js +0 -264
  638. package/lib/tile/core/TileDebugLayer.d.ts +0 -15
  639. package/lib/tile/core/TileDebugLayer.js +0 -31
  640. package/lib/tile/interaction/getFeatureData.d.ts +0 -0
  641. package/lib/tile/interaction/getFeatureData.js +0 -1
  642. package/lib/tile/interaction/getRasterData.d.ts +0 -4
  643. package/lib/tile/interaction/getRasterData.js +0 -52
  644. package/lib/tile/interaction/utils.d.ts +0 -11
  645. package/lib/tile/interaction/utils.js +0 -81
  646. package/lib/tile/interface.d.ts +0 -29
  647. package/lib/tile/interface.js +0 -5
  648. package/lib/tile/service/TileLayerService.d.ts +0 -58
  649. package/lib/tile/service/TileLayerService.js +0 -203
  650. package/lib/tile/service/TilePickService.d.ts +0 -26
  651. package/lib/tile/service/TilePickService.js +0 -134
  652. package/lib/tile/service/TileSourceService.d.ts +0 -7
  653. package/lib/tile/service/TileSourceService.js +0 -35
  654. package/lib/tile/tile/DebugTile.d.ts +0 -16
  655. package/lib/tile/tile/DebugTile.js +0 -55
  656. package/lib/tile/tile/ImageTile.d.ts +0 -14
  657. package/lib/tile/tile/ImageTile.js +0 -47
  658. package/lib/tile/tile/MaskTile.d.ts +0 -18
  659. package/lib/tile/tile/MaskTile.js +0 -62
  660. package/lib/tile/tile/RasterRGBTile.d.ts +0 -11
  661. package/lib/tile/tile/RasterRGBTile.js +0 -55
  662. package/lib/tile/tile/RasterTerrainRGBTile.d.ts +0 -14
  663. package/lib/tile/tile/RasterTerrainRGBTile.js +0 -47
  664. package/lib/tile/tile/RasterTile.d.ts +0 -18
  665. package/lib/tile/tile/RasterTile.js +0 -89
  666. package/lib/tile/tile/Tile.d.ts +0 -112
  667. package/lib/tile/tile/Tile.js +0 -174
  668. package/lib/tile/tile/VectorTile.d.ts +0 -26
  669. package/lib/tile/tile/VectorTile.js +0 -95
  670. package/lib/tile/tile/index.d.ts +0 -12
  671. package/lib/tile/tile/index.js +0 -76
  672. package/lib/tile/tile/util.d.ts +0 -5
  673. package/lib/tile/tile/util.js +0 -26
  674. package/lib/tile/utils/constants.d.ts +0 -1
  675. package/lib/tile/utils/constants.js +0 -14
  676. package/lib/tile/utils/utils.d.ts +0 -8
  677. package/lib/tile/utils/utils.js +0 -18
  678. package/lib/utils/blend.d.ts +0 -2
  679. package/lib/utils/blend.js +0 -63
  680. package/lib/utils/collision-index.d.ts +0 -47
  681. package/lib/utils/collision-index.js +0 -96
  682. package/lib/utils/extrude_polyline.d.ts +0 -53
  683. package/lib/utils/extrude_polyline.js +0 -331
  684. package/lib/utils/grid-index.d.ts +0 -28
  685. package/lib/utils/grid-index.js +0 -135
  686. package/lib/utils/identityScale.d.ts +0 -8
  687. package/lib/utils/identityScale.js +0 -32
  688. package/lib/utils/load-image.d.ts +0 -1
  689. package/lib/utils/load-image.js +0 -29
  690. package/lib/utils/multiPassRender.d.ts +0 -16
  691. package/lib/utils/multiPassRender.js +0 -44
  692. package/lib/utils/polylineNormal.d.ts +0 -9
  693. package/lib/utils/polylineNormal.js +0 -191
  694. package/lib/utils/rampcolor_legend.d.ts +0 -6
  695. package/lib/utils/rampcolor_legend.js +0 -18
  696. package/lib/utils/scale.d.ts +0 -87
  697. package/lib/utils/scale.js +0 -610
  698. package/lib/utils/simpleLine.d.ts +0 -23
  699. package/lib/utils/simpleLine.js +0 -85
  700. package/lib/utils/stencil.d.ts +0 -7
  701. package/lib/utils/stencil.js +0 -56
  702. package/lib/utils/symbol-layout.d.ts +0 -43
  703. package/lib/utils/symbol-layout.js +0 -258
  704. package/lib/wind/index.d.ts +0 -11
  705. package/lib/wind/index.js +0 -42
  706. package/lib/wind/models/index.d.ts +0 -5
  707. package/lib/wind/models/index.js +0 -12
  708. package/lib/wind/models/utils.d.ts +0 -19
  709. package/lib/wind/models/utils.js +0 -229
  710. package/lib/wind/models/wind.d.ts +0 -38
  711. package/lib/wind/models/wind.js +0 -248
  712. package/lib/wind/models/windRender.d.ts +0 -104
  713. package/lib/wind/models/windRender.js +0 -343
  714. package/lib/wind/models/windShader.d.ts +0 -12
  715. package/lib/wind/models/windShader.js +0 -157
  716. package/lib/wind/shaders/wind_frag.glsl +0 -9
  717. package/lib/wind/shaders/wind_vert.glsl +0 -14
@@ -1,1310 +0,0 @@
1
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
- const _excluded = ["passes"],
6
- _excluded2 = ["moduleName", "vertexShader", "fragmentShader", "defines", "inject", "triangulation", "styleOption", "pickingEnabled"];
7
- // @ts-ignore
8
- import { AsyncSeriesBailHook, AsyncWaterfallHook, SyncBailHook, SyncHook } from '@antv/async-hook';
9
- import { BlendType, IDebugLog, ILayerStage, globalConfigService } from '@antv/l7-core';
10
- import { processRelativeCoordinates } from '@antv/l7-source';
11
- import { encodePickingColor, lodashUtil } from '@antv/l7-utils';
12
- import { EventEmitter } from 'eventemitter3';
13
- import { createPlugins } from "../plugins";
14
- import { BlendTypes } from "../utils/blend";
15
- import { createMultiPassRenderer, normalizePasses } from "../utils/multiPassRender";
16
- import LayerPickService from "./LayerPickService";
17
- import TextureService from "./TextureService";
18
- const {
19
- isEqual,
20
- isFunction,
21
- isNumber,
22
- isObject,
23
- isPlainObject,
24
- isUndefined
25
- } = lodashUtil;
26
- /**
27
- * 分配 layer id
28
- */
29
- let layerIdCounter = 0;
30
- export default class BaseLayer extends EventEmitter {
31
- get shaderModuleService() {
32
- return this.container.shaderModuleService;
33
- }
34
- get cameraService() {
35
- return this.container.cameraService;
36
- }
37
- get coordinateService() {
38
- return this.container.coordinateSystemService;
39
- }
40
- get iconService() {
41
- return this.container.iconService;
42
- }
43
- get fontService() {
44
- return this.container.fontService;
45
- }
46
- get pickingService() {
47
- return this.container.pickingService;
48
- }
49
- get rendererService() {
50
- return this.container.rendererService;
51
- }
52
- get layerService() {
53
- return this.container.layerService;
54
- }
55
- get debugService() {
56
- return this.container.debugService;
57
- }
58
- get interactionService() {
59
- return this.container.interactionService;
60
- }
61
- get mapService() {
62
- var _this$container;
63
- return (_this$container = this.container) === null || _this$container === void 0 ? void 0 : _this$container.mapService;
64
- }
65
- get normalPassFactory() {
66
- return this.container.normalPassFactory;
67
- }
68
- constructor(config = {}) {
69
- super();
70
- _defineProperty(this, "id", `${layerIdCounter++}`);
71
- _defineProperty(this, "name", `${layerIdCounter}`);
72
- _defineProperty(this, "parent", void 0);
73
- _defineProperty(this, "coordCenter", void 0);
74
- _defineProperty(this, "type", void 0);
75
- _defineProperty(this, "visible", true);
76
- _defineProperty(this, "zIndex", 0);
77
- _defineProperty(this, "minZoom", void 0);
78
- _defineProperty(this, "maxZoom", void 0);
79
- _defineProperty(this, "inited", false);
80
- _defineProperty(this, "layerModelNeedUpdate", false);
81
- _defineProperty(this, "pickedFeatureID", null);
82
- _defineProperty(this, "selectedFeatureID", null);
83
- _defineProperty(this, "styleNeedUpdate", false);
84
- _defineProperty(this, "rendering", void 0);
85
- _defineProperty(this, "forceRender", false);
86
- _defineProperty(this, "clusterZoom", 0);
87
- // 聚合等级标记
88
- _defineProperty(this, "layerType", void 0);
89
- _defineProperty(this, "triangulation", void 0);
90
- _defineProperty(this, "layerPickService", void 0);
91
- _defineProperty(this, "textureService", void 0);
92
- _defineProperty(this, "defaultSourceConfig", {
93
- data: [],
94
- options: {
95
- parser: {
96
- type: 'json'
97
- }
98
- }
99
- });
100
- _defineProperty(this, "dataState", {
101
- dataSourceNeedUpdate: false,
102
- dataMappingNeedUpdate: false,
103
- filterNeedUpdate: false,
104
- featureScaleNeedUpdate: false,
105
- StyleAttrNeedUpdate: false
106
- });
107
- // 生命周期钩子
108
- _defineProperty(this, "hooks", {
109
- init: new AsyncSeriesBailHook(),
110
- afterInit: new SyncBailHook(),
111
- beforeRender: new SyncBailHook(),
112
- beforeRenderData: new AsyncWaterfallHook(),
113
- afterRender: new SyncHook(),
114
- beforePickingEncode: new SyncHook(),
115
- afterPickingEncode: new SyncHook(),
116
- beforeHighlight: new SyncHook(['pickedColor']),
117
- afterHighlight: new SyncHook(),
118
- beforeSelect: new SyncHook(['pickedColor']),
119
- afterSelect: new SyncHook(),
120
- beforeDestroy: new SyncHook(),
121
- afterDestroy: new SyncHook()
122
- });
123
- // 待渲染 model 列表
124
- _defineProperty(this, "models", []);
125
- // 每个 Layer 都有一个
126
- _defineProperty(this, "multiPassRenderer", void 0);
127
- // 注入插件
128
- _defineProperty(this, "plugins", void 0);
129
- _defineProperty(this, "startInit", false);
130
- _defineProperty(this, "sourceOption", void 0);
131
- _defineProperty(this, "layerModel", void 0);
132
- _defineProperty(this, "shapeOption", void 0);
133
- _defineProperty(this, "tileLayer", void 0);
134
- // 用于保存子图层对象
135
- _defineProperty(this, "layerChildren", []);
136
- _defineProperty(this, "masks", []);
137
- _defineProperty(this, "configService", globalConfigService);
138
- _defineProperty(this, "styleAttributeService", void 0);
139
- _defineProperty(this, "layerSource", void 0);
140
- _defineProperty(this, "postProcessingPassFactory", void 0);
141
- _defineProperty(this, "animateOptions", {
142
- enable: false
143
- });
144
- // 相对坐标系支持
145
- _defineProperty(this, "relativeOrigin", [0, 0]);
146
- _defineProperty(this, "originalExtent", [0, 0, 0, 0]);
147
- _defineProperty(this, "absoluteDataArray", []);
148
- // 保存绝对坐标数据用于交互
149
- /**
150
- * 图层容器
151
- */
152
- _defineProperty(this, "container", void 0);
153
- _defineProperty(this, "encodedData", void 0);
154
- _defineProperty(this, "currentPickId", null);
155
- _defineProperty(this, "rawConfig", void 0);
156
- _defineProperty(this, "needUpdateConfig", void 0);
157
- _defineProperty(this, "encodeStyleAttribute", {});
158
- // Shader 的数据映射
159
- _defineProperty(this, "enableShaderEncodeStyles", []);
160
- // 数据层数据映射
161
- _defineProperty(this, "enableDataEncodeStyles", []);
162
- /**
163
- * 待更新样式属性,在初始化阶段完成注册
164
- */
165
- _defineProperty(this, "pendingStyleAttributes", []);
166
- _defineProperty(this, "scaleOptions", {});
167
- _defineProperty(this, "animateStartTime", 0);
168
- _defineProperty(this, "animateStatus", false);
169
- _defineProperty(this, "isDestroyed", false);
170
- // private pickingPassRender: IPass<'pixelPicking'>;
171
- _defineProperty(this, "uniformBuffers", []);
172
- _defineProperty(this, "encodeDataLength", 0);
173
- _defineProperty(this, "sourceEvent", () => {
174
- this.dataState.dataSourceNeedUpdate = true;
175
- // 处理相对坐标转换
176
- this.processRelativeCoordinates();
177
- const layerConfig = this.getLayerConfig();
178
- if (layerConfig && layerConfig.autoFit) {
179
- this.fitBounds(layerConfig.fitBoundsOptions);
180
- }
181
- const autoRender = this.layerSource.getSourceCfg().autoRender;
182
- if (autoRender) {
183
- setTimeout(() => {
184
- this.reRender();
185
- }, 10);
186
- }
187
- });
188
- this.name = config.name || this.id;
189
- this.zIndex = config.zIndex || 0;
190
- this.rawConfig = config;
191
- this.masks = config.maskLayers || [];
192
- }
193
- addMask(layer) {
194
- this.masks.push(layer);
195
- this.updateLayerConfig({
196
- maskLayers: this.masks
197
- });
198
- this.enableMask();
199
- }
200
- removeMask(layer) {
201
- const layerIndex = this.masks.indexOf(layer);
202
- if (layerIndex > -1) {
203
- this.masks.splice(layerIndex, 1);
204
- }
205
- this.updateLayerConfig({
206
- maskLayers: this.masks
207
- });
208
- }
209
- disableMask() {
210
- this.updateLayerConfig({
211
- enableMask: false
212
- });
213
- }
214
- enableMask() {
215
- this.updateLayerConfig({
216
- enableMask: true
217
- });
218
- }
219
-
220
- /**
221
- * 将废弃
222
- * @deprecated
223
- */
224
- addMaskLayer(maskLayer) {
225
- this.masks.push(maskLayer);
226
- }
227
-
228
- /**
229
- * 将废弃
230
- * @deprecated
231
- */
232
- removeMaskLayer(maskLayer) {
233
- const layerIndex = this.masks.indexOf(maskLayer);
234
- if (layerIndex > -1) {
235
- this.masks.splice(layerIndex, 1);
236
- }
237
- maskLayer.destroy();
238
- }
239
- getAttribute(name) {
240
- return this.styleAttributeService.getLayerStyleAttribute(name);
241
- }
242
- getLayerConfig() {
243
- return this.configService.getLayerConfig(this.id);
244
- }
245
- updateLayerConfig(configToUpdate) {
246
- // 同步 rawConfig
247
- Object.keys(configToUpdate).map(key => {
248
- if (key in this.rawConfig) {
249
- // @ts-ignore
250
- this.rawConfig[key] = configToUpdate[key];
251
- }
252
- });
253
- if (!this.startInit) {
254
- this.needUpdateConfig = _objectSpread(_objectSpread({}, this.needUpdateConfig), configToUpdate);
255
- } else {
256
- const sceneId = this.container.id;
257
- // @ts-ignore
258
- // styleDataMapping(configToUpdate, this); // 处理 style 中进行数据映射的属性字段
259
- this.configService.setLayerConfig(sceneId, this.id, _objectSpread(_objectSpread(_objectSpread({}, this.configService.getLayerConfig(this.id)), this.needUpdateConfig), configToUpdate));
260
- this.needUpdateConfig = {};
261
- }
262
- }
263
-
264
- /**
265
- * 注入图层容器,父容器为场景容器
266
- * RootContainer 1
267
- * -> SceneContainer 1.*
268
- * -> LayerContainer 1.*
269
- */
270
- setContainer(container) {
271
- this.container = container;
272
- }
273
- getContainer() {
274
- return this.container;
275
- }
276
- addPlugin(plugin) {
277
- this.plugins.push(plugin);
278
- return this;
279
- }
280
- init() {
281
- var _this = this;
282
- return _asyncToGenerator(function* () {
283
- // 设置配置项
284
- const sceneId = _this.container.id;
285
- _this.startInit = true;
286
- // 初始化图层配置项
287
- // const { enableMultiPassRenderer = false } = this.rawConfig;
288
- // this.configService.setLayerConfig(sceneId, this.id, {
289
- // enableMultiPassRenderer,
290
- // });
291
- _this.configService.setLayerConfig(sceneId, _this.id, _this.rawConfig);
292
- _this.layerType = _this.rawConfig.layerType;
293
-
294
- // 全局容器服务
295
-
296
- // 场景容器服务
297
- const {
298
- enableMultiPassRenderer,
299
- passes
300
- } = _this.getLayerConfig();
301
- if (enableMultiPassRenderer && passes !== null && passes !== void 0 && passes.length && passes.length > 0) {
302
- // Tip: 兼容 multiPassRender 在 amap1 时存在的图层不同步问题 zoom
303
- _this.mapService.on('mapAfterFrameChange', () => {
304
- _this.renderLayers();
305
- });
306
- }
307
- _this.postProcessingPassFactory = _this.container.postProcessingPassFactory;
308
-
309
- // 图层容器服务
310
- _this.styleAttributeService = _this.container.styleAttributeService;
311
- if (enableMultiPassRenderer) {
312
- // 按需初始化 瓦片频繁报错
313
- _this.multiPassRenderer = _this.container.multiPassRenderer;
314
- _this.multiPassRenderer.setLayer(_this);
315
- }
316
- // 完成样式服务注册完成前添加的属性
317
- _this.pendingStyleAttributes.forEach(({
318
- attributeName,
319
- attributeField,
320
- attributeValues,
321
- updateOptions
322
- }) => {
323
- _this.styleAttributeService.updateStyleAttribute(attributeName, {
324
- // @ts-ignore
325
- scale: _objectSpread({
326
- field: attributeField
327
- }, _this.splitValuesAndCallbackInAttribute(
328
- // @ts-ignore
329
- attributeValues,
330
- // @ts-ignore
331
- attributeField ? undefined : _this.getLayerConfig()[attributeName] // 设置了字段不需要设置默认值
332
- ))
333
- },
334
- // @ts-ignore
335
- updateOptions);
336
- });
337
- _this.pendingStyleAttributes = [];
338
-
339
- // 获取插件集
340
- _this.plugins = createPlugins();
341
- // 完成插件注册,传入场景和图层容器内的服务
342
- for (const plugin of _this.plugins) {
343
- plugin.apply(_this, _this.container);
344
- }
345
- // if (this.getSource().isTile) {
346
- // this.tileLayer = new TileLayer(this);
347
- // }
348
-
349
- // 初始化其他服务
350
- _this.layerPickService = new LayerPickService(_this);
351
-
352
- // 颜色纹理服务
353
- _this.textureService = new TextureService(_this);
354
- _this.log(IDebugLog.LayerInitStart);
355
- // 触发 init 生命周期插件
356
- yield _this.hooks.init.promise();
357
- _this.log(IDebugLog.LayerInitEnd);
358
- _this.inited = true;
359
- // add mask layer
360
- // 触发初始化完成事件;
361
- _this.emit('inited', {
362
- target: _this,
363
- type: 'inited'
364
- });
365
- _this.emit('add', {
366
- target: _this,
367
- type: 'add'
368
- });
369
- _this.hooks.afterInit.call();
370
- })();
371
- }
372
- log(logType, step = 'init') {
373
- var _this$debugService;
374
- // @ts-ignore 瓦片、瓦片图层目前不参与日志
375
- if (this.tileLayer || this.isTileLayer) {
376
- return;
377
- }
378
- const key = `${this.id}.${step}.${logType}`;
379
- const values = {
380
- id: this.id,
381
- type: this.type
382
- };
383
- (_this$debugService = this.debugService) === null || _this$debugService === void 0 || _this$debugService.log(key, values);
384
- }
385
- updateModelData(data) {
386
- if (data.attributes && data.elements) {
387
- this.models.map(m => {
388
- m.updateAttributesAndElements(data.attributes, data.elements);
389
- });
390
- } else {
391
- console.warn('data error');
392
- }
393
- }
394
- setLayerPickService(layerPickService) {
395
- this.layerPickService = layerPickService;
396
- }
397
- /**
398
- * Model初始化前需要更新Model样式
399
- */
400
- prepareBuildModel() {
401
- if (Object.keys(this.needUpdateConfig || {}).length !== 0) {
402
- this.updateLayerConfig({});
403
- }
404
-
405
- // 启动动画
406
- const {
407
- animateOption
408
- } = this.getLayerConfig();
409
- if (animateOption !== null && animateOption !== void 0 && animateOption.enable) {
410
- this.layerService.startAnimate();
411
- this.animateStatus = true;
412
- }
413
- }
414
- color(field, values, updateOptions) {
415
- this.updateStyleAttribute('color', field, values, updateOptions);
416
- return this;
417
- }
418
-
419
- // 为对应的图层传入纹理的编号名称(point/image 在 shape 方法中传入纹理名称的方法并不通用)
420
- texture(field, values, updateOptions) {
421
- this.updateStyleAttribute('texture', field, values, updateOptions);
422
- return this;
423
- }
424
- rotate(field, values, updateOptions) {
425
- this.updateStyleAttribute('rotate', field, values, updateOptions);
426
- return this;
427
- }
428
- size(field, values, updateOptions) {
429
- this.updateStyleAttribute('size', field, values, updateOptions);
430
- return this;
431
- }
432
- // 对mapping后的数据过滤,scale保持不变
433
- filter(field, values, updateOptions) {
434
- const flag = this.updateStyleAttribute('filter', field, values, updateOptions);
435
- this.dataState.dataSourceNeedUpdate = flag && this.inited;
436
- return this;
437
- }
438
- shape(field, values, updateOptions) {
439
- this.shapeOption = {
440
- field,
441
- values
442
- };
443
- const flag = this.updateStyleAttribute('shape', field, values, updateOptions);
444
- this.dataState.dataSourceNeedUpdate = flag && this.inited;
445
- return this;
446
- }
447
- label(field, values, updateOptions) {
448
- this.pendingStyleAttributes.push({
449
- attributeName: 'label',
450
- attributeField: field,
451
- attributeValues: values,
452
- updateOptions
453
- });
454
- return this;
455
- }
456
- animate(options) {
457
- let rawAnimate = {};
458
- if (isObject(options)) {
459
- rawAnimate.enable = true;
460
- rawAnimate = _objectSpread(_objectSpread({}, rawAnimate), options);
461
- } else {
462
- rawAnimate.enable = options;
463
- }
464
- this.updateLayerConfig({
465
- animateOption: rawAnimate
466
- });
467
- return this;
468
- }
469
- source(data, options) {
470
- if ((data === null || data === void 0 ? void 0 : data.type) === 'source') {
471
- // 判断是否为source
472
- this.setSource(data);
473
- return this;
474
- }
475
- // 设置source 配置
476
- this.sourceOption = {
477
- data,
478
- options
479
- };
480
- this.clusterZoom = 0;
481
- return this;
482
- }
483
- setData(data, options) {
484
- if (this.inited) {
485
- this.dataUpdatelog();
486
- this.layerSource.setData(data, options);
487
- } else {
488
- this.on('inited', () => {
489
- this.dataUpdatelog();
490
- this.layerSource.setData(data, options);
491
- });
492
- }
493
- return this;
494
- }
495
- dataUpdatelog() {
496
- this.log(IDebugLog.SourceInitStart, ILayerStage.UPDATE);
497
- this.layerSource.once('update', () => {
498
- this.log(IDebugLog.SourceInitEnd, ILayerStage.UPDATE);
499
- });
500
- }
501
- style(options) {
502
- const {
503
- passes
504
- } = options,
505
- rest = _objectWithoutProperties(options, _excluded);
506
- // passes 特殊处理
507
- if (passes) {
508
- normalizePasses(passes).forEach(pass => {
509
- const postProcessingPass = this.multiPassRenderer.getPostProcessor().getPostProcessingPassByName(pass[0]);
510
- if (postProcessingPass) {
511
- postProcessingPass.updateOptions(pass[1]);
512
- }
513
- });
514
- }
515
- // 兼容 borderColor borderWidth
516
- // @ts-ignore
517
- if (rest.borderColor) {
518
- // @ts-ignore
519
- rest.stroke = rest.borderColor;
520
- }
521
- // @ts-ignore
522
- if (rest.borderWidth) {
523
- // @ts-ignore
524
- rest.strokeWidth = rest.borderWidth;
525
- }
526
-
527
- // 兼容老版本的写法 ['field, 'value']
528
- const newOption = rest;
529
- Object.keys(rest).forEach(key => {
530
- // @ts-ignore
531
- const values = rest[key];
532
- if (Array.isArray(values) && values.length === 2 && !isNumber(values[0]) && !isNumber(values[1])) {
533
- newOption[key] = {
534
- field: values[0],
535
- value: values[1]
536
- };
537
- }
538
- });
539
- this.encodeStyle(newOption);
540
- this.updateLayerConfig(newOption);
541
- return this;
542
- }
543
-
544
- // 参与数据映射的字段 encodeing
545
- encodeStyle(options) {
546
- Object.keys(options).forEach(key => {
547
- if (
548
- // 需要数据映射
549
- [...this.enableShaderEncodeStyles, ...this.enableDataEncodeStyles].includes(key) && isPlainObject(options[key]) && (options[key].field || options[key].value) && !isEqual(this.encodeStyleAttribute[key], options[key]) // 防止计算属性重复计算
550
- ) {
551
- this.encodeStyleAttribute[key] = options[key];
552
- this.updateStyleAttribute(key, options[key].field, options[key].value);
553
- if (this.inited) {
554
- this.dataState.dataMappingNeedUpdate = true;
555
- }
556
- } else {
557
- // 不需要数据映射
558
- if (this.encodeStyleAttribute[key]) {
559
- delete this.encodeStyleAttribute[key]; // 删除已经存在的属性
560
- this.dataState.dataSourceNeedUpdate = true;
561
- }
562
- }
563
- });
564
- }
565
- scale(field, cfg) {
566
- const preOption = _objectSpread({}, this.scaleOptions);
567
- if (isObject(field)) {
568
- this.scaleOptions = _objectSpread(_objectSpread({}, this.scaleOptions), field);
569
- } else {
570
- this.scaleOptions[field] = cfg;
571
- }
572
- if (this.styleAttributeService && !isEqual(preOption, this.scaleOptions)) {
573
- const scaleOptions = isObject(field) ? field : {
574
- [field]: cfg
575
- };
576
- this.styleAttributeService.updateScaleAttribute(scaleOptions);
577
- }
578
- return this;
579
- }
580
-
581
- /**
582
- * 渲染所有的图层
583
- */
584
- renderLayers() {
585
- this.rendering = true;
586
- this.layerService.reRender();
587
- this.rendering = false;
588
- }
589
- prerender() {}
590
- render(options = {}) {
591
- if (this.tileLayer) {
592
- // 瓦片图层执行单独的 render 渲染队列
593
- this.tileLayer.render();
594
- return this;
595
- }
596
- this.layerService.beforeRenderData(this);
597
- if (this.encodeDataLength <= 0 && !this.forceRender) {
598
- return this;
599
- }
600
- // Tip: this.getEncodedData().length !== 0 这个判断是为了解决在 2.5.x 引入数据纹理后产生的 空数据渲染导致 texture 超出上限问题
601
- this.renderModels(options);
602
- return this;
603
- }
604
-
605
- /**
606
- * renderMultiPass 专门用于渲染支持 multipass 的 layer
607
- */
608
- renderMultiPass() {
609
- var _this2 = this;
610
- return _asyncToGenerator(function* () {
611
- if (_this2.encodeDataLength <= 0 && !_this2.forceRender) {
612
- return;
613
- }
614
- if (_this2.multiPassRenderer && _this2.multiPassRenderer.getRenderFlag()) {
615
- // multi render 开始执行 multiPassRender 的渲染流程
616
- yield _this2.multiPassRenderer.render();
617
- } else {
618
- _this2.renderModels();
619
- }
620
- })();
621
- }
622
- active(options) {
623
- const activeOption = {};
624
- activeOption.enableHighlight = isObject(options) ? true : options;
625
- if (isObject(options)) {
626
- activeOption.enableHighlight = true;
627
- if (options.color) {
628
- activeOption.highlightColor = options.color;
629
- }
630
- if (options.mix) {
631
- activeOption.activeMix = options.mix;
632
- }
633
- } else {
634
- activeOption.enableHighlight = !!options;
635
- }
636
- this.updateLayerConfig(activeOption);
637
- return this;
638
- }
639
- setActive(id, options) {
640
- if (isObject(id)) {
641
- const {
642
- x = 0,
643
- y = 0
644
- } = id;
645
- this.updateLayerConfig({
646
- highlightColor: isObject(options) ? options.color : this.getLayerConfig().highlightColor,
647
- activeMix: isObject(options) ? options.mix : this.getLayerConfig().activeMix
648
- });
649
- this.pick({
650
- x,
651
- y
652
- });
653
- } else {
654
- this.updateLayerConfig({
655
- pickedFeatureID: id,
656
- highlightColor: isObject(options) ? options.color : this.getLayerConfig().highlightColor,
657
- activeMix: isObject(options) ? options.mix : this.getLayerConfig().activeMix
658
- });
659
- this.hooks.beforeHighlight.call(encodePickingColor(id))
660
- // @ts-ignore
661
- .then(() => {
662
- setTimeout(() => {
663
- this.reRender();
664
- }, 1);
665
- });
666
- }
667
- }
668
- select(option) {
669
- const activeOption = {};
670
- activeOption.enableSelect = isObject(option) ? true : option;
671
- if (isObject(option)) {
672
- activeOption.enableSelect = true;
673
- if (option.color) {
674
- activeOption.selectColor = option.color;
675
- }
676
- if (option.mix) {
677
- activeOption.selectMix = option.mix;
678
- }
679
- } else {
680
- activeOption.enableSelect = !!option;
681
- }
682
- this.updateLayerConfig(activeOption);
683
- return this;
684
- }
685
- setSelect(id, options) {
686
- if (isObject(id)) {
687
- const {
688
- x = 0,
689
- y = 0
690
- } = id;
691
- this.updateLayerConfig({
692
- selectColor: isObject(options) ? options.color : this.getLayerConfig().selectColor,
693
- selectMix: isObject(options) ? options.mix : this.getLayerConfig().selectMix
694
- });
695
- this.pick({
696
- x,
697
- y
698
- });
699
- } else {
700
- this.updateLayerConfig({
701
- pickedFeatureID: id,
702
- selectColor: isObject(options) ? options.color : this.getLayerConfig().selectColor,
703
- selectMix: isObject(options) ? options.mix : this.getLayerConfig().selectMix
704
- });
705
- this.hooks.beforeSelect.call(encodePickingColor(id))
706
- // @ts-ignore
707
- .then(() => {
708
- setTimeout(() => {
709
- this.reRender();
710
- }, 1);
711
- });
712
- }
713
- }
714
- setBlend(type) {
715
- this.updateLayerConfig({
716
- blend: type
717
- });
718
- // this.layerModelNeedUpdate = true;
719
- this.reRender();
720
- return this;
721
- }
722
- show() {
723
- this.updateLayerConfig({
724
- visible: true
725
- });
726
- this.reRender();
727
- this.emit('show');
728
- return this;
729
- }
730
- hide() {
731
- this.updateLayerConfig({
732
- visible: false
733
- });
734
- this.reRender();
735
- this.emit('hide');
736
- return this;
737
- }
738
- setIndex(index) {
739
- this.zIndex = index;
740
- this.layerService.updateLayerRenderList();
741
- this.layerService.renderLayers();
742
- return this;
743
- }
744
- setCurrentPickId(id) {
745
- this.currentPickId = id;
746
- }
747
- getCurrentPickId() {
748
- return this.currentPickId;
749
- }
750
- setCurrentSelectedId(id) {
751
- this.selectedFeatureID = id;
752
- }
753
- getCurrentSelectedId() {
754
- return this.selectedFeatureID;
755
- }
756
- isVisible() {
757
- const zoom = this.mapService.getZoom();
758
- const {
759
- visible,
760
- minZoom = -Infinity,
761
- maxZoom = Infinity
762
- } = this.getLayerConfig();
763
- return !!visible && zoom >= minZoom && zoom < maxZoom;
764
- }
765
- setMultiPass(enableMultiPass, currentPasses) {
766
- this.updateLayerConfig({
767
- enableMultiPassRenderer: enableMultiPass
768
- });
769
- if (currentPasses) {
770
- this.updateLayerConfig({
771
- passes: currentPasses
772
- });
773
- }
774
- if (enableMultiPass) {
775
- const {
776
- passes = []
777
- } = this.getLayerConfig();
778
- this.multiPassRenderer = createMultiPassRenderer(this, passes, this.postProcessingPassFactory, this.normalPassFactory);
779
- this.multiPassRenderer.setRenderFlag(true);
780
- const {
781
- width,
782
- height
783
- } = this.rendererService.getViewportSize();
784
- this.multiPassRenderer.resize(width, height);
785
- }
786
- return this;
787
- }
788
- setMinZoom(minZoom) {
789
- this.updateLayerConfig({
790
- minZoom
791
- });
792
- return this;
793
- }
794
- getMinZoom() {
795
- const {
796
- minZoom
797
- } = this.getLayerConfig();
798
- return minZoom;
799
- }
800
- getMaxZoom() {
801
- const {
802
- maxZoom
803
- } = this.getLayerConfig();
804
- return maxZoom;
805
- }
806
- get(name) {
807
- const cfg = this.getLayerConfig();
808
- // @ts-ignore
809
- return cfg[name];
810
- }
811
- setMaxZoom(maxZoom) {
812
- this.updateLayerConfig({
813
- maxZoom
814
- });
815
- return this;
816
- }
817
- setAutoFit(autoFit) {
818
- this.updateLayerConfig({
819
- autoFit
820
- });
821
- return this;
822
- }
823
-
824
- /**
825
- * zoom to layer Bounds
826
- */
827
- fitBounds(fitBoundsOptions) {
828
- if (!this.inited) {
829
- this.updateLayerConfig({
830
- autoFit: true
831
- });
832
- return this;
833
- }
834
- const source = this.getSource();
835
- const extent = source.extent;
836
- const isValid = extent.some(v => Math.abs(v) === Infinity);
837
- if (isValid) {
838
- return this;
839
- }
840
- this.mapService.fitBounds([[extent[0], extent[1]], [extent[2], extent[3]]], fitBoundsOptions);
841
- return this;
842
- }
843
- destroy(refresh = true) {
844
- var _this$layerModel, _this$multiPassRender, _this$layerModel2, _this$tileLayer, _this$debugService2;
845
- if (this.isDestroyed) {
846
- return;
847
- }
848
-
849
- // destroy all UBOs
850
- (_this$layerModel = this.layerModel) === null || _this$layerModel === void 0 || _this$layerModel.uniformBuffers.forEach(buffer => {
851
- buffer.destroy();
852
- });
853
-
854
- // remove child layer
855
- this.layerChildren.map(child => child.destroy(false));
856
- this.layerChildren = [];
857
-
858
- // remove mask list maskfence 掩模需要销毁
859
- const {
860
- maskfence
861
- } = this.getLayerConfig();
862
- if (maskfence) {
863
- this.masks.map(mask => mask.destroy(false));
864
- this.masks = [];
865
- }
866
- this.hooks.beforeDestroy.call();
867
- // 清除sources事件
868
- this.layerSource.off('update', this.sourceEvent);
869
- (_this$multiPassRender = this.multiPassRenderer) === null || _this$multiPassRender === void 0 || _this$multiPassRender.destroy();
870
- this.textureService.destroy();
871
-
872
- // 清除所有属性以及关联的 vao == 销毁所有 => model this.models.forEach((model) => model.destroy());
873
- this.styleAttributeService.clearAllAttributes();
874
-
875
- // 执行每个图层单独的 clearModels 方法 (清除一些额外的 texture、program、buffer 等)
876
-
877
- this.hooks.afterDestroy.call();
878
- // Tip: 清除各个图层自定义的 models 资源
879
- (_this$layerModel2 = this.layerModel) === null || _this$layerModel2 === void 0 || _this$layerModel2.clearModels(refresh);
880
- (_this$tileLayer = this.tileLayer) === null || _this$tileLayer === void 0 || _this$tileLayer.destroy();
881
- this.models = [];
882
- // 清除图层日志(如果有的话:非瓦片相关)
883
- (_this$debugService2 = this.debugService) === null || _this$debugService2 === void 0 || _this$debugService2.removeLog(this.id);
884
- this.emit('remove', {
885
- target: this,
886
- type: 'remove'
887
- });
888
- this.emit('destroy', {
889
- target: this,
890
- type: 'destroy'
891
- });
892
- this.removeAllListeners();
893
- this.isDestroyed = true;
894
- }
895
- clear() {
896
- this.styleAttributeService.clearAllAttributes();
897
- // 销毁所有 model
898
- }
899
- clearModels() {
900
- var _this$layerModel3;
901
- this.models.forEach(model => model.destroy());
902
- (_this$layerModel3 = this.layerModel) === null || _this$layerModel3 === void 0 || _this$layerModel3.clearModels();
903
- this.models = [];
904
- }
905
- isDirty() {
906
- return !!(this.styleAttributeService.getLayerStyleAttributes() || []).filter(attribute => attribute.needRescale || attribute.needRemapping || attribute.needRegenerateVertices).length;
907
- }
908
- // 外部初始化Source
909
- setSource(source) {
910
- // 解除原 sources 事件
911
- if (this.layerSource) {
912
- this.layerSource.off('update', this.sourceEvent);
913
- }
914
- this.layerSource = source;
915
- this.clusterZoom = 0;
916
-
917
- // 已 inited 且启用聚合进行更新聚合数据
918
- if (this.inited && this.layerSource.cluster) {
919
- const zoom = this.mapService.getZoom();
920
- this.layerSource.updateClusterData(zoom);
921
- }
922
- if (this.layerSource.inited) {
923
- this.sourceEvent();
924
- }
925
- // this.layerSource.inited 为 true update 事件不会再触发
926
- this.layerSource.on('update', ({
927
- type
928
- }) => {
929
- if (this.coordCenter === undefined) {
930
- const layerCenter = this.layerSource.center;
931
- this.coordCenter = layerCenter;
932
- }
933
- if (type === 'update') {
934
- if (this.tileLayer) {
935
- // 瓦片图层独立更新
936
- this.tileLayer.reload();
937
- return;
938
- }
939
- // source 初始化不需要处理
940
- this.sourceEvent();
941
- }
942
- if (type === 'inited') {
943
- this.processRelativeCoordinates();
944
- }
945
- });
946
- }
947
- getSource() {
948
- return this.layerSource;
949
- }
950
- getScaleOptions() {
951
- return this.scaleOptions;
952
- }
953
- setEncodedData(encodedData) {
954
- this.encodedData = encodedData;
955
- this.encodeDataLength = encodedData.length;
956
- }
957
- getEncodedData() {
958
- return this.encodedData;
959
- }
960
- getScale(name) {
961
- return this.styleAttributeService.getLayerAttributeScale(name);
962
- }
963
- getLegend(name) {
964
- var _attribute$scale, _scales$, _scales$2;
965
- const attribute = this.styleAttributeService.getLayerStyleAttribute(name);
966
- const scales = (attribute === null || attribute === void 0 || (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.scalers) || [];
967
- return {
968
- type: (_scales$ = scales[0]) === null || _scales$ === void 0 || (_scales$ = _scales$.option) === null || _scales$ === void 0 ? void 0 : _scales$.type,
969
- field: (_scales$2 = scales[0]) === null || _scales$2 === void 0 ? void 0 : _scales$2.field,
970
- items: this.getLegendItems(name)
971
- };
972
- }
973
- getLegendItems(name) {
974
- const scale = this.styleAttributeService.getLayerAttributeScale(name);
975
- // 函数自定义映射,没有 scale 返回为空数组
976
- if (!scale) {
977
- return [];
978
- }
979
- if (scale.invertExtent) {
980
- // 分段类型 Quantize、Quantile、Threshold
981
- const items = scale.range().map(item => {
982
- return {
983
- value: scale.invertExtent(item),
984
- [name]: item
985
- };
986
- });
987
- return items;
988
- } else if (scale.ticks) {
989
- // 连续类型 Continuous (Linear, Power, Log, Identity, Time)
990
- const items = scale.ticks().map(item => {
991
- return {
992
- value: item,
993
- [name]: scale(item)
994
- };
995
- });
996
- return items;
997
- } else if (scale !== null && scale !== void 0 && scale.domain) {
998
- // 枚举类型 Cat
999
- const items = scale.domain().filter(item => !isUndefined(item)).map(item => {
1000
- return {
1001
- value: item,
1002
- [name]: scale(item)
1003
- };
1004
- });
1005
- return items;
1006
- }
1007
- return [];
1008
- }
1009
- pick({
1010
- x,
1011
- y
1012
- }) {
1013
- this.interactionService.triggerHover({
1014
- x,
1015
- y
1016
- });
1017
- }
1018
- boxSelect(box, cb) {
1019
- this.pickingService.boxPickLayer(this, box, cb);
1020
- }
1021
- buildLayerModel(options) {
1022
- var _this3 = this;
1023
- return _asyncToGenerator(function* () {
1024
- const {
1025
- moduleName,
1026
- vertexShader,
1027
- fragmentShader,
1028
- defines,
1029
- inject,
1030
- triangulation,
1031
- styleOption,
1032
- pickingEnabled = true
1033
- } = options,
1034
- rest = _objectWithoutProperties(options, _excluded2);
1035
- _this3.shaderModuleService.registerModule(moduleName, {
1036
- vs: vertexShader,
1037
- fs: fragmentShader,
1038
- defines,
1039
- inject
1040
- });
1041
- const {
1042
- vs,
1043
- fs,
1044
- uniforms
1045
- } = _this3.shaderModuleService.getModule(moduleName);
1046
- const {
1047
- createModel
1048
- } = _this3.rendererService;
1049
- return new Promise(resolve => {
1050
- const {
1051
- attributes,
1052
- elements,
1053
- count
1054
- } = _this3.styleAttributeService.createAttributesAndIndices(_this3.encodedData, triangulation, styleOption, _this3);
1055
- const uniformBuffers = [..._this3.layerModel.uniformBuffers, ..._this3.rendererService.uniformBuffers];
1056
- if (pickingEnabled) {
1057
- uniformBuffers.push(_this3.getPickingUniformBuffer());
1058
- }
1059
- const modelOptions = _objectSpread({
1060
- attributes,
1061
- uniforms,
1062
- fs,
1063
- vs,
1064
- elements,
1065
- blend: BlendTypes[BlendType.normal],
1066
- uniformBuffers,
1067
- textures: _this3.layerModel.textures
1068
- }, rest);
1069
- if (count) {
1070
- modelOptions.count = count;
1071
- }
1072
- const m = createModel(modelOptions);
1073
- resolve(m);
1074
- });
1075
- })();
1076
- }
1077
- createAttributes(options) {
1078
- const {
1079
- triangulation
1080
- } = options;
1081
- // @ts-ignore
1082
- const {
1083
- attributes
1084
- } = this.styleAttributeService.createAttributes(this.encodedData, triangulation);
1085
- return attributes;
1086
- }
1087
- getTime() {
1088
- return this.layerService.clock.getDelta();
1089
- }
1090
- setAnimateStartTime() {
1091
- this.animateStartTime = this.layerService.clock.getElapsedTime();
1092
- }
1093
- stopAnimate() {
1094
- if (this.animateStatus) {
1095
- this.layerService.stopAnimate();
1096
- this.animateStatus = false;
1097
- this.updateLayerConfig({
1098
- animateOption: {
1099
- enable: false
1100
- }
1101
- });
1102
- }
1103
- }
1104
- getLayerAnimateTime() {
1105
- return this.layerService.clock.getElapsedTime() - this.animateStartTime;
1106
- }
1107
- needPick(type) {
1108
- const {
1109
- enableHighlight = true,
1110
- enableSelect = true
1111
- } = this.getLayerConfig();
1112
- // 判断layer是否监听事件;
1113
- let isPick = this.eventNames().indexOf(type) !== -1 || this.eventNames().indexOf('un' + type) !== -1;
1114
- if ((type === 'click' || type === 'dblclick') && enableSelect) {
1115
- isPick = true;
1116
- }
1117
- if (type === 'mousemove' && (enableHighlight || this.eventNames().indexOf('mouseenter') !== -1 || this.eventNames().indexOf('unmousemove') !== -1 || this.eventNames().indexOf('mouseout') !== -1)) {
1118
- isPick = true;
1119
- }
1120
- return this.isVisible() && isPick;
1121
- }
1122
- buildModels() {
1123
- return _asyncToGenerator(function* () {
1124
- throw new Error('Method not implemented.');
1125
- })();
1126
- }
1127
- rebuildModels() {
1128
- var _this4 = this;
1129
- return _asyncToGenerator(function* () {
1130
- yield _this4.buildModels();
1131
- })();
1132
- }
1133
- renderMulPass(multiPassRenderer) {
1134
- return _asyncToGenerator(function* () {
1135
- yield multiPassRenderer.render();
1136
- })();
1137
- }
1138
- renderModels(options = {}) {
1139
- // TODO: this.getEncodedData().length > 0 这个判断是为了解决在 2.5.x 引入数据纹理后产生的 空数据渲染导致 texture 超出上限问题
1140
- if (this.encodeDataLength <= 0 && !this.forceRender) {
1141
- // 数据为空销毁model
1142
- this.clearModels();
1143
- return this;
1144
- }
1145
- this.hooks.beforeRender.call();
1146
- this.models.forEach(model => {
1147
- model.draw({
1148
- uniforms: this.layerModel.getUninforms(),
1149
- blend: this.layerModel.getBlend(),
1150
- stencil: this.layerModel.getStencil(options),
1151
- textures: this.layerModel.textures
1152
- }, (options === null || options === void 0 ? void 0 : options.ispick) || false);
1153
- });
1154
- this.hooks.afterRender.call();
1155
- return this;
1156
- }
1157
- updateStyleAttribute(type, field, values, updateOptions) {
1158
- // encode diff
1159
- const preAttribute = this.configService.getAttributeConfig(this.id) || {};
1160
- // @ts-ignore
1161
- if (isEqual(preAttribute[type], {
1162
- field,
1163
- values
1164
- })) {
1165
- // 检测是否发生更新
1166
- return false;
1167
- }
1168
-
1169
- // 存储 Attribute 瓦片图层使用
1170
- if (['color', 'size', 'texture', 'rotate', 'filter', 'label', 'shape'].indexOf(type) !== -1) {
1171
- this.configService.setAttributeConfig(this.id, {
1172
- [type]: {
1173
- field,
1174
- values
1175
- }
1176
- });
1177
- }
1178
- if (!this.startInit) {
1179
- // 开始初始化执行
1180
- this.pendingStyleAttributes.push({
1181
- attributeName: type,
1182
- attributeField: field,
1183
- attributeValues: values,
1184
- updateOptions
1185
- });
1186
- } else {
1187
- this.styleAttributeService.updateStyleAttribute(type, {
1188
- // @ts-ignore
1189
- scale: _objectSpread({
1190
- field
1191
- }, this.splitValuesAndCallbackInAttribute(
1192
- // @ts-ignore
1193
- values,
1194
- // @ts-ignore
1195
- this.getLayerConfig()[field]))
1196
- },
1197
- // @ts-ignore
1198
- updateOptions);
1199
- }
1200
- return true;
1201
- }
1202
- getLayerAttributeConfig() {
1203
- return this.configService.getAttributeConfig(this.id);
1204
- }
1205
- getShaderPickStat() {
1206
- return this.layerService.getShaderPickStat();
1207
- }
1208
-
1209
- /**
1210
- * 继承空方法
1211
- * @param time
1212
- */
1213
-
1214
- setEarthTime(time) {
1215
- console.warn('empty fn');
1216
- }
1217
-
1218
- // 数据处理 在数据进行 mapping 生成 encodeData 之前对数据进行处理
1219
- // 在各个 layer 中继承
1220
- processData(filterData) {
1221
- return filterData;
1222
- }
1223
- getModelType() {
1224
- throw new Error('Method not implemented.');
1225
- }
1226
- getDefaultConfig() {
1227
- return {};
1228
- }
1229
-
1230
- /**
1231
- * 处理相对坐标转换
1232
- */
1233
- processRelativeCoordinates() {
1234
- const layerConfig = this.getLayerConfig();
1235
- const enableRelativeCoordinates = layerConfig === null || layerConfig === void 0 ? void 0 : layerConfig.enableRelativeCoordinates;
1236
- if (!enableRelativeCoordinates || !this.layerSource || !this.layerSource.data) {
1237
- return;
1238
- }
1239
-
1240
- // 保存原始绝对坐标数据用于交互
1241
- this.absoluteDataArray = [...this.layerSource.data.dataArray];
1242
-
1243
- // 处理相对坐标转换
1244
- const result = processRelativeCoordinates(this.layerSource.data.dataArray, {
1245
- enableRelativeCoordinates: true
1246
- });
1247
-
1248
- // 更新source数据为相对坐标
1249
- this.layerSource.data.dataArray = result.dataArray;
1250
- this.relativeOrigin = result.relativeOrigin;
1251
- this.originalExtent = result.originalExtent;
1252
- }
1253
-
1254
- /**
1255
- * 获取绝对坐标数据(用于交互计算)
1256
- */
1257
- getAbsoluteData() {
1258
- return this.absoluteDataArray;
1259
- }
1260
-
1261
- /**
1262
- * 获取相对坐标原点
1263
- */
1264
- getRelativeOrigin() {
1265
- return this.relativeOrigin;
1266
- }
1267
-
1268
- /**
1269
- * 获取原始数据范围
1270
- */
1271
- getOriginalExtent() {
1272
- return this.originalExtent;
1273
- }
1274
- initLayerModels() {
1275
- var _this5 = this;
1276
- return _asyncToGenerator(function* () {
1277
- _this5.models.forEach(model => model.destroy());
1278
- _this5.models = [];
1279
- _this5.uniformBuffers.forEach(buffer => {
1280
- buffer.destroy();
1281
- });
1282
- _this5.uniformBuffers = [];
1283
-
1284
- // Picking Uniform
1285
- const pickingUniforms = _this5.rendererService.createBuffer({
1286
- data: new Float32Array(20).fill(0),
1287
- isUBO: true,
1288
- label: 'pickingUniforms'
1289
- });
1290
- _this5.uniformBuffers.push(pickingUniforms);
1291
- _this5.models = yield _this5.layerModel.initModels();
1292
- })();
1293
- }
1294
- getPickingUniformBuffer() {
1295
- return this.uniformBuffers[0];
1296
- }
1297
- reRender() {
1298
- if (this.inited) {
1299
- this.layerService.reRender();
1300
- }
1301
- }
1302
- splitValuesAndCallbackInAttribute(valuesOrCallback
1303
- // defaultValues?: unknown[],
1304
- ) {
1305
- return {
1306
- values: isFunction(valuesOrCallback) ? undefined : valuesOrCallback,
1307
- callback: isFunction(valuesOrCallback) ? valuesOrCallback : undefined
1308
- };
1309
- }
1310
- }