@antv/l7-layers 2.20.3 → 2.20.6

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 (450) hide show
  1. package/es/canvas/index.d.ts +3 -3
  2. package/es/citybuliding/models/build.d.ts +7 -12
  3. package/es/citybuliding/models/build.js +22 -11
  4. package/es/citybuliding/shaders/build_frag.glsl +26 -23
  5. package/es/citybuliding/shaders/build_vert.glsl +24 -16
  6. package/es/core/BaseLayer.d.ts +14 -2
  7. package/es/core/BaseLayer.js +56 -10
  8. package/es/core/BaseModel.d.ts +21 -1
  9. package/es/core/BaseModel.js +99 -2
  10. package/es/core/CommonStyleAttribute.d.ts +5 -2
  11. package/es/core/CommonStyleAttribute.js +4 -0
  12. package/es/core/LayerPickService.d.ts +1 -1
  13. package/es/core/TextureService.d.ts +2 -2
  14. package/es/core/interface.d.ts +7 -3
  15. package/es/core/interface.js +0 -1
  16. package/es/core/line_trangluation.d.ts +1 -1
  17. package/es/core/shape/arrow.d.ts +1 -1
  18. package/es/core/shape/extrude.d.ts +1 -1
  19. package/es/core/triangulation.d.ts +1 -1
  20. package/es/core/triangulation.js +13 -7
  21. package/es/core/utils.d.ts +4 -0
  22. package/es/core/utils.js +15 -0
  23. package/es/earth/index.d.ts +1 -1
  24. package/es/earth/models/atmosphere.d.ts +8 -2
  25. package/es/earth/models/atmosphere.js +15 -8
  26. package/es/earth/models/base.d.ts +8 -2
  27. package/es/earth/models/base.js +21 -12
  28. package/es/earth/models/bloomsphere.d.ts +8 -2
  29. package/es/earth/models/bloomsphere.js +15 -8
  30. package/es/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  31. package/es/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  32. package/es/earth/shaders/base/base_frag.glsl +11 -0
  33. package/es/earth/shaders/base/base_vert.glsl +52 -0
  34. package/es/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  35. package/es/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  36. package/es/geometry/index.d.ts +2 -2
  37. package/es/geometry/models/billboard.d.ts +8 -1
  38. package/es/geometry/models/billboard.js +26 -11
  39. package/es/geometry/models/plane.d.ts +8 -1
  40. package/es/geometry/models/plane.js +23 -6
  41. package/es/geometry/models/sprite.d.ts +12 -2
  42. package/es/geometry/models/sprite.js +44 -18
  43. package/es/geometry/shaders/billboard_frag.glsl +11 -6
  44. package/es/geometry/shaders/billboard_vert.glsl +12 -15
  45. package/es/geometry/shaders/plane_frag.glsl +14 -10
  46. package/es/geometry/shaders/plane_vert.glsl +11 -10
  47. package/es/geometry/shaders/sprite_frag.glsl +11 -7
  48. package/es/geometry/shaders/sprite_vert.glsl +10 -9
  49. package/es/heatmap/index.d.ts +3 -3
  50. package/es/heatmap/models/grid.d.ts +8 -1
  51. package/es/heatmap/models/grid.js +25 -12
  52. package/es/heatmap/models/grid3d.d.ts +8 -1
  53. package/es/heatmap/models/grid3d.js +29 -13
  54. package/es/heatmap/models/heatmap.d.ts +6 -4
  55. package/es/heatmap/models/heatmap.js +123 -75
  56. package/es/heatmap/models/hexagon.d.ts +8 -1
  57. package/es/heatmap/models/hexagon.js +25 -12
  58. package/es/heatmap/shaders/grid/grid_frag.glsl +8 -0
  59. package/es/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  60. package/es/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  61. package/{lib/heatmap/shaders/hexagon_3d_vert.glsl → es/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  62. package/es/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  63. package/es/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  64. package/es/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  65. package/es/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  66. package/{lib/heatmap/shaders → es/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  67. package/es/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  68. package/es/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  69. package/es/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  70. package/es/image/index.d.ts +2 -2
  71. package/es/image/models/image.d.ts +9 -2
  72. package/es/image/models/image.js +83 -44
  73. package/es/image/shaders/image_frag.glsl +34 -7
  74. package/es/image/shaders/image_vert.glsl +11 -5
  75. package/es/line/index.d.ts +4 -4
  76. package/es/line/index.js +2 -1
  77. package/es/line/models/arc.d.ts +8 -3
  78. package/es/line/models/arc.js +57 -76
  79. package/es/line/models/arc_3d.d.ts +8 -3
  80. package/es/line/models/arc_3d.js +46 -57
  81. package/es/line/models/flow.d.ts +8 -2
  82. package/es/line/models/flow.js +14 -12
  83. package/es/line/models/great_circle.d.ts +8 -3
  84. package/es/line/models/great_circle.js +51 -36
  85. package/es/line/models/index.d.ts +1 -1
  86. package/es/line/models/index.js +3 -6
  87. package/es/line/models/line.d.ts +8 -3
  88. package/es/line/models/line.js +67 -140
  89. package/es/line/models/{simpleLine.d.ts → simple_line.d.ts} +8 -2
  90. package/es/line/models/simple_line.js +204 -0
  91. package/es/line/models/wall.d.ts +8 -3
  92. package/es/line/models/wall.js +35 -27
  93. package/es/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  94. package/es/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  95. package/es/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  96. package/{lib/line/shaders → es/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  97. package/es/line/shaders/flow/flow_line_frag.glsl +5 -4
  98. package/es/line/shaders/flow/flow_line_vert.glsl +17 -18
  99. package/es/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  100. package/{lib/line/shaders → es/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  101. package/es/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  102. package/es/line/shaders/line/line_vert.glsl +114 -0
  103. package/es/line/shaders/simple/simpleline_frag.glsl +27 -3
  104. package/es/line/shaders/simple/simpleline_vert.glsl +20 -20
  105. package/es/line/shaders/wall/wall_frag.glsl +31 -26
  106. package/es/line/shaders/wall/wall_vert.glsl +29 -22
  107. package/es/mask/index.d.ts +2 -2
  108. package/es/mask/models/fill.d.ts +1 -1
  109. package/es/plugins/DataMappingPlugin.d.ts +1 -1
  110. package/es/plugins/DataMappingPlugin.js +1 -3
  111. package/es/plugins/DataSourcePlugin.d.ts +1 -1
  112. package/es/plugins/FeatureScalePlugin.d.ts +1 -1
  113. package/es/plugins/FeatureScalePlugin.js +14 -3
  114. package/es/plugins/LayerAnimateStylePlugin.d.ts +1 -1
  115. package/es/plugins/LayerMaskPlugin.d.ts +1 -1
  116. package/es/plugins/LayerModelPlugin.d.ts +1 -1
  117. package/es/plugins/LayerStylePlugin.d.ts +1 -1
  118. package/es/plugins/LightingPlugin.d.ts +1 -1
  119. package/es/plugins/MultiPassRendererPlugin.d.ts +1 -1
  120. package/es/plugins/PixelPickingPlugin.d.ts +6 -2
  121. package/es/plugins/PixelPickingPlugin.js +36 -49
  122. package/es/plugins/RegisterStyleAttributePlugin.d.ts +1 -1
  123. package/es/plugins/ShaderUniformPlugin.d.ts +1 -1
  124. package/es/plugins/ShaderUniformPlugin.js +11 -6
  125. package/es/plugins/UpdateModelPlugin.d.ts +1 -1
  126. package/es/plugins/UpdateStyleAttributePlugin.d.ts +1 -1
  127. package/es/point/index.d.ts +2 -2
  128. package/es/point/index.js +1 -0
  129. package/es/point/models/billboard_point.d.ts +9 -3
  130. package/es/point/models/billboard_point.js +18 -18
  131. package/es/point/models/earthExtrude.d.ts +7 -12
  132. package/es/point/models/earthExtrude.js +21 -13
  133. package/es/point/models/earthFill.d.ts +8 -3
  134. package/es/point/models/earthFill.js +18 -30
  135. package/es/point/models/extrude.d.ts +7 -12
  136. package/es/point/models/extrude.js +18 -13
  137. package/es/point/models/fill.d.ts +8 -2
  138. package/es/point/models/fill.js +33 -84
  139. package/es/point/models/{fillmage.d.ts → fillImage.d.ts} +8 -2
  140. package/es/point/models/{fillmage.js → fillImage.js} +23 -15
  141. package/es/point/models/image.d.ts +8 -1
  142. package/es/point/models/image.js +31 -21
  143. package/es/point/models/index.js +1 -1
  144. package/es/point/models/normal.d.ts +9 -3
  145. package/es/point/models/normal.js +13 -30
  146. package/es/point/models/radar.d.ts +8 -2
  147. package/es/point/models/radar.js +23 -45
  148. package/es/point/models/text.d.ts +9 -2
  149. package/es/point/models/text.js +31 -32
  150. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  151. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  152. package/es/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  153. package/{lib/point/shaders/earth/extrude_vert.glsl → es/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  154. package/{lib/point/shaders/earth/fill_frag.glsl → es/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  155. package/{lib/point/shaders/earth/fill_vert.glsl → es/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  156. package/es/point/shaders/extrude/extrude_frag.glsl +19 -7
  157. package/es/point/shaders/extrude/extrude_vert.glsl +23 -30
  158. package/{lib/point/shaders → es/point/shaders/fill}/fill_frag.glsl +18 -1
  159. package/es/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  160. package/es/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  161. package/{lib/point/shaders/image → es/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  162. package/es/point/shaders/image/image_frag.glsl +42 -0
  163. package/{lib/point/shaders → es/point/shaders/image}/image_vert.glsl +14 -13
  164. package/es/point/shaders/radar/radar_frag.glsl +19 -14
  165. package/es/point/shaders/radar/radar_vert.glsl +21 -24
  166. package/es/point/shaders/text/text_frag.glsl +44 -0
  167. package/es/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  168. package/es/point/shape/extrude.d.ts +1 -1
  169. package/es/polygon/index.d.ts +2 -2
  170. package/es/polygon/models/extrude.d.ts +9 -9
  171. package/es/polygon/models/extrude.js +38 -15
  172. package/es/polygon/models/extrusion.d.ts +8 -1
  173. package/es/polygon/models/extrusion.js +24 -7
  174. package/es/polygon/models/fill.d.ts +9 -4
  175. package/es/polygon/models/fill.js +26 -13
  176. package/es/polygon/models/ocean.d.ts +9 -7
  177. package/es/polygon/models/ocean.js +30 -14
  178. package/es/polygon/models/water.d.ts +9 -4
  179. package/es/polygon/models/water.js +26 -10
  180. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  181. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  182. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  183. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  184. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  185. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  186. package/es/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  187. package/es/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  188. package/es/polygon/shaders/fill/fill_frag.glsl +7 -0
  189. package/es/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  190. package/{lib/polygon/shaders/polygon_linear_vert.glsl → es/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  191. package/es/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  192. package/es/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  193. package/es/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  194. package/es/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  195. package/es/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  196. package/es/raster/buffers/triangulation.d.ts +1 -1
  197. package/es/raster/index.d.ts +2 -2
  198. package/es/raster/models/raster.d.ts +9 -8
  199. package/es/raster/models/raster.js +54 -38
  200. package/es/raster/models/rasterRgb.d.ts +9 -7
  201. package/es/raster/models/rasterRgb.js +36 -19
  202. package/es/raster/models/rasterTerrainRgb.d.ts +1 -1
  203. package/es/raster/models/rasterTerrainRgb.js +2 -2
  204. package/es/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  205. package/es/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  206. package/es/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  207. package/es/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  208. package/es/tile/core/BaseLayer.d.ts +2 -2
  209. package/es/tile/core/TileDebugLayer.d.ts +1 -1
  210. package/es/tile/interaction/getRasterData.d.ts +2 -2
  211. package/es/tile/interaction/utils.d.ts +1 -1
  212. package/es/tile/interface.d.ts +2 -2
  213. package/es/tile/service/TileLayerService.d.ts +2 -2
  214. package/es/tile/service/TilePickService.d.ts +2 -2
  215. package/es/tile/service/TileSourceService.d.ts +1 -1
  216. package/es/tile/tile/Tile.d.ts +2 -3
  217. package/es/tile/tile/VectorTile.d.ts +1 -1
  218. package/es/tile/tile/index.d.ts +1 -1
  219. package/es/tile/utils/constants.js +1 -1
  220. package/es/tile/utils/utils.d.ts +1 -1
  221. package/es/utils/blend.d.ts +1 -1
  222. package/es/utils/multiPassRender.d.ts +1 -1
  223. package/es/utils/stencil.d.ts +1 -1
  224. package/es/wind/index.d.ts +3 -3
  225. package/es/wind/models/wind.d.ts +1 -1
  226. package/lib/citybuliding/models/build.js +22 -11
  227. package/lib/citybuliding/shaders/build_frag.glsl +26 -23
  228. package/lib/citybuliding/shaders/build_vert.glsl +24 -16
  229. package/lib/core/BaseLayer.js +56 -10
  230. package/lib/core/BaseModel.js +99 -2
  231. package/lib/core/CommonStyleAttribute.js +4 -0
  232. package/lib/core/triangulation.js +12 -6
  233. package/lib/core/utils.js +22 -0
  234. package/lib/earth/models/atmosphere.js +15 -8
  235. package/lib/earth/models/base.js +21 -12
  236. package/lib/earth/models/bloomsphere.js +15 -8
  237. package/lib/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  238. package/lib/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  239. package/lib/earth/shaders/base/base_frag.glsl +11 -0
  240. package/lib/earth/shaders/base/base_vert.glsl +52 -0
  241. package/lib/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  242. package/lib/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  243. package/lib/geometry/models/billboard.js +26 -11
  244. package/lib/geometry/models/plane.js +23 -6
  245. package/lib/geometry/models/sprite.js +44 -18
  246. package/lib/geometry/shaders/billboard_frag.glsl +11 -6
  247. package/lib/geometry/shaders/billboard_vert.glsl +12 -15
  248. package/lib/geometry/shaders/plane_frag.glsl +14 -10
  249. package/lib/geometry/shaders/plane_vert.glsl +11 -10
  250. package/lib/geometry/shaders/sprite_frag.glsl +11 -7
  251. package/lib/geometry/shaders/sprite_vert.glsl +10 -9
  252. package/lib/heatmap/models/grid.js +25 -12
  253. package/lib/heatmap/models/grid3d.js +29 -13
  254. package/lib/heatmap/models/heatmap.js +122 -74
  255. package/lib/heatmap/models/hexagon.js +25 -12
  256. package/lib/heatmap/shaders/grid/grid_frag.glsl +8 -0
  257. package/lib/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  258. package/lib/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  259. package/{es/heatmap/shaders/hexagon_3d_vert.glsl → lib/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  260. package/lib/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  261. package/lib/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  262. package/lib/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  263. package/lib/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  264. package/{es/heatmap/shaders → lib/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  265. package/lib/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  266. package/lib/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  267. package/lib/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  268. package/lib/image/models/image.js +83 -44
  269. package/lib/image/shaders/image_frag.glsl +34 -7
  270. package/lib/image/shaders/image_vert.glsl +11 -5
  271. package/lib/line/index.js +2 -1
  272. package/lib/line/models/arc.js +57 -76
  273. package/lib/line/models/arc_3d.js +47 -59
  274. package/lib/line/models/flow.js +14 -12
  275. package/lib/line/models/great_circle.js +51 -36
  276. package/lib/line/models/index.js +4 -7
  277. package/lib/line/models/line.js +67 -142
  278. package/lib/line/models/{simpleLine.js → simple_line.js} +84 -74
  279. package/lib/line/models/wall.js +35 -27
  280. package/lib/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  281. package/lib/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  282. package/lib/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  283. package/{es/line/shaders → lib/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  284. package/lib/line/shaders/flow/flow_line_frag.glsl +5 -4
  285. package/lib/line/shaders/flow/flow_line_vert.glsl +17 -18
  286. package/lib/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  287. package/{es/line/shaders → lib/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  288. package/lib/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  289. package/lib/line/shaders/line/line_vert.glsl +114 -0
  290. package/lib/line/shaders/simple/simpleline_frag.glsl +27 -3
  291. package/lib/line/shaders/simple/simpleline_vert.glsl +20 -20
  292. package/lib/line/shaders/wall/wall_frag.glsl +31 -26
  293. package/lib/line/shaders/wall/wall_vert.glsl +29 -22
  294. package/lib/plugins/DataMappingPlugin.js +1 -3
  295. package/lib/plugins/FeatureScalePlugin.js +14 -3
  296. package/lib/plugins/PixelPickingPlugin.js +35 -48
  297. package/lib/plugins/ShaderUniformPlugin.js +11 -6
  298. package/lib/point/index.js +1 -0
  299. package/lib/point/models/billboard_point.js +18 -18
  300. package/lib/point/models/earthExtrude.js +21 -13
  301. package/lib/point/models/earthFill.js +18 -30
  302. package/lib/point/models/extrude.js +18 -13
  303. package/lib/point/models/fill.js +33 -84
  304. package/lib/point/models/{fillmage.js → fillImage.js} +24 -17
  305. package/lib/point/models/image.js +31 -21
  306. package/lib/point/models/index.js +2 -2
  307. package/lib/point/models/normal.js +13 -30
  308. package/lib/point/models/radar.js +23 -45
  309. package/lib/point/models/text.js +31 -32
  310. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  311. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  312. package/lib/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  313. package/{es/point/shaders/earth/extrude_vert.glsl → lib/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  314. package/{es/point/shaders/earth/fill_frag.glsl → lib/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  315. package/{es/point/shaders/earth/fill_vert.glsl → lib/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  316. package/lib/point/shaders/extrude/extrude_frag.glsl +19 -7
  317. package/lib/point/shaders/extrude/extrude_vert.glsl +23 -30
  318. package/{es/point/shaders → lib/point/shaders/fill}/fill_frag.glsl +18 -1
  319. package/lib/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  320. package/lib/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  321. package/{es/point/shaders/image → lib/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  322. package/lib/point/shaders/image/image_frag.glsl +42 -0
  323. package/{es/point/shaders → lib/point/shaders/image}/image_vert.glsl +14 -13
  324. package/lib/point/shaders/radar/radar_frag.glsl +19 -14
  325. package/lib/point/shaders/radar/radar_vert.glsl +21 -24
  326. package/lib/point/shaders/text/text_frag.glsl +44 -0
  327. package/lib/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  328. package/lib/polygon/models/extrude.js +38 -15
  329. package/lib/polygon/models/extrusion.js +24 -7
  330. package/lib/polygon/models/fill.js +26 -13
  331. package/lib/polygon/models/ocean.js +30 -14
  332. package/lib/polygon/models/water.js +26 -10
  333. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  334. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  335. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  336. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  337. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  338. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  339. package/lib/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  340. package/lib/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  341. package/lib/polygon/shaders/fill/fill_frag.glsl +7 -0
  342. package/lib/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  343. package/{es/polygon/shaders/polygon_linear_vert.glsl → lib/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  344. package/lib/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  345. package/lib/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  346. package/lib/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  347. package/lib/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  348. package/lib/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  349. package/lib/raster/models/raster.js +54 -38
  350. package/lib/raster/models/rasterRgb.js +36 -19
  351. package/lib/raster/models/rasterTerrainRgb.js +2 -2
  352. package/lib/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  353. package/lib/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  354. package/lib/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  355. package/lib/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  356. package/lib/tile/utils/constants.js +1 -1
  357. package/package.json +7 -7
  358. package/es/earth/shaders/atmosphere_vert.glsl +0 -26
  359. package/es/earth/shaders/base_frag.glsl +0 -13
  360. package/es/earth/shaders/base_vert.glsl +0 -52
  361. package/es/earth/shaders/bloomsphere_frag.glsl +0 -15
  362. package/es/earth/shaders/bloomsphere_vert.glsl +0 -20
  363. package/es/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  364. package/es/heatmap/shaders/heatmap_frag.glsl +0 -47
  365. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  366. package/es/heatmap/shaders/heatmap_vert.glsl +0 -10
  367. package/es/heatmap/shaders/hexagon_frag.glsl +0 -12
  368. package/es/line/models/earthArc_3d.d.ts +0 -17
  369. package/es/line/models/earthArc_3d.js +0 -285
  370. package/es/line/models/linearline.d.ts +0 -11
  371. package/es/line/models/linearline.js +0 -241
  372. package/es/line/models/simpleLine.js +0 -194
  373. package/es/line/shaders/arc_chunks.vert.glsl +0 -21
  374. package/es/line/shaders/dash/arc_dash_frag.glsl +0 -21
  375. package/es/line/shaders/dash/arc_dash_vert.glsl +0 -102
  376. package/es/line/shaders/dash/line_dash_frag.glsl +0 -27
  377. package/es/line/shaders/dash/line_dash_vert.glsl +0 -82
  378. package/es/line/shaders/line_arc2d_vert.glsl +0 -114
  379. package/es/line/shaders/line_bezier_vert.glsl +0 -85
  380. package/es/line/shaders/line_vert.glsl +0 -165
  381. package/es/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  382. package/es/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  383. package/es/line/shaders/linear/arc_linear_frag.glsl +0 -10
  384. package/es/line/shaders/linear/arc_linear_vert.glsl +0 -98
  385. package/es/line/shaders/linear/line_linear_frag.glsl +0 -25
  386. package/es/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  387. package/es/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  388. package/es/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  389. package/es/point/shaders/animate/wave_frag.glsl +0 -55
  390. package/es/point/shaders/earth/extrude_frag.glsl +0 -32
  391. package/es/point/shaders/image/fillImage_frag.glsl +0 -18
  392. package/es/point/shaders/image_frag.glsl +0 -37
  393. package/es/point/shaders/text_frag.glsl +0 -39
  394. package/es/polygon/shaders/polygon_frag.glsl +0 -7
  395. package/es/polygon/shaders/polygon_linear_frag.glsl +0 -15
  396. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  397. package/es/raster/shaders/raster_2d_frag.glsl +0 -32
  398. package/es/raster/shaders/raster_2d_vert.glsl +0 -13
  399. package/es/raster/shaders/raster_frag.glsl +0 -11
  400. package/es/raster/shaders/raster_rgb_frag.glsl +0 -20
  401. package/es/raster/shaders/raster_vert.glsl +0 -34
  402. package/lib/earth/shaders/atmosphere_vert.glsl +0 -26
  403. package/lib/earth/shaders/base_frag.glsl +0 -13
  404. package/lib/earth/shaders/base_vert.glsl +0 -52
  405. package/lib/earth/shaders/bloomsphere_frag.glsl +0 -15
  406. package/lib/earth/shaders/bloomsphere_vert.glsl +0 -20
  407. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  408. package/lib/heatmap/shaders/heatmap_frag.glsl +0 -47
  409. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  410. package/lib/heatmap/shaders/heatmap_vert.glsl +0 -10
  411. package/lib/heatmap/shaders/hexagon_frag.glsl +0 -12
  412. package/lib/line/models/earthArc_3d.js +0 -291
  413. package/lib/line/models/linearline.js +0 -247
  414. package/lib/line/shaders/arc_chunks.vert.glsl +0 -21
  415. package/lib/line/shaders/dash/arc_dash_frag.glsl +0 -21
  416. package/lib/line/shaders/dash/arc_dash_vert.glsl +0 -102
  417. package/lib/line/shaders/dash/line_dash_frag.glsl +0 -27
  418. package/lib/line/shaders/dash/line_dash_vert.glsl +0 -82
  419. package/lib/line/shaders/line_arc2d_vert.glsl +0 -114
  420. package/lib/line/shaders/line_bezier_vert.glsl +0 -85
  421. package/lib/line/shaders/line_vert.glsl +0 -165
  422. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  423. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  424. package/lib/line/shaders/linear/arc_linear_frag.glsl +0 -10
  425. package/lib/line/shaders/linear/arc_linear_vert.glsl +0 -98
  426. package/lib/line/shaders/linear/line_linear_frag.glsl +0 -25
  427. package/lib/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  428. package/lib/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  429. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  430. package/lib/point/shaders/animate/wave_frag.glsl +0 -55
  431. package/lib/point/shaders/earth/extrude_frag.glsl +0 -32
  432. package/lib/point/shaders/image/fillImage_frag.glsl +0 -18
  433. package/lib/point/shaders/image_frag.glsl +0 -37
  434. package/lib/point/shaders/text_frag.glsl +0 -39
  435. package/lib/polygon/shaders/polygon_frag.glsl +0 -7
  436. package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -15
  437. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  438. package/lib/raster/shaders/raster_2d_frag.glsl +0 -32
  439. package/lib/raster/shaders/raster_2d_vert.glsl +0 -13
  440. package/lib/raster/shaders/raster_frag.glsl +0 -11
  441. package/lib/raster/shaders/raster_rgb_frag.glsl +0 -20
  442. package/lib/raster/shaders/raster_vert.glsl +0 -34
  443. /package/es/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  444. /package/es/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  445. /package/es/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  446. /package/es/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
  447. /package/lib/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  448. /package/lib/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  449. /package/lib/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  450. /package/lib/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
@@ -1,13 +1,18 @@
1
+ layout(std140) uniform commonUniforms {
2
+ vec2 u_size;
3
+ float u_raisingHeight;
4
+ float u_rotation;
5
+ float u_opacity;
6
+ };
1
7
 
2
8
  uniform sampler2D u_texture;
3
- uniform float u_opacity;
4
9
 
5
- varying vec3 v_Color;
6
- varying vec2 v_uv;
10
+ in vec2 v_uv;
11
+ out vec4 outputColor;
7
12
 
8
13
  #pragma include "picking"
9
14
  void main() {
10
- gl_FragColor = texture2D(u_texture, vec2(v_uv.x, 1.0 - v_uv.y));
11
- gl_FragColor.a *= u_opacity;
12
- gl_FragColor = filterColor(gl_FragColor);
15
+ outputColor = texture(SAMPLER_2D(u_texture), vec2(v_uv.x, 1.0 - v_uv.y));
16
+ outputColor.a *= u_opacity;
17
+ outputColor = filterColor(outputColor);
13
18
  }
@@ -1,25 +1,22 @@
1
- precision highp float;
2
- uniform mat4 u_ModelMatrix;
3
- uniform float u_raisingHeight: 0.0;
4
- uniform float u_opacity;
5
- uniform vec2 u_size: [1.0, 1.0];
6
- uniform mat2 u_RotateMatrix;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 11) in vec3 a_Extrude;
3
+ layout(location = 14) in vec2 a_Uv;
7
4
 
8
- attribute vec3 a_Extrude;
9
- attribute vec3 a_Position;
10
- attribute vec2 a_Uv;
11
- attribute vec3 a_Color;
5
+ layout(std140) uniform commonUniforms {
6
+ vec2 u_size;
7
+ float u_raisingHeight;
8
+ float u_rotation;
9
+ float u_opacity;
10
+ };
12
11
 
13
- varying vec3 v_Color;
14
- varying vec2 v_uv;
12
+ out vec2 v_uv;
15
13
 
16
14
  #pragma include "projection"
17
15
  #pragma include "picking"
16
+ #pragma include "rotation_2d"
18
17
  void main() {
19
18
  vec3 extrude = a_Extrude;
20
- v_Color = a_Color;
21
19
  v_uv = a_Uv;
22
-
23
20
  float raiseHeight = u_raisingHeight;
24
21
  if(u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT || u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT_OFFSET) {
25
22
  float mapboxZoomScale = 4.0/pow(2.0, 21.0 - u_Zoom);
@@ -30,7 +27,7 @@ void main() {
30
27
  vec4 project_pos = project_position(vec4(a_Position.xy, 0.0, 1.0));
31
28
 
32
29
  // 计算绕 z 轴旋转后的偏移
33
- vec2 offsetXY = project_pixel(u_RotateMatrix * vec2(extrude.x * u_size.x, 0.0));
30
+ vec2 offsetXY = project_pixel(rotate_matrix(vec2(extrude.x * u_size.x, 0.0),u_rotation));
34
31
  // 绕 z 轴旋转
35
32
  float x = project_pos.x + offsetXY.x;
36
33
  float y = project_pos.y + offsetXY.y;
@@ -1,22 +1,26 @@
1
1
 
2
2
  uniform sampler2D u_texture;
3
- uniform float u_mapFlag;
4
- uniform float u_opacity;
3
+ layout(std140) uniform commonUniforms {
4
+ float u_opacity;
5
+ float u_mapFlag;
6
+ float u_terrainClipHeight;
7
+ };
5
8
 
6
- varying vec3 v_Color;
7
- varying vec2 v_uv;
8
- varying float v_clip;
9
+ in vec3 v_Color;
10
+ in vec2 v_uv;
11
+ in float v_clip;
12
+ out vec4 outputColor;
9
13
 
10
14
  #pragma include "picking"
11
15
  void main() {
12
16
  // gl_FragColor = vec4(v_Color, u_opacity);
13
17
  if(u_mapFlag > 0.0) {
14
- gl_FragColor = texture2D(u_texture, vec2(v_uv.x, 1.0 - v_uv.y));
15
- gl_FragColor.a *= u_opacity;
18
+ outputColor = texture(SAMPLER_2D(u_texture), vec2(v_uv.x, 1.0 - v_uv.y));
19
+ outputColor.a *= u_opacity;
16
20
  } else {
17
21
  // gl_FragColor = vec4(v_uv, 0.0, u_opacity);
18
- gl_FragColor = vec4(v_Color, u_opacity);
22
+ outputColor = vec4(v_Color, u_opacity);
19
23
  }
20
- gl_FragColor.a *= v_clip;
21
- gl_FragColor = filterColor(gl_FragColor);
24
+ outputColor.a *= v_clip;
25
+ outputColor = filterColor(outputColor);
22
26
  }
@@ -1,16 +1,17 @@
1
- precision highp float;
2
- uniform mat4 u_ModelMatrix;
3
1
 
4
- uniform float u_opacity;
5
- uniform float u_terrainClipHeight;
2
+ layout(location = 0) in vec3 a_Position;
3
+ layout(location = 1) in vec3 a_Color;
4
+ layout(location = 14) in vec2 a_Uv;
6
5
 
7
- attribute vec3 a_Position;
8
- attribute vec2 a_Uv;
9
- attribute vec3 a_Color;
6
+ layout(std140) uniform commonUniforms {
7
+ float u_opacity;
8
+ float u_mapFlag;
9
+ float u_terrainClipHeight;
10
+ };
10
11
 
11
- varying vec3 v_Color;
12
- varying vec2 v_uv;
13
- varying float v_clip;
12
+ out vec3 v_Color;
13
+ out vec2 v_uv;
14
+ out float v_clip;
14
15
 
15
16
  #pragma include "projection"
16
17
  #pragma include "picking"
@@ -1,10 +1,14 @@
1
1
 
2
+ layout(std140) uniform commonUniforms {
3
+ float u_opacity;
4
+ float u_mapFlag;
5
+ float u_Scale;
6
+ };
2
7
  uniform sampler2D u_texture;
3
- uniform float u_mapFlag;
4
- uniform float u_opacity;
5
8
 
6
- varying vec3 v_Color;
7
- varying float v_d;
9
+ in vec3 v_Color;
10
+ in float v_d;
11
+ out vec4 outputColor;
8
12
 
9
13
  void main() {
10
14
 
@@ -13,9 +17,9 @@ void main() {
13
17
  }
14
18
 
15
19
  if(u_mapFlag > 0.0) {
16
- gl_FragColor = texture2D(u_texture, gl_PointCoord);
17
- gl_FragColor.a *= u_opacity;
20
+ outputColor = texture(SAMPLER_2D(u_texture), gl_PointCoord);
21
+ outputColor.a *= u_opacity;
18
22
  } else {
19
- gl_FragColor = vec4(v_Color, u_opacity);
23
+ outputColor = vec4(v_Color, u_opacity);
20
24
  }
21
25
  }
@@ -1,17 +1,18 @@
1
- precision highp float;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec3 a_Color;
2
3
 
3
- attribute vec3 a_Position;
4
- attribute vec3 a_Color;
4
+ layout(std140) uniform commonUniforms {
5
+ float u_opacity;
6
+ float u_mapFlag;
7
+ float u_Scale;
8
+ };
5
9
 
6
- uniform mat4 u_ModelMatrix;
7
- uniform float u_opacity;
8
- uniform float u_Scale;
9
- varying vec3 v_Color;
10
- varying float v_d;
10
+ out vec3 v_Color;
11
+ out float v_d;
11
12
 
12
13
  #pragma include "projection"
13
14
  void main() {
14
- v_Color = a_Color;
15
+ v_Color = a_Color.xyz;
15
16
 
16
17
  vec4 project_pos = project_position(vec4(a_Position, 1.0));
17
18
 
@@ -1,7 +1,7 @@
1
- import { IAttributeAndElements, IRenderOptions } from '@antv/l7-core';
1
+ import type { IAttributeAndElements, IRenderOptions } from '@antv/l7-core';
2
2
  import BaseLayer from '../core/BaseLayer';
3
- import { IHeatMapLayerStyleOptions } from '../core/interface';
4
- import { HeatMapModelType } from './models';
3
+ import type { IHeatMapLayerStyleOptions } from '../core/interface';
4
+ import type { HeatMapModelType } from './models';
5
5
  export default class HeatMapLayer extends BaseLayer<IHeatMapLayerStyleOptions> {
6
6
  type: string;
7
7
  buildModels(): Promise<void>;
@@ -1,7 +1,14 @@
1
- import { IModel, IModelUniform } from '@antv/l7-core';
1
+ import type { IModel, IModelUniform } from '@antv/l7-core';
2
2
  import BaseModel from '../../core/BaseModel';
3
3
  export default class GridModel extends BaseModel {
4
4
  getUninforms(): IModelUniform;
5
+ protected getCommonUniformsInfo(): {
6
+ uniformsArray: number[];
7
+ uniformsLength: number;
8
+ uniformsOption: {
9
+ [key: string]: any;
10
+ };
11
+ };
5
12
  initModels(): Promise<IModel[]>;
6
13
  buildModels(): Promise<IModel[]>;
7
14
  protected registerBuiltinAttributes(): void;
@@ -1,4 +1,5 @@
1
1
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
3
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
4
  import _createClass from "@babel/runtime/helpers/esm/createClass";
4
5
  import _inherits from "@babel/runtime/helpers/esm/inherits";
@@ -10,10 +11,10 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
10
11
  import { AttributeType, gl } from '@antv/l7-core';
11
12
  import BaseModel from "../../core/BaseModel";
12
13
  import { HeatmapGridTriangulation } from "../../core/triangulation";
13
- /* babel-plugin-inline-import '../shaders/grid_vert.glsl' */
14
- var heatmapGridVert = "precision highp float;\r\n// \u591A\u8FB9\u5F62\u9876\u70B9\u5750\u6807\r\nattribute vec3 a_Position;\r\n// \u591A\u8FB9\u5F62\u7ECF\u7EAC\u5EA6\u5750\u6807\r\nattribute vec3 a_Pos;\r\nattribute float a_Size;\r\nattribute vec4 a_Color;\r\nuniform vec2 u_radius;\r\nuniform float u_coverage: 0.9;\r\nuniform float u_angle: 0;\r\nuniform mat4 u_ModelMatrix;\r\n\r\nvarying vec4 v_color;\r\n\r\nuniform vec2 u_sceneCenterMercator;\r\n\r\n#pragma include \"projection\"\r\n#pragma include \"project\"\r\n#pragma include \"picking\"\r\n\r\nvoid main() {\r\n v_color = a_Color;\r\n\r\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\r\n vec2 offset = a_Position.xy * u_radius * rotationMatrix * u_coverage ;\r\n // vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n // vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n // gl_Position = project_common_position_to_clipspace(project_pos);\r\n\r\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\r\n vec4 project_pos = project_position(vec4(customLnglat, 0, 1.0));\r\n gl_Position = u_Mvp * (project_pos);\r\n } else {\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n gl_Position = project_common_position_to_clipspace(project_pos);\r\n }\r\n\r\n setPickingColor(a_PickingColor);\r\n}\r\n";
15
- /* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
16
- var heatmapGridFrag = "precision highp float;\nvarying vec4 v_color;\nuniform float u_opacity: 1;\n\n#pragma include \"picking\"\n\nvoid main() {\n gl_FragColor = v_color;\n gl_FragColor.a *= u_opacity;\n\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
14
+ /* babel-plugin-inline-import '../shaders/grid/grid_vert.glsl' */
15
+ var grid_vert = "layout(location = 0) in vec3 a_Position;\r\nlayout(location = 1) in vec4 a_Color;\r\nlayout(location = 10) in vec3 a_Pos;\r\n\r\nlayout(std140) uniform commonUniforms {\r\n vec2 u_radius;\r\n float u_opacity;\r\n float u_coverage;\r\n float u_angle;\r\n};\r\n\r\n\r\nout vec4 v_color;\r\n\r\n\r\n#pragma include \"projection\"\r\n#pragma include \"project\"\r\n#pragma include \"picking\"\r\n\r\nvoid main() {\r\n v_color = a_Color;\r\n v_color.a *= u_opacity;\r\n\r\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\r\n vec2 offset = a_Position.xy * u_radius * rotationMatrix * u_coverage ;\r\n // vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n // vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n // gl_Position = project_common_position_to_clipspace(project_pos);\r\n\r\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\r\n vec4 project_pos = project_position(vec4(customLnglat, 0, 1.0));\r\n gl_Position = u_Mvp * (project_pos);\r\n } else {\r\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset);\r\n vec4 project_pos = project_position(vec4(lnglat, 0, 1.0));\r\n gl_Position = project_common_position_to_clipspace(project_pos);\r\n }\r\n\r\n setPickingColor(a_PickingColor);\r\n}\r\n";
16
+ /* babel-plugin-inline-import '../shaders/grid/grid_frag.glsl' */
17
+ var grid_frag = "in vec4 v_color;\n\n#pragma include \"picking\"\nout vec4 outputColor;\nvoid main() {\n outputColor = v_color;\n outputColor = filterColor(outputColor);\n}\n";
17
18
  var GridModel = /*#__PURE__*/function (_BaseModel) {
18
19
  _inherits(GridModel, _BaseModel);
19
20
  var _super = _createSuper(GridModel);
@@ -24,16 +25,26 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
24
25
  _createClass(GridModel, [{
25
26
  key: "getUninforms",
26
27
  value: function getUninforms() {
28
+ var commoninfo = this.getCommonUniformsInfo();
29
+ var attributeInfo = this.getUniformsBufferInfo(this.getStyleAttribute());
30
+ this.updateStyleUnifoms();
31
+ return _objectSpread(_objectSpread({}, commoninfo.uniformsOption), attributeInfo.uniformsOption);
32
+ }
33
+ }, {
34
+ key: "getCommonUniformsInfo",
35
+ value: function getCommonUniformsInfo() {
27
36
  var _ref = this.layer.getLayerConfig(),
28
37
  opacity = _ref.opacity,
29
38
  coverage = _ref.coverage,
30
39
  angle = _ref.angle;
31
- return {
40
+ var commonOptions = {
41
+ u_radius: [this.layer.getSource().data.xOffset, this.layer.getSource().data.yOffset],
32
42
  u_opacity: opacity || 1.0,
33
43
  u_coverage: coverage || 0.9,
34
- u_angle: angle || 0,
35
- u_radius: [this.layer.getSource().data.xOffset, this.layer.getSource().data.yOffset]
44
+ u_angle: angle || 0
36
45
  };
46
+ var commonBufferInfo = this.getUniformsBufferInfo(commonOptions);
47
+ return commonBufferInfo;
37
48
  }
38
49
  }, {
39
50
  key: "initModels",
@@ -62,21 +73,22 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
62
73
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
63
74
  while (1) switch (_context2.prev = _context2.next) {
64
75
  case 0:
65
- _context2.next = 2;
76
+ this.initUniformsBuffer();
77
+ _context2.next = 3;
66
78
  return this.layer.buildLayerModel({
67
79
  moduleName: 'heatmapGrid',
68
- vertexShader: heatmapGridVert,
69
- fragmentShader: heatmapGridFrag,
80
+ vertexShader: grid_vert,
81
+ fragmentShader: grid_frag,
70
82
  triangulation: HeatmapGridTriangulation,
71
83
  primitive: gl.TRIANGLES,
72
84
  depth: {
73
85
  enable: false
74
86
  }
75
87
  });
76
- case 2:
88
+ case 3:
77
89
  model = _context2.sent;
78
90
  return _context2.abrupt("return", [model]);
79
- case 4:
91
+ case 5:
80
92
  case "end":
81
93
  return _context2.stop();
82
94
  }
@@ -95,6 +107,7 @@ var GridModel = /*#__PURE__*/function (_BaseModel) {
95
107
  // 顶点经纬度位置
96
108
  type: AttributeType.Attribute,
97
109
  descriptor: {
110
+ shaderLocation: 10,
98
111
  name: 'a_Pos',
99
112
  buffer: {
100
113
  usage: gl.DYNAMIC_DRAW,
@@ -1,7 +1,14 @@
1
- import { IModel, IModelUniform } from '@antv/l7-core';
1
+ import type { IModel, IModelUniform } from '@antv/l7-core';
2
2
  import BaseModel from '../../core/BaseModel';
3
3
  export default class Grid3DModel extends BaseModel {
4
4
  getUninforms(): IModelUniform;
5
+ protected getCommonUniformsInfo(): {
6
+ uniformsArray: number[];
7
+ uniformsLength: number;
8
+ uniformsOption: {
9
+ [key: string]: any;
10
+ };
11
+ };
5
12
  initModels(): Promise<IModel[]>;
6
13
  buildModels(): Promise<IModel[]>;
7
14
  protected registerBuiltinAttributes(): void;
@@ -1,4 +1,5 @@
1
1
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
3
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
4
  import _createClass from "@babel/runtime/helpers/esm/createClass";
4
5
  import _inherits from "@babel/runtime/helpers/esm/inherits";
@@ -10,10 +11,11 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
10
11
  import { AttributeType, gl } from '@antv/l7-core';
11
12
  import BaseModel from "../../core/BaseModel";
12
13
  import { PointExtrudeTriangulation } from "../../core/triangulation";
13
- /* babel-plugin-inline-import '../shaders/hexagon_3d_vert.glsl' */
14
- var heatmapGrid3dVert = "precision highp float;\n// \u591A\u8FB9\u5F62\u9876\u70B9\u5750\u6807\nattribute vec3 a_Position;\n// \u591A\u8FB9\u5F62\u7ECF\u7EAC\u5EA6\u5750\u6807\nattribute vec3 a_Pos;\n\nattribute vec3 a_Normal;\nattribute float a_Size;\nattribute vec4 a_Color;\nuniform vec2 u_radius;\nuniform float u_coverage: 0.9;\nuniform float u_angle: 0;\nuniform mat4 u_ModelMatrix;\n\nvarying vec4 v_color;\n\nuniform vec2 u_sceneCenterMercator;\n\n#pragma include \"projection\"\n#pragma include \"project\"\n#pragma include \"light\"\n#pragma include \"picking\"\n\n\nvoid main() {\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\n vec2 offset =(vec2(a_Position.xy * u_radius * rotationMatrix * u_coverage));\n\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n \n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u7ECF\u7EAC\u5EA6\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\n vec4 project_pos = project_position(vec4(customLnglat, a_Position.z * a_Size, 1.0));\n\n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w);\n \n gl_Position = u_Mvp * vec4(customLnglat , a_Position.z * a_Size, 1.0);\n } else {\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u5B9E\u9645\u7684\u7ECF\u7EAC\u5EA6\n vec4 project_pos = project_position(vec4(lnglat, a_Position.z * a_Size, 1.0));\n \n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w);\n \n gl_Position = project_common_position_to_clipspace(project_pos);\n }\n\n\n\n setPickingColor(a_PickingColor);\n}\n";
15
- /* babel-plugin-inline-import '../shaders/hexagon_frag.glsl' */
16
- var heatmapGridFrag = "precision highp float;\nvarying vec4 v_color;\nuniform float u_opacity: 1;\n\n#pragma include \"picking\"\n\nvoid main() {\n gl_FragColor = v_color;\n gl_FragColor.a *= u_opacity;\n\n gl_FragColor = filterColor(gl_FragColor);\n}\n";
14
+ /* babel-plugin-inline-import '../shaders/grid3d/grid_3d_vert.glsl' */
15
+ var grid_3d_vert = "layout(location = 0) in vec3 a_Position;\nlayout(location = 1) in vec4 a_Color;\nlayout(location = 9) in float a_Size;\nlayout(location = 10) in vec3 a_Pos;\nlayout(location = 13) in vec3 a_Normal;\n\nlayout(std140) uniform commonUniforms {\n vec2 u_radius;\n float u_opacity;\n float u_coverage;\n float u_angle;\n};\n\nout vec4 v_color;\n\n#pragma include \"projection\"\n#pragma include \"project\"\n#pragma include \"light\"\n#pragma include \"picking\"\n\n\nvoid main() {\n mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));\n vec2 offset =(vec2(a_Position.xy * u_radius * rotationMatrix * u_coverage));\n\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n \n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u7ECF\u7EAC\u5EA6\n vec2 customLnglat = customProject(lnglat) - u_sceneCenterMercator; // \u5C06\u7ECF\u7EAC\u5EA6\u8F6C\u6362\u4E3A\u9AD8\u5FB72.0\u9700\u8981\u7684\u5E73\u9762\u5750\u6807\n vec4 project_pos = project_position(vec4(customLnglat, a_Position.z * a_Size, 1.0));\n\n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w * u_opacity);\n \n gl_Position = u_Mvp * vec4(customLnglat , a_Position.z * a_Size, 1.0);\n } else {\n vec2 lnglat = unProjectFlat(a_Pos.xy + offset); // \u5B9E\u9645\u7684\u7ECF\u7EAC\u5EA6\n vec4 project_pos = project_position(vec4(lnglat, a_Position.z * a_Size, 1.0));\n \n float lightWeight = calc_lighting(project_pos);\n v_color =vec4(a_Color.rgb*lightWeight, a_Color.w);\n \n gl_Position = project_common_position_to_clipspace(project_pos);\n }\n\n\n\n setPickingColor(a_PickingColor);\n}\n";
16
+ /* babel-plugin-inline-import '../shaders/grid3d/grid_3d_frag.glsl' */
17
+ var grid_3d_frag = "in vec4 v_color;\n\n#pragma include \"picking\"\nout vec4 outputColor;\nvoid main() {\n outputColor = v_color;\n outputColor = filterColor(outputColor);\n}\n";
18
+ import { ShaderLocation } from "../../core/CommonStyleAttribute";
17
19
  var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
18
20
  _inherits(Grid3DModel, _BaseModel);
19
21
  var _super = _createSuper(Grid3DModel);
@@ -24,16 +26,26 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
24
26
  _createClass(Grid3DModel, [{
25
27
  key: "getUninforms",
26
28
  value: function getUninforms() {
29
+ var commoninfo = this.getCommonUniformsInfo();
30
+ var attributeInfo = this.getUniformsBufferInfo(this.getStyleAttribute());
31
+ this.updateStyleUnifoms();
32
+ return _objectSpread(_objectSpread({}, commoninfo.uniformsOption), attributeInfo.uniformsOption);
33
+ }
34
+ }, {
35
+ key: "getCommonUniformsInfo",
36
+ value: function getCommonUniformsInfo() {
27
37
  var _ref = this.layer.getLayerConfig(),
28
38
  opacity = _ref.opacity,
29
39
  coverage = _ref.coverage,
30
40
  angle = _ref.angle;
31
- return {
41
+ var commonOptions = {
42
+ u_radius: [this.layer.getSource().data.xOffset, this.layer.getSource().data.yOffset],
32
43
  u_opacity: opacity || 1.0,
33
- u_coverage: coverage || 1.0,
34
- u_angle: angle || 0,
35
- u_radius: [this.layer.getSource().data.xOffset, this.layer.getSource().data.yOffset]
44
+ u_coverage: coverage || 0.9,
45
+ u_angle: angle || 0
36
46
  };
47
+ var commonBufferInfo = this.getUniformsBufferInfo(commonOptions);
48
+ return commonBufferInfo;
37
49
  }
38
50
  }, {
39
51
  key: "initModels",
@@ -62,21 +74,22 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
62
74
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
63
75
  while (1) switch (_context2.prev = _context2.next) {
64
76
  case 0:
65
- _context2.next = 2;
77
+ this.initUniformsBuffer();
78
+ _context2.next = 3;
66
79
  return this.layer.buildLayerModel({
67
80
  moduleName: 'heatmapGrid3d',
68
- vertexShader: heatmapGrid3dVert,
69
- fragmentShader: heatmapGridFrag,
81
+ vertexShader: grid_3d_vert,
82
+ fragmentShader: grid_3d_frag,
70
83
  triangulation: PointExtrudeTriangulation,
71
84
  primitive: gl.TRIANGLES,
72
85
  depth: {
73
86
  enable: true
74
87
  }
75
88
  });
76
- case 2:
89
+ case 3:
77
90
  model = _context2.sent;
78
91
  return _context2.abrupt("return", [model]);
79
- case 4:
92
+ case 5:
80
93
  case "end":
81
94
  return _context2.stop();
82
95
  }
@@ -94,6 +107,7 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
94
107
  name: 'size',
95
108
  type: AttributeType.Attribute,
96
109
  descriptor: {
110
+ shaderLocation: ShaderLocation.SIZE,
97
111
  name: 'a_Size',
98
112
  buffer: {
99
113
  usage: gl.DYNAMIC_DRAW,
@@ -112,6 +126,7 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
112
126
  type: AttributeType.Attribute,
113
127
  descriptor: {
114
128
  name: 'a_Normal',
129
+ shaderLocation: ShaderLocation.NORMAL,
115
130
  buffer: {
116
131
  usage: gl.STATIC_DRAW,
117
132
  data: [],
@@ -129,6 +144,7 @@ var Grid3DModel = /*#__PURE__*/function (_BaseModel) {
129
144
  type: AttributeType.Attribute,
130
145
  descriptor: {
131
146
  name: 'a_Pos',
147
+ shaderLocation: 10,
132
148
  buffer: {
133
149
  usage: gl.DYNAMIC_DRAW,
134
150
  data: [],
@@ -1,25 +1,27 @@
1
- import { IFramebuffer, IModel, IModelUniform, IRenderOptions, ITexture2D } from '@antv/l7-core';
1
+ import type { IFramebuffer, IModel, IModelUniform, IRenderOptions, ITexture2D } from '@antv/l7-core';
2
2
  import 'reflect-metadata';
3
3
  import BaseModel from '../../core/BaseModel';
4
4
  export default class HeatMapModel extends BaseModel {
5
5
  protected texture: ITexture2D;
6
6
  protected colorTexture: ITexture2D;
7
7
  protected heatmapFramerBuffer: IFramebuffer;
8
+ protected heatmapTexture: ITexture2D;
8
9
  private intensityModel;
9
10
  private colorModel;
10
11
  private shapeType;
11
12
  private preRampColors;
13
+ private colorModelUniformBuffer;
14
+ private heat3DModelUniformBuffer;
12
15
  render(options: Partial<IRenderOptions>): void;
13
16
  getUninforms(): IModelUniform;
14
17
  initModels(): Promise<IModel[]>;
15
18
  buildModels(): Promise<IModel[]>;
16
19
  protected registerBuiltinAttributes(): void;
17
20
  private buildHeatMapIntensity;
18
- private buildHeatmapColor;
21
+ private buildHeatmap;
19
22
  private drawIntensityMode;
20
- private drawColorMode;
23
+ private drawHeatMap;
21
24
  private draw3DHeatMap;
22
25
  private build3dHeatMap;
23
- private updateStyle;
24
26
  private updateColorTexture;
25
27
  }