@antv/l7-layers 2.10.5 → 2.10.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (387) hide show
  1. package/es/Geometry/index.d.ts +2 -3
  2. package/es/Geometry/index.js +27 -17
  3. package/es/Geometry/models/billboard.d.ts +2 -2
  4. package/es/Geometry/models/billboard.js +77 -37
  5. package/es/Geometry/models/plane.d.ts +2 -2
  6. package/es/Geometry/models/plane.js +80 -40
  7. package/es/Geometry/models/sprite.d.ts +2 -2
  8. package/es/Geometry/models/sprite.js +83 -45
  9. package/es/canvas/index.d.ts +2 -3
  10. package/es/canvas/index.js +29 -19
  11. package/es/canvas/models/canvas.d.ts +2 -2
  12. package/es/canvas/models/canvas.js +54 -15
  13. package/es/citybuliding/building.d.ts +2 -3
  14. package/es/citybuliding/building.js +26 -17
  15. package/es/citybuliding/models/build.d.ts +2 -2
  16. package/es/citybuliding/models/build.js +70 -25
  17. package/es/core/BaseLayer.d.ts +22 -18
  18. package/es/core/BaseLayer.js +387 -266
  19. package/es/core/BaseModel.d.ts +2 -2
  20. package/es/core/BaseModel.js +47 -6
  21. package/es/core/LayerPickService.d.ts +12 -0
  22. package/es/core/LayerPickService.js +165 -0
  23. package/es/core/TextureService.d.ts +14 -0
  24. package/es/core/TextureService.js +67 -0
  25. package/es/core/triangulation.js +8 -1
  26. package/es/earth/index.d.ts +2 -2
  27. package/es/earth/index.js +28 -9
  28. package/es/earth/models/atmosphere.d.ts +2 -2
  29. package/es/earth/models/atmosphere.js +67 -22
  30. package/es/earth/models/base.d.ts +2 -2
  31. package/es/earth/models/base.js +89 -43
  32. package/es/earth/models/bloomsphere.d.ts +2 -2
  33. package/es/earth/models/bloomsphere.js +67 -22
  34. package/es/heatmap/index.d.ts +2 -3
  35. package/es/heatmap/index.js +33 -24
  36. package/es/heatmap/models/grid.d.ts +2 -2
  37. package/es/heatmap/models/grid.js +68 -27
  38. package/es/heatmap/models/grid3d.d.ts +2 -2
  39. package/es/heatmap/models/grid3d.js +70 -29
  40. package/es/heatmap/models/heatmap.d.ts +2 -2
  41. package/es/heatmap/models/heatmap.js +40 -14
  42. package/es/heatmap/models/hexagon.d.ts +2 -2
  43. package/es/heatmap/models/hexagon.js +69 -28
  44. package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
  45. package/es/image/index.d.ts +3 -4
  46. package/es/image/index.js +29 -34
  47. package/es/image/models/image.d.ts +2 -2
  48. package/es/image/models/image.js +117 -67
  49. package/es/image/models/index.d.ts +1 -1
  50. package/es/image/models/index.js +1 -5
  51. package/es/image/shaders/dataImage_frag.glsl +10 -16
  52. package/es/index.d.ts +2 -2
  53. package/es/index.js +2 -2
  54. package/es/line/index.d.ts +5 -4
  55. package/es/line/index.js +51 -25
  56. package/es/line/models/arc.d.ts +2 -2
  57. package/es/line/models/arc.js +73 -38
  58. package/es/line/models/arc_3d.d.ts +2 -2
  59. package/es/line/models/arc_3d.js +69 -34
  60. package/es/line/models/earthArc_3d.d.ts +2 -2
  61. package/es/line/models/earthArc_3d.js +72 -37
  62. package/es/line/models/great_circle.d.ts +2 -2
  63. package/es/line/models/great_circle.js +70 -29
  64. package/es/line/models/half.d.ts +2 -2
  65. package/es/line/models/half.js +40 -17
  66. package/es/line/models/index.d.ts +1 -1
  67. package/es/line/models/index.js +0 -2
  68. package/es/line/models/line.d.ts +2 -2
  69. package/es/line/models/line.js +79 -47
  70. package/es/line/models/linearline.d.ts +2 -2
  71. package/es/line/models/linearline.js +70 -31
  72. package/es/line/models/simpleLine.d.ts +2 -2
  73. package/es/line/models/simpleLine.js +71 -34
  74. package/es/line/models/simpleTileLine.d.ts +2 -2
  75. package/es/line/models/simpleTileLine.js +70 -30
  76. package/es/line/models/tile.d.ts +2 -2
  77. package/es/line/models/tile.js +40 -17
  78. package/es/line/models/wall.d.ts +2 -2
  79. package/es/line/models/wall.js +67 -22
  80. package/es/mask/index.d.ts +2 -4
  81. package/es/mask/index.js +27 -97
  82. package/es/mask/models/fill.d.ts +2 -2
  83. package/es/mask/models/fill.js +40 -16
  84. package/es/mask/models/index.d.ts +1 -1
  85. package/es/mask/models/index.js +1 -3
  86. package/es/plugins/DataMappingPlugin.d.ts +0 -2
  87. package/es/plugins/DataMappingPlugin.js +90 -152
  88. package/es/plugins/DataSourcePlugin.js +67 -30
  89. package/es/plugins/FeatureScalePlugin.d.ts +0 -1
  90. package/es/plugins/FeatureScalePlugin.js +85 -61
  91. package/es/plugins/LayerModelPlugin.d.ts +2 -2
  92. package/es/plugins/LayerModelPlugin.js +121 -37
  93. package/es/plugins/LayerStylePlugin.js +1 -6
  94. package/es/plugins/MultiPassRendererPlugin.js +1 -1
  95. package/es/plugins/PixelPickingPlugin.js +1 -1
  96. package/es/plugins/RegisterStyleAttributePlugin.js +1 -16
  97. package/es/plugins/UpdateModelPlugin.js +3 -0
  98. package/es/plugins/UpdateStyleAttributePlugin.js +3 -6
  99. package/es/point/index.d.ts +4 -4
  100. package/es/point/index.js +55 -23
  101. package/es/point/models/earthExtrude.d.ts +2 -2
  102. package/es/point/models/earthExtrude.js +73 -30
  103. package/es/point/models/earthFill.d.ts +2 -2
  104. package/es/point/models/earthFill.js +66 -21
  105. package/es/point/models/extrude.d.ts +2 -2
  106. package/es/point/models/extrude.js +40 -17
  107. package/es/point/models/fill.d.ts +2 -2
  108. package/es/point/models/fill.js +43 -20
  109. package/es/point/models/fillmage.d.ts +2 -2
  110. package/es/point/models/fillmage.js +82 -43
  111. package/es/point/models/image.d.ts +2 -2
  112. package/es/point/models/image.js +72 -31
  113. package/es/point/models/index.d.ts +1 -1
  114. package/es/point/models/index.js +0 -2
  115. package/es/point/models/normal.d.ts +2 -2
  116. package/es/point/models/normal.js +71 -30
  117. package/es/point/models/radar.d.ts +2 -2
  118. package/es/point/models/radar.js +75 -35
  119. package/es/point/models/simplePoint.d.ts +2 -2
  120. package/es/point/models/simplePoint.js +70 -29
  121. package/es/point/models/text.d.ts +3 -2
  122. package/es/point/models/text.js +185 -112
  123. package/es/point/models/tile.d.ts +2 -2
  124. package/es/point/models/tile.js +77 -35
  125. package/es/point/models/tileText.d.ts +2 -2
  126. package/es/point/models/tileText.js +151 -116
  127. package/es/polygon/index.d.ts +2 -3
  128. package/es/polygon/index.js +27 -24
  129. package/es/polygon/models/extrude.d.ts +2 -2
  130. package/es/polygon/models/extrude.js +69 -32
  131. package/es/polygon/models/fill.d.ts +2 -2
  132. package/es/polygon/models/fill.js +76 -43
  133. package/es/polygon/models/index.d.ts +1 -1
  134. package/es/polygon/models/index.js +0 -2
  135. package/es/polygon/models/ocean.d.ts +2 -2
  136. package/es/polygon/models/ocean.js +69 -28
  137. package/es/polygon/models/tile.d.ts +2 -2
  138. package/es/polygon/models/tile.js +70 -30
  139. package/es/polygon/models/water.d.ts +2 -2
  140. package/es/polygon/models/water.js +69 -28
  141. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
  142. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
  143. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
  144. package/es/raster/index.d.ts +2 -3
  145. package/es/raster/index.js +30 -20
  146. package/es/raster/models/index.d.ts +1 -1
  147. package/es/raster/models/index.js +2 -2
  148. package/es/raster/models/raster.d.ts +2 -2
  149. package/es/raster/models/raster.js +39 -28
  150. package/es/raster/models/rasterRgb.d.ts +7 -8
  151. package/es/raster/models/rasterRgb.js +75 -45
  152. package/es/{image/models/tileDataImage.d.ts → raster/models/rasterTerrainRgb.d.ts} +3 -3
  153. package/es/raster/models/rasterTerrainRgb.js +184 -0
  154. package/es/raster/models/rasterTile.d.ts +2 -2
  155. package/es/raster/models/rasterTile.js +78 -37
  156. package/es/raster/shaders/raster_2d_frag.glsl +2 -38
  157. package/es/raster/shaders/raster_rgb_frag.glsl +10 -4
  158. package/es/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
  159. package/es/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
  160. package/es/tile/interaction/getRasterData.d.ts +2 -2
  161. package/es/tile/interaction/utils.js +3 -11
  162. package/es/tile/interface.d.ts +5 -4
  163. package/es/tile/manager/base.d.ts +17 -12
  164. package/es/tile/manager/base.js +212 -47
  165. package/es/tile/service/TileLayerService.d.ts +34 -0
  166. package/es/tile/service/TileLayerService.js +220 -0
  167. package/es/tile/service/TilePickService.d.ts +26 -0
  168. package/es/tile/service/TilePickService.js +174 -0
  169. package/es/tile/service/TileSourceService.d.ts +7 -0
  170. package/es/tile/service/TileSourceService.js +39 -0
  171. package/es/tile/style/constants.d.ts +1 -13
  172. package/es/tile/style/constants.js +6 -15
  173. package/es/tile/style/utils.d.ts +1 -8
  174. package/es/tile/style/utils.js +0 -126
  175. package/es/tile/tileFactory/DebugTile.d.ts +16 -0
  176. package/es/tile/tileFactory/DebugTile.js +100 -0
  177. package/es/tile/tileFactory/ImageTile.d.ts +14 -0
  178. package/es/tile/tileFactory/ImageTile.js +89 -0
  179. package/es/tile/tileFactory/MaskTile.d.ts +18 -0
  180. package/es/tile/tileFactory/MaskTile.js +105 -0
  181. package/es/tile/tileFactory/RasterRGBTile.d.ts +11 -0
  182. package/es/tile/tileFactory/RasterRGBTile.js +98 -0
  183. package/es/tile/tileFactory/RasterTerrainRGBTile.d.ts +14 -0
  184. package/es/tile/tileFactory/RasterTerrainRGBTile.js +89 -0
  185. package/es/tile/tileFactory/RasterTile.d.ts +18 -0
  186. package/es/tile/tileFactory/RasterTile.js +133 -0
  187. package/es/tile/tileFactory/Tile.d.ts +34 -0
  188. package/es/tile/tileFactory/Tile.js +161 -0
  189. package/es/tile/tileFactory/VectorTile.d.ts +27 -0
  190. package/es/tile/tileFactory/VectorTile.js +198 -0
  191. package/es/tile/tileFactory/index.d.ts +11 -4
  192. package/es/tile/tileFactory/index.js +34 -23
  193. package/es/tile/tileFactory/layers/{rasterDataLayer.d.ts → RasterDataLayer.d.ts} +3 -3
  194. package/es/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +34 -22
  195. package/es/tile/tileFactory/layers/{tileTest.d.ts → TileDebugLayer.d.ts} +2 -2
  196. package/es/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +23 -10
  197. package/es/tile/tileFactory/util.d.ts +5 -0
  198. package/es/tile/tileFactory/util.js +21 -0
  199. package/es/tile/tileLayer/BaseLayer.d.ts +45 -0
  200. package/es/tile/tileLayer/BaseLayer.js +348 -0
  201. package/es/tile/utils.d.ts +1 -11
  202. package/es/tile/utils.js +0 -129
  203. package/es/utils/dataMappingStyle.d.ts +4 -4
  204. package/es/utils/dataMappingStyle.js +16 -18
  205. package/es/utils/layerData.js +5 -11
  206. package/es/wind/index.d.ts +2 -3
  207. package/es/wind/index.js +27 -17
  208. package/es/wind/models/wind.d.ts +2 -2
  209. package/es/wind/models/wind.js +123 -104
  210. package/lib/Geometry/index.js +29 -17
  211. package/lib/Geometry/models/billboard.js +79 -37
  212. package/lib/Geometry/models/plane.js +82 -40
  213. package/lib/Geometry/models/sprite.js +85 -45
  214. package/lib/canvas/index.js +31 -19
  215. package/lib/canvas/models/canvas.js +56 -15
  216. package/lib/citybuliding/building.js +28 -17
  217. package/lib/citybuliding/models/build.js +72 -25
  218. package/lib/core/BaseLayer.js +388 -261
  219. package/lib/core/BaseModel.js +48 -6
  220. package/lib/core/LayerPickService.js +179 -0
  221. package/lib/core/TextureService.js +77 -0
  222. package/lib/core/triangulation.js +8 -1
  223. package/lib/earth/index.js +30 -9
  224. package/lib/earth/models/atmosphere.js +69 -22
  225. package/lib/earth/models/base.js +90 -42
  226. package/lib/earth/models/bloomsphere.js +69 -22
  227. package/lib/heatmap/index.js +35 -24
  228. package/lib/heatmap/models/grid.js +70 -27
  229. package/lib/heatmap/models/grid3d.js +72 -29
  230. package/lib/heatmap/models/heatmap.js +40 -14
  231. package/lib/heatmap/models/hexagon.js +71 -28
  232. package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
  233. package/lib/image/index.js +31 -34
  234. package/lib/image/models/image.js +119 -67
  235. package/lib/image/models/index.js +1 -7
  236. package/lib/image/shaders/dataImage_frag.glsl +10 -16
  237. package/lib/index.js +5 -5
  238. package/lib/line/index.js +53 -26
  239. package/lib/line/models/arc.js +75 -38
  240. package/lib/line/models/arc_3d.js +71 -34
  241. package/lib/line/models/earthArc_3d.js +74 -37
  242. package/lib/line/models/great_circle.js +72 -29
  243. package/lib/line/models/half.js +40 -17
  244. package/lib/line/models/index.js +0 -3
  245. package/lib/line/models/line.js +81 -47
  246. package/lib/line/models/linearline.js +72 -31
  247. package/lib/line/models/simpleLine.js +73 -34
  248. package/lib/line/models/simpleTileLine.js +72 -30
  249. package/lib/line/models/tile.js +40 -17
  250. package/lib/line/models/wall.js +69 -22
  251. package/lib/mask/index.js +28 -99
  252. package/lib/mask/models/fill.js +40 -16
  253. package/lib/mask/models/index.js +1 -4
  254. package/lib/plugins/DataMappingPlugin.js +91 -149
  255. package/lib/plugins/DataSourcePlugin.js +69 -30
  256. package/lib/plugins/FeatureScalePlugin.js +87 -61
  257. package/lib/plugins/LayerModelPlugin.js +128 -41
  258. package/lib/plugins/LayerStylePlugin.js +1 -6
  259. package/lib/plugins/MultiPassRendererPlugin.js +1 -1
  260. package/lib/plugins/PixelPickingPlugin.js +1 -1
  261. package/lib/plugins/RegisterStyleAttributePlugin.js +1 -16
  262. package/lib/plugins/UpdateModelPlugin.js +3 -0
  263. package/lib/plugins/UpdateStyleAttributePlugin.js +3 -6
  264. package/lib/point/index.js +56 -24
  265. package/lib/point/models/earthExtrude.js +75 -30
  266. package/lib/point/models/earthFill.js +68 -21
  267. package/lib/point/models/extrude.js +40 -17
  268. package/lib/point/models/fill.js +44 -21
  269. package/lib/point/models/fillmage.js +84 -43
  270. package/lib/point/models/image.js +74 -31
  271. package/lib/point/models/index.js +0 -3
  272. package/lib/point/models/normal.js +73 -30
  273. package/lib/point/models/radar.js +77 -35
  274. package/lib/point/models/simplePoint.js +72 -29
  275. package/lib/point/models/text.js +185 -111
  276. package/lib/point/models/tile.js +79 -35
  277. package/lib/point/models/tileText.js +151 -115
  278. package/lib/polygon/index.js +29 -25
  279. package/lib/polygon/models/extrude.js +71 -32
  280. package/lib/polygon/models/fill.js +78 -43
  281. package/lib/polygon/models/index.js +0 -3
  282. package/lib/polygon/models/ocean.js +71 -28
  283. package/lib/polygon/models/tile.js +72 -30
  284. package/lib/polygon/models/water.js +71 -28
  285. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
  286. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
  287. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
  288. package/lib/raster/index.js +32 -20
  289. package/lib/raster/models/index.js +3 -3
  290. package/lib/raster/models/raster.js +39 -29
  291. package/lib/raster/models/rasterRgb.js +78 -43
  292. package/lib/raster/models/rasterTerrainRgb.js +200 -0
  293. package/lib/raster/models/rasterTile.js +80 -37
  294. package/lib/raster/shaders/raster_2d_frag.glsl +2 -38
  295. package/lib/raster/shaders/raster_rgb_frag.glsl +10 -4
  296. package/lib/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
  297. package/lib/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
  298. package/lib/tile/interaction/utils.js +3 -11
  299. package/lib/tile/manager/base.js +213 -47
  300. package/lib/tile/service/TileLayerService.js +233 -0
  301. package/lib/tile/service/TilePickService.js +190 -0
  302. package/lib/tile/service/TileSourceService.js +59 -0
  303. package/lib/tile/style/constants.js +8 -19
  304. package/lib/tile/style/utils.js +0 -140
  305. package/lib/tile/tileFactory/DebugTile.js +115 -0
  306. package/lib/tile/tileFactory/ImageTile.js +104 -0
  307. package/lib/tile/tileFactory/MaskTile.js +120 -0
  308. package/lib/tile/tileFactory/RasterRGBTile.js +112 -0
  309. package/lib/tile/tileFactory/RasterTerrainRGBTile.js +104 -0
  310. package/lib/tile/tileFactory/RasterTile.js +149 -0
  311. package/lib/tile/tileFactory/Tile.js +171 -0
  312. package/lib/tile/tileFactory/VectorTile.js +214 -0
  313. package/lib/tile/tileFactory/index.js +46 -23
  314. package/lib/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +36 -22
  315. package/lib/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +24 -11
  316. package/lib/tile/tileFactory/util.js +35 -0
  317. package/lib/tile/tileLayer/BaseLayer.js +363 -0
  318. package/lib/tile/utils.js +0 -148
  319. package/lib/utils/dataMappingStyle.js +18 -20
  320. package/lib/utils/layerData.js +4 -10
  321. package/lib/wind/index.js +29 -17
  322. package/lib/wind/models/wind.js +125 -104
  323. package/package.json +7 -7
  324. package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  325. package/es/image/models/dataImage.d.ts +0 -13
  326. package/es/image/models/dataImage.js +0 -186
  327. package/es/image/models/tileDataImage.js +0 -160
  328. package/es/raster/raster.d.ts +0 -21
  329. package/es/raster/raster.js +0 -161
  330. package/es/tile/interaction/TilePickService.d.ts +0 -16
  331. package/es/tile/interaction/TilePickService.js +0 -129
  332. package/es/tile/manager/layerManager.d.ts +0 -19
  333. package/es/tile/manager/layerManager.js +0 -254
  334. package/es/tile/manager/mapLayerManager.d.ts +0 -7
  335. package/es/tile/manager/mapLayerManager.js +0 -119
  336. package/es/tile/models/tileModel.d.ts +0 -10
  337. package/es/tile/models/tileModel.js +0 -81
  338. package/es/tile/render/TileRenderService.d.ts +0 -10
  339. package/es/tile/render/TileRenderService.js +0 -68
  340. package/es/tile/style/TileStyleService.d.ts +0 -17
  341. package/es/tile/style/TileStyleService.js +0 -118
  342. package/es/tile/tileFactory/base.d.ts +0 -45
  343. package/es/tile/tileFactory/base.js +0 -403
  344. package/es/tile/tileFactory/layers/vectorLayer.d.ts +0 -30
  345. package/es/tile/tileFactory/layers/vectorLayer.js +0 -253
  346. package/es/tile/tileFactory/line.d.ts +0 -12
  347. package/es/tile/tileFactory/line.js +0 -59
  348. package/es/tile/tileFactory/mask.d.ts +0 -12
  349. package/es/tile/tileFactory/mask.js +0 -60
  350. package/es/tile/tileFactory/point.d.ts +0 -12
  351. package/es/tile/tileFactory/point.js +0 -60
  352. package/es/tile/tileFactory/polygon.d.ts +0 -12
  353. package/es/tile/tileFactory/polygon.js +0 -59
  354. package/es/tile/tileFactory/raster.d.ts +0 -12
  355. package/es/tile/tileFactory/raster.js +0 -55
  356. package/es/tile/tileFactory/rasterData.d.ts +0 -12
  357. package/es/tile/tileFactory/rasterData.js +0 -81
  358. package/es/tile/tileFactory/test.d.ts +0 -12
  359. package/es/tile/tileFactory/test.js +0 -94
  360. package/es/tile/tileLayer/MapTileLayer.d.ts +0 -6
  361. package/es/tile/tileLayer/MapTileLayer.js +0 -48
  362. package/es/tile/tileLayer/TileLayer.d.ts +0 -22
  363. package/es/tile/tileLayer/TileLayer.js +0 -198
  364. package/es/tile/tileLayer/base.d.ts +0 -33
  365. package/es/tile/tileLayer/base.js +0 -212
  366. package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  367. package/lib/image/models/dataImage.js +0 -201
  368. package/lib/image/models/tileDataImage.js +0 -174
  369. package/lib/raster/raster.js +0 -178
  370. package/lib/tile/interaction/TilePickService.js +0 -143
  371. package/lib/tile/manager/layerManager.js +0 -275
  372. package/lib/tile/manager/mapLayerManager.js +0 -134
  373. package/lib/tile/models/tileModel.js +0 -94
  374. package/lib/tile/render/TileRenderService.js +0 -78
  375. package/lib/tile/style/TileStyleService.js +0 -133
  376. package/lib/tile/tileFactory/base.js +0 -427
  377. package/lib/tile/tileFactory/layers/vectorLayer.js +0 -268
  378. package/lib/tile/tileFactory/line.js +0 -70
  379. package/lib/tile/tileFactory/mask.js +0 -71
  380. package/lib/tile/tileFactory/point.js +0 -71
  381. package/lib/tile/tileFactory/polygon.js +0 -70
  382. package/lib/tile/tileFactory/raster.js +0 -68
  383. package/lib/tile/tileFactory/rasterData.js +0 -93
  384. package/lib/tile/tileFactory/test.js +0 -106
  385. package/lib/tile/tileLayer/MapTileLayer.js +0 -63
  386. package/lib/tile/tileLayer/TileLayer.js +0 -215
  387. package/lib/tile/tileLayer/base.js +0 -225
