@antv/l7-layers 2.9.26-alpha.0 → 2.9.26

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 (588) hide show
  1. package/es/Geometry/index.d.ts +19 -0
  2. package/es/Geometry/index.js +106 -0
  3. package/es/Geometry/models/billboard.d.ts +26 -0
  4. package/es/Geometry/models/billboard.js +232 -0
  5. package/es/Geometry/models/index.d.ts +5 -0
  6. package/es/Geometry/models/index.js +9 -0
  7. package/es/Geometry/models/plane.d.ts +45 -0
  8. package/es/Geometry/models/plane.js +421 -0
  9. package/es/Geometry/models/sprite.d.ts +47 -0
  10. package/es/Geometry/models/sprite.js +304 -0
  11. package/es/Geometry/shaders/billboard_frag.glsl +13 -0
  12. package/es/Geometry/shaders/billboard_vert.glsl +50 -0
  13. package/es/Geometry/shaders/plane_frag.glsl +22 -0
  14. package/es/Geometry/shaders/plane_vert.glsl +53 -0
  15. package/es/Geometry/shaders/sprite_frag.glsl +21 -0
  16. package/es/Geometry/shaders/sprite_vert.glsl +28 -0
  17. package/es/canvas/index.d.ts +19 -0
  18. package/es/canvas/index.js +91 -0
  19. package/es/canvas/models/canvas.d.ts +18 -0
  20. package/es/canvas/models/canvas.js +212 -0
  21. package/es/canvas/models/index.d.ts +5 -0
  22. package/es/canvas/models/index.js +5 -0
  23. package/es/citybuliding/building.d.ts +17 -0
  24. package/es/citybuliding/building.js +88 -0
  25. package/es/citybuliding/models/build.d.ts +22 -0
  26. package/es/citybuliding/models/build.js +188 -0
  27. package/es/citybuliding/shaders/build_frag.glsl +117 -0
  28. package/es/citybuliding/shaders/build_vert.glsl +54 -0
  29. package/es/core/BaseLayer.d.ts +212 -0
  30. package/es/core/BaseLayer.js +1409 -0
  31. package/es/core/BaseModel.d.ts +140 -0
  32. package/es/core/BaseModel.js +486 -0
  33. package/es/core/interface.d.ts +201 -0
  34. package/es/core/interface.js +30 -0
  35. package/es/core/schema.d.ts +27 -0
  36. package/es/core/schema.js +25 -0
  37. package/es/core/shape/Path.d.ts +39 -0
  38. package/es/core/shape/Path.js +62 -0
  39. package/es/core/shape/extrude.d.ts +17 -0
  40. package/es/core/shape/extrude.js +148 -0
  41. package/es/core/triangulation.d.ts +122 -0
  42. package/es/core/triangulation.js +491 -0
  43. package/es/earth/index.d.ts +17 -0
  44. package/es/earth/index.js +91 -0
  45. package/es/earth/models/atmosphere.d.ts +9 -0
  46. package/es/earth/models/atmosphere.js +138 -0
  47. package/es/earth/models/base.d.ts +16 -0
  48. package/es/earth/models/base.js +212 -0
  49. package/es/earth/models/bloomsphere.d.ts +9 -0
  50. package/es/earth/models/bloomsphere.js +138 -0
  51. package/es/earth/shaders/atmosphere_frag.glsl +17 -0
  52. package/es/earth/shaders/atmosphere_vert.glsl +26 -0
  53. package/es/earth/shaders/base_frag.glsl +13 -0
  54. package/es/earth/shaders/base_vert.glsl +52 -0
  55. package/es/earth/shaders/bloomsphere_frag.glsl +15 -0
  56. package/es/earth/shaders/bloomsphere_vert.glsl +20 -0
  57. package/es/earth/utils.d.ts +26 -0
  58. package/es/earth/utils.js +104 -0
  59. package/es/heatmap/index.d.ts +21 -0
  60. package/es/heatmap/index.js +145 -0
  61. package/es/heatmap/models/grid.d.ts +8 -0
  62. package/es/heatmap/models/grid.js +108 -0
  63. package/es/heatmap/models/grid3d.d.ts +8 -0
  64. package/es/heatmap/models/grid3d.js +147 -0
  65. package/es/heatmap/models/heatmap.d.ts +24 -0
  66. package/es/heatmap/models/heatmap.js +464 -0
  67. package/es/heatmap/models/hexagon.d.ts +8 -0
  68. package/es/heatmap/models/hexagon.js +111 -0
  69. package/es/heatmap/models/index.d.ts +5 -0
  70. package/es/heatmap/models/index.js +12 -0
  71. package/es/heatmap/shaders/grid_vert.glsl +42 -0
  72. package/es/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  73. package/es/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  74. package/es/heatmap/shaders/heatmap_frag.glsl +47 -0
  75. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  76. package/es/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  77. package/es/heatmap/shaders/heatmap_vert.glsl +10 -0
  78. package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  79. package/es/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  80. package/es/heatmap/shaders/hexagon_frag.glsl +12 -0
  81. package/es/heatmap/shaders/hexagon_vert.glsl +41 -0
  82. package/es/heatmap/triangulation.d.ts +5 -0
  83. package/es/heatmap/triangulation.js +38 -0
  84. package/es/image/index.d.ts +19 -0
  85. package/es/image/index.js +103 -0
  86. package/es/image/models/dataImage.d.ts +22 -0
  87. package/es/image/models/dataImage.js +225 -0
  88. package/es/image/models/image.d.ts +19 -0
  89. package/es/image/models/image.js +169 -0
  90. package/es/image/models/index.d.ts +5 -0
  91. package/es/image/models/index.js +7 -0
  92. package/es/image/shaders/dataImage_frag.glsl +38 -0
  93. package/es/image/shaders/image_frag.glsl +9 -0
  94. package/es/image/shaders/image_vert.glsl +17 -0
  95. package/es/index.d.ts +17 -0
  96. package/es/index.js +107 -0
  97. package/es/line/index.d.ts +42 -0
  98. package/es/line/index.js +140 -0
  99. package/es/line/models/arc.d.ts +17 -0
  100. package/es/line/models/arc.js +356 -0
  101. package/es/line/models/arc_3d.d.ts +17 -0
  102. package/es/line/models/arc_3d.js +335 -0
  103. package/es/line/models/earthArc_3d.d.ts +17 -0
  104. package/es/line/models/earthArc_3d.js +338 -0
  105. package/es/line/models/great_circle.d.ts +12 -0
  106. package/es/line/models/great_circle.js +294 -0
  107. package/es/line/models/half.d.ts +18 -0
  108. package/es/line/models/half.js +282 -0
  109. package/es/line/models/index.d.ts +5 -0
  110. package/es/line/models/index.js +25 -0
  111. package/es/line/models/line.d.ts +21 -0
  112. package/es/line/models/line.js +442 -0
  113. package/es/line/models/linearline.d.ts +11 -0
  114. package/es/line/models/linearline.js +276 -0
  115. package/es/line/models/simpleLine.d.ts +14 -0
  116. package/es/line/models/simpleLine.js +233 -0
  117. package/es/line/models/tile.d.ts +11 -0
  118. package/es/line/models/tile.js +351 -0
  119. package/es/line/models/wall.d.ts +12 -0
  120. package/es/line/models/wall.js +329 -0
  121. package/es/line/shaders/arc_chunks.vert.glsl +21 -0
  122. package/es/line/shaders/dash/arc_dash_frag.glsl +28 -0
  123. package/es/line/shaders/dash/arc_dash_vert.glsl +148 -0
  124. package/es/line/shaders/dash/line_dash_frag.glsl +31 -0
  125. package/es/line/shaders/dash/line_dash_vert.glsl +93 -0
  126. package/es/line/shaders/half/line_half_frag.glsl +53 -0
  127. package/es/line/shaders/half/line_half_vert.glsl +169 -0
  128. package/es/line/shaders/line_arc2d_vert.glsl +114 -0
  129. package/es/line/shaders/line_arc_3d_frag.glsl +103 -0
  130. package/es/line/shaders/line_arc_3d_vert.glsl +207 -0
  131. package/es/line/shaders/line_arc_frag.glsl +89 -0
  132. package/es/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  133. package/es/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  134. package/es/line/shaders/line_arc_vert.glsl +176 -0
  135. package/es/line/shaders/line_bezier_vert.glsl +85 -0
  136. package/es/line/shaders/line_frag.glsl +100 -0
  137. package/es/line/shaders/line_vert.glsl +192 -0
  138. package/es/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  139. package/es/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  140. package/es/line/shaders/linear/arc_linear_frag.glsl +38 -0
  141. package/es/line/shaders/linear/arc_linear_vert.glsl +138 -0
  142. package/es/line/shaders/linear/line_linear_frag.glsl +27 -0
  143. package/es/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  144. package/es/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  145. package/es/line/shaders/simple/simpleline_frag.glsl +10 -0
  146. package/es/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  147. package/es/line/shaders/simple/simpleline_vert.glsl +79 -0
  148. package/es/line/shaders/tile/line_tile_frag.glsl +79 -0
  149. package/es/line/shaders/tile/line_tile_vert.glsl +210 -0
  150. package/es/line/shaders/wall_frag.glsl +93 -0
  151. package/es/line/shaders/wall_vert.glsl +111 -0
  152. package/es/mask/index.d.ts +26 -0
  153. package/es/mask/index.js +82 -0
  154. package/es/mask/models/fill.d.ts +11 -0
  155. package/es/mask/models/fill.js +121 -0
  156. package/es/mask/models/index.d.ts +5 -0
  157. package/es/mask/models/index.js +5 -0
  158. package/es/mask/shaders/mask_frag.glsl +7 -0
  159. package/es/mask/shaders/mask_vert.glsl +22 -0
  160. package/es/plugins/DataMappingPlugin.d.ts +18 -0
  161. package/es/plugins/DataMappingPlugin.js +345 -0
  162. package/es/plugins/DataSourcePlugin.d.ts +7 -0
  163. package/es/plugins/DataSourcePlugin.js +83 -0
  164. package/es/plugins/FeatureScalePlugin.d.ts +26 -0
  165. package/es/plugins/FeatureScalePlugin.js +380 -0
  166. package/es/plugins/LayerAnimateStylePlugin.d.ts +7 -0
  167. package/es/plugins/LayerAnimateStylePlugin.js +49 -0
  168. package/es/plugins/LayerModelPlugin.d.ts +10 -0
  169. package/es/plugins/LayerModelPlugin.js +71 -0
  170. package/es/plugins/LayerStylePlugin.d.ts +8 -0
  171. package/es/plugins/LayerStylePlugin.js +39 -0
  172. package/es/plugins/LightingPlugin.d.ts +36 -0
  173. package/es/plugins/LightingPlugin.js +110 -0
  174. package/es/plugins/MultiPassRendererPlugin.d.ts +24 -0
  175. package/es/plugins/MultiPassRendererPlugin.js +77 -0
  176. package/es/plugins/PixelPickingPlugin.d.ts +8 -0
  177. package/es/plugins/PixelPickingPlugin.js +146 -0
  178. package/es/plugins/RegisterStyleAttributePlugin.d.ts +11 -0
  179. package/es/plugins/RegisterStyleAttributePlugin.js +105 -0
  180. package/es/plugins/ShaderUniformPlugin.d.ts +17 -0
  181. package/es/plugins/ShaderUniformPlugin.js +107 -0
  182. package/es/plugins/UpdateModelPlugin.d.ts +8 -0
  183. package/es/plugins/UpdateModelPlugin.js +31 -0
  184. package/es/plugins/UpdateStyleAttributePlugin.d.ts +12 -0
  185. package/es/plugins/UpdateStyleAttributePlugin.js +87 -0
  186. package/es/point/index.d.ts +40 -0
  187. package/es/point/index.js +234 -0
  188. package/es/point/models/earthExtrude.d.ts +24 -0
  189. package/es/point/models/earthExtrude.js +279 -0
  190. package/es/point/models/earthFill.d.ts +11 -0
  191. package/es/point/models/earthFill.js +258 -0
  192. package/es/point/models/extrude.d.ts +24 -0
  193. package/es/point/models/extrude.js +298 -0
  194. package/es/point/models/fill.d.ts +40 -0
  195. package/es/point/models/fill.js +404 -0
  196. package/es/point/models/fillmage.d.ts +25 -0
  197. package/es/point/models/fillmage.js +367 -0
  198. package/es/point/models/image.d.ts +11 -0
  199. package/es/point/models/image.js +239 -0
  200. package/es/point/models/index.d.ts +5 -0
  201. package/es/point/models/index.js +30 -0
  202. package/es/point/models/normal.d.ts +17 -0
  203. package/es/point/models/normal.js +177 -0
  204. package/es/point/models/radar.d.ts +24 -0
  205. package/es/point/models/radar.js +297 -0
  206. package/es/point/models/simplePoint.d.ts +17 -0
  207. package/es/point/models/simplePoint.js +188 -0
  208. package/es/point/models/text.d.ts +57 -0
  209. package/es/point/models/text.js +622 -0
  210. package/es/point/models/tile.d.ts +22 -0
  211. package/es/point/models/tile.js +309 -0
  212. package/es/point/models/tileText.d.ts +56 -0
  213. package/es/point/models/tileText.js +598 -0
  214. package/es/point/shaders/animate/wave_frag.glsl +65 -0
  215. package/es/point/shaders/earth/extrude_frag.glsl +44 -0
  216. package/es/point/shaders/earth/extrude_vert.glsl +140 -0
  217. package/es/point/shaders/earth/fill_frag.glsl +86 -0
  218. package/es/point/shaders/earth/fill_vert.glsl +126 -0
  219. package/es/point/shaders/extrude/extrude_frag.glsl +44 -0
  220. package/es/point/shaders/extrude/extrude_vert.glsl +121 -0
  221. package/es/point/shaders/fill_frag.glsl +84 -0
  222. package/es/point/shaders/fill_vert.glsl +189 -0
  223. package/es/point/shaders/image/fillImage_frag.glsl +20 -0
  224. package/es/point/shaders/image/fillImage_vert.glsl +116 -0
  225. package/es/point/shaders/image_frag.glsl +39 -0
  226. package/es/point/shaders/image_vert.glsl +90 -0
  227. package/es/point/shaders/normal_frag.glsl +15 -0
  228. package/es/point/shaders/normal_vert.glsl +79 -0
  229. package/es/point/shaders/radar/radar_frag.glsl +64 -0
  230. package/es/point/shaders/radar/radar_vert.glsl +120 -0
  231. package/es/point/shaders/simplePoint_frag.glsl +53 -0
  232. package/es/point/shaders/simplePoint_vert.glsl +79 -0
  233. package/es/point/shaders/text_frag.glsl +48 -0
  234. package/es/point/shaders/text_vert.glsl +131 -0
  235. package/es/point/shaders/tile/fill_tile_frag.glsl +83 -0
  236. package/es/point/shaders/tile/fill_tile_vert.glsl +181 -0
  237. package/es/point/shape/extrude.d.ts +15 -0
  238. package/es/point/shape/extrude.js +63 -0
  239. package/es/polygon/index.d.ts +27 -0
  240. package/es/polygon/index.js +148 -0
  241. package/es/polygon/models/extrude.d.ts +28 -0
  242. package/es/polygon/models/extrude.js +306 -0
  243. package/es/polygon/models/fill.d.ts +17 -0
  244. package/es/polygon/models/fill.js +211 -0
  245. package/es/polygon/models/index.d.ts +5 -0
  246. package/es/polygon/models/index.js +28 -0
  247. package/es/polygon/models/ocean.d.ts +23 -0
  248. package/es/polygon/models/ocean.js +236 -0
  249. package/es/polygon/models/tile.d.ts +15 -0
  250. package/es/polygon/models/tile.js +133 -0
  251. package/es/polygon/models/water.d.ts +18 -0
  252. package/es/polygon/models/water.js +213 -0
  253. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  254. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  255. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  256. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  257. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  258. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  259. package/es/polygon/shaders/polygon_frag.glsl +12 -0
  260. package/es/polygon/shaders/polygon_linear_frag.glsl +22 -0
  261. package/es/polygon/shaders/polygon_linear_vert.glsl +74 -0
  262. package/es/polygon/shaders/polygon_vert.glsl +66 -0
  263. package/es/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  264. package/es/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  265. package/es/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  266. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  267. package/es/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  268. package/es/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  269. package/es/raster/buffers/triangulation.d.ts +6 -0
  270. package/es/raster/buffers/triangulation.js +28 -0
  271. package/es/raster/index.d.ts +19 -0
  272. package/es/raster/index.js +106 -0
  273. package/es/raster/models/index.d.ts +5 -0
  274. package/es/raster/models/index.js +8 -0
  275. package/es/raster/models/raster.d.ts +21 -0
  276. package/es/raster/models/raster.js +167 -0
  277. package/es/raster/raster.d.ts +30 -0
  278. package/es/raster/raster.js +174 -0
  279. package/es/raster/shaders/raster_2d_frag.glsl +28 -0
  280. package/es/raster/shaders/raster_2d_vert.glsl +18 -0
  281. package/es/raster/shaders/raster_frag.glsl +9 -0
  282. package/es/raster/shaders/raster_vert.glsl +44 -0
  283. package/es/tile/interface.d.ts +28 -0
  284. package/es/tile/interface.js +1 -0
  285. package/es/tile/manager/tileConfigManager.d.ts +17 -0
  286. package/es/tile/manager/tileConfigManager.js +121 -0
  287. package/es/tile/manager/tileLayerManager.d.ts +37 -0
  288. package/es/tile/manager/tileLayerManager.js +323 -0
  289. package/es/tile/manager/tilePickerManager.d.ts +21 -0
  290. package/es/tile/manager/tilePickerManager.js +190 -0
  291. package/es/tile/models/tileModel.d.ts +8 -0
  292. package/es/tile/models/tileModel.js +62 -0
  293. package/es/tile/tileFactory/base.d.ts +44 -0
  294. package/es/tile/tileFactory/base.js +444 -0
  295. package/es/tile/tileFactory/index.d.ts +5 -0
  296. package/es/tile/tileFactory/index.js +33 -0
  297. package/es/tile/tileFactory/line.d.ts +12 -0
  298. package/es/tile/tileFactory/line.js +59 -0
  299. package/es/tile/tileFactory/point.d.ts +12 -0
  300. package/es/tile/tileFactory/point.js +59 -0
  301. package/es/tile/tileFactory/polygon.d.ts +12 -0
  302. package/es/tile/tileFactory/polygon.js +59 -0
  303. package/es/tile/tileFactory/raster.d.ts +12 -0
  304. package/es/tile/tileFactory/raster.js +55 -0
  305. package/es/tile/tileFactory/rasterData.d.ts +12 -0
  306. package/es/tile/tileFactory/rasterData.js +80 -0
  307. package/es/tile/tileFactory/rasterDataLayer.d.ts +19 -0
  308. package/es/tile/tileFactory/rasterDataLayer.js +87 -0
  309. package/es/tile/tileFactory/test.d.ts +12 -0
  310. package/es/tile/tileFactory/test.js +82 -0
  311. package/es/tile/tileFactory/vectorLayer.d.ts +29 -0
  312. package/es/tile/tileFactory/vectorLayer.js +161 -0
  313. package/es/tile/tileLayer/baseTileLayer.d.ts +47 -0
  314. package/es/tile/tileLayer/baseTileLayer.js +438 -0
  315. package/es/tile/tileTest.d.ts +14 -0
  316. package/es/tile/tileTest.js +63 -0
  317. package/es/tile/tmsTileLayer.d.ts +7 -0
  318. package/es/tile/tmsTileLayer.js +101 -0
  319. package/es/tile/utils.d.ts +13 -0
  320. package/es/tile/utils.js +131 -0
  321. package/es/utils/blend.d.ts +2 -0
  322. package/es/utils/blend.js +54 -0
  323. package/es/utils/collision-index.d.ts +47 -0
  324. package/es/utils/collision-index.js +102 -0
  325. package/es/utils/dataMappingStyle.d.ts +31 -0
  326. package/es/utils/dataMappingStyle.js +147 -0
  327. package/es/utils/extrude_polyline.d.ts +67 -0
  328. package/es/utils/extrude_polyline.js +611 -0
  329. package/es/utils/grid-index.d.ts +28 -0
  330. package/es/utils/grid-index.js +179 -0
  331. package/es/utils/layerData.d.ts +2 -0
  332. package/es/utils/layerData.js +176 -0
  333. package/es/utils/multiPassRender.d.ts +16 -0
  334. package/es/utils/multiPassRender.js +50 -0
  335. package/es/utils/polylineNormal.d.ts +9 -0
  336. package/es/utils/polylineNormal.js +191 -0
  337. package/es/utils/simpleLine.d.ts +23 -0
  338. package/es/utils/simpleLine.js +103 -0
  339. package/es/utils/symbol-layout.d.ts +43 -0
  340. package/es/utils/symbol-layout.js +299 -0
  341. package/es/utils/updateShape.d.ts +2 -0
  342. package/es/utils/updateShape.js +20 -0
  343. package/es/wind/index.d.ts +20 -0
  344. package/es/wind/index.js +100 -0
  345. package/es/wind/models/index.d.ts +5 -0
  346. package/es/wind/models/index.js +5 -0
  347. package/es/wind/models/utils.d.ts +19 -0
  348. package/es/wind/models/utils.js +226 -0
  349. package/es/wind/models/wind.d.ts +33 -0
  350. package/es/wind/models/wind.js +331 -0
  351. package/es/wind/models/windRender.d.ts +104 -0
  352. package/es/wind/models/windRender.js +357 -0
  353. package/es/wind/models/windShader.d.ts +12 -0
  354. package/es/wind/models/windShader.js +12 -0
  355. package/es/wind/shaders/wind_frag.glsl +9 -0
  356. package/es/wind/shaders/wind_vert.glsl +17 -0
  357. package/lib/Geometry/index.js +119 -0
  358. package/lib/Geometry/models/billboard.js +246 -0
  359. package/lib/Geometry/models/index.js +22 -0
  360. package/lib/Geometry/models/plane.js +436 -0
  361. package/lib/Geometry/models/sprite.js +318 -0
  362. package/lib/Geometry/shaders/billboard_frag.glsl +13 -0
  363. package/lib/Geometry/shaders/billboard_vert.glsl +50 -0
  364. package/lib/Geometry/shaders/plane_frag.glsl +22 -0
  365. package/lib/Geometry/shaders/plane_vert.glsl +53 -0
  366. package/lib/Geometry/shaders/sprite_frag.glsl +21 -0
  367. package/lib/Geometry/shaders/sprite_vert.glsl +28 -0
  368. package/lib/canvas/index.js +104 -0
  369. package/lib/canvas/models/canvas.js +221 -0
  370. package/lib/canvas/models/index.js +16 -0
  371. package/lib/citybuliding/building.js +101 -0
  372. package/lib/citybuliding/models/build.js +203 -0
  373. package/lib/citybuliding/shaders/build_frag.glsl +117 -0
  374. package/lib/citybuliding/shaders/build_vert.glsl +54 -0
  375. package/lib/core/BaseLayer.js +1408 -0
  376. package/lib/core/BaseModel.js +503 -0
  377. package/lib/core/interface.js +41 -0
  378. package/lib/core/schema.js +33 -0
  379. package/lib/core/shape/Path.js +88 -0
  380. package/lib/core/shape/extrude.js +180 -0
  381. package/lib/core/triangulation.js +555 -0
  382. package/lib/earth/index.js +107 -0
  383. package/lib/earth/models/atmosphere.js +152 -0
  384. package/lib/earth/models/base.js +222 -0
  385. package/lib/earth/models/bloomsphere.js +152 -0
  386. package/lib/earth/shaders/atmosphere_frag.glsl +17 -0
  387. package/lib/earth/shaders/atmosphere_vert.glsl +26 -0
  388. package/lib/earth/shaders/base_frag.glsl +13 -0
  389. package/lib/earth/shaders/base_vert.glsl +52 -0
  390. package/lib/earth/shaders/bloomsphere_frag.glsl +15 -0
  391. package/lib/earth/shaders/bloomsphere_vert.glsl +20 -0
  392. package/lib/earth/utils.js +136 -0
  393. package/lib/heatmap/index.js +158 -0
  394. package/lib/heatmap/models/grid.js +122 -0
  395. package/lib/heatmap/models/grid3d.js +161 -0
  396. package/lib/heatmap/models/heatmap.js +487 -0
  397. package/lib/heatmap/models/hexagon.js +125 -0
  398. package/lib/heatmap/models/index.js +26 -0
  399. package/lib/heatmap/shaders/grid_vert.glsl +42 -0
  400. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  401. package/lib/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  402. package/lib/heatmap/shaders/heatmap_frag.glsl +47 -0
  403. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  404. package/lib/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  405. package/lib/heatmap/shaders/heatmap_vert.glsl +10 -0
  406. package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  407. package/lib/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  408. package/lib/heatmap/shaders/hexagon_frag.glsl +12 -0
  409. package/lib/heatmap/shaders/hexagon_vert.glsl +41 -0
  410. package/lib/heatmap/triangulation.js +45 -0
  411. package/lib/image/index.js +116 -0
  412. package/lib/image/models/dataImage.js +240 -0
  413. package/lib/image/models/image.js +183 -0
  414. package/lib/image/models/index.js +19 -0
  415. package/lib/image/shaders/dataImage_frag.glsl +38 -0
  416. package/lib/image/shaders/image_frag.glsl +9 -0
  417. package/lib/image/shaders/image_vert.glsl +17 -0
  418. package/lib/index.js +275 -0
  419. package/lib/line/index.js +153 -0
  420. package/lib/line/models/arc.js +373 -0
  421. package/lib/line/models/arc_3d.js +353 -0
  422. package/lib/line/models/earthArc_3d.js +356 -0
  423. package/lib/line/models/great_circle.js +310 -0
  424. package/lib/line/models/half.js +299 -0
  425. package/lib/line/models/index.js +46 -0
  426. package/lib/line/models/line.js +459 -0
  427. package/lib/line/models/linearline.js +293 -0
  428. package/lib/line/models/simpleLine.js +248 -0
  429. package/lib/line/models/tile.js +368 -0
  430. package/lib/line/models/wall.js +345 -0
  431. package/lib/line/shaders/arc_chunks.vert.glsl +21 -0
  432. package/lib/line/shaders/dash/arc_dash_frag.glsl +28 -0
  433. package/lib/line/shaders/dash/arc_dash_vert.glsl +148 -0
  434. package/lib/line/shaders/dash/line_dash_frag.glsl +31 -0
  435. package/lib/line/shaders/dash/line_dash_vert.glsl +93 -0
  436. package/lib/line/shaders/half/line_half_frag.glsl +53 -0
  437. package/lib/line/shaders/half/line_half_vert.glsl +169 -0
  438. package/lib/line/shaders/line_arc2d_vert.glsl +114 -0
  439. package/lib/line/shaders/line_arc_3d_frag.glsl +103 -0
  440. package/lib/line/shaders/line_arc_3d_vert.glsl +207 -0
  441. package/lib/line/shaders/line_arc_frag.glsl +89 -0
  442. package/lib/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  443. package/lib/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  444. package/lib/line/shaders/line_arc_vert.glsl +176 -0
  445. package/lib/line/shaders/line_bezier_vert.glsl +85 -0
  446. package/lib/line/shaders/line_frag.glsl +100 -0
  447. package/lib/line/shaders/line_vert.glsl +192 -0
  448. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  449. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  450. package/lib/line/shaders/linear/arc_linear_frag.glsl +38 -0
  451. package/lib/line/shaders/linear/arc_linear_vert.glsl +138 -0
  452. package/lib/line/shaders/linear/line_linear_frag.glsl +27 -0
  453. package/lib/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  454. package/lib/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  455. package/lib/line/shaders/simple/simpleline_frag.glsl +10 -0
  456. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  457. package/lib/line/shaders/simple/simpleline_vert.glsl +79 -0
  458. package/lib/line/shaders/tile/line_tile_frag.glsl +79 -0
  459. package/lib/line/shaders/tile/line_tile_vert.glsl +210 -0
  460. package/lib/line/shaders/wall_frag.glsl +93 -0
  461. package/lib/line/shaders/wall_vert.glsl +111 -0
  462. package/lib/mask/index.js +95 -0
  463. package/lib/mask/models/fill.js +137 -0
  464. package/lib/mask/models/index.js +16 -0
  465. package/lib/mask/shaders/mask_frag.glsl +7 -0
  466. package/lib/mask/shaders/mask_vert.glsl +22 -0
  467. package/lib/plugins/DataMappingPlugin.js +360 -0
  468. package/lib/plugins/DataSourcePlugin.js +96 -0
  469. package/lib/plugins/FeatureScalePlugin.js +404 -0
  470. package/lib/plugins/LayerAnimateStylePlugin.js +64 -0
  471. package/lib/plugins/LayerModelPlugin.js +82 -0
  472. package/lib/plugins/LayerStylePlugin.js +50 -0
  473. package/lib/plugins/LightingPlugin.js +125 -0
  474. package/lib/plugins/MultiPassRendererPlugin.js +93 -0
  475. package/lib/plugins/PixelPickingPlugin.js +159 -0
  476. package/lib/plugins/RegisterStyleAttributePlugin.js +117 -0
  477. package/lib/plugins/ShaderUniformPlugin.js +120 -0
  478. package/lib/plugins/UpdateModelPlugin.js +42 -0
  479. package/lib/plugins/UpdateStyleAttributePlugin.js +98 -0
  480. package/lib/point/index.js +247 -0
  481. package/lib/point/models/earthExtrude.js +295 -0
  482. package/lib/point/models/earthFill.js +293 -0
  483. package/lib/point/models/extrude.js +315 -0
  484. package/lib/point/models/fill.js +420 -0
  485. package/lib/point/models/fillmage.js +383 -0
  486. package/lib/point/models/image.js +255 -0
  487. package/lib/point/models/index.js +53 -0
  488. package/lib/point/models/normal.js +194 -0
  489. package/lib/point/models/radar.js +314 -0
  490. package/lib/point/models/simplePoint.js +205 -0
  491. package/lib/point/models/text.js +637 -0
  492. package/lib/point/models/tile.js +325 -0
  493. package/lib/point/models/tileText.js +613 -0
  494. package/lib/point/shaders/animate/wave_frag.glsl +65 -0
  495. package/lib/point/shaders/earth/extrude_frag.glsl +44 -0
  496. package/lib/point/shaders/earth/extrude_vert.glsl +140 -0
  497. package/lib/point/shaders/earth/fill_frag.glsl +86 -0
  498. package/lib/point/shaders/earth/fill_vert.glsl +126 -0
  499. package/lib/point/shaders/extrude/extrude_frag.glsl +44 -0
  500. package/lib/point/shaders/extrude/extrude_vert.glsl +121 -0
  501. package/lib/point/shaders/fill_frag.glsl +84 -0
  502. package/lib/point/shaders/fill_vert.glsl +189 -0
  503. package/lib/point/shaders/image/fillImage_frag.glsl +20 -0
  504. package/lib/point/shaders/image/fillImage_vert.glsl +116 -0
  505. package/lib/point/shaders/image_frag.glsl +39 -0
  506. package/lib/point/shaders/image_vert.glsl +90 -0
  507. package/lib/point/shaders/normal_frag.glsl +15 -0
  508. package/lib/point/shaders/normal_vert.glsl +79 -0
  509. package/lib/point/shaders/radar/radar_frag.glsl +64 -0
  510. package/lib/point/shaders/radar/radar_vert.glsl +120 -0
  511. package/lib/point/shaders/simplePoint_frag.glsl +53 -0
  512. package/lib/point/shaders/simplePoint_vert.glsl +79 -0
  513. package/lib/point/shaders/text_frag.glsl +48 -0
  514. package/lib/point/shaders/text_vert.glsl +131 -0
  515. package/lib/point/shaders/tile/fill_tile_frag.glsl +83 -0
  516. package/lib/point/shaders/tile/fill_tile_vert.glsl +181 -0
  517. package/lib/point/shape/extrude.js +78 -0
  518. package/lib/polygon/index.js +162 -0
  519. package/lib/polygon/models/extrude.js +322 -0
  520. package/lib/polygon/models/fill.js +226 -0
  521. package/lib/polygon/models/index.js +50 -0
  522. package/lib/polygon/models/ocean.js +252 -0
  523. package/lib/polygon/models/tile.js +147 -0
  524. package/lib/polygon/models/water.js +229 -0
  525. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  526. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  527. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  528. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  529. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  530. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  531. package/lib/polygon/shaders/polygon_frag.glsl +12 -0
  532. package/lib/polygon/shaders/polygon_linear_frag.glsl +22 -0
  533. package/lib/polygon/shaders/polygon_linear_vert.glsl +74 -0
  534. package/lib/polygon/shaders/polygon_vert.glsl +66 -0
  535. package/lib/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  536. package/lib/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  537. package/lib/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  538. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  539. package/lib/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  540. package/lib/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  541. package/lib/raster/buffers/triangulation.js +38 -0
  542. package/lib/raster/index.js +119 -0
  543. package/lib/raster/models/index.js +20 -0
  544. package/lib/raster/models/raster.js +182 -0
  545. package/lib/raster/raster.js +191 -0
  546. package/lib/raster/shaders/raster_2d_frag.glsl +28 -0
  547. package/lib/raster/shaders/raster_2d_vert.glsl +18 -0
  548. package/lib/raster/shaders/raster_frag.glsl +9 -0
  549. package/lib/raster/shaders/raster_vert.glsl +44 -0
  550. package/lib/tile/interface.js +5 -0
  551. package/lib/tile/manager/tileConfigManager.js +133 -0
  552. package/lib/tile/manager/tileLayerManager.js +341 -0
  553. package/lib/tile/manager/tilePickerManager.js +201 -0
  554. package/lib/tile/models/tileModel.js +74 -0
  555. package/lib/tile/tileFactory/base.js +466 -0
  556. package/lib/tile/tileFactory/index.js +64 -0
  557. package/lib/tile/tileFactory/line.js +70 -0
  558. package/lib/tile/tileFactory/point.js +70 -0
  559. package/lib/tile/tileFactory/polygon.js +70 -0
  560. package/lib/tile/tileFactory/raster.js +68 -0
  561. package/lib/tile/tileFactory/rasterData.js +93 -0
  562. package/lib/tile/tileFactory/rasterDataLayer.js +100 -0
  563. package/lib/tile/tileFactory/test.js +95 -0
  564. package/lib/tile/tileFactory/vectorLayer.js +176 -0
  565. package/lib/tile/tileLayer/baseTileLayer.js +447 -0
  566. package/lib/tile/tileTest.js +75 -0
  567. package/lib/tile/tmsTileLayer.js +117 -0
  568. package/lib/tile/utils.js +158 -0
  569. package/lib/utils/blend.js +65 -0
  570. package/lib/utils/collision-index.js +118 -0
  571. package/lib/utils/dataMappingStyle.js +151 -0
  572. package/lib/utils/extrude_polyline.js +653 -0
  573. package/lib/utils/grid-index.js +188 -0
  574. package/lib/utils/layerData.js +187 -0
  575. package/lib/utils/multiPassRender.js +61 -0
  576. package/lib/utils/polylineNormal.js +230 -0
  577. package/lib/utils/simpleLine.js +116 -0
  578. package/lib/utils/symbol-layout.js +308 -0
  579. package/lib/utils/updateShape.js +27 -0
  580. package/lib/wind/index.js +113 -0
  581. package/lib/wind/models/index.js +16 -0
  582. package/lib/wind/models/utils.js +253 -0
  583. package/lib/wind/models/wind.js +346 -0
  584. package/lib/wind/models/windRender.js +373 -0
  585. package/lib/wind/models/windShader.js +25 -0
  586. package/lib/wind/shaders/wind_frag.glsl +9 -0
  587. package/lib/wind/shaders/wind_vert.glsl +17 -0
  588. package/package.json +6 -7
