@antv/l7-layers 2.20.5 → 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 (447) 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 +53 -9
  8. package/es/core/BaseModel.d.ts +1 -1
  9. package/es/core/BaseModel.js +41 -15
  10. package/es/core/CommonStyleAttribute.d.ts +4 -2
  11. package/es/core/CommonStyleAttribute.js +3 -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.js +1 -1
  22. package/es/earth/index.d.ts +1 -1
  23. package/es/earth/models/atmosphere.d.ts +8 -2
  24. package/es/earth/models/atmosphere.js +15 -8
  25. package/es/earth/models/base.d.ts +8 -2
  26. package/es/earth/models/base.js +21 -12
  27. package/es/earth/models/bloomsphere.d.ts +8 -2
  28. package/es/earth/models/bloomsphere.js +15 -8
  29. package/es/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  30. package/es/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  31. package/es/earth/shaders/base/base_frag.glsl +11 -0
  32. package/es/earth/shaders/base/base_vert.glsl +52 -0
  33. package/es/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  34. package/es/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  35. package/es/geometry/index.d.ts +2 -2
  36. package/es/geometry/models/billboard.d.ts +8 -1
  37. package/es/geometry/models/billboard.js +26 -11
  38. package/es/geometry/models/plane.d.ts +8 -1
  39. package/es/geometry/models/plane.js +23 -6
  40. package/es/geometry/models/sprite.d.ts +12 -2
  41. package/es/geometry/models/sprite.js +44 -18
  42. package/es/geometry/shaders/billboard_frag.glsl +11 -6
  43. package/es/geometry/shaders/billboard_vert.glsl +12 -15
  44. package/es/geometry/shaders/plane_frag.glsl +14 -10
  45. package/es/geometry/shaders/plane_vert.glsl +11 -10
  46. package/es/geometry/shaders/sprite_frag.glsl +11 -7
  47. package/es/geometry/shaders/sprite_vert.glsl +10 -9
  48. package/es/heatmap/index.d.ts +3 -3
  49. package/es/heatmap/models/grid.d.ts +8 -1
  50. package/es/heatmap/models/grid.js +25 -12
  51. package/es/heatmap/models/grid3d.d.ts +8 -1
  52. package/es/heatmap/models/grid3d.js +29 -13
  53. package/es/heatmap/models/heatmap.d.ts +6 -4
  54. package/es/heatmap/models/heatmap.js +123 -75
  55. package/es/heatmap/models/hexagon.d.ts +8 -1
  56. package/es/heatmap/models/hexagon.js +25 -12
  57. package/es/heatmap/shaders/grid/grid_frag.glsl +8 -0
  58. package/es/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  59. package/es/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  60. package/{lib/heatmap/shaders/hexagon_3d_vert.glsl → es/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  61. package/es/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  62. package/es/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  63. package/es/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  64. package/es/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  65. package/{lib/heatmap/shaders → es/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  66. package/es/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  67. package/es/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  68. package/es/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  69. package/es/image/index.d.ts +2 -2
  70. package/es/image/models/image.d.ts +9 -2
  71. package/es/image/models/image.js +83 -44
  72. package/es/image/shaders/image_frag.glsl +34 -7
  73. package/es/image/shaders/image_vert.glsl +11 -5
  74. package/es/line/index.d.ts +4 -4
  75. package/es/line/index.js +2 -1
  76. package/es/line/models/arc.d.ts +8 -3
  77. package/es/line/models/arc.js +57 -76
  78. package/es/line/models/arc_3d.d.ts +8 -3
  79. package/es/line/models/arc_3d.js +46 -57
  80. package/es/line/models/flow.d.ts +8 -2
  81. package/es/line/models/flow.js +14 -12
  82. package/es/line/models/great_circle.d.ts +8 -3
  83. package/es/line/models/great_circle.js +40 -29
  84. package/es/line/models/index.d.ts +1 -1
  85. package/es/line/models/index.js +3 -6
  86. package/es/line/models/line.d.ts +8 -3
  87. package/es/line/models/line.js +67 -140
  88. package/es/line/models/{simpleLine.d.ts → simple_line.d.ts} +8 -2
  89. package/es/line/models/simple_line.js +204 -0
  90. package/es/line/models/wall.d.ts +8 -3
  91. package/es/line/models/wall.js +35 -27
  92. package/es/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  93. package/es/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  94. package/es/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  95. package/{lib/line/shaders → es/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  96. package/es/line/shaders/flow/flow_line_frag.glsl +5 -4
  97. package/es/line/shaders/flow/flow_line_vert.glsl +17 -18
  98. package/es/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  99. package/{lib/line/shaders → es/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  100. package/es/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  101. package/es/line/shaders/line/line_vert.glsl +114 -0
  102. package/es/line/shaders/simple/simpleline_frag.glsl +27 -3
  103. package/es/line/shaders/simple/simpleline_vert.glsl +20 -20
  104. package/es/line/shaders/wall/wall_frag.glsl +31 -26
  105. package/es/line/shaders/wall/wall_vert.glsl +29 -22
  106. package/es/mask/index.d.ts +2 -2
  107. package/es/mask/models/fill.d.ts +1 -1
  108. package/es/plugins/DataMappingPlugin.d.ts +1 -1
  109. package/es/plugins/DataMappingPlugin.js +1 -3
  110. package/es/plugins/DataSourcePlugin.d.ts +1 -1
  111. package/es/plugins/FeatureScalePlugin.d.ts +1 -1
  112. package/es/plugins/FeatureScalePlugin.js +14 -3
  113. package/es/plugins/LayerAnimateStylePlugin.d.ts +1 -1
  114. package/es/plugins/LayerMaskPlugin.d.ts +1 -1
  115. package/es/plugins/LayerModelPlugin.d.ts +1 -1
  116. package/es/plugins/LayerStylePlugin.d.ts +1 -1
  117. package/es/plugins/LightingPlugin.d.ts +1 -1
  118. package/es/plugins/MultiPassRendererPlugin.d.ts +1 -1
  119. package/es/plugins/PixelPickingPlugin.d.ts +6 -2
  120. package/es/plugins/PixelPickingPlugin.js +36 -49
  121. package/es/plugins/RegisterStyleAttributePlugin.d.ts +1 -1
  122. package/es/plugins/ShaderUniformPlugin.d.ts +1 -1
  123. package/es/plugins/ShaderUniformPlugin.js +11 -6
  124. package/es/plugins/UpdateModelPlugin.d.ts +1 -1
  125. package/es/plugins/UpdateStyleAttributePlugin.d.ts +1 -1
  126. package/es/point/index.d.ts +2 -2
  127. package/es/point/index.js +1 -0
  128. package/es/point/models/billboard_point.d.ts +9 -3
  129. package/es/point/models/billboard_point.js +18 -18
  130. package/es/point/models/earthExtrude.d.ts +7 -12
  131. package/es/point/models/earthExtrude.js +21 -13
  132. package/es/point/models/earthFill.d.ts +8 -3
  133. package/es/point/models/earthFill.js +18 -30
  134. package/es/point/models/extrude.d.ts +1 -4
  135. package/es/point/models/extrude.js +2 -11
  136. package/es/point/models/fill.d.ts +8 -2
  137. package/es/point/models/fill.js +33 -84
  138. package/es/point/models/{fillmage.d.ts → fillImage.d.ts} +8 -2
  139. package/es/point/models/{fillmage.js → fillImage.js} +23 -15
  140. package/es/point/models/image.d.ts +8 -1
  141. package/es/point/models/image.js +31 -17
  142. package/es/point/models/index.js +1 -1
  143. package/es/point/models/normal.d.ts +9 -3
  144. package/es/point/models/normal.js +13 -30
  145. package/es/point/models/radar.d.ts +8 -2
  146. package/es/point/models/radar.js +23 -45
  147. package/es/point/models/text.d.ts +9 -2
  148. package/es/point/models/text.js +31 -32
  149. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  150. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  151. package/es/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  152. package/{lib/point/shaders/earth/extrude_vert.glsl → es/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  153. package/{lib/point/shaders/earth/fill_frag.glsl → es/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  154. package/{lib/point/shaders/earth/fill_vert.glsl → es/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  155. package/es/point/shaders/extrude/extrude_vert.glsl +0 -3
  156. package/{lib/point/shaders → es/point/shaders/fill}/fill_frag.glsl +18 -1
  157. package/es/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  158. package/es/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  159. package/{lib/point/shaders/image → es/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  160. package/es/point/shaders/image/image_frag.glsl +42 -0
  161. package/{lib/point/shaders → es/point/shaders/image}/image_vert.glsl +14 -13
  162. package/es/point/shaders/radar/radar_frag.glsl +19 -14
  163. package/es/point/shaders/radar/radar_vert.glsl +21 -24
  164. package/es/point/shaders/text/text_frag.glsl +44 -0
  165. package/es/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  166. package/es/point/shape/extrude.d.ts +1 -1
  167. package/es/polygon/index.d.ts +2 -2
  168. package/es/polygon/models/extrude.d.ts +9 -9
  169. package/es/polygon/models/extrude.js +38 -15
  170. package/es/polygon/models/extrusion.d.ts +8 -1
  171. package/es/polygon/models/extrusion.js +24 -7
  172. package/es/polygon/models/fill.d.ts +9 -4
  173. package/es/polygon/models/fill.js +26 -13
  174. package/es/polygon/models/ocean.d.ts +9 -7
  175. package/es/polygon/models/ocean.js +30 -14
  176. package/es/polygon/models/water.d.ts +9 -4
  177. package/es/polygon/models/water.js +26 -10
  178. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  179. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  180. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  181. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  182. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  183. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  184. package/es/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  185. package/es/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  186. package/es/polygon/shaders/fill/fill_frag.glsl +7 -0
  187. package/es/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  188. package/{lib/polygon/shaders/polygon_linear_vert.glsl → es/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  189. package/es/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  190. package/es/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  191. package/es/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  192. package/es/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  193. package/es/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  194. package/es/raster/buffers/triangulation.d.ts +1 -1
  195. package/es/raster/index.d.ts +2 -2
  196. package/es/raster/models/raster.d.ts +9 -8
  197. package/es/raster/models/raster.js +54 -38
  198. package/es/raster/models/rasterRgb.d.ts +9 -7
  199. package/es/raster/models/rasterRgb.js +36 -19
  200. package/es/raster/models/rasterTerrainRgb.d.ts +1 -1
  201. package/es/raster/models/rasterTerrainRgb.js +2 -2
  202. package/es/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  203. package/es/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  204. package/es/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  205. package/es/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  206. package/es/tile/core/BaseLayer.d.ts +2 -2
  207. package/es/tile/core/TileDebugLayer.d.ts +1 -1
  208. package/es/tile/interaction/getRasterData.d.ts +2 -2
  209. package/es/tile/interaction/utils.d.ts +1 -1
  210. package/es/tile/interface.d.ts +2 -2
  211. package/es/tile/service/TileLayerService.d.ts +2 -2
  212. package/es/tile/service/TilePickService.d.ts +2 -2
  213. package/es/tile/service/TileSourceService.d.ts +1 -1
  214. package/es/tile/tile/Tile.d.ts +2 -3
  215. package/es/tile/tile/VectorTile.d.ts +1 -1
  216. package/es/tile/tile/index.d.ts +1 -1
  217. package/es/tile/utils/constants.js +1 -1
  218. package/es/tile/utils/utils.d.ts +1 -1
  219. package/es/utils/blend.d.ts +1 -1
  220. package/es/utils/multiPassRender.d.ts +1 -1
  221. package/es/utils/stencil.d.ts +1 -1
  222. package/es/wind/index.d.ts +3 -3
  223. package/es/wind/models/wind.d.ts +1 -1
  224. package/lib/citybuliding/models/build.js +22 -11
  225. package/lib/citybuliding/shaders/build_frag.glsl +26 -23
  226. package/lib/citybuliding/shaders/build_vert.glsl +24 -16
  227. package/lib/core/BaseLayer.js +53 -9
  228. package/lib/core/BaseModel.js +41 -15
  229. package/lib/core/CommonStyleAttribute.js +3 -0
  230. package/lib/core/triangulation.js +12 -6
  231. package/lib/core/utils.js +1 -1
  232. package/lib/earth/models/atmosphere.js +15 -8
  233. package/lib/earth/models/base.js +21 -12
  234. package/lib/earth/models/bloomsphere.js +15 -8
  235. package/lib/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  236. package/lib/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  237. package/lib/earth/shaders/base/base_frag.glsl +11 -0
  238. package/lib/earth/shaders/base/base_vert.glsl +52 -0
  239. package/lib/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  240. package/lib/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  241. package/lib/geometry/models/billboard.js +26 -11
  242. package/lib/geometry/models/plane.js +23 -6
  243. package/lib/geometry/models/sprite.js +44 -18
  244. package/lib/geometry/shaders/billboard_frag.glsl +11 -6
  245. package/lib/geometry/shaders/billboard_vert.glsl +12 -15
  246. package/lib/geometry/shaders/plane_frag.glsl +14 -10
  247. package/lib/geometry/shaders/plane_vert.glsl +11 -10
  248. package/lib/geometry/shaders/sprite_frag.glsl +11 -7
  249. package/lib/geometry/shaders/sprite_vert.glsl +10 -9
  250. package/lib/heatmap/models/grid.js +25 -12
  251. package/lib/heatmap/models/grid3d.js +29 -13
  252. package/lib/heatmap/models/heatmap.js +122 -74
  253. package/lib/heatmap/models/hexagon.js +25 -12
  254. package/lib/heatmap/shaders/grid/grid_frag.glsl +8 -0
  255. package/lib/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  256. package/lib/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  257. package/{es/heatmap/shaders/hexagon_3d_vert.glsl → lib/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  258. package/lib/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  259. package/lib/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  260. package/lib/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  261. package/lib/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  262. package/{es/heatmap/shaders → lib/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  263. package/lib/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  264. package/lib/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  265. package/lib/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  266. package/lib/image/models/image.js +83 -44
  267. package/lib/image/shaders/image_frag.glsl +34 -7
  268. package/lib/image/shaders/image_vert.glsl +11 -5
  269. package/lib/line/index.js +2 -1
  270. package/lib/line/models/arc.js +57 -76
  271. package/lib/line/models/arc_3d.js +47 -59
  272. package/lib/line/models/flow.js +14 -12
  273. package/lib/line/models/great_circle.js +40 -29
  274. package/lib/line/models/index.js +4 -7
  275. package/lib/line/models/line.js +67 -142
  276. package/lib/line/models/{simpleLine.js → simple_line.js} +84 -74
  277. package/lib/line/models/wall.js +35 -27
  278. package/lib/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  279. package/lib/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  280. package/lib/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  281. package/{es/line/shaders → lib/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  282. package/lib/line/shaders/flow/flow_line_frag.glsl +5 -4
  283. package/lib/line/shaders/flow/flow_line_vert.glsl +17 -18
  284. package/lib/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  285. package/{es/line/shaders → lib/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  286. package/lib/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  287. package/lib/line/shaders/line/line_vert.glsl +114 -0
  288. package/lib/line/shaders/simple/simpleline_frag.glsl +27 -3
  289. package/lib/line/shaders/simple/simpleline_vert.glsl +20 -20
  290. package/lib/line/shaders/wall/wall_frag.glsl +31 -26
  291. package/lib/line/shaders/wall/wall_vert.glsl +29 -22
  292. package/lib/plugins/DataMappingPlugin.js +1 -3
  293. package/lib/plugins/FeatureScalePlugin.js +14 -3
  294. package/lib/plugins/PixelPickingPlugin.js +35 -48
  295. package/lib/plugins/ShaderUniformPlugin.js +11 -6
  296. package/lib/point/index.js +1 -0
  297. package/lib/point/models/billboard_point.js +18 -18
  298. package/lib/point/models/earthExtrude.js +21 -13
  299. package/lib/point/models/earthFill.js +18 -30
  300. package/lib/point/models/extrude.js +2 -11
  301. package/lib/point/models/fill.js +33 -84
  302. package/lib/point/models/{fillmage.js → fillImage.js} +24 -17
  303. package/lib/point/models/image.js +31 -17
  304. package/lib/point/models/index.js +2 -2
  305. package/lib/point/models/normal.js +13 -30
  306. package/lib/point/models/radar.js +23 -45
  307. package/lib/point/models/text.js +31 -32
  308. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  309. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  310. package/lib/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  311. package/{es/point/shaders/earth/extrude_vert.glsl → lib/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  312. package/{es/point/shaders/earth/fill_frag.glsl → lib/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  313. package/{es/point/shaders/earth/fill_vert.glsl → lib/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  314. package/lib/point/shaders/extrude/extrude_vert.glsl +0 -3
  315. package/{es/point/shaders → lib/point/shaders/fill}/fill_frag.glsl +18 -1
  316. package/lib/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  317. package/lib/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  318. package/{es/point/shaders/image → lib/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  319. package/lib/point/shaders/image/image_frag.glsl +42 -0
  320. package/{es/point/shaders → lib/point/shaders/image}/image_vert.glsl +14 -13
  321. package/lib/point/shaders/radar/radar_frag.glsl +19 -14
  322. package/lib/point/shaders/radar/radar_vert.glsl +21 -24
  323. package/lib/point/shaders/text/text_frag.glsl +44 -0
  324. package/lib/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  325. package/lib/polygon/models/extrude.js +38 -15
  326. package/lib/polygon/models/extrusion.js +24 -7
  327. package/lib/polygon/models/fill.js +26 -13
  328. package/lib/polygon/models/ocean.js +30 -14
  329. package/lib/polygon/models/water.js +26 -10
  330. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  331. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  332. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  333. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  334. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  335. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  336. package/lib/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  337. package/lib/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  338. package/lib/polygon/shaders/fill/fill_frag.glsl +7 -0
  339. package/lib/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  340. package/{es/polygon/shaders/polygon_linear_vert.glsl → lib/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  341. package/lib/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  342. package/lib/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  343. package/lib/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  344. package/lib/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  345. package/lib/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  346. package/lib/raster/models/raster.js +54 -38
  347. package/lib/raster/models/rasterRgb.js +36 -19
  348. package/lib/raster/models/rasterTerrainRgb.js +2 -2
  349. package/lib/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  350. package/lib/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  351. package/lib/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  352. package/lib/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  353. package/lib/tile/utils/constants.js +1 -1
  354. package/package.json +7 -7
  355. package/es/earth/shaders/atmosphere_vert.glsl +0 -26
  356. package/es/earth/shaders/base_frag.glsl +0 -13
  357. package/es/earth/shaders/base_vert.glsl +0 -52
  358. package/es/earth/shaders/bloomsphere_frag.glsl +0 -15
  359. package/es/earth/shaders/bloomsphere_vert.glsl +0 -20
  360. package/es/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  361. package/es/heatmap/shaders/heatmap_frag.glsl +0 -47
  362. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  363. package/es/heatmap/shaders/heatmap_vert.glsl +0 -10
  364. package/es/heatmap/shaders/hexagon_frag.glsl +0 -12
  365. package/es/line/models/earthArc_3d.d.ts +0 -17
  366. package/es/line/models/earthArc_3d.js +0 -285
  367. package/es/line/models/linearline.d.ts +0 -11
  368. package/es/line/models/linearline.js +0 -241
  369. package/es/line/models/simpleLine.js +0 -194
  370. package/es/line/shaders/arc_chunks.vert.glsl +0 -21
  371. package/es/line/shaders/dash/arc_dash_frag.glsl +0 -21
  372. package/es/line/shaders/dash/arc_dash_vert.glsl +0 -102
  373. package/es/line/shaders/dash/line_dash_frag.glsl +0 -27
  374. package/es/line/shaders/dash/line_dash_vert.glsl +0 -82
  375. package/es/line/shaders/line_arc2d_vert.glsl +0 -114
  376. package/es/line/shaders/line_bezier_vert.glsl +0 -85
  377. package/es/line/shaders/line_vert.glsl +0 -165
  378. package/es/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  379. package/es/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  380. package/es/line/shaders/linear/arc_linear_frag.glsl +0 -10
  381. package/es/line/shaders/linear/arc_linear_vert.glsl +0 -98
  382. package/es/line/shaders/linear/line_linear_frag.glsl +0 -25
  383. package/es/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  384. package/es/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  385. package/es/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  386. package/es/point/shaders/animate/wave_frag.glsl +0 -55
  387. package/es/point/shaders/earth/extrude_frag.glsl +0 -32
  388. package/es/point/shaders/image/fillImage_frag.glsl +0 -18
  389. package/es/point/shaders/image_frag.glsl +0 -37
  390. package/es/point/shaders/text_frag.glsl +0 -39
  391. package/es/polygon/shaders/polygon_frag.glsl +0 -7
  392. package/es/polygon/shaders/polygon_linear_frag.glsl +0 -15
  393. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  394. package/es/raster/shaders/raster_2d_frag.glsl +0 -32
  395. package/es/raster/shaders/raster_2d_vert.glsl +0 -13
  396. package/es/raster/shaders/raster_frag.glsl +0 -11
  397. package/es/raster/shaders/raster_rgb_frag.glsl +0 -20
  398. package/es/raster/shaders/raster_vert.glsl +0 -34
  399. package/lib/earth/shaders/atmosphere_vert.glsl +0 -26
  400. package/lib/earth/shaders/base_frag.glsl +0 -13
  401. package/lib/earth/shaders/base_vert.glsl +0 -52
  402. package/lib/earth/shaders/bloomsphere_frag.glsl +0 -15
  403. package/lib/earth/shaders/bloomsphere_vert.glsl +0 -20
  404. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  405. package/lib/heatmap/shaders/heatmap_frag.glsl +0 -47
  406. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  407. package/lib/heatmap/shaders/heatmap_vert.glsl +0 -10
  408. package/lib/heatmap/shaders/hexagon_frag.glsl +0 -12
  409. package/lib/line/models/earthArc_3d.js +0 -291
  410. package/lib/line/models/linearline.js +0 -247
  411. package/lib/line/shaders/arc_chunks.vert.glsl +0 -21
  412. package/lib/line/shaders/dash/arc_dash_frag.glsl +0 -21
  413. package/lib/line/shaders/dash/arc_dash_vert.glsl +0 -102
  414. package/lib/line/shaders/dash/line_dash_frag.glsl +0 -27
  415. package/lib/line/shaders/dash/line_dash_vert.glsl +0 -82
  416. package/lib/line/shaders/line_arc2d_vert.glsl +0 -114
  417. package/lib/line/shaders/line_bezier_vert.glsl +0 -85
  418. package/lib/line/shaders/line_vert.glsl +0 -165
  419. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  420. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  421. package/lib/line/shaders/linear/arc_linear_frag.glsl +0 -10
  422. package/lib/line/shaders/linear/arc_linear_vert.glsl +0 -98
  423. package/lib/line/shaders/linear/line_linear_frag.glsl +0 -25
  424. package/lib/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  425. package/lib/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  426. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  427. package/lib/point/shaders/animate/wave_frag.glsl +0 -55
  428. package/lib/point/shaders/earth/extrude_frag.glsl +0 -32
  429. package/lib/point/shaders/image/fillImage_frag.glsl +0 -18
  430. package/lib/point/shaders/image_frag.glsl +0 -37
  431. package/lib/point/shaders/text_frag.glsl +0 -39
  432. package/lib/polygon/shaders/polygon_frag.glsl +0 -7
  433. package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -15
  434. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  435. package/lib/raster/shaders/raster_2d_frag.glsl +0 -32
  436. package/lib/raster/shaders/raster_2d_vert.glsl +0 -13
  437. package/lib/raster/shaders/raster_frag.glsl +0 -11
  438. package/lib/raster/shaders/raster_rgb_frag.glsl +0 -20
  439. package/lib/raster/shaders/raster_vert.glsl +0 -34
  440. /package/es/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  441. /package/es/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  442. /package/es/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  443. /package/es/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
  444. /package/lib/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  445. /package/lib/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  446. /package/lib/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  447. /package/lib/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
@@ -1,12 +1,14 @@
1
-
2
1
  layout(std140) uniform commonUniforms {
3
2
  vec3 u_blur_height_fixed;
4
3
  float u_stroke_width;
5
4
  float u_additive;
6
5
  float u_stroke_opacity;
7
6
  float u_size_unit;
7
+ float u_time;
8
+ vec4 u_animate;
8
9
  };
9
10
 
11
+
10
12
  in vec4 v_color;
11
13
  in vec4 v_stroke;
12
14
  in vec4 v_data;
@@ -63,17 +65,32 @@ void main() {
63
65
  inner_df
64
66
  );
65
67
 
68
+ float PI = 3.14159;
69
+ float N_RINGS = 3.0;
70
+ float FREQ = 1.0;
71
+
66
72
  if(u_stroke_width < 0.01) {
67
73
  outputColor = v_color;
68
74
  } else {
69
75
  outputColor = mix(v_color, v_stroke * u_stroke_opacity, color_t);
70
76
  }
77
+ float intensity = 1.0;
78
+ if(u_time!=-1.0){
79
+ //wave相关逻辑
80
+ float d = length(v_data.xy);
81
+ if(d > 0.5) {
82
+ discard;
83
+ }
84
+ intensity = clamp(cos(d * PI), 0.0, 1.0) * clamp(cos(2.0 * PI * (d * 2.0 * u_animate.z - u_animate.y * u_time)), 0.0, 1.0);
85
+ }
71
86
 
72
87
  if(u_additive > 0.0) {
73
88
  outputColor *= opacity_t;
89
+ outputColor *= intensity;//wave
74
90
  outputColor = filterColorAlpha(outputColor, outputColor.a);
75
91
  } else {
76
92
  outputColor.a *= opacity_t;
93
+ outputColor.a *= intensity;//wave
77
94
  outputColor = filterColor(outputColor);
78
95
  }
79
96
  // 作为 mask 模板时需要丢弃透明的像素
@@ -1,8 +1,7 @@
1
1
  layout(location = 0) in vec3 a_Position;
2
2
  layout(location = 1) in vec4 a_Color;
3
- layout(location = 9) in float a_Size;
3
+ layout(location = 9) in vec2 a_SizeAndShape;
4
4
  layout(location = 11) in vec3 a_Extrude;
5
- layout(location = 10) in float a_Shape;
6
5
 
7
6
  layout(std140) uniform commonUniforms {
8
7
  vec3 u_blur_height_fixed;
@@ -10,6 +9,8 @@ layout(std140) uniform commonUniforms {
10
9
  float u_additive;
11
10
  float u_stroke_opacity;
12
11
  float u_size_unit;
12
+ float u_time;
13
+ vec4 u_animate;
13
14
  };
14
15
 
15
16
  out vec4 v_color;
@@ -25,12 +26,12 @@ void main() {
25
26
  // 透明度计算
26
27
  v_stroke = stroke;
27
28
  vec3 extrude = a_Extrude;
28
- float shape_type = a_Shape;
29
+ float shape_type = a_SizeAndShape.y;
29
30
  /*
30
31
  * setPickingSize 设置拾取大小
31
32
  * u_meter2coord 在等面积大小的时候设置单位
32
33
  */
33
- float newSize = setPickingSize(a_Size);
34
+ float newSize = setPickingSize(a_SizeAndShape.x);
34
35
  // float newSize = setPickingSize(a_Size) * 0.00001038445708445579;
35
36
 
36
37
 
@@ -0,0 +1,24 @@
1
+ in vec4 v_color;
2
+ in vec2 v_uv;// 本身的 uv 坐标
3
+ in vec2 v_Iconuv;
4
+ in float v_opacity;
5
+ out vec4 outputColor;
6
+
7
+ uniform sampler2D u_texture;
8
+ layout(std140) uniform commonUniform {
9
+ vec2 u_textSize;
10
+ float u_heightfixed: 0.0;
11
+ float u_raisingHeight: 0.0;
12
+ float u_size_unit;
13
+ };
14
+
15
+ #pragma include "sdf_2d"
16
+ #pragma include "picking"
17
+
18
+
19
+ void main() {
20
+ vec2 pos = v_Iconuv / u_textSize + v_uv / u_textSize * 64.;
21
+ outputColor = texture(SAMPLER_2D(u_texture), pos);
22
+ outputColor.a *= v_opacity;
23
+ outputColor = filterColor(outputColor);
24
+ }
@@ -1,21 +1,19 @@
1
- attribute vec4 a_Color;
2
- attribute vec3 a_Position;
3
- attribute vec3 a_Extrude;
4
- attribute float a_Size;
5
- attribute vec2 a_Uv;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 11) in vec3 a_Extrude;
5
+ layout(location = 14) in vec2 a_Uv;
6
6
 
7
- uniform mat4 u_ModelMatrix;
7
+ layout(std140) uniform commonUniform {
8
+ vec2 u_textSize;
9
+ float u_heightfixed: 0.0;
10
+ float u_raisingHeight: 0.0;
11
+ float u_size_unit;
12
+ };
8
13
 
9
- uniform mat2 u_RotateMatrix;
10
- uniform int u_size_unit;
11
-
12
- varying vec2 v_uv; // 本身的 uv 坐标
13
- varying vec2 v_Iconuv; // icon 贴图的 uv 坐标
14
-
15
- uniform float u_raisingHeight: 0.0;
16
- uniform float u_heightfixed: 0.0;
17
- varying float v_opacity;
18
- // uniform vec2 u_offsets; // shader 注入
14
+ out vec2 v_uv;
15
+ out vec2 v_Iconuv;
16
+ out float v_opacity;
19
17
 
20
18
 
21
19
  #pragma include "projection"
@@ -29,7 +27,7 @@ void main() {
29
27
  v_Iconuv = a_Uv;
30
28
  v_opacity = opacity;
31
29
  float newSize = a_Size;
32
- if(u_size_unit == 1) {
30
+ if(u_size_unit == 1.0) {
33
31
  newSize = newSize * u_PixelsPerMeter.z;
34
32
  }
35
33
 
@@ -0,0 +1,42 @@
1
+ layout(std140) uniform commonUniforms {
2
+ vec2 u_textSize;
3
+ float u_raisingHeight;
4
+ float u_heightfixed;
5
+ };
6
+
7
+ uniform sampler2D u_texture;
8
+
9
+ in vec4 v_color;
10
+ in vec2 v_uv;
11
+ in float v_opacity;
12
+
13
+ #pragma include "picking"
14
+
15
+ out vec4 outputColor;
16
+
17
+ void main(){
18
+ vec2 pos = v_uv / u_textSize + gl_PointCoord / u_textSize * 64.;
19
+ vec4 textureColor;
20
+
21
+ // Y = 0.299R + 0.587G + 0.114B // 亮度提取
22
+
23
+ textureColor = texture(SAMPLER_2D(u_texture), pos);
24
+
25
+ // Tip: 去除边缘部分 mipmap 导致的混合变暗
26
+ float fragmengTocenter = distance(vec2(0.5), gl_PointCoord);
27
+ if(fragmengTocenter >= 0.5) {
28
+ float luma = 0.299 * textureColor.r + 0.587 * textureColor.g + 0.114 * textureColor.b;
29
+ textureColor.a *= luma;
30
+ }
31
+
32
+ if(all(lessThan(v_color, vec4(1.0+0.00001))) && all(greaterThan(v_color, vec4(1.0-0.00001))) || v_color==vec4(1.0)){
33
+ outputColor= textureColor;
34
+ }else {
35
+ outputColor= step(0.01, textureColor.z) * v_color;
36
+ }
37
+ outputColor.a *= v_opacity;
38
+ if (outputColor.a < 0.01) {
39
+ discard;
40
+ }
41
+ outputColor = filterColor(outputColor);
42
+ }
@@ -1,16 +1,17 @@
1
- precision highp float;
2
- attribute vec3 a_Position;
3
- attribute vec4 a_Color;
4
- attribute vec2 a_Uv;
5
- attribute float a_Size;
6
- varying vec4 v_color;
7
- varying vec2 v_uv;
8
- varying float v_opacity;
9
- uniform mat4 u_ModelMatrix;
10
-
11
-
12
- uniform float u_raisingHeight: 0.0;
13
- uniform float u_heightfixed: 0.0;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 14) in vec2 a_Uv;
5
+
6
+ layout(std140) uniform commonUniforms {
7
+ vec2 u_textSize;
8
+ float u_raisingHeight;
9
+ float u_heightfixed;
10
+ };
11
+
12
+ out vec4 v_color;
13
+ out vec2 v_uv;
14
+ out float v_opacity;
14
15
 
15
16
  #pragma include "projection"
16
17
  #pragma include "picking"
@@ -1,14 +1,19 @@
1
1
 
2
- uniform float u_additive;
3
- uniform float u_opacity: 1.0;
4
-
5
- varying vec4 v_data;
6
- varying vec4 v_color;
7
- varying float v_radius;
8
- varying vec2 v_exteude;
2
+ layout(std140) uniform commonUniorm{
3
+ float u_additive;
4
+ float u_size_unit;
5
+ float u_speed: 1.0;
6
+ float u_time;
7
+ };
8
+ in vec4 v_data;
9
+ in vec4 v_color;
10
+ in float v_radius;
11
+ in vec2 v_extrude;
9
12
  #pragma include "sdf_2d"
10
13
  #pragma include "picking"
11
14
 
15
+ out vec4 outputColor;
16
+
12
17
  void main() {
13
18
 
14
19
  lowp float antialiasblur = v_data.z;
@@ -19,19 +24,19 @@ void main() {
19
24
 
20
25
  float opacity_t = smoothstep(0.0, antialiasblur, outer_df);
21
26
 
22
- gl_FragColor = vec4(v_color.rgb, v_color.a * u_opacity);
27
+ outputColor = vec4(v_color.rgb, v_color.a);
23
28
 
24
29
  if(u_additive > 0.0) {
25
- gl_FragColor *= opacity_t;
30
+ outputColor *= opacity_t;
26
31
  } else {
27
- gl_FragColor.a *= opacity_t;
32
+ outputColor.a *= opacity_t;
28
33
  }
29
34
 
30
- if(gl_FragColor.a > 0.0) {
31
- gl_FragColor = filterColor(gl_FragColor);
35
+ if(outputColor.a > 0.0) {
36
+ outputColor = filterColor(outputColor);
32
37
  }
33
38
 
34
- vec2 extrude = v_exteude;
39
+ vec2 extrude = v_extrude;
35
40
  vec2 dir = normalize(extrude);
36
41
  vec2 baseDir = vec2(1.0, 0.0);
37
42
  float pi = 3.14159265359;
@@ -43,5 +48,5 @@ void main() {
43
48
  radar_v = 1.0 - (radar_v - 0.99)/0.01;
44
49
  }
45
50
 
46
- gl_FragColor.a *= radar_v;
51
+ outputColor.a *= radar_v;
47
52
  }
@@ -1,50 +1,47 @@
1
- attribute vec4 a_Color;
2
- attribute vec3 a_Position;
3
- attribute vec3 a_Extrude;
4
- attribute float a_Size;
5
- uniform float u_speed: 1.0;
6
- uniform float u_time;
7
-
8
- uniform mat4 u_ModelMatrix;
9
-
10
- uniform int u_size_unit;
11
-
12
- varying vec4 v_data;
13
- varying vec4 v_color;
14
- varying float v_radius;
15
- varying vec2 v_exteude;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 11) in vec4 a_ExtrudeAndSize;
4
+
5
+ layout(std140) uniform commonUniorm {
6
+ float u_additive;
7
+ float u_size_unit;
8
+ float u_speed: 1.0;
9
+ float u_time;
10
+ };
11
+
12
+ out vec4 v_data;
13
+ out vec4 v_color;
14
+ out float v_radius;
15
+ out vec2 v_extrude;
16
16
 
17
17
  #pragma include "projection"
18
18
  #pragma include "picking"
19
19
 
20
20
  void main() {
21
- vec3 extrude = a_Extrude;
22
- float newSize = setPickingSize(a_Size);
21
+ vec3 extrude = a_ExtrudeAndSize.xyz;
22
+ float newSize = setPickingSize(a_ExtrudeAndSize.w);
23
23
 
24
24
  float time = u_time * u_speed;
25
25
  mat2 rotateMatrix = mat2(
26
26
  cos(time), sin(time),
27
27
  -sin(time), cos(time)
28
28
  );
29
- v_exteude = rotateMatrix * a_Extrude.xy;
29
+ v_extrude = rotateMatrix * a_ExtrudeAndSize.xy;
30
30
 
31
- // unpack color(vec2)
32
31
  v_color = a_Color;
32
+ v_color.a *= opacity;
33
33
 
34
- // anti-alias
35
34
  float blur = 0.0;
36
- float antialiasblur = -max(2.0 / u_DevicePixelRatio / a_Size, blur);
35
+ float antialiasblur = -max(2.0 / u_DevicePixelRatio / a_ExtrudeAndSize.w, blur);
37
36
 
38
- if(u_size_unit == 1) {
37
+ if(u_size_unit == 1.) {
39
38
  newSize = newSize * u_PixelsPerMeter.z;
40
39
  }
41
- // radius(16-bit)
42
40
  v_radius = newSize;
43
41
 
44
42
  vec2 offset = (extrude.xy * (newSize));
45
43
  vec3 aPosition = a_Position;
46
44
 
47
- // 不以米为实际单位
48
45
  offset = project_pixel(offset);
49
46
 
50
47
  v_data = vec4(extrude.x, extrude.y, antialiasblur, -1.0);
@@ -0,0 +1,44 @@
1
+ #define SDF_PX 8.0
2
+ #define EDGE_GAMMA 0.105
3
+ #define FONT_SIZE 48.0
4
+
5
+ uniform sampler2D u_sdf_map;
6
+ layout(std140) uniform commonUniforms {
7
+ vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];
8
+ vec2 u_sdf_map_size;
9
+ float u_raisingHeight: 0.0;
10
+ float u_stroke_width : 2;
11
+ float u_gamma_scale : 0.5;
12
+ float u_halo_blur : 0.5;
13
+ };
14
+
15
+ in vec4 v_color;
16
+ in vec4 v_stroke_color;
17
+ in vec2 v_uv;
18
+ in float v_gamma_scale;
19
+ in float v_fontScale;
20
+ out vec4 outputColor;
21
+
22
+ #pragma include "picking"
23
+ void main() {
24
+ // get style data mapping
25
+
26
+ // get sdf from atlas
27
+ float dist = texture(SAMPLER_2D(u_sdf_map), v_uv).a;
28
+
29
+ lowp float buff = (6.0 - u_stroke_width / v_fontScale) / SDF_PX;
30
+ highp float gamma = (u_halo_blur * 1.19 / SDF_PX + EDGE_GAMMA) / (v_fontScale * u_gamma_scale) / 1.0;
31
+
32
+ highp float gamma_scaled = gamma * v_gamma_scale;
33
+
34
+ highp float alpha = smoothstep(buff - gamma_scaled, buff + gamma_scaled, dist);
35
+
36
+ outputColor = mix(v_color, v_stroke_color, smoothstep(0., 0.5, 1.- dist));
37
+
38
+ outputColor.a *= alpha;
39
+ // 作为 mask 模板时需要丢弃透明的像素
40
+ if (outputColor.a < 0.01) {
41
+ discard;
42
+ }
43
+ outputColor = filterColor(outputColor);
44
+ }
@@ -1,24 +1,26 @@
1
1
  #define SDF_PX 8.0
2
2
  #define EDGE_GAMMA 0.105
3
3
  #define FONT_SIZE 24.0
4
- attribute vec3 a_Position;
5
- attribute vec2 a_tex;
6
- attribute vec2 a_textOffsets;
7
- attribute vec4 a_Color;
8
- attribute float a_Size;
9
4
 
10
- uniform vec2 u_sdf_map_size;
11
- uniform mat4 u_ModelMatrix;
5
+ layout(location = 0) in vec3 a_Position;
6
+ layout(location = 1) in vec4 a_Color;
7
+ layout(location = 9) in float a_Size;
8
+ layout(location = 14) in vec4 a_textUvAndOffsets;
12
9
 
13
- uniform float u_raisingHeight: 0.0;
10
+ layout(std140) uniform commonUniforms {
11
+ vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];
12
+ vec2 u_sdf_map_size;
13
+ float u_raisingHeight: 0.0;
14
+ float u_stroke_width : 2;
15
+ float u_gamma_scale : 0.5;
16
+ float u_halo_blur : 0.5;
17
+ };
14
18
 
15
- varying vec2 v_uv;
16
- varying float v_gamma_scale;
17
- varying vec4 v_color;
18
- varying vec4 v_stroke_color;
19
- varying float v_fontScale;
20
- uniform float u_stroke_width : 2;
21
- uniform vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];
19
+ out vec2 v_uv;
20
+ out float v_gamma_scale;
21
+ out vec4 v_color;
22
+ out vec4 v_stroke_color;
23
+ out float v_fontScale;
22
24
 
23
25
 
24
26
 
@@ -29,7 +31,7 @@ uniform vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];
29
31
  void main() {
30
32
  // cal style mapping - 数据纹理映射部分的计算
31
33
 
32
- v_uv = a_tex / u_sdf_map_size;
34
+ v_uv = a_textUvAndOffsets.xy / u_sdf_map_size;
33
35
 
34
36
 
35
37
 
@@ -43,7 +45,7 @@ void main() {
43
45
  vec4 project_pos = project_position(vec4(a_Position, 1.0));
44
46
  // vec4 projected_position = project_common_position_to_clipspace(vec4(project_pos.xyz, 1.0));
45
47
 
46
- vec2 offset = rotate_matrix(a_textOffsets,rotation);
48
+ vec2 offset = rotate_matrix(a_textUvAndOffsets.zw,rotation);
47
49
 
48
50
  // gl_Position = vec4(projected_position.xy / projected_position.w + rotation_matrix * a_textOffsets * fontScale / u_ViewportSize * 2.0 * u_DevicePixelRatio, 0.0, 1.0);
49
51
 
@@ -1,4 +1,4 @@
1
- import { IPath } from '../../core/shape/Path';
1
+ import type { IPath } from '../../core/shape/Path';
2
2
  export interface IExtrudeGeomety {
3
3
  positions: number[];
4
4
  index: number[];
@@ -1,6 +1,6 @@
1
1
  import BaseLayer from '../core/BaseLayer';
2
- import { IPolygonLayerStyleOptions } from '../core/interface';
3
- import { PolygonModelType } from './models/';
2
+ import type { IPolygonLayerStyleOptions } from '../core/interface';
3
+ import type { PolygonModelType } from './models/';
4
4
  export default class PolygonLayer extends BaseLayer<IPolygonLayerStyleOptions> {
5
5
  type: string;
6
6
  enableShaderEncodeStyles: string[];
@@ -1,16 +1,16 @@
1
- import { IModel, 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 ExtrudeModel extends BaseModel {
4
4
  protected texture: ITexture2D;
5
5
  getUninforms(): {
6
- u_topsurface: number;
7
- u_sidesurface: number;
8
- u_heightfixed: number;
9
- u_raisingHeight: number;
10
- u_linearColor: number;
11
- u_sourceColor: number[];
12
- u_targetColor: number[];
13
- u_texture: ITexture2D;
6
+ [x: string]: any;
7
+ };
8
+ protected getCommonUniformsInfo(): {
9
+ uniformsArray: number[];
10
+ uniformsLength: number;
11
+ uniformsOption: {
12
+ [key: string]: any;
13
+ };
14
14
  };
15
15
  initModels(): Promise<IModel[]>;
16
16
  buildModels(): Promise<IModel[]>;