@@ -0,0 +1,184 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
2
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
3
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
4
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
5
+ import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
6
+ import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
7
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
8
+
9
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
10
+
11
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
12
+
13
+ import { AttributeType, gl } from '@antv/l7-core';
14
+ import { getMask } from '@antv/l7-utils';
15
+ import BaseModel from "../../core/BaseModel";
16
+ import { RasterImageTriangulation } from "../../core/triangulation";
17
+
18
+ /* babel-plugin-inline-import '../shaders/raster_terrain_rgb_frag.glsl' */
19
+ var Raster_terrainFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\n\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\n\nvarying vec2 v_texCoord;\n\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\n\nvoid main() {\n vec4 baseColor = texture2D(u_texture, vec2(v_texCoord.x, v_texCoord.y)) * 256.0;\n float r = baseColor.r * 256.0 * 256.0;\n float g = baseColor.g * 256.0;\n float b = baseColor.b;\n float value = (r + g + b) * 0.1 - 10000.0;\n \n if (value == u_noDataValue) {\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n } else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1])) {\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n } else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] - u_domain[0]);\n vec4 color = texture2D(u_colorTexture, vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
20
+
21
+ /* babel-plugin-inline-import '../shaders/rater_terrain_rgb_vert.glsl' */
22
+ var Raster_terrainVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\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(vec4(project_pos.xy,0., 1.0));\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
23
+
24
+ var RasterTerrainRGB = /*#__PURE__*/function (_BaseModel) {
25
+ _inherits(RasterTerrainRGB, _BaseModel);
26
+
27
+ var _super = _createSuper(RasterTerrainRGB);
28
+
29
+ function RasterTerrainRGB() {
30
+ _classCallCheck(this, RasterTerrainRGB);
31
+
32
+ return _super.apply(this, arguments);
33
+ }
34
+
35
+ _createClass(RasterTerrainRGB, [{
36
+ key: "getUninforms",
37
+ value: function getUninforms() {
38
+ var _ref = this.layer.getLayerConfig(),
39
+ opacity = _ref.opacity,
40
+ _ref$clampLow = _ref.clampLow,
41
+ clampLow = _ref$clampLow === void 0 ? true : _ref$clampLow,
42
+ _ref$clampHigh = _ref.clampHigh,
43
+ clampHigh = _ref$clampHigh === void 0 ? true : _ref$clampHigh,
44
+ _ref$noDataValue = _ref.noDataValue,
45
+ noDataValue = _ref$noDataValue === void 0 ? -9999999 : _ref$noDataValue,
46
+ _ref$domain = _ref.domain,
47
+ domain = _ref$domain === void 0 ? [0, 1] : _ref$domain,
48
+ rampColors = _ref.rampColors,
49
+ colorTexture = _ref.colorTexture;
50
+
51
+ var texture = colorTexture;
52
+
53
+ if (!colorTexture) {
54
+ texture = this.layer.textureService.getColorTexture(rampColors);
55
+ } else {
56
+ this.layer.textureService.setColorTexture(colorTexture, rampColors);
57
+ }
58
+
59
+ return {
60
+ u_opacity: opacity || 1,
61
+ u_texture: this.texture,
62
+ u_domain: domain,
63
+ u_clampLow: clampLow,
64
+ u_clampHigh: typeof clampHigh !== 'undefined' ? clampHigh : clampLow,
65
+ u_noDataValue: noDataValue,
66
+ u_colorTexture: texture
67
+ };
68
+ }
69
+ }, {
70
+ key: "initModels",
71
+ value: function () {
72
+ var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
73
+ var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, imageData, model;
74
+
75
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
76
+ while (1) {
77
+ switch (_context.prev = _context.next) {
78
+ case 0:
79
+ _ref2 = this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
80
+ source = this.layer.getSource();
81
+ createTexture2D = this.rendererService.createTexture2D;
82
+ _context.next = 5;
83
+ return source.data.images;
84
+
85
+ case 5:
86
+ imageData = _context.sent;
87
+ this.texture = createTexture2D({
88
+ data: imageData[0],
89
+ width: imageData[0].width,
90
+ height: imageData[0].height
91
+ });
92
+ _context.next = 9;
93
+ return this.layer.buildLayerModel({
94
+ moduleName: 'RasterTileDataImage',
95
+ vertexShader: Raster_terrainVert,
96
+ fragmentShader: Raster_terrainFrag,
97
+ triangulation: RasterImageTriangulation,
98
+ primitive: gl.TRIANGLES,
99
+ depth: {
100
+ enable: false
101
+ },
102
+ blend: this.getBlend(),
103
+ stencil: getMask(mask, maskInside)
104
+ });
105
+
106
+ case 9:
107
+ model = _context.sent;
108
+ return _context.abrupt("return", [model]);
109
+
110
+ case 11:
111
+ case "end":
112
+ return _context.stop();
113
+ }
114
+ }
115
+ }, _callee, this);
116
+ }));
117
+
118
+ function initModels() {
119
+ return _initModels.apply(this, arguments);
120
+ }
121
+
122
+ return initModels;
123
+ }()
124
+ }, {
125
+ key: "clearModels",
126
+ value: function clearModels() {
127
+ var _this$texture;
128
+
129
+ (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
130
+ }
131
+ }, {
132
+ key: "buildModels",
133
+ value: function () {
134
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
135
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
136
+ while (1) {
137
+ switch (_context2.prev = _context2.next) {
138
+ case 0:
139
+ _context2.next = 2;
140
+ return this.initModels();
141
+
142
+ case 2:
143
+ return _context2.abrupt("return", _context2.sent);
144
+
145
+ case 3:
146
+ case "end":
147
+ return _context2.stop();
148
+ }
149
+ }
150
+ }, _callee2, this);
151
+ }));
152
+
153
+ function buildModels() {
154
+ return _buildModels.apply(this, arguments);
155
+ }
156
+
157
+ return buildModels;
158
+ }()
159
+ }, {
160
+ key: "registerBuiltinAttributes",
161
+ value: function registerBuiltinAttributes() {
162
+ this.styleAttributeService.registerStyleAttribute({
163
+ name: 'uv',
164
+ type: AttributeType.Attribute,
165
+ descriptor: {
166
+ name: 'a_Uv',
167
+ buffer: {
168
+ usage: gl.DYNAMIC_DRAW,
169
+ data: [],
170
+ type: gl.FLOAT
171
+ },
172
+ size: 2,
173
+ update: function update(feature, featureIdx, vertex) {
174
+ return [vertex[3], vertex[4]];
175
+ }
176
+ }
177
+ });
178
+ }
179
+ }]);
180
+
181
+ return RasterTerrainRGB;
182
+ }(BaseModel);
183
+
184
+ export { RasterTerrainRGB as default };
@@ -11,8 +11,8 @@ export default class RasterModel extends BaseModel {
11
11
  u_noDataValue: number;
12
12
  u_colorTexture: ITexture2D;
13
13
  };
