@antv/l7-layers 2.9.21 → 2.9.23

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 (707) hide show
  1. package/es/Geometry/index.js +4 -5
  2. package/es/Geometry/models/billboard.js +23 -9
  3. package/es/Geometry/models/index.js +4 -5
  4. package/es/Geometry/models/plane.js +25 -13
  5. package/es/Geometry/models/sprite.js +11 -21
  6. package/es/Geometry/shaders/billboard_frag.glsl +13 -0
  7. package/es/Geometry/shaders/billboard_vert.glsl +50 -0
  8. package/es/Geometry/shaders/plane_frag.glsl +22 -0
  9. package/es/Geometry/shaders/plane_vert.glsl +53 -0
  10. package/es/Geometry/shaders/sprite_frag.glsl +21 -0
  11. package/es/Geometry/shaders/sprite_vert.glsl +28 -0
  12. package/es/canvas/index.js +4 -5
  13. package/es/canvas/models/canvas.js +6 -12
  14. package/es/canvas/models/index.js +2 -3
  15. package/es/citybuliding/building.js +4 -5
  16. package/es/citybuliding/models/build.js +19 -22
  17. package/es/citybuliding/shaders/build_frag.glsl +117 -0
  18. package/es/citybuliding/shaders/build_vert.glsl +54 -0
  19. package/es/core/BaseLayer.js +205 -157
  20. package/es/core/BaseModel.js +135 -76
  21. package/es/core/interface.js +1 -2
  22. package/es/core/schema.js +4 -2
  23. package/es/core/shape/Path.js +8 -3
  24. package/es/core/shape/extrude.js +9 -4
  25. package/es/core/triangulation.js +89 -17
  26. package/es/earth/index.js +11 -7
  27. package/es/earth/models/atmosphere.js +15 -7
  28. package/es/earth/models/base.js +19 -7
  29. package/es/earth/models/bloomsphere.js +15 -7
  30. package/es/earth/shaders/atmosphere_frag.glsl +17 -0
  31. package/es/earth/shaders/atmosphere_vert.glsl +26 -0
  32. package/es/earth/shaders/base_frag.glsl +13 -0
  33. package/es/earth/shaders/base_vert.glsl +52 -0
  34. package/es/earth/shaders/bloomsphere_frag.glsl +15 -0
  35. package/es/earth/shaders/bloomsphere_vert.glsl +20 -0
  36. package/es/earth/utils.js +28 -5
  37. package/es/heatmap/index.js +8 -7
  38. package/es/heatmap/models/grid.js +11 -5
  39. package/es/heatmap/models/grid3d.js +18 -7
  40. package/es/heatmap/models/heatmap.js +45 -44
  41. package/es/heatmap/models/hexagon.js +14 -6
  42. package/es/heatmap/models/index.js +5 -6
  43. package/es/heatmap/shaders/grid_vert.glsl +42 -0
  44. package/es/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  45. package/es/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  46. package/es/heatmap/shaders/heatmap_frag.glsl +47 -0
  47. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  48. package/es/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  49. package/es/heatmap/shaders/heatmap_vert.glsl +10 -0
  50. package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  51. package/es/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  52. package/es/heatmap/shaders/hexagon_frag.glsl +12 -0
  53. package/es/heatmap/shaders/hexagon_vert.glsl +41 -0
  54. package/es/heatmap/triangulation.js +2 -2
  55. package/es/image/index.js +4 -5
  56. package/es/image/models/dataImage.js +21 -31
  57. package/es/image/models/image.js +19 -25
  58. package/es/image/models/index.js +3 -4
  59. package/es/image/shaders/dataImage_frag.glsl +38 -0
  60. package/es/image/shaders/image_frag.glsl +9 -0
  61. package/es/image/shaders/image_vert.glsl +17 -0
  62. package/es/index.d.ts +2 -2
  63. package/es/index.js +92 -30
  64. package/es/line/index.js +4 -5
  65. package/es/line/models/arc.js +38 -15
  66. package/es/line/models/arc_3d.js +33 -14
  67. package/es/line/models/earthArc_3d.js +33 -14
  68. package/es/line/models/great_circle.js +25 -13
  69. package/es/line/models/half.js +33 -12
  70. package/es/line/models/index.js +12 -13
  71. package/es/line/models/line.js +48 -15
  72. package/es/line/models/linearline.js +26 -12
  73. package/es/line/models/simpleLine.js +26 -11
  74. package/es/line/models/tile.js +28 -10
  75. package/es/line/models/wall.js +30 -13
  76. package/es/line/shaders/arc_chunks.vert.glsl +21 -0
  77. package/es/line/shaders/dash/arc_dash_frag.glsl +28 -0
  78. package/es/line/shaders/dash/arc_dash_vert.glsl +148 -0
  79. package/es/line/shaders/dash/line_dash_frag.glsl +31 -0
  80. package/es/line/shaders/dash/line_dash_vert.glsl +93 -0
  81. package/es/line/shaders/half/line_half_frag.glsl +53 -0
  82. package/es/line/shaders/half/line_half_vert.glsl +169 -0
  83. package/es/line/shaders/line_arc2d_vert.glsl +114 -0
  84. package/es/line/shaders/line_arc_3d_frag.glsl +103 -0
  85. package/es/line/shaders/line_arc_3d_vert.glsl +207 -0
  86. package/es/line/shaders/line_arc_frag.glsl +89 -0
  87. package/es/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  88. package/es/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  89. package/es/line/shaders/line_arc_vert.glsl +174 -0
  90. package/es/line/shaders/line_bezier_vert.glsl +85 -0
  91. package/es/line/shaders/line_frag.glsl +100 -0
  92. package/es/line/shaders/line_vert.glsl +192 -0
  93. package/es/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  94. package/es/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  95. package/es/line/shaders/linear/arc_linear_frag.glsl +38 -0
  96. package/es/line/shaders/linear/arc_linear_vert.glsl +138 -0
  97. package/es/line/shaders/linear/line_linear_frag.glsl +27 -0
  98. package/es/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  99. package/es/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  100. package/es/line/shaders/simple/simpleline_frag.glsl +10 -0
  101. package/es/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  102. package/es/line/shaders/simple/simpleline_vert.glsl +78 -0
  103. package/es/line/shaders/tile/line_tile_frag.glsl +79 -0
  104. package/es/line/shaders/tile/line_tile_vert.glsl +210 -0
  105. package/es/line/shaders/wall_frag.glsl +93 -0
  106. package/es/line/shaders/wall_vert.glsl +111 -0
  107. package/es/mask/index.js +4 -5
  108. package/es/mask/models/fill.js +11 -8
  109. package/es/mask/models/index.js +2 -3
  110. package/es/mask/shaders/mask_frag.glsl +7 -0
  111. package/es/mask/shaders/mask_vert.glsl +22 -0
  112. package/es/plugins/DataMappingPlugin.js +71 -34
  113. package/es/plugins/DataSourcePlugin.js +12 -10
  114. package/es/plugins/FeatureScalePlugin.js +44 -24
  115. package/es/plugins/LayerAnimateStylePlugin.js +6 -7
  116. package/es/plugins/LayerModelPlugin.js +16 -7
  117. package/es/plugins/LayerStylePlugin.js +7 -3
  118. package/es/plugins/LightingPlugin.js +21 -13
  119. package/es/plugins/MultiPassRendererPlugin.js +21 -8
  120. package/es/plugins/PixelPickingPlugin.js +33 -11
  121. package/es/plugins/RegisterStyleAttributePlugin.js +10 -3
  122. package/es/plugins/ShaderUniformPlugin.js +24 -10
  123. package/es/plugins/UpdateModelPlugin.js +7 -3
  124. package/es/plugins/UpdateStyleAttributePlugin.js +20 -7
  125. package/es/point/index.js +12 -6
  126. package/es/point/models/earthExtrude.js +30 -12
  127. package/es/point/models/earthFill.js +25 -13
  128. package/es/point/models/extrude.js +30 -12
  129. package/es/point/models/fill.js +50 -15
  130. package/es/point/models/fillmage.js +46 -17
  131. package/es/point/models/image.js +20 -12
  132. package/es/point/models/index.js +14 -14
  133. package/es/point/models/normal.js +15 -7
  134. package/es/point/models/radar.js +33 -13
  135. package/es/point/models/simplePoint.js +17 -9
  136. package/es/point/models/text.js +77 -30
  137. package/es/point/models/tile.js +33 -12
  138. package/es/point/shaders/animate/wave_frag.glsl +65 -0
  139. package/es/point/shaders/earth/extrude_frag.glsl +44 -0
  140. package/es/point/shaders/earth/extrude_vert.glsl +140 -0
  141. package/es/point/shaders/earth/fill_frag.glsl +86 -0
  142. package/es/point/shaders/earth/fill_vert.glsl +126 -0
  143. package/es/point/shaders/extrude/extrude_frag.glsl +44 -0
  144. package/es/point/shaders/extrude/extrude_vert.glsl +121 -0
  145. package/es/point/shaders/fill_frag.glsl +84 -0
  146. package/es/point/shaders/fill_vert.glsl +182 -0
  147. package/es/point/shaders/image/fillImage_frag.glsl +20 -0
  148. package/es/point/shaders/image/fillImage_vert.glsl +108 -0
  149. package/es/point/shaders/image_frag.glsl +39 -0
  150. package/es/point/shaders/image_vert.glsl +81 -0
  151. package/es/point/shaders/normal_frag.glsl +15 -0
  152. package/es/point/shaders/normal_vert.glsl +79 -0
  153. package/es/point/shaders/radar/radar_frag.glsl +64 -0
  154. package/es/point/shaders/radar/radar_vert.glsl +120 -0
  155. package/es/point/shaders/simplePoint_frag.glsl +53 -0
  156. package/es/point/shaders/simplePoint_vert.glsl +79 -0
  157. package/es/point/shaders/text_frag.glsl +48 -0
  158. package/es/point/shaders/text_vert.glsl +131 -0
  159. package/es/point/shaders/tile/fill_tile_frag.glsl +83 -0
  160. package/es/point/shaders/tile/fill_tile_vert.glsl +181 -0
  161. package/es/point/shape/extrude.js +8 -3
  162. package/es/polygon/index.js +6 -5
  163. package/es/polygon/models/extrude.js +40 -31
  164. package/es/polygon/models/fill.js +19 -8
  165. package/es/polygon/models/index.js +14 -14
  166. package/es/polygon/models/ocean.js +25 -33
  167. package/es/polygon/models/tile.js +13 -7
  168. package/es/polygon/models/water.js +21 -25
  169. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  170. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  171. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  172. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  173. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  174. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  175. package/es/polygon/shaders/polygon_frag.glsl +12 -0
  176. package/es/polygon/shaders/polygon_linear_frag.glsl +22 -0
  177. package/es/polygon/shaders/polygon_linear_vert.glsl +74 -0
  178. package/es/polygon/shaders/polygon_vert.glsl +66 -0
  179. package/es/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  180. package/es/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  181. package/es/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  182. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  183. package/es/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  184. package/es/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  185. package/es/raster/buffers/triangulation.js +2 -2
  186. package/es/raster/index.js +7 -6
  187. package/es/raster/models/index.js +3 -4
  188. package/es/raster/models/raster.js +15 -25
  189. package/es/raster/raster.js +9 -13
  190. package/es/raster/shaders/raster_2d_frag.glsl +28 -0
  191. package/es/raster/shaders/raster_2d_vert.glsl +18 -0
  192. package/es/raster/shaders/raster_frag.glsl +9 -0
  193. package/es/raster/shaders/raster_vert.glsl +44 -0
  194. package/es/tile/interface.js +1 -2
  195. package/es/tile/manager/tileConfigManager.js +6 -8
  196. package/es/tile/manager/tileLayerManager.js +19 -30
  197. package/es/tile/manager/tilePickerManager.js +14 -14
  198. package/es/tile/models/tileModel.js +6 -6
  199. package/es/tile/tileFactory/base.js +26 -32
  200. package/es/tile/tileFactory/index.js +6 -7
  201. package/es/tile/tileFactory/line.js +3 -9
  202. package/es/tile/tileFactory/point.js +3 -9
  203. package/es/tile/tileFactory/polygon.js +3 -9
  204. package/es/tile/tileFactory/raster.js +4 -10
  205. package/es/tile/tileFactory/rasterData.js +5 -11
  206. package/es/tile/tileFactory/rasterDataLayer.js +4 -5
  207. package/es/tile/tileFactory/vectorLayer.js +8 -9
  208. package/es/tile/tileLayer/baseTileLayer.js +67 -39
  209. package/es/tile/tmsTileLayer.js +5 -4
  210. package/es/tile/utils.js +5 -3
  211. package/es/utils/blend.js +1 -2
  212. package/es/utils/collision-index.js +36 -21
  213. package/es/utils/dataMappingStyle.js +71 -15
  214. package/es/utils/extrude_polyline.js +90 -48
  215. package/es/utils/grid-index.js +7 -21
  216. package/es/utils/layerData.js +41 -17
  217. package/es/utils/multiPassRender.js +21 -5
  218. package/es/utils/polylineNormal.js +40 -20
  219. package/es/utils/simpleLine.js +4 -6
  220. package/es/utils/symbol-layout.js +49 -10
  221. package/es/utils/updateShape.js +6 -3
  222. package/es/wind/index.js +5 -6
  223. package/es/wind/models/index.js +2 -3
  224. package/es/wind/models/utils.js +50 -26
  225. package/es/wind/models/wind.js +15 -18
  226. package/es/wind/models/windRender.js +89 -78
  227. package/es/wind/models/windShader.d.ts +6 -6
  228. package/es/wind/models/windShader.js +12 -7
  229. package/es/wind/shaders/wind_frag.glsl +9 -0
  230. package/es/wind/shaders/wind_vert.glsl +17 -0
  231. package/lib/Geometry/index.js +77 -115
  232. package/lib/Geometry/models/billboard.js +181 -218
  233. package/lib/Geometry/models/index.js +34 -19
  234. package/lib/Geometry/models/plane.js +278 -394
  235. package/lib/Geometry/models/sprite.js +189 -294
  236. package/lib/Geometry/shaders/billboard_frag.glsl +13 -0
  237. package/lib/Geometry/shaders/billboard_vert.glsl +50 -0
  238. package/lib/Geometry/shaders/plane_frag.glsl +22 -0
  239. package/lib/Geometry/shaders/plane_vert.glsl +53 -0
  240. package/lib/Geometry/shaders/sprite_frag.glsl +21 -0
  241. package/lib/Geometry/shaders/sprite_vert.glsl +28 -0
  242. package/lib/canvas/index.js +66 -102
  243. package/lib/canvas/models/canvas.js +140 -210
  244. package/lib/canvas/models/index.js +30 -13
  245. package/lib/citybuliding/building.js +63 -99
  246. package/lib/citybuliding/models/build.js +146 -196
  247. package/lib/citybuliding/shaders/build_frag.glsl +117 -0
  248. package/lib/citybuliding/shaders/build_vert.glsl +54 -0
  249. package/lib/core/BaseLayer.js +807 -1245
  250. package/lib/core/BaseModel.js +275 -375
  251. package/lib/core/interface.js +53 -37
  252. package/lib/core/schema.js +39 -18
  253. package/lib/core/shape/Path.js +78 -60
  254. package/lib/core/shape/extrude.js +90 -127
  255. package/lib/core/triangulation.js +191 -304
  256. package/lib/earth/index.js +62 -96
  257. package/lib/earth/models/atmosphere.js +112 -139
  258. package/lib/earth/models/base.js +150 -198
  259. package/lib/earth/models/bloomsphere.js +112 -139
  260. package/lib/earth/shaders/atmosphere_frag.glsl +17 -0
  261. package/lib/earth/shaders/atmosphere_vert.glsl +26 -0
  262. package/lib/earth/shaders/base_frag.glsl +13 -0
  263. package/lib/earth/shaders/base_vert.glsl +52 -0
  264. package/lib/earth/shaders/bloomsphere_frag.glsl +15 -0
  265. package/lib/earth/shaders/bloomsphere_vert.glsl +20 -0
  266. package/lib/earth/utils.js +89 -85
  267. package/lib/heatmap/index.js +92 -148
  268. package/lib/heatmap/models/grid.js +91 -113
  269. package/lib/heatmap/models/grid3d.js +123 -145
  270. package/lib/heatmap/models/heatmap.js +338 -470
  271. package/lib/heatmap/models/hexagon.js +92 -114
  272. package/lib/heatmap/models/index.js +37 -23
  273. package/lib/heatmap/shaders/grid_vert.glsl +42 -0
  274. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  275. package/lib/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  276. package/lib/heatmap/shaders/heatmap_frag.glsl +47 -0
  277. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  278. package/lib/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  279. package/lib/heatmap/shaders/heatmap_vert.glsl +10 -0
  280. package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  281. package/lib/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  282. package/lib/heatmap/shaders/hexagon_frag.glsl +12 -0
  283. package/lib/heatmap/shaders/hexagon_vert.glsl +41 -0
  284. package/lib/heatmap/triangulation.js +46 -30
  285. package/lib/image/index.js +74 -112
  286. package/lib/image/models/dataImage.js +173 -241
  287. package/lib/image/models/image.js +123 -177
  288. package/lib/image/models/index.js +32 -16
  289. package/lib/image/shaders/dataImage_frag.glsl +38 -0
  290. package/lib/image/shaders/image_frag.glsl +9 -0
  291. package/lib/image/shaders/image_vert.glsl +17 -0
  292. package/lib/index.js +96 -193
  293. package/lib/line/index.js +83 -128
  294. package/lib/line/models/arc.js +237 -328
  295. package/lib/line/models/arc_3d.js +228 -314
  296. package/lib/line/models/earthArc_3d.js +228 -316
  297. package/lib/line/models/great_circle.js +200 -279
  298. package/lib/line/models/half.js +201 -266
  299. package/lib/line/models/index.js +50 -43
  300. package/lib/line/models/line.js +299 -394
  301. package/lib/line/models/linearline.js +203 -263
  302. package/lib/line/models/simpleLine.js +175 -225
  303. package/lib/line/models/tile.js +237 -330
  304. package/lib/line/models/wall.js +235 -310
  305. package/lib/line/shaders/arc_chunks.vert.glsl +21 -0
  306. package/lib/line/shaders/dash/arc_dash_frag.glsl +28 -0
  307. package/lib/line/shaders/dash/arc_dash_vert.glsl +148 -0
  308. package/lib/line/shaders/dash/line_dash_frag.glsl +31 -0
  309. package/lib/line/shaders/dash/line_dash_vert.glsl +93 -0
  310. package/lib/line/shaders/half/line_half_frag.glsl +53 -0
  311. package/lib/line/shaders/half/line_half_vert.glsl +169 -0
  312. package/lib/line/shaders/line_arc2d_vert.glsl +114 -0
  313. package/lib/line/shaders/line_arc_3d_frag.glsl +103 -0
  314. package/lib/line/shaders/line_arc_3d_vert.glsl +207 -0
  315. package/lib/line/shaders/line_arc_frag.glsl +89 -0
  316. package/lib/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  317. package/lib/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  318. package/lib/line/shaders/line_arc_vert.glsl +174 -0
  319. package/lib/line/shaders/line_bezier_vert.glsl +85 -0
  320. package/lib/line/shaders/line_frag.glsl +100 -0
  321. package/lib/line/shaders/line_vert.glsl +192 -0
  322. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  323. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  324. package/lib/line/shaders/linear/arc_linear_frag.glsl +38 -0
  325. package/lib/line/shaders/linear/arc_linear_vert.glsl +138 -0
  326. package/lib/line/shaders/linear/line_linear_frag.glsl +27 -0
  327. package/lib/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  328. package/lib/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  329. package/lib/line/shaders/simple/simpleline_frag.glsl +10 -0
  330. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  331. package/lib/line/shaders/simple/simpleline_vert.glsl +78 -0
  332. package/lib/line/shaders/tile/line_tile_frag.glsl +79 -0
  333. package/lib/line/shaders/tile/line_tile_vert.glsl +210 -0
  334. package/lib/line/shaders/wall_frag.glsl +93 -0
  335. package/lib/line/shaders/wall_vert.glsl +111 -0
  336. package/lib/mask/index.js +59 -93
  337. package/lib/mask/models/fill.js +82 -132
  338. package/lib/mask/models/index.js +30 -13
  339. package/lib/mask/shaders/mask_frag.glsl +7 -0
  340. package/lib/mask/shaders/mask_vert.glsl +22 -0
  341. package/lib/plugins/DataMappingPlugin.js +222 -304
  342. package/lib/plugins/DataSourcePlugin.js +87 -100
  343. package/lib/plugins/FeatureScalePlugin.js +239 -310
  344. package/lib/plugins/LayerAnimateStylePlugin.js +55 -61
  345. package/lib/plugins/LayerModelPlugin.js +72 -70
  346. package/lib/plugins/LayerStylePlugin.js +51 -44
  347. package/lib/plugins/LightingPlugin.js +68 -72
  348. package/lib/plugins/MultiPassRendererPlugin.js +65 -77
  349. package/lib/plugins/PixelPickingPlugin.js +109 -128
  350. package/lib/plugins/RegisterStyleAttributePlugin.js +110 -103
  351. package/lib/plugins/ShaderUniformPlugin.js +98 -103
  352. package/lib/plugins/UpdateModelPlugin.js +47 -36
  353. package/lib/plugins/UpdateStyleAttributePlugin.js +75 -80
  354. package/lib/point/index.js +147 -216
  355. package/lib/point/models/earthExtrude.js +201 -262
  356. package/lib/point/models/earthFill.js +202 -276
  357. package/lib/point/models/extrude.js +203 -282
  358. package/lib/point/models/fill.js +273 -369
  359. package/lib/point/models/fillmage.js +250 -327
  360. package/lib/point/models/image.js +163 -226
  361. package/lib/point/models/index.js +52 -46
  362. package/lib/point/models/normal.js +134 -176
  363. package/lib/point/models/radar.js +212 -286
  364. package/lib/point/models/simplePoint.js +142 -187
  365. package/lib/point/models/text.js +385 -559
  366. package/lib/point/models/tile.js +223 -294
  367. package/lib/point/shaders/animate/wave_frag.glsl +65 -0
  368. package/lib/point/shaders/earth/extrude_frag.glsl +44 -0
  369. package/lib/point/shaders/earth/extrude_vert.glsl +140 -0
  370. package/lib/point/shaders/earth/fill_frag.glsl +86 -0
  371. package/lib/point/shaders/earth/fill_vert.glsl +126 -0
  372. package/lib/point/shaders/extrude/extrude_frag.glsl +44 -0
  373. package/lib/point/shaders/extrude/extrude_vert.glsl +121 -0
  374. package/lib/point/shaders/fill_frag.glsl +84 -0
  375. package/lib/point/shaders/fill_vert.glsl +182 -0
  376. package/lib/point/shaders/image/fillImage_frag.glsl +20 -0
  377. package/lib/point/shaders/image/fillImage_vert.glsl +108 -0
  378. package/lib/point/shaders/image_frag.glsl +39 -0
  379. package/lib/point/shaders/image_vert.glsl +81 -0
  380. package/lib/point/shaders/normal_frag.glsl +15 -0
  381. package/lib/point/shaders/normal_vert.glsl +79 -0
  382. package/lib/point/shaders/radar/radar_frag.glsl +64 -0
  383. package/lib/point/shaders/radar/radar_vert.glsl +120 -0
  384. package/lib/point/shaders/simplePoint_frag.glsl +53 -0
  385. package/lib/point/shaders/simplePoint_vert.glsl +79 -0
  386. package/lib/point/shaders/text_frag.glsl +48 -0
  387. package/lib/point/shaders/text_vert.glsl +131 -0
  388. package/lib/point/shaders/tile/fill_tile_frag.glsl +83 -0
  389. package/lib/point/shaders/tile/fill_tile_vert.glsl +181 -0
  390. package/lib/point/shape/extrude.js +51 -51
  391. package/lib/polygon/index.js +100 -149
  392. package/lib/polygon/models/extrude.js +222 -303
  393. package/lib/polygon/models/fill.js +153 -205
  394. package/lib/polygon/models/index.js +52 -46
  395. package/lib/polygon/models/ocean.js +172 -251
  396. package/lib/polygon/models/tile.js +100 -139
  397. package/lib/polygon/models/water.js +152 -227
  398. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  399. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  400. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  401. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  402. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  403. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  404. package/lib/polygon/shaders/polygon_frag.glsl +12 -0
  405. package/lib/polygon/shaders/polygon_linear_frag.glsl +22 -0
  406. package/lib/polygon/shaders/polygon_linear_vert.glsl +74 -0
  407. package/lib/polygon/shaders/polygon_vert.glsl +66 -0
  408. package/lib/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  409. package/lib/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  410. package/lib/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  411. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  412. package/lib/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  413. package/lib/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  414. package/lib/raster/buffers/triangulation.js +39 -26
  415. package/lib/raster/index.js +73 -111
  416. package/lib/raster/models/index.js +33 -17
  417. package/lib/raster/models/raster.js +134 -187
  418. package/lib/raster/raster.js +132 -189
  419. package/lib/raster/shaders/raster_2d_frag.glsl +28 -0
  420. package/lib/raster/shaders/raster_2d_vert.glsl +18 -0
  421. package/lib/raster/shaders/raster_frag.glsl +9 -0
  422. package/lib/raster/shaders/raster_vert.glsl +44 -0
  423. package/lib/tile/interface.js +17 -2
  424. package/lib/tile/manager/tileConfigManager.js +86 -126
  425. package/lib/tile/manager/tileLayerManager.js +227 -312
  426. package/lib/tile/manager/tilePickerManager.js +123 -187
  427. package/lib/tile/models/tileModel.js +51 -70
  428. package/lib/tile/tileFactory/base.js +292 -403
  429. package/lib/tile/tileFactory/index.js +48 -51
  430. package/lib/tile/tileFactory/line.js +50 -71
  431. package/lib/tile/tileFactory/point.js +50 -71
  432. package/lib/tile/tileFactory/polygon.js +50 -71
  433. package/lib/tile/tileFactory/raster.js +54 -72
  434. package/lib/tile/tileFactory/rasterData.js +76 -94
  435. package/lib/tile/tileFactory/rasterDataLayer.js +62 -98
  436. package/lib/tile/tileFactory/vectorLayer.js +95 -148
  437. package/lib/tile/tileLayer/baseTileLayer.js +220 -380
  438. package/lib/tile/tmsTileLayer.js +67 -109
  439. package/lib/tile/utils.js +86 -101
  440. package/lib/utils/blend.js +79 -60
  441. package/lib/utils/collision-index.js +63 -83
  442. package/lib/utils/dataMappingStyle.js +59 -56
  443. package/lib/utils/extrude_polyline.js +397 -554
  444. package/lib/utils/grid-index.js +111 -168
  445. package/lib/utils/layerData.js +88 -95
  446. package/lib/utils/multiPassRender.js +38 -31
  447. package/lib/utils/polylineNormal.js +86 -118
  448. package/lib/utils/simpleLine.js +85 -101
  449. package/lib/utils/symbol-layout.js +109 -173
  450. package/lib/utils/updateShape.js +40 -11
  451. package/lib/wind/index.js +71 -110
  452. package/lib/wind/models/index.js +30 -13
  453. package/lib/wind/models/utils.js +89 -104
  454. package/lib/wind/models/wind.js +224 -332
  455. package/lib/wind/models/windRender.js +215 -293
  456. package/lib/wind/models/windShader.js +181 -17
  457. package/lib/wind/shaders/wind_frag.glsl +9 -0
  458. package/lib/wind/shaders/wind_vert.glsl +17 -0
  459. package/package.json +11 -9
  460. package/es/Geometry/index.js.map +0 -1
  461. package/es/Geometry/models/billboard.js.map +0 -1
  462. package/es/Geometry/models/index.js.map +0 -1
  463. package/es/Geometry/models/plane.js.map +0 -1
  464. package/es/Geometry/models/sprite.js.map +0 -1
  465. package/es/canvas/index.js.map +0 -1
  466. package/es/canvas/models/canvas.js.map +0 -1
  467. package/es/canvas/models/index.js.map +0 -1
  468. package/es/citybuliding/building.js.map +0 -1
  469. package/es/citybuliding/models/build.js.map +0 -1
  470. package/es/core/BaseLayer.js.map +0 -1
  471. package/es/core/BaseModel.js.map +0 -1
  472. package/es/core/interface.js.map +0 -1
  473. package/es/core/schema.js.map +0 -1
  474. package/es/core/shape/Path.js.map +0 -1
  475. package/es/core/shape/extrude.js.map +0 -1
  476. package/es/core/triangulation.js.map +0 -1
  477. package/es/earth/index.js.map +0 -1
  478. package/es/earth/models/atmosphere.js.map +0 -1
  479. package/es/earth/models/base.js.map +0 -1
  480. package/es/earth/models/bloomsphere.js.map +0 -1
  481. package/es/earth/utils.js.map +0 -1
  482. package/es/glsl.d.js +0 -2
  483. package/es/glsl.d.js.map +0 -1
  484. package/es/heatmap/index.js.map +0 -1
  485. package/es/heatmap/models/grid.js.map +0 -1
  486. package/es/heatmap/models/grid3d.js.map +0 -1
  487. package/es/heatmap/models/heatmap.js.map +0 -1
  488. package/es/heatmap/models/hexagon.js.map +0 -1
  489. package/es/heatmap/models/index.js.map +0 -1
  490. package/es/heatmap/triangulation.js.map +0 -1
  491. package/es/image/index.js.map +0 -1
  492. package/es/image/models/dataImage.js.map +0 -1
  493. package/es/image/models/image.js.map +0 -1
  494. package/es/image/models/index.js.map +0 -1
  495. package/es/index.js.map +0 -1
  496. package/es/line/index.js.map +0 -1
  497. package/es/line/models/arc.js.map +0 -1
  498. package/es/line/models/arc_3d.js.map +0 -1
  499. package/es/line/models/earthArc_3d.js.map +0 -1
  500. package/es/line/models/great_circle.js.map +0 -1
  501. package/es/line/models/half.js.map +0 -1
  502. package/es/line/models/index.js.map +0 -1
  503. package/es/line/models/line.js.map +0 -1
  504. package/es/line/models/linearline.js.map +0 -1
  505. package/es/line/models/simpleLine.js.map +0 -1
  506. package/es/line/models/tile.js.map +0 -1
  507. package/es/line/models/wall.js.map +0 -1
  508. package/es/mask/index.js.map +0 -1
  509. package/es/mask/models/fill.js.map +0 -1
  510. package/es/mask/models/index.js.map +0 -1
  511. package/es/plugins/DataMappingPlugin.js.map +0 -1
  512. package/es/plugins/DataSourcePlugin.js.map +0 -1
  513. package/es/plugins/FeatureScalePlugin.js.map +0 -1
  514. package/es/plugins/LayerAnimateStylePlugin.js.map +0 -1
  515. package/es/plugins/LayerModelPlugin.js.map +0 -1
  516. package/es/plugins/LayerStylePlugin.js.map +0 -1
  517. package/es/plugins/LightingPlugin.js.map +0 -1
  518. package/es/plugins/MultiPassRendererPlugin.js.map +0 -1
  519. package/es/plugins/PixelPickingPlugin.js.map +0 -1
  520. package/es/plugins/RegisterStyleAttributePlugin.js.map +0 -1
  521. package/es/plugins/ShaderUniformPlugin.js.map +0 -1
  522. package/es/plugins/UpdateModelPlugin.js.map +0 -1
  523. package/es/plugins/UpdateStyleAttributePlugin.js.map +0 -1
  524. package/es/point/index.js.map +0 -1
  525. package/es/point/models/earthExtrude.js.map +0 -1
  526. package/es/point/models/earthFill.js.map +0 -1
  527. package/es/point/models/extrude.js.map +0 -1
  528. package/es/point/models/fill.js.map +0 -1
  529. package/es/point/models/fillmage.js.map +0 -1
  530. package/es/point/models/image.js.map +0 -1
  531. package/es/point/models/index.js.map +0 -1
  532. package/es/point/models/normal.js.map +0 -1
  533. package/es/point/models/radar.js.map +0 -1
  534. package/es/point/models/simplePoint.js.map +0 -1
  535. package/es/point/models/text.js.map +0 -1
  536. package/es/point/models/tile.js.map +0 -1
  537. package/es/point/shape/extrude.js.map +0 -1
  538. package/es/polygon/index.js.map +0 -1
  539. package/es/polygon/models/extrude.js.map +0 -1
  540. package/es/polygon/models/fill.js.map +0 -1
  541. package/es/polygon/models/index.js.map +0 -1
  542. package/es/polygon/models/ocean.js.map +0 -1
  543. package/es/polygon/models/tile.js.map +0 -1
  544. package/es/polygon/models/water.js.map +0 -1
  545. package/es/raster/buffers/triangulation.js.map +0 -1
  546. package/es/raster/index.js.map +0 -1
  547. package/es/raster/models/index.js.map +0 -1
  548. package/es/raster/models/raster.js.map +0 -1
  549. package/es/raster/raster.js.map +0 -1
  550. package/es/tile/interface.js.map +0 -1
  551. package/es/tile/manager/tileConfigManager.js.map +0 -1
  552. package/es/tile/manager/tileLayerManager.js.map +0 -1
  553. package/es/tile/manager/tilePickerManager.js.map +0 -1
  554. package/es/tile/models/tileModel.js.map +0 -1
  555. package/es/tile/tileFactory/base.js.map +0 -1
  556. package/es/tile/tileFactory/index.js.map +0 -1
  557. package/es/tile/tileFactory/line.js.map +0 -1
  558. package/es/tile/tileFactory/point.js.map +0 -1
  559. package/es/tile/tileFactory/polygon.js.map +0 -1
  560. package/es/tile/tileFactory/raster.js.map +0 -1
  561. package/es/tile/tileFactory/rasterData.js.map +0 -1
  562. package/es/tile/tileFactory/rasterDataLayer.js.map +0 -1
  563. package/es/tile/tileFactory/vectorLayer.js.map +0 -1
  564. package/es/tile/tileLayer/baseTileLayer.js.map +0 -1
  565. package/es/tile/tmsTileLayer.js.map +0 -1
  566. package/es/tile/utils.js.map +0 -1
  567. package/es/utils/blend.js.map +0 -1
  568. package/es/utils/collision-index.js.map +0 -1
  569. package/es/utils/dataMappingStyle.js.map +0 -1
  570. package/es/utils/extrude_polyline.js.map +0 -1
  571. package/es/utils/grid-index.js.map +0 -1
  572. package/es/utils/layerData.js.map +0 -1
  573. package/es/utils/multiPassRender.js.map +0 -1
  574. package/es/utils/polylineNormal.js.map +0 -1
  575. package/es/utils/simpleLine.js.map +0 -1
  576. package/es/utils/symbol-layout.js.map +0 -1
  577. package/es/utils/updateShape.js.map +0 -1
  578. package/es/wind/index.js.map +0 -1
  579. package/es/wind/models/index.js.map +0 -1
  580. package/es/wind/models/utils.js.map +0 -1
  581. package/es/wind/models/wind.js.map +0 -1
  582. package/es/wind/models/windRender.js.map +0 -1
  583. package/es/wind/models/windShader.js.map +0 -1
  584. package/lib/Geometry/index.js.map +0 -1
  585. package/lib/Geometry/models/billboard.js.map +0 -1
  586. package/lib/Geometry/models/index.js.map +0 -1
  587. package/lib/Geometry/models/plane.js.map +0 -1
  588. package/lib/Geometry/models/sprite.js.map +0 -1
  589. package/lib/canvas/index.js.map +0 -1
  590. package/lib/canvas/models/canvas.js.map +0 -1
  591. package/lib/canvas/models/index.js.map +0 -1
  592. package/lib/citybuliding/building.js.map +0 -1
  593. package/lib/citybuliding/models/build.js.map +0 -1
  594. package/lib/core/BaseLayer.js.map +0 -1
  595. package/lib/core/BaseModel.js.map +0 -1
  596. package/lib/core/interface.js.map +0 -1
  597. package/lib/core/schema.js.map +0 -1
  598. package/lib/core/shape/Path.js.map +0 -1
  599. package/lib/core/shape/extrude.js.map +0 -1
  600. package/lib/core/triangulation.js.map +0 -1
  601. package/lib/earth/index.js.map +0 -1
  602. package/lib/earth/models/atmosphere.js.map +0 -1
  603. package/lib/earth/models/base.js.map +0 -1
  604. package/lib/earth/models/bloomsphere.js.map +0 -1
  605. package/lib/earth/utils.js.map +0 -1
  606. package/lib/glsl.d.js +0 -2
  607. package/lib/glsl.d.js.map +0 -1
  608. package/lib/heatmap/index.js.map +0 -1
  609. package/lib/heatmap/models/grid.js.map +0 -1
  610. package/lib/heatmap/models/grid3d.js.map +0 -1
  611. package/lib/heatmap/models/heatmap.js.map +0 -1
  612. package/lib/heatmap/models/hexagon.js.map +0 -1
  613. package/lib/heatmap/models/index.js.map +0 -1
  614. package/lib/heatmap/triangulation.js.map +0 -1
  615. package/lib/image/index.js.map +0 -1
  616. package/lib/image/models/dataImage.js.map +0 -1
  617. package/lib/image/models/image.js.map +0 -1
  618. package/lib/image/models/index.js.map +0 -1
  619. package/lib/index.js.map +0 -1
  620. package/lib/line/index.js.map +0 -1
  621. package/lib/line/models/arc.js.map +0 -1
  622. package/lib/line/models/arc_3d.js.map +0 -1
  623. package/lib/line/models/earthArc_3d.js.map +0 -1
  624. package/lib/line/models/great_circle.js.map +0 -1
  625. package/lib/line/models/half.js.map +0 -1
  626. package/lib/line/models/index.js.map +0 -1
  627. package/lib/line/models/line.js.map +0 -1
  628. package/lib/line/models/linearline.js.map +0 -1
  629. package/lib/line/models/simpleLine.js.map +0 -1
  630. package/lib/line/models/tile.js.map +0 -1
  631. package/lib/line/models/wall.js.map +0 -1
  632. package/lib/mask/index.js.map +0 -1
  633. package/lib/mask/models/fill.js.map +0 -1
  634. package/lib/mask/models/index.js.map +0 -1
  635. package/lib/plugins/DataMappingPlugin.js.map +0 -1
  636. package/lib/plugins/DataSourcePlugin.js.map +0 -1
  637. package/lib/plugins/FeatureScalePlugin.js.map +0 -1
  638. package/lib/plugins/LayerAnimateStylePlugin.js.map +0 -1
  639. package/lib/plugins/LayerModelPlugin.js.map +0 -1
  640. package/lib/plugins/LayerStylePlugin.js.map +0 -1
  641. package/lib/plugins/LightingPlugin.js.map +0 -1
  642. package/lib/plugins/MultiPassRendererPlugin.js.map +0 -1
  643. package/lib/plugins/PixelPickingPlugin.js.map +0 -1
  644. package/lib/plugins/RegisterStyleAttributePlugin.js.map +0 -1
  645. package/lib/plugins/ShaderUniformPlugin.js.map +0 -1
  646. package/lib/plugins/UpdateModelPlugin.js.map +0 -1
  647. package/lib/plugins/UpdateStyleAttributePlugin.js.map +0 -1
  648. package/lib/point/index.js.map +0 -1
  649. package/lib/point/models/earthExtrude.js.map +0 -1
  650. package/lib/point/models/earthFill.js.map +0 -1
  651. package/lib/point/models/extrude.js.map +0 -1
  652. package/lib/point/models/fill.js.map +0 -1
  653. package/lib/point/models/fillmage.js.map +0 -1
  654. package/lib/point/models/image.js.map +0 -1
  655. package/lib/point/models/index.js.map +0 -1
  656. package/lib/point/models/normal.js.map +0 -1
  657. package/lib/point/models/radar.js.map +0 -1
  658. package/lib/point/models/simplePoint.js.map +0 -1
  659. package/lib/point/models/text.js.map +0 -1
  660. package/lib/point/models/tile.js.map +0 -1
  661. package/lib/point/shape/extrude.js.map +0 -1
  662. package/lib/polygon/index.js.map +0 -1
  663. package/lib/polygon/models/extrude.js.map +0 -1
  664. package/lib/polygon/models/fill.js.map +0 -1
  665. package/lib/polygon/models/index.js.map +0 -1
  666. package/lib/polygon/models/ocean.js.map +0 -1
  667. package/lib/polygon/models/tile.js.map +0 -1
  668. package/lib/polygon/models/water.js.map +0 -1
  669. package/lib/raster/buffers/triangulation.js.map +0 -1
  670. package/lib/raster/index.js.map +0 -1
  671. package/lib/raster/models/index.js.map +0 -1
  672. package/lib/raster/models/raster.js.map +0 -1
  673. package/lib/raster/raster.js.map +0 -1
  674. package/lib/tile/interface.js.map +0 -1
  675. package/lib/tile/manager/tileConfigManager.js.map +0 -1
  676. package/lib/tile/manager/tileLayerManager.js.map +0 -1
  677. package/lib/tile/manager/tilePickerManager.js.map +0 -1
  678. package/lib/tile/models/tileModel.js.map +0 -1
  679. package/lib/tile/tileFactory/base.js.map +0 -1
  680. package/lib/tile/tileFactory/index.js.map +0 -1
  681. package/lib/tile/tileFactory/line.js.map +0 -1
  682. package/lib/tile/tileFactory/point.js.map +0 -1
  683. package/lib/tile/tileFactory/polygon.js.map +0 -1
  684. package/lib/tile/tileFactory/raster.js.map +0 -1
  685. package/lib/tile/tileFactory/rasterData.js.map +0 -1
  686. package/lib/tile/tileFactory/rasterDataLayer.js.map +0 -1
  687. package/lib/tile/tileFactory/vectorLayer.js.map +0 -1
  688. package/lib/tile/tileLayer/baseTileLayer.js.map +0 -1
  689. package/lib/tile/tmsTileLayer.js.map +0 -1
  690. package/lib/tile/utils.js.map +0 -1
  691. package/lib/utils/blend.js.map +0 -1
  692. package/lib/utils/collision-index.js.map +0 -1
  693. package/lib/utils/dataMappingStyle.js.map +0 -1
  694. package/lib/utils/extrude_polyline.js.map +0 -1
  695. package/lib/utils/grid-index.js.map +0 -1
  696. package/lib/utils/layerData.js.map +0 -1
  697. package/lib/utils/multiPassRender.js.map +0 -1
  698. package/lib/utils/polylineNormal.js.map +0 -1
  699. package/lib/utils/simpleLine.js.map +0 -1
  700. package/lib/utils/symbol-layout.js.map +0 -1
  701. package/lib/utils/updateShape.js.map +0 -1
  702. package/lib/wind/index.js.map +0 -1
  703. package/lib/wind/models/index.js.map +0 -1
  704. package/lib/wind/models/utils.js.map +0 -1
  705. package/lib/wind/models/wind.js.map +0 -1
  706. package/lib/wind/models/windRender.js.map +0 -1
  707. package/lib/wind/models/windShader.js.map +0 -1
