@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,20 @@
1
- precision highp float;
2
- attribute vec3 a_Position;
3
- attribute vec2 a_Uv;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 14) in vec2 a_Uv;
3
+
4
+ layout(std140) uniform commonUniforms {
5
+ mat4 u_ViewProjectionMatrixUncentered;
6
+ mat4 u_InverseViewProjectionMatrix;
7
+ float u_opacity;
8
+ float u_common_uniforms_padding1;
9
+ float u_common_uniforms_padding2;
10
+ float u_common_uniforms_padding3;
11
+ };
12
+
4
13
  uniform sampler2D u_texture;
5
- varying vec2 v_texCoord;
6
- uniform mat4 u_ModelMatrix;
7
- uniform mat4 u_InverseViewProjectionMatrix;
8
- uniform mat4 u_ViewProjectionMatrixUncentered;
9
- varying float v_intensity;
14
+ uniform sampler2D u_colorTexture;
10
15
 
16
+ out vec2 v_texCoord;
17
+ out float v_intensity;
11
18
 
12
19
  vec2 toBezier(float t, vec2 P0, vec2 P1, vec2 P2, vec2 P3) {
13
20
  float t2 = t * t;
@@ -18,7 +25,10 @@ vec2 toBezier(float t, vec2 P0, vec2 P1, vec2 P2, vec2 P3) {
18
25
  vec2 toBezier(float t, vec4 p){
19
26
  return toBezier(t, vec2(0.0, 0.0), vec2(p.x, p.y), vec2(p.z, p.w), vec2(1.0, 1.0));
20
27
  }
28
+
21
29
  #pragma include "projection"
30
+ #pragma include "project"
31
+
22
32
  void main() {
23
33
  v_texCoord = a_Uv;
24
34
 
@@ -39,7 +49,7 @@ void main() {
39
49
  vec4 b= vec4(0.5000, 0.0, 1.0, 0.5000);
40
50
  float fh;
41
51
 
42
- v_intensity = texture2D(u_texture, v_texCoord).r;
52
+ v_intensity = texture(SAMPLER_2D(u_texture), v_texCoord).r;
43
53
  fh = toBezier(v_intensity, b).y;
44
54
  gl_Position = u_ViewProjectionMatrixUncentered * vec4(position.xy, fh * project_pixel(50.), 1.0);
45
55
 
@@ -0,0 +1,52 @@
1
+ uniform sampler2D u_texture; // 热力强度图
2
+ uniform sampler2D u_colorTexture; // 根据强度分布的色带
3
+
4
+ layout(std140) uniform commonUniforms {
5
+ float u_opacity;
6
+ float u_common_uniforms_padding1;
7
+ float u_common_uniforms_padding2;
8
+ float u_common_uniforms_padding3;
9
+ };
10
+ in vec2 v_texCoord;
11
+ out vec4 outputColor;
12
+
13
+ #pragma include "scene_uniforms"
14
+
15
+ float getBlurIndusty() {
16
+ float vW = 2.0/ u_ViewportSize.x;
17
+ float vH = 2.0/ u_ViewportSize.y;
18
+ vec2 vUv = v_texCoord;
19
+ float i11 = texture(SAMPLER_2D(u_texture), vec2( vUv.x - 1.0 * vW, vUv.y + 1.0 * vH) ).r;
20
+ float i12 = texture(SAMPLER_2D(u_texture), vec2( vUv.x - 0.0 * vW, vUv.y + 1.0 * vH) ).r;
21
+ float i13 = texture(SAMPLER_2D(u_texture), vec2( vUv.x + 1.0 * vW, vUv.y + 1.0 * vH) ).r;
22
+
23
+ float i21 = texture(SAMPLER_2D(u_texture), vec2( vUv.x - 1.0 * vW, vUv.y) ).r;
24
+ float i22 = texture(SAMPLER_2D(u_texture), vec2( vUv.x , vUv.y) ).r;
25
+ float i23 = texture(SAMPLER_2D(u_texture), vec2( vUv.x + 1.0 * vW, vUv.y) ).r;
26
+
27
+ float i31 = texture(SAMPLER_2D(u_texture), vec2( vUv.x - 1.0 * vW, vUv.y-1.0*vH) ).r;
28
+ float i32 = texture(SAMPLER_2D(u_texture), vec2( vUv.x - 0.0 * vW, vUv.y-1.0*vH) ).r;
29
+ float i33 = texture(SAMPLER_2D(u_texture), vec2( vUv.x + 1.0 * vW, vUv.y-1.0*vH) ).r;
30
+
31
+ return(
32
+ i11 +
33
+ i12 +
34
+ i13 +
35
+ i21 +
36
+ i21 +
37
+ i22 +
38
+ i23 +
39
+ i31 +
40
+ i32 +
41
+ i33
42
+ )/9.0;
43
+ }
44
+
45
+
46
+ void main(){
47
+ // float intensity = texture(u_texture, v_texCoord).r;
48
+ float intensity = getBlurIndusty();
49
+ vec4 color = texture(SAMPLER_2D(u_colorTexture), vec2(intensity, 0.0));
50
+ outputColor = color;
51
+ outputColor.a = color.a * smoothstep(0.,0.1,intensity) * u_opacity;
52
+ }
@@ -0,0 +1,16 @@
1
+ layout(std140) uniform commonUniforms {
2
+ float u_radius;
3
+ float u_intensity;
4
+ float u_common_uniforms_padding1;
5
+ float u_common_uniforms_padding2;
6
+ };
7
+
8
+ in float v_weight;
9
+ in vec2 v_extrude;
10
+ out vec4 outputColor;
11
+ #define GAUSS_COEF 0.3989422804014327
12
+ void main(){
13
+ float d = -0.5 * 3.0 * 3.0 * dot(v_extrude, v_extrude);
14
+ float val = v_weight * u_intensity * GAUSS_COEF * exp(d);
15
+ outputColor = vec4(val, 1., 1., 1.);
16
+ }
@@ -1,12 +1,17 @@
1
- precision highp float;
2
- attribute vec3 a_Position;
3
- attribute float a_Size;
4
- attribute vec2 a_Dir;
5
- uniform float u_intensity;
6
- uniform float u_radius;
7
- varying vec2 v_extrude;
8
- varying float v_weight;
9
- uniform mat4 u_ModelMatrix;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 9) in float a_Size;
3
+ layout(location = 10) in vec2 a_Dir;
4
+
5
+
6
+ layout(std140) uniform commonUniforms {
7
+ float u_radius;
8
+ float u_intensity;
9
+ float u_common_uniforms_padding1;
10
+ float u_common_uniforms_padding2;
11
+ };
12
+
13
+ out vec2 v_extrude;
14
+ out float v_weight;
10
15
 
11
16
 
12
17
  #define GAUSS_COEF 0.3989422804014327
@@ -0,0 +1,19 @@
1
+
2
+ layout(location = 0) in vec3 a_Position;
3
+ layout(location = 14) in vec2 a_Uv;
4
+
5
+ layout(std140) uniform commonUniforms {
6
+ float u_opacity;
7
+ float u_common_uniforms_padding1;
8
+ float u_common_uniforms_padding2;
9
+ float u_common_uniforms_padding3;
10
+ };
11
+
12
+ #pragma include "scene_uniforms"
13
+
14
+ out vec2 v_texCoord;
15
+ void main() {
16
+ v_texCoord = a_Uv;
17
+
18
+ gl_Position = vec4(a_Position.xy, 0, 1.);
19
+ }
@@ -0,0 +1,8 @@
1
+ in vec4 v_color;
2
+
3
+ #pragma include "picking"
4
+ out vec4 outputColor;
5
+ void main() {
6
+ outputColor = v_color;
7
+ outputColor = filterColor(outputColor);
8
+ }
@@ -1,18 +1,16 @@
1
- precision highp float;
2
- // 多边形顶点坐标
3
- attribute vec3 a_Position;
4
- // 多边形经纬度坐标
5
- attribute vec3 a_Pos;
6
- attribute float a_Size;
7
- attribute vec4 a_Color;
8
- uniform vec2 u_radius;
9
- uniform float u_coverage: 0.9;
10
- uniform float u_angle: 0;
11
- uniform mat4 u_ModelMatrix;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 10) in vec3 a_Pos;
12
4
 
13
- varying vec4 v_color;
5
+ layout(std140) uniform commonUniforms {
6
+ vec2 u_radius;
7
+ float u_opacity;
8
+ float u_coverage;
9
+ float u_angle;
10
+ };
11
+
12
+ out vec4 v_color;
14
13
 
15
- uniform vec2 u_sceneCenterMercator;
16
14
 
17
15
  #pragma include "projection"
18
16
  #pragma include "project"
@@ -20,6 +18,7 @@ uniform vec2 u_sceneCenterMercator;
20
18
 
21
19
  void main() {
22
20
  v_color = a_Color;
21
+ v_color.a *= u_opacity;
23
22
 
24
23
  mat2 rotationMatrix = mat2(cos(u_angle), sin(u_angle), -sin(u_angle), cos(u_angle));
25
24
  vec2 offset =(vec2(a_Position.xy * u_radius * rotationMatrix * u_coverage));
@@ -1,6 +1,6 @@
1
1
  import BaseLayer from '../core/BaseLayer';
2
- import { IImageLayerStyleOptions } from '../core/interface';
3
- import { ImageModelType } from './models/index';
2
+ import type { IImageLayerStyleOptions } from '../core/interface';
3
+ import type { ImageModelType } from './models/index';
4
4
  export default class ImageLayer extends BaseLayer<IImageLayerStyleOptions> {
5
5
  type: string;
6
6
  buildModels(): Promise<void>;
@@ -1,10 +1,17 @@
1
- import { IModel, IModelUniform, ITexture2D } from '@antv/l7-core';
1
+ import type { IModel, ITexture2D } from '@antv/l7-core';
2
2
  import BaseModel from '../../core/BaseModel';
3
3
  export default class ImageModel extends BaseModel {
4
4
  protected texture: ITexture2D;
5
- getUninforms(): IModelUniform;
5
+ protected getCommonUniformsInfo(): {
6
+ uniformsArray: number[];
7
+ uniformsLength: number;
8
+ uniformsOption: {
9
+ [key: string]: any;
10
+ };
11
+ };
6
12
  initModels(): Promise<IModel[]>;
7
13
  clearModels(): void;
14
+ private loadTexture;
8
15
  buildModels(): Promise<IModel[]>;
9
16
  protected registerBuiltinAttributes(): void;
10
17
  }
@@ -11,9 +11,11 @@ import { AttributeType, gl } from '@antv/l7-core';
11
11
  import BaseModel from "../../core/BaseModel";
12
12
  import { RasterImageTriangulation } from "../../core/triangulation";
13
13
  /* babel-plugin-inline-import '../shaders/image_frag.glsl' */
14
- var ImageFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nvoid main() {\n vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));\n gl_FragColor = color;\n gl_FragColor.a *= u_opacity;\n if(gl_FragColor.a < 0.01)\n discard;\n}\n";
14
+ var ImageFrag = "uniform sampler2D u_texture;\nlayout(std140) uniform commonUniforms {\n float u_opacity:1.0;\n float u_brightness:1.0;\n float u_contrast:1.0;\n float u_saturation:1.0;\n float u_gamma:1.0;\n};\n\nin vec2 v_texCoord;\nout vec4 outputColor;\nvec3 setContrast(vec3 rgb, float contrast) {\n vec3 color = mix(vec3(0.5), rgb, contrast);\n color = clamp(color, 0.0, 1.0);\n return color;\n}\nvec3 setSaturation(vec3 rgb, float adjustment) {\n const vec3 grayVector = vec3(0.2125, 0.7154, 0.0721);\n vec3 intensity = vec3(dot(rgb, grayVector));\n vec3 color = mix(intensity, rgb, adjustment);\n color = clamp(color, 0.0, 1.0);\n return color;\n}\nvoid main() {\n vec4 color = texture(SAMPLER_2D(u_texture),vec2(v_texCoord.x,v_texCoord.y));\n //brightness\n color.rgb = mix(vec3(0.0, 0.0, 0.0), color.rgb, u_brightness);\n //contrast\n color.rgb = setContrast(color.rgb, u_contrast);\n // saturation\n color.rgb = setSaturation(color.rgb, u_saturation);\n // gamma\n color.rgb = pow(color.rgb, vec3(u_gamma));\n outputColor = color;\n outputColor.a *= u_opacity;\n if(outputColor.a < 0.01)\n discard;\n}\n";
15
15
  /* babel-plugin-inline-import '../shaders/image_vert.glsl' */
16
- var ImageVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\n\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n gl_Position = project_common_position_to_clipspace_v2(vec4(project_pos.xy,0., 1.0));\n \n}\n";
16
+ var ImageVert = "layout(location = 0) in vec3 a_Position;\nlayout(location = 14) in vec2 a_Uv;\n\nlayout(std140) uniform commonUniforms {\n float u_opacity:1.0;\n float u_brightness:1.0;\n float u_contrast:1.0;\n float u_saturation:1.0;\n float u_gamma:1.0;\n};\n\nout vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n gl_Position = project_common_position_to_clipspace_v2(vec4(project_pos.xy,0., 1.0));\n \n}\n";
17
+ import { ShaderLocation } from "../../core/CommonStyleAttribute";
18
+ import { defaultValue, rgb2arr } from '@antv/l7-utils';
17
19
  var ImageModel = /*#__PURE__*/function (_BaseModel) {
18
20
  _inherits(ImageModel, _BaseModel);
19
21
  var _super = _createSuper(ImageModel);
@@ -22,33 +24,74 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
22
24
  return _super.apply(this, arguments);
23
25
  }
24
26
  _createClass(ImageModel, [{
25
- key: "getUninforms",
26
- value: function getUninforms() {
27
+ key: "getCommonUniformsInfo",
28
+ value: function getCommonUniformsInfo() {
27
29
  var _ref = this.layer.getLayerConfig(),
28
- opacity = _ref.opacity;
29
- return {
30
- u_opacity: opacity || 1,
31
- u_texture: this.texture
30
+ _ref$color = _ref.color,
31
+ color = _ref$color === void 0 ? 'rgb(255,255,255)' : _ref$color,
32
+ opacity = _ref.opacity,
33
+ brightness = _ref.brightness,
34
+ contrast = _ref.contrast,
35
+ saturation = _ref.saturation,
36
+ gamma = _ref.gamma;
37
+ var colorArry = rgb2arr(color);
38
+ var commonOptions = {
39
+ u_opacity: defaultValue(opacity, 1.0),
40
+ u_brightness: defaultValue(brightness, 1.0),
41
+ u_contrast: defaultValue(contrast, 1.0),
42
+ u_saturation: defaultValue(saturation, 1.0),
43
+ u_gamma: defaultValue(gamma, 1.0)
32
44
  };
45
+ this.textures = [this.texture];
46
+ var commonBufferInfo = this.getUniformsBufferInfo(commonOptions);
47
+ return commonBufferInfo;
33
48
  }
34
49
  }, {
35
50
  key: "initModels",
36
51
  value: function () {
37
52
  var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
38
- var source, createTexture2D, imageData, model;
39
53
  return _regeneratorRuntime.wrap(function _callee$(_context) {
40
54
  while (1) switch (_context.prev = _context.next) {
41
55
  case 0:
42
- source = this.layer.getSource();
56
+ _context.next = 2;
57
+ return this.loadTexture();
58
+ case 2:
59
+ return _context.abrupt("return", this.buildModels());
60
+ case 3:
61
+ case "end":
62
+ return _context.stop();
63
+ }
64
+ }, _callee, this);
65
+ }));
66
+ function initModels() {
67
+ return _initModels.apply(this, arguments);
68
+ }
69
+ return initModels;
70
+ }()
71
+ }, {
72
+ key: "clearModels",
73
+ value: function clearModels() {
74
+ var _this$texture;
75
+ (_this$texture = this.texture) === null || _this$texture === void 0 || _this$texture.destroy();
76
+ }
77
+ }, {
78
+ key: "loadTexture",
79
+ value: function () {
80
+ var _loadTexture = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
81
+ var createTexture2D, source, imageData;
82
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
83
+ while (1) switch (_context2.prev = _context2.next) {
84
+ case 0:
43
85
  createTexture2D = this.rendererService.createTexture2D;
44
86
  this.texture = createTexture2D({
45
87
  height: 0,
46
88
  width: 0
47
89
  });
48
- _context.next = 5;
90
+ source = this.layer.getSource();
91
+ _context2.next = 5;
49
92
  return source.data.images;
50
93
  case 5:
51
- imageData = _context.sent;
94
+ imageData = _context2.sent;
52
95
  this.texture = createTexture2D({
53
96
  data: imageData[0],
54
97
  width: imageData[0].width,
@@ -56,7 +99,27 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
56
99
  mag: gl.LINEAR,
57
100
  min: gl.LINEAR
58
101
  });
59
- _context.next = 9;
102
+ case 7:
103
+ case "end":
104
+ return _context2.stop();
105
+ }
106
+ }, _callee2, this);
107
+ }));
108
+ function loadTexture() {
109
+ return _loadTexture.apply(this, arguments);
110
+ }
111
+ return loadTexture;
112
+ }()
113
+ }, {
114
+ key: "buildModels",
115
+ value: function () {
116
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
117
+ var model;
118
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
119
+ while (1) switch (_context3.prev = _context3.next) {
120
+ case 0:
121
+ this.initUniformsBuffer();
122
+ _context3.next = 3;
60
123
  return this.layer.buildLayerModel({
61
124
  moduleName: 'rasterImage',
62
125
  vertexShader: ImageVert,
@@ -71,39 +134,14 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
71
134
  enable: false
72
135
  }
73
136
  });
74
- case 9:
75
- model = _context.sent;
76
- return _context.abrupt("return", [model]);
77
- case 11:
78
- case "end":
79
- return _context.stop();
80
- }
81
- }, _callee, this);
82
- }));
83
- function initModels() {
84
- return _initModels.apply(this, arguments);
85
- }
86
- return initModels;
87
- }()
88
- }, {
89
- key: "clearModels",
90
- value: function clearModels() {
91
- var _this$texture;
92
- (_this$texture = this.texture) === null || _this$texture === void 0 || _this$texture.destroy();
93
- }
94
- }, {
95
- key: "buildModels",
96
- value: function () {
97
- var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
98
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
99
- while (1) switch (_context2.prev = _context2.next) {
100
- case 0:
101
- return _context2.abrupt("return", this.initModels());
102
- case 1:
137
+ case 3:
138
+ model = _context3.sent;
139
+ return _context3.abrupt("return", [model]);
140
+ case 5:
103
141
  case "end":
104
- return _context2.stop();
142
+ return _context3.stop();
105
143
  }
106
- }, _callee2, this);
144
+ }, _callee3, this);
107
145
  }));