14
- initModels(callbackModel: (models: IModel[]) => void): void;
15
- buildModels(callbackModel: (models: IModel[]) => void): void;
14
+ initModels(): Promise<IModel[]>;
15
+ buildModels(): Promise<IModel[]>;
16
16
  clearModels(): void;
17
17
  protected registerBuiltinAttributes(): void;
18
18
  }
@@ -1,8 +1,10 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
1
2
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
2
3
  import _createClass from "@babel/runtime/helpers/esm/createClass";
3
4
  import _inherits from "@babel/runtime/helpers/esm/inherits";
4
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
5
6
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
7
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
6
8
 
7
9
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
8
10
 
@@ -14,7 +16,7 @@ import BaseModel from "../../core/BaseModel";
14
16
  import { RasterImageTriangulation } from "../../core/triangulation";
15
17
 
16
18
  /* babel-plugin-inline-import '../shaders/raster_2d_frag.glsl' */
17
- var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\n\n\n\n// float getBlurIndusty() {\n// vec2 u_ViewportSize = vec2(1024);\n\n// float vW = 2.0/u_ViewportSize.x;\n// float vH = 2.0/u_ViewportSize.y;\n// vec2 vUv = v_texCoord;\n// float i11 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y + 1.0 * vH) ).r;\n// float i12 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y + 1.0 * vH) ).r;\n// float i13 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y + 1.0 * vH) ).r;\n\n// float i21 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y) ).r;\n// float i22 = texture2D( u_texture, vec2( vUv.x , vUv.y) ).r;\n// float i23 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y) ).r;\n\n// float i31 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y-1.0*vH) ).r;\n// float i32 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y-1.0*vH) ).r;\n// float i33 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y-1.0*vH) ).r;\n\n// return(\n// i11 + \n// i12 + \n// i13 + \n// i21 + \n// i21 + \n// i22 + \n// i23 + \n// i31 + \n// i32 + \n// i33\n// )/9.0;\n// }\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n\n // float value = getBlurIndusty();\n\n\n if (value == u_noDataValue)\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
19
+ var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\nbool isnan_emu(float x) { return (x > 0.0 || x < 0.0) ? x != x : x != 0.0; }\n\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n if (value == u_noDataValue || isnan_emu(value))\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
18
20
 