@@ -1,28 +1,27 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
1
2
  import _initializerDefineProperty from "@babel/runtime/helpers/initializerDefineProperty";
2
3
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
4
  import _createClass from "@babel/runtime/helpers/createClass";
4
5
  import _applyDecoratedDescriptor from "@babel/runtime/helpers/applyDecoratedDescriptor";
5
6
  import _initializerWarningHelper from "@babel/runtime/helpers/initializerWarningHelper";
6
7
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
7
- import _uniq from "lodash/uniq";
8
- import _isString from "lodash/isString";
9
- import _isNil from "lodash/isNil";
10
8
 
11
9
  var _scaleMap, _dec, _dec2, _class, _class2, _descriptor;
12
10
 
13
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
-
15
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
-
17
11
  import { ScaleTypes, StyleScaleType, TYPES } from '@antv/l7-core';
18
12
  import { extent } from 'd3-array';
19
13
  import * as d3interpolate from 'd3-interpolate';
20
14
  import * as d3 from 'd3-scale';
21
15
  import { inject, injectable } from 'inversify';
16
+ import { isNil, isString, uniq } from 'lodash';
22
17
  import 'reflect-metadata';
23
18
  var dateRegex = /^(?:(?!0000)[0-9]{4}([-/.]+)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-/.]?)0?2\2(?:29))(\s+([01]|([01][0-9]|2[0-3])):([0-9]|[0-5][0-9]):([0-9]|[0-5][0-9]))?$/;