108
146
  function buildModels() {
109
147
  return _buildModels.apply(this, arguments);
@@ -118,6 +156,7 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
118
156
  type: AttributeType.Attribute,
119
157
  descriptor: {
120
158
  name: 'a_Uv',
159
+ shaderLocation: ShaderLocation.UV,
121
160
  buffer: {
122
161
  usage: gl.DYNAMIC_DRAW,
123
162
  data: [],
@@ -1,11 +1,38 @@
1
- precision mediump float;
2
- uniform float u_opacity: 1.0;
3
1
  uniform sampler2D u_texture;
4
- varying vec2 v_texCoord;
2
+ layout(std140) uniform commonUniforms {
3
+ float u_opacity:1.0;
4
+ float u_brightness:1.0;
5
+ float u_contrast:1.0;
6
+ float u_saturation:1.0;
7
+ float u_gamma:1.0;
8
+ };
9
+
10
+ in vec2 v_texCoord;
11
+ out vec4 outputColor;
12
+ vec3 setContrast(vec3 rgb, float contrast) {
13
+ vec3 color = mix(vec3(0.5), rgb, contrast);
14
+ color = clamp(color, 0.0, 1.0);
15
+ return color;
16
+ }
17
+ vec3 setSaturation(vec3 rgb, float adjustment) {
18
+ const vec3 grayVector = vec3(0.2125, 0.7154, 0.0721);
19
+ vec3 intensity = vec3(dot(rgb, grayVector));
20
+ vec3 color = mix(intensity, rgb, adjustment);
21
+ color = clamp(color, 0.0, 1.0);
22
+ return color;
23
+ }
5
24
  void main() {
6
- vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));
7
- gl_FragColor = color;
8
- gl_FragColor.a *= u_opacity;
9
- if(gl_FragColor.a < 0.01)
25
+ vec4 color = texture(SAMPLER_2D(u_texture),vec2(v_texCoord.x,v_texCoord.y));
26
+ //brightness
27
+ color.rgb = mix(vec3(0.0, 0.0, 0.0), color.rgb, u_brightness);
28
+ //contrast
29
+ color.rgb = setContrast(color.rgb, u_contrast);
30
+ // saturation
31
+ color.rgb = setSaturation(color.rgb, u_saturation);
32
+ // gamma
33
+ color.rgb = pow(color.rgb, vec3(u_gamma));
34
+ outputColor = color;
35
+ outputColor.a *= u_opacity;
36
+ if(outputColor.a < 0.01)
10
37
  discard;
11
38
  }
@@ -1,9 +1,15 @@
1
- precision highp float;
2
- uniform mat4 u_ModelMatrix;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 14) in vec2 a_Uv;
3
3
 