19
21
  /* babel-plugin-inline-import '../shaders/raster_2d_vert.glsl' */
20
22
  var rasterVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\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\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
@@ -66,44 +68,83 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
66
68
  }
67
69
  }, {
68
70
  key: "initModels",
69
- value: function initModels(callbackModel) {
70
- var _ref2 = this.layer.getLayerConfig(),
71
- _ref2$mask = _ref2.mask,
72
- mask = _ref2$mask === void 0 ? false : _ref2$mask,
73
- _ref2$maskInside = _ref2.maskInside,
74
- maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
75
-
76
- var source = this.layer.getSource();
77
- var createTexture2D = this.rendererService.createTexture2D;
78
- var parserDataItem = source.data.dataArray[0];
79
- this.texture = createTexture2D({
80
- data: parserDataItem.data,
81
- width: parserDataItem.width,
82
- height: parserDataItem.height,
83
- format: gl.LUMINANCE,
84
- type: gl.FLOAT
85
- });
86
- this.layer.buildLayerModel({
87
- moduleName: 'rasterTileImageData',
88
- vertexShader: rasterVert,
89
- fragmentShader: rasterFrag,
90
- triangulation: RasterImageTriangulation,
91
- depth: {
92
- enable: false
93
- },
94
- stencil: getMask(mask, maskInside)
95
- }).then(function (model) {
96
- callbackModel([model]);
97
- }).catch(function (err) {
98
- console.warn(err);
99
- callbackModel([]);
100
- });
101
- }
71
+ value: function () {
72
+ var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
73
+ var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, source, createTexture2D, parserDataItem, model;
74
+
75
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
76
+ while (1) {
77
+ switch (_context.prev = _context.next) {
78
+ case 0:
79
+ _ref2 = this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
80
+ source = this.layer.getSource();
81
+ createTexture2D = this.rendererService.createTexture2D;
82
+ parserDataItem = source.data.dataArray[0];
83
+ this.texture = createTexture2D({
84
+ data: parserDataItem.data,
85
+ width: parserDataItem.width,
86
+ height: parserDataItem.height,
87
+ format: gl.LUMINANCE,
88
+ type: gl.FLOAT
89
+ });
90
+ _context.next = 7;
91
+ return this.layer.buildLayerModel({
92
+ moduleName: 'rasterTileImageData',
93
+ vertexShader: rasterVert,
94
+ fragmentShader: rasterFrag,
95
+ triangulation: RasterImageTriangulation,
96
+ depth: {
97
+ enable: false
98
+ },
99
+ stencil: getMask(mask, maskInside)
100
+ });
101
+
102
+ case 7:
103
+ model = _context.sent;
104
+ return _context.abrupt("return", [model]);
105
+
106
+ case 9:
107
+ case "end":
108
+ return _context.stop();
109
+ }
110
+ }
111
+ }, _callee, this);
112
+ }));
113
+
114
+ function initModels() {
115
+ return _initModels.apply(this, arguments);
116
+ }
117
+
118
+ return initModels;
119
+ }()
102
120
  }, {
103
121
  key: "buildModels",
104
- value: function buildModels(callbackModel) {
105
- this.initModels(callbackModel);
106
- }
122
+ value: function () {
123
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
124
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
125
+ while (1) {
126
+ switch (_context2.prev = _context2.next) {
127
+ case 0:
128
+ _context2.next = 2;
129
+ return this.initModels();
130
+
131
+ case 2:
132
+ return _context2.abrupt("return", _context2.sent);
133
+
134
+ case 3:
135
+ case "end":
136
+ return _context2.stop();
137
+ }
138
+ }
139
+ }, _callee2, this);
140
+ }));
141
+
142
+ function buildModels() {
143
+ return _buildModels.apply(this, arguments);
144
+ }
145
+
146
+ return buildModels;
147
+ }()
107
148
  }, {
108
149
  key: "clearModels",
109
150
  value: function clearModels() {
@@ -9,49 +9,13 @@ uniform float u_noDataValue;
9
9
  uniform bool u_clampLow: true;
10
10
  uniform bool u_clampHigh: true;
11
11
  varying vec2 v_texCoord;
12
+ bool isnan_emu(float x) { return (x > 0.0 || x < 0.0) ? x != x : x != 0.0; }
12
13
 
13
14
 
14
-
15
- // float getBlurIndusty() {
16
- // vec2 u_ViewportSize = vec2(1024);
17
-
18
- // float vW = 2.0/u_ViewportSize.x;
19
- // float vH = 2.0/u_ViewportSize.y;
20
- // vec2 vUv = v_texCoord;
21
- // float i11 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y + 1.0 * vH) ).r;
22
- // float i12 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y + 1.0 * vH) ).r;
23
- // float i13 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y + 1.0 * vH) ).r;
24
-
25
- // float i21 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y) ).r;
26
- // float i22 = texture2D( u_texture, vec2( vUv.x , vUv.y) ).r;
27
- // float i23 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y) ).r;
28
-
29
- // float i31 = texture2D( u_texture, vec2( vUv.x - 1.0 * vW, vUv.y-1.0*vH) ).r;
30
- // float i32 = texture2D( u_texture, vec2( vUv.x - 0.0 * vW, vUv.y-1.0*vH) ).r;
31
- // float i33 = texture2D( u_texture, vec2( vUv.x + 1.0 * vW, vUv.y-1.0*vH) ).r;
32
-
33
- // return(
34
- // i11 +
35
- // i12 +
36
- // i13 +
37
- // i21 +
38
- // i21 +
39
- // i22 +
40
- // i23 +
41
- // i31 +
42
- // i32 +
43
- // i33
44
- // )/9.0;
45
- // }
46
-
47
15
  void main() {
48
16
 
49
17
  float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;
50
-
51
- // float value = getBlurIndusty();
52
-
53
-
54
- if (value == u_noDataValue)
18
+ if (value == u_noDataValue || isnan_emu(value))
55
19
  gl_FragColor = vec4(0.0, 0, 0, 0.0);
56
20
  else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))
57
21
  gl_FragColor = vec4(0, 0, 0, 0);
@@ -1,12 +1,18 @@
1
1
  precision mediump float;
2
+ uniform vec2 u_rminmax: vec2(0,255);
3
+ uniform vec2 u_gminmax: vec2(0,255);
4
+ uniform vec2 u_bminmax: vec2(0,255);
2
5
  uniform float u_opacity: 1.0;
3
6
  uniform sampler2D u_texture;
4
- uniform float u_channelRMax: 256.;
5
- uniform float u_channelGMax: 256.;
6
- uniform float u_channelBMax: 256.;
7
+ uniform float u_noDataValue : 0.0;
7
8
  varying vec2 v_texCoord;
8
9
 
9
10
  void main() {
10
11
  vec3 rgb = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).rgb;
11
- gl_FragColor = vec4(rgb.r/u_channelRMax, rgb.g/u_channelGMax, rgb.b/u_channelBMax, u_opacity);
12
+ if(rgb == vec3(u_noDataValue)) {
13
+ gl_FragColor = vec4(0.0, 0, 0, 0.0);
14
+ } else {
15
+ gl_FragColor = vec4(rgb.r / (u_rminmax.y -u_rminmax.x), rgb.g /(u_gminmax.y -u_gminmax.x), rgb.b/ (u_bminmax.y - u_bminmax.x), u_opacity);
16
+ }
17
+
12
18
  }