24
19
  var scaleMap = (_scaleMap = {}, _defineProperty(_scaleMap, ScaleTypes.LINEAR, d3.scaleLinear), _defineProperty(_scaleMap, ScaleTypes.POWER, d3.scalePow), _defineProperty(_scaleMap, ScaleTypes.LOG, d3.scaleLog), _defineProperty(_scaleMap, ScaleTypes.IDENTITY, d3.scaleIdentity), _defineProperty(_scaleMap, ScaleTypes.SEQUENTIAL, d3.scaleSequential), _defineProperty(_scaleMap, ScaleTypes.TIME, d3.scaleTime), _defineProperty(_scaleMap, ScaleTypes.QUANTILE, d3.scaleQuantile), _defineProperty(_scaleMap, ScaleTypes.QUANTIZE, d3.scaleQuantize), _defineProperty(_scaleMap, ScaleTypes.THRESHOLD, d3.scaleThreshold), _defineProperty(_scaleMap, ScaleTypes.CAT, d3.scaleOrdinal), _defineProperty(_scaleMap, ScaleTypes.DIVERGING, d3.scaleDiverging), _scaleMap);
25
- var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfigService), _dec(_class = (_class2 = function () {
20
+ /**
21
+ * 根据 Source 原始数据为指定字段创建 Scale,保存在 StyleAttribute 上,供下游插件使用
22
+ */
23
+
24
+ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfigService), _dec(_class = (_class2 = /*#__PURE__*/function () {
26
25
  function FeatureScalePlugin() {
27
26
  _classCallCheck(this, FeatureScalePlugin);
28
27
 
@@ -49,7 +48,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
49
48
  }
50
49
 
51
50
  _this.caculateScalesForAttributes(attributes || [], dataArray);
52
- });
51
+ }); // 检测数据是否需要更新
52
+
53
53
  layer.hooks.beforeRenderData.tap('FeatureScalePlugin', function () {
54
54
  _this.scaleOptions = layer.getScaleOptions();
55
55
  var attributes = styleAttributeService.getLayerStyleAttributes();
@@ -98,15 +98,17 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
98
98
  this.scaleCache = {};
99
99
  attributes.forEach(function (attribute) {
100
100
  if (attribute.scale) {
101
+ // 创建Scale
101
102
  var attributeScale = attribute.scale;
102
103
  var type = attribute.name;
103
104
  attributeScale.names = _this2.parseFields(attribute.scale.field || []);
104
- var scales = [];
105
+ var scales = []; // 为每个字段创建 Scale
106
+
105
107
  attributeScale.names.forEach(function (field) {
106
108
  var _attribute$scale;
107
109
 
108
110
  scales.push(_this2.createScale(field, attribute.name, (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.values, dataArray));
109
- });
111
+ }); // 为scales 设置值区间 Range
110
112
 
111
113
  if (scales.some(function (scale) {
112
114
  return scale.type === StyleScaleType.VARIABLE;
@@ -115,6 +117,7 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
115
117
  scales.forEach(function (scale) {
116
118
  var _scale$option;
117
119
 
120
+ // 如果设置了回调, 这不需要设置range
118
121
  if (!attributeScale.callback && attributeScale.values !== 'text') {
119
122
  switch ((_scale$option = scale.option) === null || _scale$option === void 0 ? void 0 : _scale$option.type) {
120
123
  case ScaleTypes.LOG:
@@ -131,7 +134,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
131
134
  case ScaleTypes.QUANTILE:
132
135
  case ScaleTypes.QUANTIZE:
133
136
  case ScaleTypes.THRESHOLD:
134
- scale.scale.range(attributeScale.values);
137
+ scale.scale.range(attributeScale.values); //
138
+
135
139
  break;
136
140
 
137
141
  case ScaleTypes.CAT:
@@ -140,7 +144,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
140
144
 
141
145
  case ScaleTypes.DIVERGING:
142
146
  case ScaleTypes.SEQUENTIAL:
143
- scale.scale.interpolator(d3interpolate.interpolateRgbBasis(attributeScale.values));
147
+ scale.scale.interpolator( // @ts-ignore
148
+ d3interpolate.interpolateRgbBasis(attributeScale.values));
144
149
  break;
145
150
  }
146
151
  }
@@ -152,6 +157,7 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
152
157
  }
153
158
  });
154
159
  } else {
160
+ // 设置attribute 常量值 常量直接在value取值
155
161
  attributeScale.type = StyleScaleType.CONSTANT;
156
162
  attributeScale.defaultValues = scales.map(function (scale, index) {
157
163
  return scale.scale(attributeScale.names[index]);
@@ -169,6 +175,12 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
169
175
  }
170
176
  });
171
177
  }
178
+ /**
179
+ * @example
180
+ * 'w*h' => ['w', 'h']
181
+ * 'w' => ['w']
182
+ */
183
+
172
184
  }, {
173
185
  key: "parseFields",
174
186
  value: function parseFields(field) {
@@ -176,7 +188,7 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
176
188
  return field;
177
189
  }
178
190
 
179
- if (_isString(field)) {
191
+ if (isString(field)) {
180
192
  return field.split('*');
181
193
  }
182
194
 
@@ -187,7 +199,9 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
187
199
  value: function createScale(field, name, values, data) {
188
200
  var _this$scaleOptions$na, _find;
189
201
 
190
- var scaleOption = this.scaleOptions[name] && ((_this$scaleOptions$na = this.scaleOptions[name]) === null || _this$scaleOptions$na === void 0 ? void 0 : _this$scaleOptions$na.field) === field ? this.scaleOptions[name] : this.scaleOptions[field];
202
+ // scale 支持根据视觉通道和字段
203
+ var scaleOption = this.scaleOptions[name] && ((_this$scaleOptions$na = this.scaleOptions[name]) === null || _this$scaleOptions$na === void 0 ? void 0 : _this$scaleOptions$na.field) === field ? this.scaleOptions[name] // TODO zi
204
+ : this.scaleOptions[field];
191
205
  var styleScale = {
192
206
  field: field,
193
207
  scale: undefined,
@@ -207,16 +221,18 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
207
221
  }
208
222
 
209
223
  var firstValue = (_find = data.find(function (d) {
210
- return !_isNil(d[field]);
211
- })) === null || _find === void 0 ? void 0 : _find[field];
224
+ return !isNil(d[field]);
225
+ })) === null || _find === void 0 ? void 0 : _find[field]; // 常量 Scale
212
226
 
213
- if (this.isNumber(field) || _isNil(firstValue) && !scaleOption) {
227
+ if (this.isNumber(field) || isNil(firstValue) && !scaleOption) {
214
228
  styleScale.scale = d3.scaleOrdinal([field]);
215
229
  styleScale.type = StyleScaleType.CONSTANT;
216
230
  } else {
231
+ // 根据数据类型判断 默认等分位,时间,和枚举类型
217
232
  var type = scaleOption && scaleOption.type || this.getDefaultType(firstValue);
218
233
 
219
234
  if (values === 'text') {
235
+ // text 为内置变 如果是文本则为cat
220
236
  type = ScaleTypes.CAT;
221
237
  }
222
238
 
@@ -237,7 +253,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
237
253
  }
238
254
 
239
255
  return type;
240
- }
256
+ } // 生成Scale 默认配置
257
+
241
258
  }, {
242
259
  key: "createScaleConfig",
243
260
  value: function createScaleConfig(type, field, scaleOption, data) {
@@ -251,9 +268,10 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
251
268
  if (scaleOption !== null && scaleOption !== void 0 && scaleOption.domain) {
252
269
  cfg.domain = scaleOption === null || scaleOption === void 0 ? void 0 : scaleOption.domain;
253
270
  } else if (type !== ScaleTypes.CAT && type !== ScaleTypes.QUANTILE && type !== ScaleTypes.DIVERGING) {
271
+ // linear/
254
272
  cfg.domain = extent(values);
255
273
  } else if (type === ScaleTypes.CAT) {
256
- cfg.domain = _uniq(values);
274
+ cfg.domain = uniq(values);
257
275
  } else if (type === ScaleTypes.QUANTILE) {
258
276
  cfg.domain = values;
259
277
  } else if (type === ScaleTypes.DIVERGING) {
@@ -263,7 +281,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
263
281
  }
264
282
 
265
283
  return _objectSpread(_objectSpread({}, cfg), scaleOption);
266
- }
284
+ } // 创建Scale 实例
285
+
267
286
  }, {
268
287
  key: "createDefaultScale",
269
288
  value: function createDefaultScale(_ref2) {
@@ -272,6 +291,7 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
272
291
  unknown = _ref2.unknown,
273
292
  clamp = _ref2.clamp,
274
293
  nice = _ref2.nice;
294
+ // @ts-ignore
275
295
  var scale = scaleMap[type]();
276
296
 
277
297
  if (domain && scale.domain) {
@@ -288,7 +308,8 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
288
308
 
289
309
  if (nice !== undefined && scale.nice) {
290
310
  scale.nice(nice);
291
- }
311
+ } // TODO 其他属性支持
312
+
292
313
 
293
314
  return scale;
294
315
  }
@@ -301,5 +322,4 @@ var FeatureScalePlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfi
301
322
  writable: true,
302
323
  initializer: null
303
324
  })), _class2)) || _class);