@@ -0,0 +1,491 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
+ import { calculateCentroid, calculatePointsCenterAndRadius, lngLatToMeters } from '@antv/l7-utils';
4
+ import earcut from 'earcut'; // @ts-ignore
5
+
6
+ import { vec3 } from 'gl-matrix';
7
+ import { EARTH_RADIUS, EARTH_RADIUS_OUTER, EARTH_SEGMENTS, lglt2xyz, primitiveSphere } from "../earth/utils";
8
+ import ExtrudePolyline from "../utils/extrude_polyline";
9
+ import extrudePolygon, { extrude_PolygonNormal, fillPolygon } from "./shape/extrude";
10
+ import { geometryShape } from "./shape/Path";
11
+ var GeometryCache = {};
12
+ /**
13
+ * 计算2D 填充点图顶点
14
+ * @param feature 映射feature
15
+ */
16
+
17
+ export function PointFillTriangulation(feature) {
18
+ var coordinates = calculateCentroid(feature.coordinates);
19
+ return {
20
+ vertices: [].concat(_toConsumableArray(coordinates), _toConsumableArray(coordinates), _toConsumableArray(coordinates), _toConsumableArray(coordinates)),
21
+ indices: [0, 1, 2, 2, 3, 0],
22
+ size: coordinates.length
23
+ };
24
+ }
25
+ /**
26
+ * 计算2D 填充点图顶点 (地球模式)
27
+ * @param feature 映射feature
28
+ */
29
+
30
+ export function GlobelPointFillTriangulation(feature) {
31
+ var coordinates = calculateCentroid(feature.coordinates);
32
+ var xyz = lglt2xyz(coordinates);
33
+ return {
34
+ vertices: [].concat(_toConsumableArray(xyz), _toConsumableArray(xyz), _toConsumableArray(xyz), _toConsumableArray(xyz)),
35
+ indices: [0, 1, 2, 2, 3, 0],
36
+ size: xyz.length
37
+ };
38
+ }
39
+ /**
40
+ * 计算3D 拉伸点图
41
+ * @param feature 映射feature
42
+ */
43
+
44
+ export function PointExtrudeTriangulation(feature) {
45
+ var shape = feature.shape;
46
+
47
+ var _getGeometry = getGeometry(shape, false),
48
+ positions = _getGeometry.positions,
49
+ index = _getGeometry.index,
50
+ normals = _getGeometry.normals;
51
+
52
+ return {
53
+ vertices: positions,
54
+ indices: index,
55
+ normals: normals,
56
+ size: 5
57
+ };
58
+ }
59
+ /**
60
+ * 计算图片标注
61
+ * @param feature 映射feature
62
+ */
63
+
64
+ export function PointImageTriangulation(feature) {
65
+ var coordinates = calculateCentroid(feature.coordinates);
66
+ return {
67
+ vertices: _toConsumableArray(coordinates),
68
+ indices: [0],
69
+ size: coordinates.length
70
+ };
71
+ }
72
+ /**
73
+ * 线三角化
74
+ * @param feature 映射feature
75
+ */
76
+
77
+ export function LineTriangulation(feature) {
78
+ var coordinates = feature.coordinates,
79
+ originCoordinates = feature.originCoordinates,
80
+ version = feature.version; // let path = coordinates as number[][][] | number[][];
81
+ // if (!Array.isArray(path[0][0])) {
82
+ // path = [coordinates] as number[][][];
83
+ // }
84
+
85
+ var line = new ExtrudePolyline({
86
+ dash: true,
87
+ join: 'bevel'
88
+ });
89
+
90
+ if (version === 'GAODE2.x') {
91
+ // 处理高德2.0几何体构建
92
+ var path1 = coordinates; // 计算位置
93
+
94
+ if (!Array.isArray(path1[0][0])) {
95
+ path1 = [coordinates];
96
+ }
97
+
98
+ var path2 = originCoordinates; // 计算法线
99
+
100
+ if (!Array.isArray(path2[0][0])) {
101
+ path2 = [originCoordinates];
102
+ }
103
+
104
+ for (var i = 0; i < path1.length; i++) {
105
+ // 高德2.0在计算线时,需要使用经纬度计算发现,使用 customCoords.lnglatToCoords 计算的数据来计算顶点的位置
106
+ var item1 = path1[i];
107
+ var item2 = path2[i];
108
+ line.extrude_gaode2(item1, item2);
109
+ }
110
+ } else {
111
+ // 处理非高德2.0的几何体构建
112
+ var path = coordinates;
113
+
114
+ if (path[0] && !Array.isArray(path[0][0])) {
115
+ path = [coordinates];
116
+ }
117
+
118
+ path.forEach(function (item) {
119
+ line.extrude(item);
120
+ });
121
+ }
122
+
123
+ var linebuffer = line.complex;
124
+ return {
125
+ vertices: linebuffer.positions,
126
+ // [ x,y,z, distance, miter,total ]
127
+ indices: linebuffer.indices,
128
+ normals: linebuffer.normals,
129
+ indexes: linebuffer.indexes,
130
+ size: 6
131
+ };
132
+ }
133
+ export function SimpleLineTriangulation(feature) {
134
+ var coordinates = feature.coordinates;
135
+ var pos = [];
136
+
137
+ var _getSimpleLineVertice = getSimpleLineVertices(coordinates),
138
+ results = _getSimpleLineVertice.results,
139
+ totalDistance = _getSimpleLineVertice.totalDistance;
140
+
141
+ results.map(function (point) {
142
+ pos.push(point[0], point[1], point[2], point[3], 0, totalDistance);
143
+ });
144
+ return {
145
+ vertices: pos,
146
+ indices: [],
147
+ normals: [],
148
+ size: 6,
149
+ count: results.length
150
+ };
151
+ }
152
+
153
+ function lineSegmentDistance(b1, a1) {
154
+ var dx = a1[0] - b1[0];
155
+ var dy = a1[1] - b1[1];
156
+ return Math.sqrt(dx * dx + dy * dy);
157
+ }
158
+
159
+ function pushDis(point, n) {
160
+ if (point.length < 3) {
161
+ point.push(0);
162
+ }
163
+
164
+ point.push(n);
165
+ return point;
166
+ }
167
+
168
+ function getSimpleLineVertices(points) {
169
+ var distance = 0;
170
+
171
+ if (points.length < 2) {
172
+ return {
173
+ results: points,
174
+ totalDistance: 0
175
+ };
176
+ } else {
177
+ var results = [];
178
+ var point = pushDis(points[0], distance);
179
+ results.push(point);
180
+
181
+ for (var i = 1; i < points.length - 1; i++) {
182
+ var subDistance = lineSegmentDistance(points[i - 1], points[i]);
183
+ distance += subDistance;
184
+ var mulPoint = pushDis(points[i], distance);
185
+ results.push(mulPoint);
186
+ results.push(mulPoint);
187
+ }
188
+
189
+ var pointDistance = lineSegmentDistance(points[points.length - 2], points[points.length - 1]);
190
+ distance += pointDistance;
191
+ results.push(pushDis(points[points.length - 1], distance));
192
+ return {
193
+ results: results,
194
+ totalDistance: distance
195
+ };
196
+ }
197
+ }
198
+
199
+ export function polygonTriangulation(feature) {
200
+ var coordinates = feature.coordinates;
201
+ var flattengeo = earcut.flatten(coordinates);
202
+ var vertices = flattengeo.vertices,
203
+ dimensions = flattengeo.dimensions,
204
+ holes = flattengeo.holes;
205
+ return {
206
+ indices: earcut(vertices, holes, dimensions),
207
+ vertices: vertices,
208
+ size: dimensions
209
+ };
210
+ } // TODO:构建几何图形(带有中心点和大小)
211
+
212
+ export function polygonTriangulationWithCenter(feature) {
213
+ var coordinates = feature.coordinates;
214
+ var flattengeo = earcut.flatten(coordinates);
215
+ var vertices = flattengeo.vertices,
216
+ dimensions = flattengeo.dimensions,
217
+ holes = flattengeo.holes;
218
+ return {
219
+ indices: earcut(vertices, holes, dimensions),
220
+ vertices: getVerticesWithCenter(vertices),
221
+ size: dimensions + 4
222
+ };
223
+ }
224
+
225
+ function getVerticesWithCenter(vertices) {
226
+ var verticesWithCenter = [];
227
+
228
+ var _calculatePointsCente = calculatePointsCenterAndRadius(vertices),
229
+ center = _calculatePointsCente.center,
230
+ radius = _calculatePointsCente.radius;
231
+
232
+ for (var i = 0; i < vertices.length; i += 2) {
233
+ var lng = vertices[i];
234
+ var lat = vertices[i + 1];
235
+ verticesWithCenter.push.apply(verticesWithCenter, [lng, lat, 0].concat(_toConsumableArray(center), [radius]));
236
+ }
237
+
238
+ return verticesWithCenter;
239
+ }
240
+
241
+ export function PolygonExtrudeTriangulation(feature) {
242
+ var coordinates = feature.coordinates;
243
+
244
+ var _extrude_PolygonNorma = extrude_PolygonNormal(coordinates, true),
245
+ positions = _extrude_PolygonNorma.positions,
246
+ index = _extrude_PolygonNorma.index,
247
+ normals = _extrude_PolygonNorma.normals;
248
+
249
+ return {
250
+ vertices: positions,
251
+ // [ x, y, z, uv.x,uv.y ]
252
+ indices: index,
253
+ normals: normals,
254
+ size: 5
255
+ };
256
+ }
257
+ export function HeatmapGridTriangulation(feature) {
258
+ var shape = feature.shape;
259
+
260
+ var _getHeatmapGeometry = getHeatmapGeometry(shape),
261
+ positions = _getHeatmapGeometry.positions,
262
+ index = _getHeatmapGeometry.index;
263
+
264
+ return {
265
+ vertices: positions,
266
+ // [ x, y, z ] 多边形顶点
267
+ indices: index,
268
+ size: 3
269
+ };
270
+ }
271
+ /**
272
+ * 图片图层顶点构造
273
+ * @param feature 数据
274
+ */
275
+
276
+ export function RasterImageTriangulation(feature) {
277
+ var coordinates = feature.coordinates; // [ x, y, z. uv.x, uv.y]
278
+
279
+ var positions = [].concat(_toConsumableArray(coordinates[0]), [0, 0, 1, coordinates[1][0], coordinates[0][1], 0, 1, 1], _toConsumableArray(coordinates[1]), [0, 1, 0], _toConsumableArray(coordinates[0]), [0, 0, 1], _toConsumableArray(coordinates[1]), [0, 1, 0, coordinates[0][0], coordinates[1][1], 0, 0, 0]);
280
+ var indexs = [0, 1, 2, 3, 4, 5];
281
+ return {
282
+ vertices: positions,
283
+ indices: indexs,
284
+ size: 5
285
+ };
286
+ }
287
+ /**
288
+ * 计算3D弧线顶点
289
+ * @param feature 映射数据
290
+ * @param segNum 弧线线段数
291
+ */
292
+
293
+ export function LineArcTriangulation(feature, segmentNumber) {
294
+ var segNum = segmentNumber ? segmentNumber : 30;
295
+ var coordinates = feature.coordinates;
296
+ var positions = [];
297
+ var indexArray = [];
298
+
299
+ var _loop = function _loop(i) {
300
+ // 上线两个顶点
301
+ // [ x, y, z, sx,sy, tx,ty]
302
+ positions.push(i, 1, i, coordinates[0][0], coordinates[0][1], coordinates[1][0], coordinates[1][1], i, -1, i, coordinates[0][0], coordinates[0][1], coordinates[1][0], coordinates[1][1]);
303
+
304
+ if (i !== segNum - 1) {
305
+ indexArray.push.apply(indexArray, _toConsumableArray([0, 1, 2, 1, 3, 2].map(function (v) {
306
+ return i * 2 + v;
307
+ })));
308
+ }
309
+ };
310
+
311
+ for (var i = 0; i < segNum; i++) {
312
+ _loop(i);
313
+ }
314
+
315
+ return {
316
+ vertices: positions,
317
+ indices: indexArray,
318
+ size: 7
319
+ };
320
+ }
321
+ /**
322
+ * 构建热力图密度图的顶点
323
+ * @param feature
324
+ * @returns
325
+ */
326
+
327
+ export function HeatmapTriangulation(feature) {
328
+ var coordinates = feature.coordinates;
329
+
330
+ if (coordinates.length === 2) {
331
+ coordinates.push(0);
332
+ }
333
+
334
+ var size = feature.size;
335
+ var dir = addDir(-1, 1);
336
+ var dir1 = addDir(1, 1);
337
+ var dir2 = addDir(-1, -1);
338
+ var dir3 = addDir(1, -1); // [x,y,z, dirx ,diry, weight]
339
+
340
+ var positions = [].concat(_toConsumableArray(coordinates), _toConsumableArray(dir), _toConsumableArray(coordinates), _toConsumableArray(dir2), _toConsumableArray(coordinates), _toConsumableArray(dir3), _toConsumableArray(coordinates), _toConsumableArray(dir1));
341
+ var indexArray = [0, 1, 2, 3, 0, 2];
342
+ return {
343
+ vertices: positions,
344
+ indices: indexArray,
345
+ size: 5
346
+ };
347
+ }
348
+ /**
349
+ * 点图层3d geomerty
350
+ * @param shape 3D形状
351
+ */
352
+
353
+ function getGeometry(shape) {
354
+ var needFlat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
355
+
356
+ if (GeometryCache && GeometryCache[shape]) {
357
+ return GeometryCache[shape];
358
+ }
359
+
360
+ var path = geometryShape[shape] ? geometryShape[shape]() : geometryShape.cylinder();
361
+ var geometry = extrude_PolygonNormal([path], needFlat);
362
+ GeometryCache[shape] = geometry;
363
+ return geometry;
364
+ }
365
+
366
+ function computeVertexNormals(positions, indexArray) {
367
+ var dim = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
368
+ var needFlat = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
369
+ var normals = new Float32Array(positions.length / dim * 3);
370
+ var vA;
371
+ var vB;
372
+ var vC;
373
+ var cb = vec3.create();
374
+ var ab = vec3.create();
375
+ var normal = vec3.create();
376
+
377
+ for (var i = 0, li = indexArray.length; i < li; i += 3) {
378
+ vA = indexArray[i + 0] * 3;
379
+ vB = indexArray[i + 1] * 3;
380
+ vC = indexArray[i + 2] * 3;
381
+ var p1 = [positions[vA], positions[vA + 1]];
382
+ var p2 = [positions[vB], positions[vB + 1]];
383
+ var p3 = [positions[vC], positions[vC + 1]];
384
+
385
+ if (needFlat) {
386
+ p1 = lngLatToMeters(p1);
387
+ p2 = lngLatToMeters(p2);
388
+ p3 = lngLatToMeters(p3);
389
+ }
390
+
391
+ var _p = p1,
392
+ _p2 = _slicedToArray(_p, 2),
393
+ ax = _p2[0],
394
+ ay = _p2[1];
395
+
396
+ var pA = vec3.fromValues(ax, ay, positions[vA + 2]);
397
+
398
+ var _p3 = p2,
399
+ _p4 = _slicedToArray(_p3, 2),
400
+ bx = _p4[0],
401
+ by = _p4[1];
402
+
403
+ var pB = vec3.fromValues(bx, by, positions[vB + 2]);
404
+
405
+ var _p5 = p3,
406
+ _p6 = _slicedToArray(_p5, 2),
407
+ cx = _p6[0],
408
+ cy = _p6[1];
409
+
410
+ var pC = vec3.fromValues(cx, cy, positions[vC + 2]);
411
+ vec3.sub(cb, pC, pB);
412
+ vec3.sub(ab, pA, pB);
413
+ vec3.cross(normal, cb, ab);
414
+ normals[vA] += cb[0];
415
+ normals[vA + 1] += cb[1];
416
+ normals[vA + 2] += cb[2];
417
+ normals[vB] += cb[0];
418
+ normals[vB + 1] += cb[1];
419
+ normals[vB + 2] += cb[2];
420
+ normals[vC] += cb[0];
421
+ normals[vC + 1] += cb[1];
422
+ normals[vC + 2] += cb[2];
423
+ }
424
+
425
+ normalizeNormals(normals);
426
+ return normals;
427
+ }
428
+
429
+ function normalizeNormals(normals) {
430
+ for (var i = 0, li = normals.length; i < li; i += 3) {
431
+ var normal = vec3.fromValues(normals[i], normals[i + 1], normals[i + 2]);
432
+ var newNormal = vec3.create();
433
+ vec3.normalize(newNormal, normal);
434
+ normals.set(newNormal, i);
435
+ }
436
+ }
437
+
438
+ function checkIsClosed(points) {
439
+ var p1 = points[0][0];
440
+ var p2 = points[0][points[0].length - 1];
441
+ return p1[0] === p2[0] && p1[1] === p2[1];
442
+ }
443
+
444
+ function getHeatmapGeometry(shape) {
445
+ var shape3d = ['cylinder', 'triangleColumn', 'hexagonColumn', 'squareColumn'];
446
+ var path = geometryShape[shape] ? geometryShape[shape]() : geometryShape.circle();
447
+ var geometry = shape3d.indexOf(shape) === -1 ? fillPolygon([path]) : extrudePolygon([path]); // const geometry = fillPolygon([path]);
448
+
449
+ return geometry;
450
+ } // 热力图计算范围
451
+
452
+
453
+ function addDir(dirX, dirY) {
454
+ var x = (dirX + 1) / 2;
455
+ var y = (dirY + 1) / 2;
456
+ return [x, y];
457
+ }
458
+ /**
459
+ * 构建地球三角网格
460
+ * @returns
461
+ */
462
+
463
+
464
+ export function earthTriangulation() {
465
+ var earthmesh = primitiveSphere(EARTH_RADIUS, {
466
+ segments: EARTH_SEGMENTS
467
+ });
468
+ var positionsArr = earthmesh.positionsArr,
469
+ indicesArr = earthmesh.indicesArr,
470
+ normalArr = earthmesh.normalArr;
471
+ return {
472
+ vertices: positionsArr,
473
+ indices: indicesArr,
474
+ size: 5,
475
+ normals: normalArr
476
+ };
477
+ }
478
+ export function earthOuterTriangulation() {
479
+ var earthmesh = primitiveSphere(EARTH_RADIUS + EARTH_RADIUS_OUTER, {
480
+ segments: EARTH_SEGMENTS
481
+ });
482
+ var positionsArr = earthmesh.positionsArr,
483
+ indicesArr = earthmesh.indicesArr,
484
+ normalArr = earthmesh.normalArr;
485
+ return {
486
+ vertices: positionsArr,
487
+ indices: indicesArr,
488
+ size: 5,
489
+ normals: normalArr
490
+ };
491
+ }
@@ -0,0 +1,17 @@
1
+ import BaseLayer from '../core/BaseLayer';
2
+ interface IEarthLayerStyleOptions {
3
+ opacity: number;
4
+ setEarthTime(time: number): void;
5
+ }
6
+ export declare type EarthModelType = 'base' | 'atomSphere' | 'bloomSphere';
7
+ export default class EarthLayer extends BaseLayer<IEarthLayerStyleOptions> {
8
+ type: string;
9
+ buildModels(): void;
10
+ /**
11
+ * 设置当前地球时间
12
+ * @param time
13
+ */
14
+ setEarthTime(time: number): void;
15
+ protected getModelType(): EarthModelType;
16
+ }
17
+ export {};
@@ -0,0 +1,91 @@
1
+ import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
+ import _createClass from "@babel/runtime/helpers/createClass";
3
+ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
4
+ import _inherits from "@babel/runtime/helpers/inherits";
5
+ import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
6
+ import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
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 BaseLayer from "../core/BaseLayer";
14
+ import EarthAtomSphereModel from "./models/atmosphere";
15
+ import BaseEarthModel from "./models/base";
16
+ import EarthBloomSphereModel from "./models/bloomsphere";
17
+ var EarthModels = {
18
+ base: BaseEarthModel,
19
+ atomSphere: EarthAtomSphereModel,
20
+ bloomSphere: EarthBloomSphereModel
21
+ };
22
+ var earthLayerTypes = ['base', 'atomSphere', 'bloomSphere'];
23
+
24
+ var EarthLayer = /*#__PURE__*/function (_BaseLayer) {
25
+ _inherits(EarthLayer, _BaseLayer);
26
+
27
+ var _super = _createSuper(EarthLayer);
28
+
29
+ function EarthLayer() {
30
+ var _this;
31
+
32
+ _classCallCheck(this, EarthLayer);
33
+
34
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
35
+ args[_key] = arguments[_key];
36
+ }
37
+
38
+ _this = _super.call.apply(_super, [this].concat(args));
39
+
40
+ _defineProperty(_assertThisInitialized(_this), "type", 'EarthLayer');
41
+
42
+ return _this;
43
+ }
44
+
45
+ _createClass(EarthLayer, [{
46
+ key: "buildModels",
47
+ value: function buildModels() {
48
+ var _this2 = this;
49
+
50
+ var shape = this.getModelType();
51
+ this.layerModel = new EarthModels[shape](this);
52
+ this.layerModel.initModels(function (models) {
53
+ _this2.models = models;
54
+
55
+ _this2.renderLayers();
56
+ });
57
+ }
58
+ /**
59
+ * 设置当前地球时间
60
+ * @param time
61
+ */
62
+
63
+ }, {
64
+ key: "setEarthTime",
65
+ value: function setEarthTime(time) {
66
+ if (this.layerModel && this.layerModel.setEarthTime) {
67
+ this.layerModel.setEarthTime(time);
68
+ } else {
69
+ console.warn('请在 scene loaded 之后执行该方法!');
70
+ }
71
+ }
72
+ }, {
73
+ key: "getModelType",
74
+ value: function getModelType() {
75
+ var _shapeAttribute$scale;
76
+
77
+ var shapeAttribute = this.styleAttributeService.getLayerStyleAttribute('shape');
78
+ var shape = (shapeAttribute === null || shapeAttribute === void 0 ? void 0 : (_shapeAttribute$scale = shapeAttribute.scale) === null || _shapeAttribute$scale === void 0 ? void 0 : _shapeAttribute$scale.field) || 'base';
79
+
80
+ if (earthLayerTypes.indexOf(shape) < 0) {
81
+ shape = 'base';
82
+ }
83
+
84
+ return shape;
85
+ }
86
+ }]);
87
+
88
+ return EarthLayer;
89
+ }(BaseLayer);
90
+
91
+ export { EarthLayer as default };
@@ -0,0 +1,9 @@
1
+ import { IModel, IModelUniform } from '@antv/l7-core';
2
+ import BaseModel from '../../core/BaseModel';
3
+ export default class EarthAtomSphereModel extends BaseModel {
4
+ getUninforms(): IModelUniform;
5
+ initModels(callbackModel: (models: IModel[]) => void): void;
6
+ clearModels(): string;
7
+ buildModels(callbackModel: (models: IModel[]) => void): void;
8
+ protected registerBuiltinAttributes(): void;
9
+ }