@@ -0,0 +1,31 @@
1
+ precision mediump float;
2
+ uniform float u_opacity: 1.0;
3
+
4
+ uniform sampler2D u_texture;
5
+ uniform sampler2D u_colorTexture;
6
+
7
+ varying vec2 v_texCoord;
8
+
9
+ uniform vec2 u_domain;
10
+ uniform float u_noDataValue;
11
+ uniform bool u_clampLow: true;
12
+ uniform bool u_clampHigh: true;
13
+
14
+ void main() {
15
+ vec4 baseColor = texture2D(u_texture, vec2(v_texCoord.x, v_texCoord.y)) * 256.0;
16
+ float r = baseColor.r * 256.0 * 256.0;
17
+ float g = baseColor.g * 256.0;
18
+ float b = baseColor.b;
19
+ float value = (r + g + b) * 0.1 - 10000.0;
20
+
21
+ if (value == u_noDataValue) {
22
+ gl_FragColor = vec4(0.0, 0, 0, 0.0);
23
+ } else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1])) {
24
+ gl_FragColor = vec4(0.0, 0, 0, 0.0);
25
+ } else {
26
+ float normalisedValue =(value - u_domain[0]) / (u_domain[1] - u_domain[0]);
27
+ vec4 color = texture2D(u_colorTexture, vec2(normalisedValue, 0));
28
+ gl_FragColor = color;
29
+ gl_FragColor.a = gl_FragColor.a * u_opacity ;
30
+ }
31
+ }
@@ -0,0 +1,17 @@
1
+ precision highp float;
2
+ uniform mat4 u_ModelMatrix;
3
+ uniform mat4 u_Mvp;
4
+ attribute vec3 a_Position;
5
+ attribute vec2 a_Uv;
6
+ varying vec2 v_texCoord;
7
+ #pragma include "projection"
8
+ void main() {
9
+ v_texCoord = a_Uv;
10
+ vec4 project_pos = project_position(vec4(a_Position, 1.0));
11
+ // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));
12
+ if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x
13
+ gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));
14
+ } else {
15
+ gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));
16
+ }
17
+ }
@@ -1,4 +1,4 @@
1
1
  import { IMapService, IRendererService } from '@antv/l7-core';