304
- export { FeatureScalePlugin as default };
305
- //# sourceMappingURL=FeatureScalePlugin.js.map
325
+ export { FeatureScalePlugin as default };
@@ -1,3 +1,4 @@
1
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
1
2
  import _initializerDefineProperty from "@babel/runtime/helpers/initializerDefineProperty";
2
3
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
3
4
  import _createClass from "@babel/runtime/helpers/createClass";
@@ -7,14 +8,10 @@ import _initializerWarningHelper from "@babel/runtime/helpers/initializerWarning
7
8
 
8
9
  var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
9
10
 
10
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
11
-
12
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
-
14
11
  import { TYPES } from '@antv/l7-core';
15
12
  import { inject, injectable } from 'inversify';
16
13
  import 'reflect-metadata';
17
- var LayerAnimateStylePlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICameraService), _dec3 = inject(TYPES.IRendererService), _dec(_class = (_class2 = function () {
14
+ var LayerAnimateStylePlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICameraService), _dec3 = inject(TYPES.IRendererService), _dec(_class = (_class2 = /*#__PURE__*/function () {
18
15
  function LayerAnimateStylePlugin() {
19
16
  _classCallCheck(this, LayerAnimateStylePlugin);
20
17
 
@@ -26,7 +23,10 @@ var LayerAnimateStylePlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICamera
26
23
  _createClass(LayerAnimateStylePlugin, [{
27
24
  key: "apply",
28
25
  value: function apply(layer) {
26
+ // layer.hooks.beforeRender.tap('LayerAnimateStylePlugin', () => {
27
+ // })
29
28
  layer.hooks.beforeRender.tap('LayerAnimateStylePlugin', function () {
29
+ // 重新计算坐标系参数
30
30
  layer.models.forEach(function (model) {
31
31
  model.addUniforms(_objectSpread({}, layer.layerModel.getAnimateUniforms()));
32
32
  });
@@ -46,5 +46,4 @@ var LayerAnimateStylePlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICamera
46
46
  writable: true,
47
47
  initializer: null
48
48
  })), _class2)) || _class);
49
- export { LayerAnimateStylePlugin as default };
50
- //# sourceMappingURL=LayerAnimateStylePlugin.js.map
49
+ export { LayerAnimateStylePlugin as default };
@@ -5,7 +5,11 @@ var _dec, _class;
5
5
 
6
6
  import { injectable } from 'inversify';
7
7
  import 'reflect-metadata';
8
- var LayerModelPlugin = (_dec = injectable(), _dec(_class = function () {
8
+ /**
9
+ * Layer Model 初始化,更新,销毁
10
+ */
11
+
12
+ var LayerModelPlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function () {
9
13
  function LayerModelPlugin() {
10
14
  _classCallCheck(this, LayerModelPlugin);
11
15
  }
@@ -13,17 +17,23 @@ var LayerModelPlugin = (_dec = injectable(), _dec(_class = function () {
13
17
  _createClass(LayerModelPlugin, [{
14
18
  key: "initLayerModel",
15
19
  value: function initLayerModel(layer) {
16
- layer.prepareBuildModel();
17
- layer.buildModels();
20
+ // 更新Model 配置项
21
+ layer.prepareBuildModel(); // 初始化 Model
22
+
23
+ layer.buildModels(); // emit layer model loaded
24
+
18
25
  layer.emit('modelLoaded', null);
19
26
  layer.styleNeedUpdate = false;
20
27
  }
21
28
  }, {
22
29
  key: "prepareLayerModel",
23
30
  value: function prepareLayerModel(layer) {
31
+ // 更新Model 配置项
24
32
  layer.prepareBuildModel();
25
- layer.clearModels();
26
- layer.buildModels();
33
+ layer.clearModels(); // 初始化 Model
34
+
35
+ layer.buildModels(); // emit layer model loaded
36
+
27
37
  layer.emit('modelLoaded', null);
28
38
  layer.layerModelNeedUpdate = false;
29
39
  }
@@ -58,5 +68,4 @@ var LayerModelPlugin = (_dec = injectable(), _dec(_class = function () {
58
68
 
59
69
  return LayerModelPlugin;
60
70
  }()) || _class);
61
- export { LayerModelPlugin as default };
62
- //# sourceMappingURL=LayerModelPlugin.js.map
71
+ export { LayerModelPlugin as default };
@@ -5,7 +5,11 @@ var _dec, _class;
5
5
 
6
6
  import { injectable } from 'inversify';
7
7
  import 'reflect-metadata';
8
- var LayerStylePlugin = (_dec = injectable(), _dec(_class = function () {
8
+ /**
9
+ * 更新图层样式,初始图层相关配置
10
+ */
11
+
12
+ var LayerStylePlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function () {
9
13
  function LayerStylePlugin() {
10
14
  _classCallCheck(this, LayerStylePlugin);
11
15
  }
@@ -14,6 +18,7 @@ var LayerStylePlugin = (_dec = injectable(), _dec(_class = function () {
14
18
  key: "apply",
15
19
  value: function apply(layer) {
16
20
  layer.hooks.afterInit.tap('LayerStylePlugin', function () {
21
+ // 更新图层默认状态
17
22
  layer.updateLayerConfig({});
18
23
 
19
24
  var _layer$getLayerConfig = layer.getLayerConfig(),
@@ -31,5 +36,4 @@ var LayerStylePlugin = (_dec = injectable(), _dec(_class = function () {
31
36
 
32
37
  return LayerStylePlugin;
33
38
  }()) || _class);
34
- export { LayerStylePlugin as default };
35
- //# sourceMappingURL=LayerStylePlugin.js.map
39
+ export { LayerStylePlugin as default };
@@ -1,16 +1,11 @@
1
1
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
2
  import _createClass from "@babel/runtime/helpers/createClass";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
5
5
 
6
6
  var _dec, _class;
7
7
 
8
8
  var _excluded = ["type"];
9
-
10
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
11
-
12
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
13
-
14
9
  import { injectable } from 'inversify';
15
10
  import 'reflect-metadata';
16
11
  var lightTypeUniformMap = {
@@ -68,14 +63,26 @@ export function generateLightingUniforms(lights) {
68
63
  rest = _objectWithoutProperties(_ref, _excluded);
69
64
 
70
65
  var lightsUniformName = lightTypeUniformMap[type].lights;
71
- var lightsNumUniformName = lightTypeUniformMap[type].num;
72
- var num = lightsMap[lightsNumUniformName];
73
- lightsMap[lightsUniformName][num] = _objectSpread(_objectSpread({}, lightsMap[lightsUniformName][num]), rest);
66
+ var lightsNumUniformName = lightTypeUniformMap[type].num; // Object.keys(rest).forEach(key => {
67
+ // if (Util.isString(rest[key]) && COLOR_ATTRIBUTES.indexOf(key) > -1) {
68
+ // rest[key] = ColorUtil.color2RGBA(rest[key]).slice(0, 3);
69
+ // }
70
+ // });
71
+ // @ts-ignore
72
+
73
+ var num = lightsMap[lightsNumUniformName]; // @ts-ignore
74
+
75
+ lightsMap[lightsUniformName][num] = _objectSpread(_objectSpread({}, lightsMap[lightsUniformName][num]), rest); // @ts-ignore
76
+
74
77
  lightsMap[lightsNumUniformName]++;
75
78
  });
76
79
  return lightsMap;
77
80
  }
78
- var LightingPlugin = (_dec = injectable(), _dec(_class = function () {
81
+ /**
82
+ * 光照 & Shadow
83
+ */
84
+
85
+ var LightingPlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function () {
79
86
  function LightingPlugin() {
80
87
  _classCallCheck(this, LightingPlugin);
81
88
  }
@@ -89,7 +96,9 @@ var LightingPlugin = (_dec = injectable(), _dec(_class = function () {
89
96
 
90
97
  if (enableLighting) {
91
98
  layer.models.forEach(function (model) {
92
- return model.addUniforms(_objectSpread({}, generateLightingUniforms()));
99
+ return (// @ts-ignore
100
+ model.addUniforms(_objectSpread({}, generateLightingUniforms()))
101
+ );
93
102
  });
94
103
  }
95
104
  });
@@ -98,5 +107,4 @@ var LightingPlugin = (_dec = injectable(), _dec(_class = function () {
98
107
 
99
108
  return LightingPlugin;
100
109
  }()) || _class);
101
- export { LightingPlugin as default };
102
- //# sourceMappingURL=LightingPlugin.js.map
110
+ export { LightingPlugin as default };
@@ -10,14 +10,26 @@ var _dec, _dec2, _class, _class2, _descriptor;
10
10
  import { TYPES } from '@antv/l7-core';
11
11
  import { inject, injectable } from 'inversify';
12
12
  import 'reflect-metadata';
13
- import { createMultiPassRenderer } from '../utils/multiPassRender';
14
- var MultiPassRendererPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfigService), _dec(_class = (_class2 = function () {
13
+ import { createMultiPassRenderer } from "../utils/multiPassRender";
14
+ /**
15
+ * 自定义渲染管线:
16
+ * ClearPass -> PixelPickingPass(可选) -> RenderPass/TAAPass -> PostProcessing -> CopyPass
17
+ * 根据 Layer 配置的 passes 创建 PostProcessing
18
+ * @example
19
+ * new PolygonLayer({
20
+ * enableMultiPassRenderer: true,
21
+ * passes: [
22
+ * 'blurH',
23
+ * ['blurV', { radius: 10 }],
24
+ * ],
25
+ * })
26
+ */
27
+
28
+ var MultiPassRendererPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobalConfigService), _dec(_class = (_class2 = /*#__PURE__*/function () {
15
29
  function MultiPassRendererPlugin() {
16
30
  _classCallCheck(this, MultiPassRendererPlugin);
17
31
 
18
32
  _initializerDefineProperty(this, "configService", _descriptor, this);
19
-
20
- _defineProperty(this, "enabled", void 0);
21
33
  }
22
34
 
23
35
  _createClass(MultiPassRendererPlugin, [{
@@ -32,9 +44,10 @@ var MultiPassRendererPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobal
32
44
  var _layer$getLayerConfig = layer.getLayerConfig(),
33
45
  enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer,
34
46
  _layer$getLayerConfig2 = _layer$getLayerConfig.passes,
35
- passes = _layer$getLayerConfig2 === void 0 ? [] : _layer$getLayerConfig2;
47
+ passes = _layer$getLayerConfig2 === void 0 ? [] : _layer$getLayerConfig2; // SceneConfig 的 enableMultiPassRenderer 配置项可以统一关闭
48
+
36
49
 
37
- _this.enabled = !!enableMultiPassRenderer && layer.getLayerConfig().enableMultiPassRenderer !== false;
50
+ _this.enabled = !!enableMultiPassRenderer && layer.getLayerConfig().enableMultiPassRenderer !== false; // 根据 LayerConfig passes 配置项初始化
38
51
 
39
52
  if (_this.enabled) {
40
53
  layer.multiPassRenderer = createMultiPassRenderer(layer, passes, postProcessingPassFactory, normalPassFactory);
@@ -43,6 +56,7 @@ var MultiPassRendererPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobal
43
56
  });
44
57
  layer.hooks.beforeRender.tap('MultiPassRendererPlugin', function () {
45
58
  if (_this.enabled) {
59
+ // 渲染前根据 viewport 调整 FBO size
46
60
  var _rendererService$getV = rendererService.getViewportSize(),
47
61
  width = _rendererService$getV.width,
48
62
  height = _rendererService$getV.height;
@@ -60,5 +74,4 @@ var MultiPassRendererPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IGlobal
60
74
  writable: true,
61
75
  initializer: null
62
76
  })), _class2)) || _class);
63
- export { MultiPassRendererPlugin as default };
64
- //# sourceMappingURL=MultiPassRendererPlugin.js.map
77
+ export { MultiPassRendererPlugin as default };
@@ -12,7 +12,7 @@ var PickingStage = {
12
12
  ENCODE: 1.0,
13
13
  HIGHLIGHT: 2.0
14
14
  };
15
- var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
15
+ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function () {
16
16
  function PixelPickingPlugin() {
17
17
  _classCallCheck(this, PixelPickingPlugin);
18
18
  }
@@ -22,10 +22,12 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
22
22
  value: function apply(layer, _ref) {
23
23
  var rendererService = _ref.rendererService,
24
24
  styleAttributeService = _ref.styleAttributeService;
25
+ // TODO: 由于 Shader 目前无法根据是否开启拾取进行内容修改,因此即使不开启也需要生成 a_PickingColor
25
26
  layer.hooks.init.tap('PixelPickingPlugin', function () {
26
27
  var _layer$getLayerConfig = layer.getLayerConfig(),
27
28
  enablePicking = _layer$getLayerConfig.enablePicking,
28
- enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer;
29
+ enableMultiPassRenderer = _layer$getLayerConfig.enableMultiPassRenderer; // const enablePicking = true;
30
+
29
31
 
30
32
  styleAttributeService.registerStyleAttribute({
31
33
  name: 'pickingColor',
@@ -37,13 +39,17 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
37
39
  type: gl.FLOAT
38
40
  },
39
41
  size: 3,
42
+ // TODO: 固定 feature range 范围内的 pickingColor 都是固定的,可以生成 cache
40
43
  update: function update(feature, featureIdx) {
44
+ // 只有开启拾取才需要 encode
41
45
  var id = feature.id;
42
46
  return enablePicking ? encodePickingColor(id) : [0, 0, 0];
43
47
  }
44
48
  }
45
49
  });
46
- });
50
+ }); // 必须要与 PixelPickingPass 结合使用,因此必须开启 multiPassRenderer
51
+ // if (layer.multiPassRenderer) {
52
+
47
53
  layer.hooks.beforePickingEncode.tap('PixelPickingPlugin', function () {
48
54
  var _layer$getLayerConfig2 = layer.getLayerConfig(),
49
55
  enablePicking = _layer$getLayerConfig2.enablePicking;
@@ -58,7 +64,8 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
58
64
  });
59
65
  layer.hooks.afterPickingEncode.tap('PixelPickingPlugin', function () {
60
66
  var _layer$getLayerConfig3 = layer.getLayerConfig(),
61
- enablePicking = _layer$getLayerConfig3.enablePicking;
67
+ enablePicking = _layer$getLayerConfig3.enablePicking; // 区分选中高亮 和滑过高亮
68
+
62
69
 
63
70
  if (enablePicking && layer.isVisible()) {
64
71
  layer.models.forEach(function (model) {
@@ -72,12 +79,23 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
72
79
  var _layer$getLayerConfig4 = layer.getLayerConfig(),
73
80
  highlightColor = _layer$getLayerConfig4.highlightColor,
74
81
  _layer$getLayerConfig5 = _layer$getLayerConfig4.activeMix,
75
- activeMix = _layer$getLayerConfig5 === void 0 ? 0 : _layer$getLayerConfig5;
82
+ activeMix = _layer$getLayerConfig5 === void 0 ? 0 : _layer$getLayerConfig5; // const {
83
+ // highlightColor,
84
+ // activeMix = 0,
85
+ // enableSelect,
86
+ // } = layer.getLayerConfig();
87
+
88
+
89
+ var highlightColorInArray = typeof highlightColor === 'string' ? rgb2arr(highlightColor) : highlightColor || [1, 0, 0, 1]; // const { selectColor } = layer.getLayerConfig();
90
+ // const selectColorInArray =
91
+ // typeof selectColor === 'string'
92
+ // ? rgb2arr(selectColor)
93
+ // : selectColor || [1, 0, 0, 1];
76
94
 
77
- var highlightColorInArray = typeof highlightColor === 'string' ? rgb2arr(highlightColor) : highlightColor || [1, 0, 0, 1];
78
95
  layer.updateLayerConfig({
79
96
  pickedFeatureID: decodePickingColor(new Uint8Array(pickedColor))
80
- });
97
+ }); // const currentSelectedId = layer.getCurrentSelectedId();
98
+
81
99
  layer.models.forEach(function (model) {
82
100
  return model.addUniforms({
83
101
  u_PickingStage: PickingStage.HIGHLIGHT,
@@ -85,7 +103,12 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
85
103
  u_HighlightColor: highlightColorInArray.map(function (c) {
86
104
  return c * 255;
87
105
  }),
88
- u_activeMix: activeMix
106
+ u_activeMix: activeMix // u_CurrentSelectedId: currentSelectedId
107
+ // ? encodePickingColor(layer.getCurrentSelectedId()!)
108
+ // : [0, 0, 0],
109
+ // u_SelectColor: selectColorInArray.map((c) => c * 255),
110
+ // u_EnableSelect: +(enableSelect || false),
111
+
89
112
  });
90
113
  });
91
114
  });
@@ -114,11 +137,10 @@ var PixelPickingPlugin = (_dec = injectable(), _dec(_class = function () {
114
137
  u_EnableSelect: 1
115
138
  });
116
139
  });
117
- });
140
+ }); // }
118
141
  }
119
142
  }]);
120
143
 
121
144
  return PixelPickingPlugin;
122
145
  }()) || _class);
123
- export { PixelPickingPlugin as default };
124
- //# sourceMappingURL=PixelPickingPlugin.js.map
146
+ export { PixelPickingPlugin as default };
@@ -6,7 +6,11 @@ var _dec, _class;
6
6
  import { AttributeType, gl } from '@antv/l7-core';
7
7
  import { injectable } from 'inversify';
8
8
  import 'reflect-metadata';
9
- var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = function () {
9
+ /**
10
+ * 在初始化阶段完成属性的注册,以及首次根据 Layer 指定的三角化方法完成 indices 和 attribute 的创建
11
+ */
12
+
13
+ var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function () {
10
14
  function RegisterStyleAttributePlugin() {
11
15
  _classCallCheck(this, RegisterStyleAttributePlugin);
12
16
  }
@@ -45,6 +49,7 @@ var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = function
45
49
  descriptor: {
46
50
  name: 'filter',
47
51
  buffer: {
52
+ // give the WebGL driver a hint that this buffer may change
48
53
  usage: gl.DYNAMIC_DRAW,
49
54
  data: [],
50
55
  type: gl.FLOAT
@@ -62,6 +67,7 @@ var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = function
62
67
  descriptor: {
63
68
  name: 'a_Color',
64
69
  buffer: {
70
+ // give the WebGL driver a hint that this buffer may change
65
71
  usage: gl.DYNAMIC_DRAW,
66
72
  data: [],
67
73
  type: gl.FLOAT
@@ -74,11 +80,13 @@ var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = function
74
80
  }
75
81
  });
76
82
  styleAttributeService.registerStyleAttribute({
83
+ // 统一注册每个顶点的唯一编号(目前用于样式的数据映射计算使用)
77
84
  name: 'vertexId',
78
85
  type: AttributeType.Attribute,
79
86
  descriptor: {
80
87
  name: 'a_vertexId',
81
88
  buffer: {
89
+ // give the WebGL driver a hint that this buffer may change
82
90
  usage: gl.DYNAMIC_DRAW,
83
91
  data: [],
84
92
  type: gl.FLOAT
@@ -94,5 +102,4 @@ var RegisterStyleAttributePlugin = (_dec = injectable(), _dec(_class = function
94
102
 
95
103
  return RegisterStyleAttributePlugin;
96
104
  }()) || _class);
97
- export { RegisterStyleAttributePlugin as default };
98
- //# sourceMappingURL=RegisterStyleAttributePlugin.js.map
105
+ export { RegisterStyleAttributePlugin as default };