4
- attribute vec3 a_Position;
5
- attribute vec2 a_Uv;
6
- varying vec2 v_texCoord;
4
+ layout(std140) uniform commonUniforms {
5
+ float u_opacity:1.0;
6
+ float u_brightness:1.0;
7
+ float u_contrast:1.0;
8
+ float u_saturation:1.0;
9
+ float u_gamma:1.0;
10
+ };
11
+
12
+ out vec2 v_texCoord;
7
13
  #pragma include "projection"
8
14
  void main() {
9
15
  v_texCoord = a_Uv;
@@ -1,7 +1,7 @@
1
- import { IParseDataItem } from '@antv/l7-core';
1
+ import type { IParseDataItem } from '@antv/l7-core';
2
2
  import BaseLayer from '../core/BaseLayer';
3
- import { ILineLayerStyleOptions } from '../core/interface';
4
- import { LineModelType } from './models';
3
+ import type { ILineLayerStyleOptions } from '../core/interface';
4
+ import type { LineModelType } from './models';
5
5
  export default class LineLayer extends BaseLayer<ILineLayerStyleOptions> {
6
6
  type: string;
7
7
  enableShaderEncodeStyles: string[];
@@ -24,7 +24,7 @@ export default class LineLayer extends BaseLayer<ILineLayerStyleOptions> {
24
24
  };
25
25
  };
26
26
  buildModels(): Promise<void>;
27
- protected getDefaultConfig(): {} | {} | {} | {} | {
27
+ protected getDefaultConfig(): {} | {} | {} | {
28
28
  blend: string;
29
29
  } | {
30
30
  blend: string;
package/es/line/index.js CHANGED
@@ -23,7 +23,8 @@ var LineLayer = /*#__PURE__*/function (_BaseLayer) {
23
23
  }
24
24
  _this = _super.call.apply(_super, [this].concat(args));
25
25
  _defineProperty(_assertThisInitialized(_this), "type", 'LineLayer');
26
- _defineProperty(_assertThisInitialized(_this), "enableShaderEncodeStyles", ['opacity', 'offsets', 'stroke', 'thetaOffset']);
26
+ _defineProperty(_assertThisInitialized(_this), "enableShaderEncodeStyles", ['stroke', 'offsets', 'opacity', 'thetaOffset']);
27
+ //注意顺序 4+2+1+1
27
28
  _defineProperty(_assertThisInitialized(_this), "arrowInsertCount", 0);
28
29
  _defineProperty(_assertThisInitialized(_this), "defaultSourceConfig", {
29
30
  data: [{
@@ -1,9 +1,14 @@
1
- import { IModel, IModelUniform, ITexture2D } from '@antv/l7-core';
1
+ import type { IModel, ITexture2D } from '@antv/l7-core';
2
2
  import BaseModel from '../../core/BaseModel';
3
3
  export default class ArcModel extends BaseModel {
4
4
  protected texture: ITexture2D;
5
- getUninforms(): IModelUniform;
6
- getAnimateUniforms(): IModelUniform;
5
+ protected getCommonUniformsInfo(): {
6
+ uniformsArray: number[];
7
+ uniformsLength: number;
8
+ uniformsOption: {
9
+ [key: string]: any;
10
+ };
11
+ };
7
12
  initModels(): Promise<IModel[]>;
8
13
  clearModels(): void;
9
14
  getShaders(): {