2
- import { Tile } from '@antv/l7-utils';
3
- export declare function readRasterValue(tile: Tile, mapService: IMapService, x: number, y: number): any;
2
+ import { SourceTile } from '@antv/l7-utils';
3
+ export declare function readRasterValue(tile: SourceTile, mapService: IMapService, x: number, y: number): any;
4
4
  export declare function readPixel(x: number, y: number, rendererService: IRendererService): false | Uint8Array;
@@ -27,7 +27,7 @@ export function setSelect(layers, pickedColors, renderList) {
27
27
  }); // unselect normal layer
28
28
 
29
29
  renderList.filter(function (layer) {
30
- return layer.inited && !layer.isVector && layer.isVisible() && layer.needPick('click');
30
+ return layer.inited && layer.isVisible() && layer.needPick('click');
31
31
  }).filter(function (layer) {
32
32
  return layer.getCurrentSelectedId() !== null;
33
33
  }).map(function (layer) {
@@ -39,9 +39,8 @@ export function setSelect(layers, pickedColors, renderList) {
39
39
  export function setHighlight(layers, pickedColors) {
40
40
  var pickId = decodePickingColor(pickedColors);
41
41
  layers.filter(function (layer) {
42
- return layer.inited && layer.isVisible() && layer.isVector;
43
- }) // Tip: 使用 vectorLayer 上的 pickID 优化高亮操作(过滤重复操作)
44
- // @ts-ignore
42
+ return layer.inited && layer.isVisible();
43
+ }) // @ts-ignore
45
44
  .filter(function (layer) {
46
45
  return layer.getPickID() !== pickId;
47
46
  }).map(function (layer) {
@@ -53,13 +52,6 @@ export function setHighlight(layers, pickedColors) {
53
52
  export function setPickState(layers, pickColors) {
54
53
  if (pickColors.select) {
55
54
  layers.map(function (layer) {
56
- // if(layer.modelLoaded) {
57
- // selectFeature(layer, this.pickColors.select);
58
- // } else {
59
- // layer.once('modelLoaded', () => {
60
- // selectFeature(layer, this.pickColors.select);
61
- // })
62
- // }
63
55
  selectFeature(layer, pickColors.select);
64
56
  });
65
57
  }
@@ -1,5 +1,5 @@
1
1
  import { ILayer, IMapService, IRendererService, ISource, ISubLayerInitOptions } from '@antv/l7-core';
2
- import { Tile } from '@antv/l7-utils';
2
+ import { SourceTile } from '@antv/l7-utils';
3
3
  export declare type Timeout = any;
4
4
  export declare type CacheEvent = 'click' | 'mousemove' | 'mouseup' | 'mousedown' | 'contextmenu';
5
5
  export interface ITileFactoryOptions {
@@ -12,16 +12,17 @@ export interface ITileStyles {
12
12
  }
13
13
  export interface ILayerTileConfig {
14
14
  L7Layer?: any;
15
- tile: Tile;
15
+ tile: SourceTile;
16
16
  initOptions: ISubLayerInitOptions;
17
17
  vectorTileLayer?: any;
18
18
  source: ISource;
19
19
  needListen?: boolean;
20
20
  }
21
21
  export interface ITileFactory {
22
- createTile(tile: Tile, initOptions: ISubLayerInitOptions): {
22
+ loaded: boolean;
23
+ layers: ILayer[];
24
+ createTile(tile: SourceTile, initOptions: ISubLayerInitOptions): {
23
25
  layers: ILayer[];
24
- layerIDList: string[];
25
26
  };
26
27
  createLayer(option: ILayerTileConfig): ILayer;
27
28
  updateStyle(styles: ITileStyles): string;
@@ -1,30 +1,35 @@
1
- import { ILayer, IRendererService, IMapService, ISubLayerInitOptions } from '@antv/l7-core';
2
- import { Tile } from '@antv/l7-utils';
3
- import { ITileFactory } from '../tileFactory';
1
+ import { ILayer, IRendererService, IMapService, ISubLayerInitOptions, ILayerService } from '@antv/l7-core';
2
+ import { SourceTile } from '@antv/l7-utils';
4
3
  export declare class Base {
5
4
  sourceLayer: string;
6
5
  parent: ILayer;
7
6
  children: ILayer[];
8
7
  mapService: IMapService;
9
8
  rendererService: IRendererService;
10
- protected tileFactory: ITileFactory;
9
+ protected tileFactory: any;
11
10
  protected initOptions: ISubLayerInitOptions;
12
11
  private tileCache;
13
- hasTile(tile: Tile): boolean;
14
- addTile(tile: Tile): {
15
- layers: ILayer[];
16
- layerIDList: string[];
17
- };
18
- removeTile(tile: Tile): void;
12
+ private tileLayerCache;
13
+ private initTileLayers;
14
+ render(): void;
15
+ hasTile(tile: SourceTile): boolean;
16
+ addTile(tile: SourceTile): Promise<any>;
17
+ removeTile(tile: SourceTile): void;
19
18
  addChild(layer: ILayer): void;
20
19
  addChildren(layers: ILayer[]): void;
21
- removeChildren(layerIDList: string[], refresh?: boolean): void;
20
+ removeLayers(layers?: ILayer[], refresh?: boolean): void;
22
21
  removeChild(layer: ILayer): void;
23
- getChildren(layerIDList: string[]): ILayer[];
22
+ getLayers(tile: SourceTile): ILayer[];
24
23
  getChild(layerID: string): ILayer;
25
24
  clearChild(): void;
26
25
  hasChild(layer: ILayer): boolean;
27
26
  initTileFactory(): void;
28
27
  getSourceLayer(parentParserType: string, sourceLayer: string | undefined): string | undefined;
28
+ updateTileVisible(tile: SourceTile, layerService: ILayerService): void;
29
+ listenLoad(tile: SourceTile, callback: () => void): void;
30
+ isTileLoaded(tile: SourceTile): boolean;
31
+ isTileChildLoaded(tile: SourceTile): boolean;
32
+ isTileParentLoaded(tile: SourceTile): boolean;
33
+ isTileAllLoad(tile: SourceTile): boolean;
29
34
  destroy(): void;
30
35
  }