@antv/l7-layers 2.9.21 → 2.9.22-alpha.0

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 (707) hide show
  1. package/es/Geometry/index.js +4 -5
  2. package/es/Geometry/models/billboard.js +23 -9
  3. package/es/Geometry/models/index.js +4 -5
  4. package/es/Geometry/models/plane.js +25 -13
  5. package/es/Geometry/models/sprite.js +11 -21
  6. package/es/Geometry/shaders/billboard_frag.glsl +13 -0
  7. package/es/Geometry/shaders/billboard_vert.glsl +50 -0
  8. package/es/Geometry/shaders/plane_frag.glsl +22 -0
  9. package/es/Geometry/shaders/plane_vert.glsl +53 -0
  10. package/es/Geometry/shaders/sprite_frag.glsl +21 -0
  11. package/es/Geometry/shaders/sprite_vert.glsl +28 -0
  12. package/es/canvas/index.js +4 -5
  13. package/es/canvas/models/canvas.js +6 -12
  14. package/es/canvas/models/index.js +2 -3
  15. package/es/citybuliding/building.js +4 -5
  16. package/es/citybuliding/models/build.js +19 -22
  17. package/es/citybuliding/shaders/build_frag.glsl +117 -0
  18. package/es/citybuliding/shaders/build_vert.glsl +54 -0
  19. package/es/core/BaseLayer.js +205 -157
  20. package/es/core/BaseModel.js +135 -76
  21. package/es/core/interface.js +1 -2
  22. package/es/core/schema.js +4 -2
  23. package/es/core/shape/Path.js +8 -3
  24. package/es/core/shape/extrude.js +9 -4
  25. package/es/core/triangulation.js +89 -17
  26. package/es/earth/index.js +11 -7
  27. package/es/earth/models/atmosphere.js +15 -7
  28. package/es/earth/models/base.js +19 -7
  29. package/es/earth/models/bloomsphere.js +15 -7
  30. package/es/earth/shaders/atmosphere_frag.glsl +17 -0
  31. package/es/earth/shaders/atmosphere_vert.glsl +26 -0
  32. package/es/earth/shaders/base_frag.glsl +13 -0
  33. package/es/earth/shaders/base_vert.glsl +52 -0
  34. package/es/earth/shaders/bloomsphere_frag.glsl +15 -0
  35. package/es/earth/shaders/bloomsphere_vert.glsl +20 -0
  36. package/es/earth/utils.js +28 -5
  37. package/es/heatmap/index.js +8 -7
  38. package/es/heatmap/models/grid.js +11 -5
  39. package/es/heatmap/models/grid3d.js +18 -7
  40. package/es/heatmap/models/heatmap.js +45 -44
  41. package/es/heatmap/models/hexagon.js +14 -6
  42. package/es/heatmap/models/index.js +5 -6
  43. package/es/heatmap/shaders/grid_vert.glsl +42 -0
  44. package/es/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  45. package/es/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  46. package/es/heatmap/shaders/heatmap_frag.glsl +47 -0
  47. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  48. package/es/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  49. package/es/heatmap/shaders/heatmap_vert.glsl +10 -0
  50. package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  51. package/es/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  52. package/es/heatmap/shaders/hexagon_frag.glsl +12 -0
  53. package/es/heatmap/shaders/hexagon_vert.glsl +41 -0
  54. package/es/heatmap/triangulation.js +2 -2
  55. package/es/image/index.js +4 -5
  56. package/es/image/models/dataImage.js +21 -31
  57. package/es/image/models/image.js +19 -25
  58. package/es/image/models/index.js +3 -4
  59. package/es/image/shaders/dataImage_frag.glsl +38 -0
  60. package/es/image/shaders/image_frag.glsl +9 -0
  61. package/es/image/shaders/image_vert.glsl +17 -0
  62. package/es/index.d.ts +2 -2
  63. package/es/index.js +92 -30
  64. package/es/line/index.js +4 -5
  65. package/es/line/models/arc.js +38 -15
  66. package/es/line/models/arc_3d.js +33 -14
  67. package/es/line/models/earthArc_3d.js +33 -14
  68. package/es/line/models/great_circle.js +25 -13
  69. package/es/line/models/half.js +33 -12
  70. package/es/line/models/index.js +12 -13
  71. package/es/line/models/line.js +48 -15
  72. package/es/line/models/linearline.js +26 -12
  73. package/es/line/models/simpleLine.js +26 -11
  74. package/es/line/models/tile.js +28 -10
  75. package/es/line/models/wall.js +30 -13
  76. package/es/line/shaders/arc_chunks.vert.glsl +21 -0
  77. package/es/line/shaders/dash/arc_dash_frag.glsl +28 -0
  78. package/es/line/shaders/dash/arc_dash_vert.glsl +148 -0
  79. package/es/line/shaders/dash/line_dash_frag.glsl +31 -0
  80. package/es/line/shaders/dash/line_dash_vert.glsl +93 -0
  81. package/es/line/shaders/half/line_half_frag.glsl +53 -0
  82. package/es/line/shaders/half/line_half_vert.glsl +169 -0
  83. package/es/line/shaders/line_arc2d_vert.glsl +114 -0
  84. package/es/line/shaders/line_arc_3d_frag.glsl +103 -0
  85. package/es/line/shaders/line_arc_3d_vert.glsl +207 -0
  86. package/es/line/shaders/line_arc_frag.glsl +89 -0
  87. package/es/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  88. package/es/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  89. package/es/line/shaders/line_arc_vert.glsl +174 -0
  90. package/es/line/shaders/line_bezier_vert.glsl +85 -0
  91. package/es/line/shaders/line_frag.glsl +100 -0
  92. package/es/line/shaders/line_vert.glsl +192 -0
  93. package/es/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  94. package/es/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  95. package/es/line/shaders/linear/arc_linear_frag.glsl +38 -0
  96. package/es/line/shaders/linear/arc_linear_vert.glsl +138 -0
  97. package/es/line/shaders/linear/line_linear_frag.glsl +27 -0
  98. package/es/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  99. package/es/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  100. package/es/line/shaders/simple/simpleline_frag.glsl +10 -0
  101. package/es/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  102. package/es/line/shaders/simple/simpleline_vert.glsl +78 -0
  103. package/es/line/shaders/tile/line_tile_frag.glsl +79 -0
  104. package/es/line/shaders/tile/line_tile_vert.glsl +210 -0
  105. package/es/line/shaders/wall_frag.glsl +93 -0
  106. package/es/line/shaders/wall_vert.glsl +111 -0
  107. package/es/mask/index.js +4 -5
  108. package/es/mask/models/fill.js +11 -8
  109. package/es/mask/models/index.js +2 -3
  110. package/es/mask/shaders/mask_frag.glsl +7 -0
  111. package/es/mask/shaders/mask_vert.glsl +22 -0
  112. package/es/plugins/DataMappingPlugin.js +71 -34
  113. package/es/plugins/DataSourcePlugin.js +12 -10
  114. package/es/plugins/FeatureScalePlugin.js +44 -24
  115. package/es/plugins/LayerAnimateStylePlugin.js +6 -7
  116. package/es/plugins/LayerModelPlugin.js +16 -7
  117. package/es/plugins/LayerStylePlugin.js +7 -3
  118. package/es/plugins/LightingPlugin.js +21 -13
  119. package/es/plugins/MultiPassRendererPlugin.js +21 -8
  120. package/es/plugins/PixelPickingPlugin.js +33 -11
  121. package/es/plugins/RegisterStyleAttributePlugin.js +10 -3
  122. package/es/plugins/ShaderUniformPlugin.js +24 -10
  123. package/es/plugins/UpdateModelPlugin.js +7 -3
  124. package/es/plugins/UpdateStyleAttributePlugin.js +20 -7
  125. package/es/point/index.js +12 -6
  126. package/es/point/models/earthExtrude.js +30 -12
  127. package/es/point/models/earthFill.js +25 -13
  128. package/es/point/models/extrude.js +30 -12
  129. package/es/point/models/fill.js +50 -15
  130. package/es/point/models/fillmage.js +46 -17
  131. package/es/point/models/image.js +20 -12
  132. package/es/point/models/index.js +14 -14
  133. package/es/point/models/normal.js +15 -7
  134. package/es/point/models/radar.js +33 -13
  135. package/es/point/models/simplePoint.js +17 -9
  136. package/es/point/models/text.js +77 -30
  137. package/es/point/models/tile.js +33 -12
  138. package/es/point/shaders/animate/wave_frag.glsl +65 -0
  139. package/es/point/shaders/earth/extrude_frag.glsl +44 -0
  140. package/es/point/shaders/earth/extrude_vert.glsl +140 -0
  141. package/es/point/shaders/earth/fill_frag.glsl +86 -0
  142. package/es/point/shaders/earth/fill_vert.glsl +126 -0
  143. package/es/point/shaders/extrude/extrude_frag.glsl +44 -0
  144. package/es/point/shaders/extrude/extrude_vert.glsl +121 -0
  145. package/es/point/shaders/fill_frag.glsl +84 -0
  146. package/es/point/shaders/fill_vert.glsl +182 -0
  147. package/es/point/shaders/image/fillImage_frag.glsl +20 -0
  148. package/es/point/shaders/image/fillImage_vert.glsl +108 -0
  149. package/es/point/shaders/image_frag.glsl +39 -0
  150. package/es/point/shaders/image_vert.glsl +81 -0
  151. package/es/point/shaders/normal_frag.glsl +15 -0
  152. package/es/point/shaders/normal_vert.glsl +79 -0
  153. package/es/point/shaders/radar/radar_frag.glsl +64 -0
  154. package/es/point/shaders/radar/radar_vert.glsl +120 -0
  155. package/es/point/shaders/simplePoint_frag.glsl +53 -0
  156. package/es/point/shaders/simplePoint_vert.glsl +79 -0
  157. package/es/point/shaders/text_frag.glsl +48 -0
  158. package/es/point/shaders/text_vert.glsl +131 -0
  159. package/es/point/shaders/tile/fill_tile_frag.glsl +83 -0
  160. package/es/point/shaders/tile/fill_tile_vert.glsl +181 -0
  161. package/es/point/shape/extrude.js +8 -3
  162. package/es/polygon/index.js +6 -5
  163. package/es/polygon/models/extrude.js +40 -31
  164. package/es/polygon/models/fill.js +19 -8
  165. package/es/polygon/models/index.js +14 -14
  166. package/es/polygon/models/ocean.js +25 -33
  167. package/es/polygon/models/tile.js +13 -7
  168. package/es/polygon/models/water.js +21 -25
  169. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  170. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  171. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  172. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  173. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  174. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  175. package/es/polygon/shaders/polygon_frag.glsl +12 -0
  176. package/es/polygon/shaders/polygon_linear_frag.glsl +22 -0
  177. package/es/polygon/shaders/polygon_linear_vert.glsl +74 -0
  178. package/es/polygon/shaders/polygon_vert.glsl +66 -0
  179. package/es/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  180. package/es/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  181. package/es/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  182. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  183. package/es/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  184. package/es/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  185. package/es/raster/buffers/triangulation.js +2 -2
  186. package/es/raster/index.js +7 -6
  187. package/es/raster/models/index.js +3 -4
  188. package/es/raster/models/raster.js +15 -25
  189. package/es/raster/raster.js +9 -13
  190. package/es/raster/shaders/raster_2d_frag.glsl +28 -0
  191. package/es/raster/shaders/raster_2d_vert.glsl +18 -0
  192. package/es/raster/shaders/raster_frag.glsl +9 -0
  193. package/es/raster/shaders/raster_vert.glsl +44 -0
  194. package/es/tile/interface.js +1 -2
  195. package/es/tile/manager/tileConfigManager.js +6 -8
  196. package/es/tile/manager/tileLayerManager.js +19 -30
  197. package/es/tile/manager/tilePickerManager.js +14 -14
  198. package/es/tile/models/tileModel.js +6 -6
  199. package/es/tile/tileFactory/base.js +26 -32
  200. package/es/tile/tileFactory/index.js +6 -7
  201. package/es/tile/tileFactory/line.js +3 -9
  202. package/es/tile/tileFactory/point.js +3 -9
  203. package/es/tile/tileFactory/polygon.js +3 -9
  204. package/es/tile/tileFactory/raster.js +4 -10
  205. package/es/tile/tileFactory/rasterData.js +5 -11
  206. package/es/tile/tileFactory/rasterDataLayer.js +4 -5
  207. package/es/tile/tileFactory/vectorLayer.js +8 -9
  208. package/es/tile/tileLayer/baseTileLayer.js +67 -39
  209. package/es/tile/tmsTileLayer.js +5 -4
  210. package/es/tile/utils.js +5 -3
  211. package/es/utils/blend.js +1 -2
  212. package/es/utils/collision-index.js +36 -21
  213. package/es/utils/dataMappingStyle.js +71 -15
  214. package/es/utils/extrude_polyline.js +90 -48
  215. package/es/utils/grid-index.js +7 -21
  216. package/es/utils/layerData.js +41 -17
  217. package/es/utils/multiPassRender.js +21 -5
  218. package/es/utils/polylineNormal.js +40 -20
  219. package/es/utils/simpleLine.js +4 -6
  220. package/es/utils/symbol-layout.js +49 -10
  221. package/es/utils/updateShape.js +6 -3
  222. package/es/wind/index.js +5 -6
  223. package/es/wind/models/index.js +2 -3
  224. package/es/wind/models/utils.js +50 -26
  225. package/es/wind/models/wind.js +15 -18
  226. package/es/wind/models/windRender.js +89 -78
  227. package/es/wind/models/windShader.d.ts +6 -6
  228. package/es/wind/models/windShader.js +12 -7
  229. package/es/wind/shaders/wind_frag.glsl +9 -0
  230. package/es/wind/shaders/wind_vert.glsl +17 -0
  231. package/lib/Geometry/index.js +77 -115
  232. package/lib/Geometry/models/billboard.js +181 -218
  233. package/lib/Geometry/models/index.js +34 -19
  234. package/lib/Geometry/models/plane.js +278 -394
  235. package/lib/Geometry/models/sprite.js +189 -294
  236. package/lib/Geometry/shaders/billboard_frag.glsl +13 -0
  237. package/lib/Geometry/shaders/billboard_vert.glsl +50 -0
  238. package/lib/Geometry/shaders/plane_frag.glsl +22 -0
  239. package/lib/Geometry/shaders/plane_vert.glsl +53 -0
  240. package/lib/Geometry/shaders/sprite_frag.glsl +21 -0
  241. package/lib/Geometry/shaders/sprite_vert.glsl +28 -0
  242. package/lib/canvas/index.js +66 -102
  243. package/lib/canvas/models/canvas.js +140 -210
  244. package/lib/canvas/models/index.js +30 -13
  245. package/lib/citybuliding/building.js +63 -99
  246. package/lib/citybuliding/models/build.js +146 -196
  247. package/lib/citybuliding/shaders/build_frag.glsl +117 -0
  248. package/lib/citybuliding/shaders/build_vert.glsl +54 -0
  249. package/lib/core/BaseLayer.js +807 -1245
  250. package/lib/core/BaseModel.js +275 -375
  251. package/lib/core/interface.js +53 -37
  252. package/lib/core/schema.js +39 -18
  253. package/lib/core/shape/Path.js +78 -60
  254. package/lib/core/shape/extrude.js +90 -127
  255. package/lib/core/triangulation.js +191 -304
  256. package/lib/earth/index.js +62 -96
  257. package/lib/earth/models/atmosphere.js +112 -139
  258. package/lib/earth/models/base.js +150 -198
  259. package/lib/earth/models/bloomsphere.js +112 -139
  260. package/lib/earth/shaders/atmosphere_frag.glsl +17 -0
  261. package/lib/earth/shaders/atmosphere_vert.glsl +26 -0
  262. package/lib/earth/shaders/base_frag.glsl +13 -0
  263. package/lib/earth/shaders/base_vert.glsl +52 -0
  264. package/lib/earth/shaders/bloomsphere_frag.glsl +15 -0
  265. package/lib/earth/shaders/bloomsphere_vert.glsl +20 -0
  266. package/lib/earth/utils.js +89 -85
  267. package/lib/heatmap/index.js +92 -148
  268. package/lib/heatmap/models/grid.js +91 -113
  269. package/lib/heatmap/models/grid3d.js +123 -145
  270. package/lib/heatmap/models/heatmap.js +338 -470
  271. package/lib/heatmap/models/hexagon.js +92 -114
  272. package/lib/heatmap/models/index.js +37 -23
  273. package/lib/heatmap/shaders/grid_vert.glsl +42 -0
  274. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +14 -0
  275. package/lib/heatmap/shaders/heatmap_3d_vert.glsl +46 -0
  276. package/lib/heatmap/shaders/heatmap_frag.glsl +47 -0
  277. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +10 -0
  278. package/lib/heatmap/shaders/heatmap_framebuffer_vert.glsl +35 -0
  279. package/lib/heatmap/shaders/heatmap_vert.glsl +10 -0
  280. package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
  281. package/lib/heatmap/shaders/hexagon_3d_vert.glsl +64 -0
  282. package/lib/heatmap/shaders/hexagon_frag.glsl +12 -0
  283. package/lib/heatmap/shaders/hexagon_vert.glsl +41 -0
  284. package/lib/heatmap/triangulation.js +46 -30
  285. package/lib/image/index.js +74 -112
  286. package/lib/image/models/dataImage.js +173 -241
  287. package/lib/image/models/image.js +123 -177
  288. package/lib/image/models/index.js +32 -16
  289. package/lib/image/shaders/dataImage_frag.glsl +38 -0
  290. package/lib/image/shaders/image_frag.glsl +9 -0
  291. package/lib/image/shaders/image_vert.glsl +17 -0
  292. package/lib/index.js +96 -193
  293. package/lib/line/index.js +83 -128
  294. package/lib/line/models/arc.js +237 -328
  295. package/lib/line/models/arc_3d.js +228 -314
  296. package/lib/line/models/earthArc_3d.js +228 -316
  297. package/lib/line/models/great_circle.js +200 -279
  298. package/lib/line/models/half.js +201 -266
  299. package/lib/line/models/index.js +50 -43
  300. package/lib/line/models/line.js +299 -394
  301. package/lib/line/models/linearline.js +203 -263
  302. package/lib/line/models/simpleLine.js +175 -225
  303. package/lib/line/models/tile.js +237 -330
  304. package/lib/line/models/wall.js +235 -310
  305. package/lib/line/shaders/arc_chunks.vert.glsl +21 -0
  306. package/lib/line/shaders/dash/arc_dash_frag.glsl +28 -0
  307. package/lib/line/shaders/dash/arc_dash_vert.glsl +148 -0
  308. package/lib/line/shaders/dash/line_dash_frag.glsl +31 -0
  309. package/lib/line/shaders/dash/line_dash_vert.glsl +93 -0
  310. package/lib/line/shaders/half/line_half_frag.glsl +53 -0
  311. package/lib/line/shaders/half/line_half_vert.glsl +169 -0
  312. package/lib/line/shaders/line_arc2d_vert.glsl +114 -0
  313. package/lib/line/shaders/line_arc_3d_frag.glsl +103 -0
  314. package/lib/line/shaders/line_arc_3d_vert.glsl +207 -0
  315. package/lib/line/shaders/line_arc_frag.glsl +89 -0
  316. package/lib/line/shaders/line_arc_great_circle_frag.glsl +101 -0
  317. package/lib/line/shaders/line_arc_great_circle_vert.glsl +215 -0
  318. package/lib/line/shaders/line_arc_vert.glsl +174 -0
  319. package/lib/line/shaders/line_bezier_vert.glsl +85 -0
  320. package/lib/line/shaders/line_frag.glsl +100 -0
  321. package/lib/line/shaders/line_vert.glsl +192 -0
  322. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +47 -0
  323. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +207 -0
  324. package/lib/line/shaders/linear/arc_linear_frag.glsl +38 -0
  325. package/lib/line/shaders/linear/arc_linear_vert.glsl +138 -0
  326. package/lib/line/shaders/linear/line_linear_frag.glsl +27 -0
  327. package/lib/line/shaders/linearLine/line_linear_frag.glsl +20 -0
  328. package/lib/line/shaders/linearLine/line_linear_vert.glsl +112 -0
  329. package/lib/line/shaders/simple/simpleline_frag.glsl +10 -0
  330. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +11 -0
  331. package/lib/line/shaders/simple/simpleline_vert.glsl +78 -0
  332. package/lib/line/shaders/tile/line_tile_frag.glsl +79 -0
  333. package/lib/line/shaders/tile/line_tile_vert.glsl +210 -0
  334. package/lib/line/shaders/wall_frag.glsl +93 -0
  335. package/lib/line/shaders/wall_vert.glsl +111 -0
  336. package/lib/mask/index.js +59 -93
  337. package/lib/mask/models/fill.js +82 -132
  338. package/lib/mask/models/index.js +30 -13
  339. package/lib/mask/shaders/mask_frag.glsl +7 -0
  340. package/lib/mask/shaders/mask_vert.glsl +22 -0
  341. package/lib/plugins/DataMappingPlugin.js +222 -304
  342. package/lib/plugins/DataSourcePlugin.js +87 -100
  343. package/lib/plugins/FeatureScalePlugin.js +239 -310
  344. package/lib/plugins/LayerAnimateStylePlugin.js +55 -61
  345. package/lib/plugins/LayerModelPlugin.js +72 -70
  346. package/lib/plugins/LayerStylePlugin.js +51 -44
  347. package/lib/plugins/LightingPlugin.js +68 -72
  348. package/lib/plugins/MultiPassRendererPlugin.js +65 -77
  349. package/lib/plugins/PixelPickingPlugin.js +109 -128
  350. package/lib/plugins/RegisterStyleAttributePlugin.js +110 -103
  351. package/lib/plugins/ShaderUniformPlugin.js +98 -103
  352. package/lib/plugins/UpdateModelPlugin.js +47 -36
  353. package/lib/plugins/UpdateStyleAttributePlugin.js +75 -80
  354. package/lib/point/index.js +147 -216
  355. package/lib/point/models/earthExtrude.js +201 -262
  356. package/lib/point/models/earthFill.js +202 -276
  357. package/lib/point/models/extrude.js +203 -282
  358. package/lib/point/models/fill.js +273 -369
  359. package/lib/point/models/fillmage.js +250 -327
  360. package/lib/point/models/image.js +163 -226
  361. package/lib/point/models/index.js +52 -46
  362. package/lib/point/models/normal.js +134 -176
  363. package/lib/point/models/radar.js +212 -286
  364. package/lib/point/models/simplePoint.js +142 -187
  365. package/lib/point/models/text.js +385 -559
  366. package/lib/point/models/tile.js +223 -294
  367. package/lib/point/shaders/animate/wave_frag.glsl +65 -0
  368. package/lib/point/shaders/earth/extrude_frag.glsl +44 -0
  369. package/lib/point/shaders/earth/extrude_vert.glsl +140 -0
  370. package/lib/point/shaders/earth/fill_frag.glsl +86 -0
  371. package/lib/point/shaders/earth/fill_vert.glsl +126 -0
  372. package/lib/point/shaders/extrude/extrude_frag.glsl +44 -0
  373. package/lib/point/shaders/extrude/extrude_vert.glsl +121 -0
  374. package/lib/point/shaders/fill_frag.glsl +84 -0
  375. package/lib/point/shaders/fill_vert.glsl +182 -0
  376. package/lib/point/shaders/image/fillImage_frag.glsl +20 -0
  377. package/lib/point/shaders/image/fillImage_vert.glsl +108 -0
  378. package/lib/point/shaders/image_frag.glsl +39 -0
  379. package/lib/point/shaders/image_vert.glsl +81 -0
  380. package/lib/point/shaders/normal_frag.glsl +15 -0
  381. package/lib/point/shaders/normal_vert.glsl +79 -0
  382. package/lib/point/shaders/radar/radar_frag.glsl +64 -0
  383. package/lib/point/shaders/radar/radar_vert.glsl +120 -0
  384. package/lib/point/shaders/simplePoint_frag.glsl +53 -0
  385. package/lib/point/shaders/simplePoint_vert.glsl +79 -0
  386. package/lib/point/shaders/text_frag.glsl +48 -0
  387. package/lib/point/shaders/text_vert.glsl +131 -0
  388. package/lib/point/shaders/tile/fill_tile_frag.glsl +83 -0
  389. package/lib/point/shaders/tile/fill_tile_vert.glsl +181 -0
  390. package/lib/point/shape/extrude.js +51 -51
  391. package/lib/polygon/index.js +100 -149
  392. package/lib/polygon/models/extrude.js +222 -303
  393. package/lib/polygon/models/fill.js +153 -205
  394. package/lib/polygon/models/index.js +52 -46
  395. package/lib/polygon/models/ocean.js +172 -251
  396. package/lib/polygon/models/tile.js +100 -139
  397. package/lib/polygon/models/water.js +152 -227
  398. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +44 -0
  399. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +44 -0
  400. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +85 -0
  401. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +90 -0
  402. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +48 -0
  403. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +93 -0
  404. package/lib/polygon/shaders/polygon_frag.glsl +12 -0
  405. package/lib/polygon/shaders/polygon_linear_frag.glsl +22 -0
  406. package/lib/polygon/shaders/polygon_linear_vert.glsl +74 -0
  407. package/lib/polygon/shaders/polygon_vert.glsl +66 -0
  408. package/lib/polygon/shaders/tile/polygon_tile_frag.glsl +12 -0
  409. package/lib/polygon/shaders/tile/polygon_tile_vert.glsl +82 -0
  410. package/lib/polygon/shaders/water/polygon_ocean_frag.glsl +248 -0
  411. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +52 -0
  412. package/lib/polygon/shaders/water/polygon_water_frag.glsl +73 -0
  413. package/lib/polygon/shaders/water/polygon_water_vert.glsl +55 -0
  414. package/lib/raster/buffers/triangulation.js +39 -26
  415. package/lib/raster/index.js +73 -111
  416. package/lib/raster/models/index.js +33 -17
  417. package/lib/raster/models/raster.js +134 -187
  418. package/lib/raster/raster.js +132 -189
  419. package/lib/raster/shaders/raster_2d_frag.glsl +28 -0
  420. package/lib/raster/shaders/raster_2d_vert.glsl +18 -0
  421. package/lib/raster/shaders/raster_frag.glsl +9 -0
  422. package/lib/raster/shaders/raster_vert.glsl +44 -0
  423. package/lib/tile/interface.js +17 -2
  424. package/lib/tile/manager/tileConfigManager.js +86 -126
  425. package/lib/tile/manager/tileLayerManager.js +227 -312
  426. package/lib/tile/manager/tilePickerManager.js +123 -187
  427. package/lib/tile/models/tileModel.js +51 -70
  428. package/lib/tile/tileFactory/base.js +292 -403
  429. package/lib/tile/tileFactory/index.js +48 -51
  430. package/lib/tile/tileFactory/line.js +50 -71
  431. package/lib/tile/tileFactory/point.js +50 -71
  432. package/lib/tile/tileFactory/polygon.js +50 -71
  433. package/lib/tile/tileFactory/raster.js +54 -72
  434. package/lib/tile/tileFactory/rasterData.js +76 -94
  435. package/lib/tile/tileFactory/rasterDataLayer.js +62 -98
  436. package/lib/tile/tileFactory/vectorLayer.js +95 -148
  437. package/lib/tile/tileLayer/baseTileLayer.js +220 -380
  438. package/lib/tile/tmsTileLayer.js +67 -109
  439. package/lib/tile/utils.js +86 -101
  440. package/lib/utils/blend.js +79 -60
  441. package/lib/utils/collision-index.js +63 -83
  442. package/lib/utils/dataMappingStyle.js +59 -56
  443. package/lib/utils/extrude_polyline.js +397 -554
  444. package/lib/utils/grid-index.js +111 -168
  445. package/lib/utils/layerData.js +88 -95
  446. package/lib/utils/multiPassRender.js +38 -31
  447. package/lib/utils/polylineNormal.js +86 -118
  448. package/lib/utils/simpleLine.js +85 -101
  449. package/lib/utils/symbol-layout.js +109 -173
  450. package/lib/utils/updateShape.js +40 -11
  451. package/lib/wind/index.js +71 -110
  452. package/lib/wind/models/index.js +30 -13
  453. package/lib/wind/models/utils.js +89 -104
  454. package/lib/wind/models/wind.js +224 -332
  455. package/lib/wind/models/windRender.js +215 -293
  456. package/lib/wind/models/windShader.js +181 -17
  457. package/lib/wind/shaders/wind_frag.glsl +9 -0
  458. package/lib/wind/shaders/wind_vert.glsl +17 -0
  459. package/package.json +11 -9
  460. package/es/Geometry/index.js.map +0 -1
  461. package/es/Geometry/models/billboard.js.map +0 -1
  462. package/es/Geometry/models/index.js.map +0 -1
  463. package/es/Geometry/models/plane.js.map +0 -1
  464. package/es/Geometry/models/sprite.js.map +0 -1
  465. package/es/canvas/index.js.map +0 -1
  466. package/es/canvas/models/canvas.js.map +0 -1
  467. package/es/canvas/models/index.js.map +0 -1
  468. package/es/citybuliding/building.js.map +0 -1
  469. package/es/citybuliding/models/build.js.map +0 -1
  470. package/es/core/BaseLayer.js.map +0 -1
  471. package/es/core/BaseModel.js.map +0 -1
  472. package/es/core/interface.js.map +0 -1
  473. package/es/core/schema.js.map +0 -1
  474. package/es/core/shape/Path.js.map +0 -1
  475. package/es/core/shape/extrude.js.map +0 -1
  476. package/es/core/triangulation.js.map +0 -1
  477. package/es/earth/index.js.map +0 -1
  478. package/es/earth/models/atmosphere.js.map +0 -1
  479. package/es/earth/models/base.js.map +0 -1
  480. package/es/earth/models/bloomsphere.js.map +0 -1
  481. package/es/earth/utils.js.map +0 -1
  482. package/es/glsl.d.js +0 -2
  483. package/es/glsl.d.js.map +0 -1
  484. package/es/heatmap/index.js.map +0 -1
  485. package/es/heatmap/models/grid.js.map +0 -1
  486. package/es/heatmap/models/grid3d.js.map +0 -1
  487. package/es/heatmap/models/heatmap.js.map +0 -1
  488. package/es/heatmap/models/hexagon.js.map +0 -1
  489. package/es/heatmap/models/index.js.map +0 -1
  490. package/es/heatmap/triangulation.js.map +0 -1
  491. package/es/image/index.js.map +0 -1
  492. package/es/image/models/dataImage.js.map +0 -1
  493. package/es/image/models/image.js.map +0 -1
  494. package/es/image/models/index.js.map +0 -1
  495. package/es/index.js.map +0 -1
  496. package/es/line/index.js.map +0 -1
  497. package/es/line/models/arc.js.map +0 -1
  498. package/es/line/models/arc_3d.js.map +0 -1
  499. package/es/line/models/earthArc_3d.js.map +0 -1
  500. package/es/line/models/great_circle.js.map +0 -1
  501. package/es/line/models/half.js.map +0 -1
  502. package/es/line/models/index.js.map +0 -1
  503. package/es/line/models/line.js.map +0 -1
  504. package/es/line/models/linearline.js.map +0 -1
  505. package/es/line/models/simpleLine.js.map +0 -1
  506. package/es/line/models/tile.js.map +0 -1
  507. package/es/line/models/wall.js.map +0 -1
  508. package/es/mask/index.js.map +0 -1
  509. package/es/mask/models/fill.js.map +0 -1
  510. package/es/mask/models/index.js.map +0 -1
  511. package/es/plugins/DataMappingPlugin.js.map +0 -1
  512. package/es/plugins/DataSourcePlugin.js.map +0 -1
  513. package/es/plugins/FeatureScalePlugin.js.map +0 -1
  514. package/es/plugins/LayerAnimateStylePlugin.js.map +0 -1
  515. package/es/plugins/LayerModelPlugin.js.map +0 -1
  516. package/es/plugins/LayerStylePlugin.js.map +0 -1
  517. package/es/plugins/LightingPlugin.js.map +0 -1
  518. package/es/plugins/MultiPassRendererPlugin.js.map +0 -1
  519. package/es/plugins/PixelPickingPlugin.js.map +0 -1
  520. package/es/plugins/RegisterStyleAttributePlugin.js.map +0 -1
  521. package/es/plugins/ShaderUniformPlugin.js.map +0 -1
  522. package/es/plugins/UpdateModelPlugin.js.map +0 -1
  523. package/es/plugins/UpdateStyleAttributePlugin.js.map +0 -1
  524. package/es/point/index.js.map +0 -1
  525. package/es/point/models/earthExtrude.js.map +0 -1
  526. package/es/point/models/earthFill.js.map +0 -1
  527. package/es/point/models/extrude.js.map +0 -1
  528. package/es/point/models/fill.js.map +0 -1
  529. package/es/point/models/fillmage.js.map +0 -1
  530. package/es/point/models/image.js.map +0 -1
  531. package/es/point/models/index.js.map +0 -1
  532. package/es/point/models/normal.js.map +0 -1
  533. package/es/point/models/radar.js.map +0 -1
  534. package/es/point/models/simplePoint.js.map +0 -1
  535. package/es/point/models/text.js.map +0 -1
  536. package/es/point/models/tile.js.map +0 -1
  537. package/es/point/shape/extrude.js.map +0 -1
  538. package/es/polygon/index.js.map +0 -1
  539. package/es/polygon/models/extrude.js.map +0 -1
  540. package/es/polygon/models/fill.js.map +0 -1
  541. package/es/polygon/models/index.js.map +0 -1
  542. package/es/polygon/models/ocean.js.map +0 -1
  543. package/es/polygon/models/tile.js.map +0 -1
  544. package/es/polygon/models/water.js.map +0 -1
  545. package/es/raster/buffers/triangulation.js.map +0 -1
  546. package/es/raster/index.js.map +0 -1
  547. package/es/raster/models/index.js.map +0 -1
  548. package/es/raster/models/raster.js.map +0 -1
  549. package/es/raster/raster.js.map +0 -1
  550. package/es/tile/interface.js.map +0 -1
  551. package/es/tile/manager/tileConfigManager.js.map +0 -1
  552. package/es/tile/manager/tileLayerManager.js.map +0 -1
  553. package/es/tile/manager/tilePickerManager.js.map +0 -1
  554. package/es/tile/models/tileModel.js.map +0 -1
  555. package/es/tile/tileFactory/base.js.map +0 -1
  556. package/es/tile/tileFactory/index.js.map +0 -1
  557. package/es/tile/tileFactory/line.js.map +0 -1
  558. package/es/tile/tileFactory/point.js.map +0 -1
  559. package/es/tile/tileFactory/polygon.js.map +0 -1
  560. package/es/tile/tileFactory/raster.js.map +0 -1
  561. package/es/tile/tileFactory/rasterData.js.map +0 -1
  562. package/es/tile/tileFactory/rasterDataLayer.js.map +0 -1
  563. package/es/tile/tileFactory/vectorLayer.js.map +0 -1
  564. package/es/tile/tileLayer/baseTileLayer.js.map +0 -1
  565. package/es/tile/tmsTileLayer.js.map +0 -1
  566. package/es/tile/utils.js.map +0 -1
  567. package/es/utils/blend.js.map +0 -1
  568. package/es/utils/collision-index.js.map +0 -1
  569. package/es/utils/dataMappingStyle.js.map +0 -1
  570. package/es/utils/extrude_polyline.js.map +0 -1
  571. package/es/utils/grid-index.js.map +0 -1
  572. package/es/utils/layerData.js.map +0 -1
  573. package/es/utils/multiPassRender.js.map +0 -1
  574. package/es/utils/polylineNormal.js.map +0 -1
  575. package/es/utils/simpleLine.js.map +0 -1
  576. package/es/utils/symbol-layout.js.map +0 -1
  577. package/es/utils/updateShape.js.map +0 -1
  578. package/es/wind/index.js.map +0 -1
  579. package/es/wind/models/index.js.map +0 -1
  580. package/es/wind/models/utils.js.map +0 -1
  581. package/es/wind/models/wind.js.map +0 -1
  582. package/es/wind/models/windRender.js.map +0 -1
  583. package/es/wind/models/windShader.js.map +0 -1
  584. package/lib/Geometry/index.js.map +0 -1
  585. package/lib/Geometry/models/billboard.js.map +0 -1
  586. package/lib/Geometry/models/index.js.map +0 -1
  587. package/lib/Geometry/models/plane.js.map +0 -1
  588. package/lib/Geometry/models/sprite.js.map +0 -1
  589. package/lib/canvas/index.js.map +0 -1
  590. package/lib/canvas/models/canvas.js.map +0 -1
  591. package/lib/canvas/models/index.js.map +0 -1
  592. package/lib/citybuliding/building.js.map +0 -1
  593. package/lib/citybuliding/models/build.js.map +0 -1
  594. package/lib/core/BaseLayer.js.map +0 -1
  595. package/lib/core/BaseModel.js.map +0 -1
  596. package/lib/core/interface.js.map +0 -1
  597. package/lib/core/schema.js.map +0 -1
  598. package/lib/core/shape/Path.js.map +0 -1
  599. package/lib/core/shape/extrude.js.map +0 -1
  600. package/lib/core/triangulation.js.map +0 -1
  601. package/lib/earth/index.js.map +0 -1
  602. package/lib/earth/models/atmosphere.js.map +0 -1
  603. package/lib/earth/models/base.js.map +0 -1
  604. package/lib/earth/models/bloomsphere.js.map +0 -1
  605. package/lib/earth/utils.js.map +0 -1
  606. package/lib/glsl.d.js +0 -2
  607. package/lib/glsl.d.js.map +0 -1
  608. package/lib/heatmap/index.js.map +0 -1
  609. package/lib/heatmap/models/grid.js.map +0 -1
  610. package/lib/heatmap/models/grid3d.js.map +0 -1
  611. package/lib/heatmap/models/heatmap.js.map +0 -1
  612. package/lib/heatmap/models/hexagon.js.map +0 -1
  613. package/lib/heatmap/models/index.js.map +0 -1
  614. package/lib/heatmap/triangulation.js.map +0 -1
  615. package/lib/image/index.js.map +0 -1
  616. package/lib/image/models/dataImage.js.map +0 -1
  617. package/lib/image/models/image.js.map +0 -1
  618. package/lib/image/models/index.js.map +0 -1
  619. package/lib/index.js.map +0 -1
  620. package/lib/line/index.js.map +0 -1
  621. package/lib/line/models/arc.js.map +0 -1
  622. package/lib/line/models/arc_3d.js.map +0 -1
  623. package/lib/line/models/earthArc_3d.js.map +0 -1
  624. package/lib/line/models/great_circle.js.map +0 -1
  625. package/lib/line/models/half.js.map +0 -1
  626. package/lib/line/models/index.js.map +0 -1
  627. package/lib/line/models/line.js.map +0 -1
  628. package/lib/line/models/linearline.js.map +0 -1
  629. package/lib/line/models/simpleLine.js.map +0 -1
  630. package/lib/line/models/tile.js.map +0 -1
  631. package/lib/line/models/wall.js.map +0 -1
  632. package/lib/mask/index.js.map +0 -1
  633. package/lib/mask/models/fill.js.map +0 -1
  634. package/lib/mask/models/index.js.map +0 -1
  635. package/lib/plugins/DataMappingPlugin.js.map +0 -1
  636. package/lib/plugins/DataSourcePlugin.js.map +0 -1
  637. package/lib/plugins/FeatureScalePlugin.js.map +0 -1
  638. package/lib/plugins/LayerAnimateStylePlugin.js.map +0 -1
  639. package/lib/plugins/LayerModelPlugin.js.map +0 -1
  640. package/lib/plugins/LayerStylePlugin.js.map +0 -1
  641. package/lib/plugins/LightingPlugin.js.map +0 -1
  642. package/lib/plugins/MultiPassRendererPlugin.js.map +0 -1
  643. package/lib/plugins/PixelPickingPlugin.js.map +0 -1
  644. package/lib/plugins/RegisterStyleAttributePlugin.js.map +0 -1
  645. package/lib/plugins/ShaderUniformPlugin.js.map +0 -1
  646. package/lib/plugins/UpdateModelPlugin.js.map +0 -1
  647. package/lib/plugins/UpdateStyleAttributePlugin.js.map +0 -1
  648. package/lib/point/index.js.map +0 -1
  649. package/lib/point/models/earthExtrude.js.map +0 -1
  650. package/lib/point/models/earthFill.js.map +0 -1
  651. package/lib/point/models/extrude.js.map +0 -1
  652. package/lib/point/models/fill.js.map +0 -1
  653. package/lib/point/models/fillmage.js.map +0 -1
  654. package/lib/point/models/image.js.map +0 -1
  655. package/lib/point/models/index.js.map +0 -1
  656. package/lib/point/models/normal.js.map +0 -1
  657. package/lib/point/models/radar.js.map +0 -1
  658. package/lib/point/models/simplePoint.js.map +0 -1
  659. package/lib/point/models/text.js.map +0 -1
  660. package/lib/point/models/tile.js.map +0 -1
  661. package/lib/point/shape/extrude.js.map +0 -1
  662. package/lib/polygon/index.js.map +0 -1
  663. package/lib/polygon/models/extrude.js.map +0 -1
  664. package/lib/polygon/models/fill.js.map +0 -1
  665. package/lib/polygon/models/index.js.map +0 -1
  666. package/lib/polygon/models/ocean.js.map +0 -1
  667. package/lib/polygon/models/tile.js.map +0 -1
  668. package/lib/polygon/models/water.js.map +0 -1
  669. package/lib/raster/buffers/triangulation.js.map +0 -1
  670. package/lib/raster/index.js.map +0 -1
  671. package/lib/raster/models/index.js.map +0 -1
  672. package/lib/raster/models/raster.js.map +0 -1
  673. package/lib/raster/raster.js.map +0 -1
  674. package/lib/tile/interface.js.map +0 -1
  675. package/lib/tile/manager/tileConfigManager.js.map +0 -1
  676. package/lib/tile/manager/tileLayerManager.js.map +0 -1
  677. package/lib/tile/manager/tilePickerManager.js.map +0 -1
  678. package/lib/tile/models/tileModel.js.map +0 -1
  679. package/lib/tile/tileFactory/base.js.map +0 -1
  680. package/lib/tile/tileFactory/index.js.map +0 -1
  681. package/lib/tile/tileFactory/line.js.map +0 -1
  682. package/lib/tile/tileFactory/point.js.map +0 -1
  683. package/lib/tile/tileFactory/polygon.js.map +0 -1
  684. package/lib/tile/tileFactory/raster.js.map +0 -1
  685. package/lib/tile/tileFactory/rasterData.js.map +0 -1
  686. package/lib/tile/tileFactory/rasterDataLayer.js.map +0 -1
  687. package/lib/tile/tileFactory/vectorLayer.js.map +0 -1
  688. package/lib/tile/tileLayer/baseTileLayer.js.map +0 -1
  689. package/lib/tile/tmsTileLayer.js.map +0 -1
  690. package/lib/tile/utils.js.map +0 -1
  691. package/lib/utils/blend.js.map +0 -1
  692. package/lib/utils/collision-index.js.map +0 -1
  693. package/lib/utils/dataMappingStyle.js.map +0 -1
  694. package/lib/utils/extrude_polyline.js.map +0 -1
  695. package/lib/utils/grid-index.js.map +0 -1
  696. package/lib/utils/layerData.js.map +0 -1
  697. package/lib/utils/multiPassRender.js.map +0 -1
  698. package/lib/utils/polylineNormal.js.map +0 -1
  699. package/lib/utils/simpleLine.js.map +0 -1
  700. package/lib/utils/symbol-layout.js.map +0 -1
  701. package/lib/utils/updateShape.js.map +0 -1
  702. package/lib/wind/index.js.map +0 -1
  703. package/lib/wind/models/index.js.map +0 -1
  704. package/lib/wind/models/utils.js.map +0 -1
  705. package/lib/wind/models/wind.js.map +0 -1
  706. package/lib/wind/models/windRender.js.map +0 -1
  707. package/lib/wind/models/windShader.js.map +0 -1
@@ -8,30 +8,16 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
8
8
 
9
9
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
10
 
11
- var GridIndex = function () {
11
+ /**
12
+ * 网格索引,相比 @mapbox/grid-index,在简单计算碰撞检测结果时效率更高
13
+ * @see https://zhuanlan.zhihu.com/p/74373214
14
+ */
15
+ var GridIndex = /*#__PURE__*/function () {
12
16
  function GridIndex(width, height, cellSize) {
13
17
  _classCallCheck(this, GridIndex);
14
18
 
15
19
  _defineProperty(this, "boxCells", []);
16
20
 
17
- _defineProperty(this, "xCellCount", void 0);
18
-
19
- _defineProperty(this, "yCellCount", void 0);
20
-
21
- _defineProperty(this, "boxKeys", void 0);
22
-
23
- _defineProperty(this, "bboxes", void 0);
24
-
25
- _defineProperty(this, "width", void 0);
26
-
27
- _defineProperty(this, "height", void 0);
28
-
29
- _defineProperty(this, "xScale", void 0);
30
-
31
- _defineProperty(this, "yScale", void 0);
32
-
33
- _defineProperty(this, "boxUid", void 0);
34
-
35
21
  var boxCells = this.boxCells;
36
22
  this.xCellCount = Math.ceil(width / cellSize);
37
23
  this.yCellCount = Math.ceil(height / cellSize);
@@ -84,6 +70,7 @@ var GridIndex = function () {
84
70
  var result = [];
85
71
 
86
72
  if (x1 <= 0 && y1 <= 0 && this.width <= x2 && this.height <= y2) {
73
+ // 这一步是高效的关键,后续精确碰撞检测结果在计算文本可见性时并不需要
87
74
  if (hitTest) {
88
75
  return true;
89
76
  }
@@ -189,5 +176,4 @@ var GridIndex = function () {
189
176
  return GridIndex;
190
177
  }();
191
178
 
192
- export default GridIndex;
193
- //# sourceMappingURL=grid-index.js.map
179
+ export default GridIndex;
@@ -12,21 +12,34 @@ function getArrowPoints(p1, p2) {
12
12
  function adjustData2Amap2Coordinates(mappedData, mapService) {
13
13
  var _this = this;
14
14
 
15
+ // 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
15
16
  if (mappedData.length > 0 && mapService.version === Version['GAODE2.x']) {
16
17
  if (typeof mappedData[0].coordinates[0] === 'number') {
17
- mappedData.filter(function (d) {
18
+ // 单个的点数据
19
+ // @ts-ignore
20
+ mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
21
+ .filter(function (d) {
18
22
  return !d.originCoordinates;
19
23
  }).map(function (d) {
20
- d.version = Version['GAODE2.x'];
21
- d.originCoordinates = cloneDeep(d.coordinates);
24
+ d.version = Version['GAODE2.x']; // @ts-ignore
25
+
26
+ d.originCoordinates = cloneDeep(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
27
+ // @ts-ignore
28
+
22
29
  d.coordinates = _this.mapService.lngLatToCoord(d.coordinates);
23
30
  });
24
31
  } else {
25
- mappedData.filter(function (d) {
32
+ // 连续的线、面数据
33
+ // @ts-ignore
34
+ mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
35
+ .filter(function (d) {
26
36
  return !d.originCoordinates;
27
37
  }).map(function (d) {
28
- d.version = Version['GAODE2.x'];
29
- d.originCoordinates = cloneDeep(d.coordinates);
38
+ d.version = Version['GAODE2.x']; // @ts-ignore
39
+
40
+ d.originCoordinates = cloneDeep(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
41
+ // @ts-ignore
42
+
30
43
  d.coordinates = _this.mapService.lngLatToCoords(d.coordinates);
31
44
  });
32
45
  }
@@ -50,20 +63,27 @@ function unProjectCoordinates(coordinates, mapService) {
50
63
  }
51
64
 
52
65
  if (coordinates[0] && coordinates[0][0] instanceof Array) {
66
+ // @ts-ignore
53
67
  var coords = [];
54
68
  coordinates.map(function (coord) {
69
+ // @ts-ignore
55
70
  var c1 = [];
56
71
  coord.map(function (co) {
57
72
  c1.push(mapService.simpleMapCoord.unproject(co));
58
- });
73
+ }); // @ts-ignore
74
+
59
75
  coords.push(c1);
60
- });
76
+ }); // @ts-ignore
77
+
61
78
  return coords;
62
79
  } else {
63
- var _coords = [];
80
+ // @ts-ignore
81
+ var _coords = []; // @ts-ignore
82
+
64
83
  coordinates.map(function (coord) {
65
84
  _coords.push(mapService.simpleMapCoord.unproject(coord));
66
- });
85
+ }); // @ts-ignore
86
+
67
87
  return _coords;
68
88
  }
69
89
  }
@@ -83,6 +103,7 @@ function applyAttributeMapping(attribute, record, minimumColor) {
83
103
  var field = _ref.field;
84
104
 
85
105
  if (record.hasOwnProperty(field) || ((_attribute$scale2 = attribute.scale) === null || _attribute$scale2 === void 0 ? void 0 : _attribute$scale2.type) === 'variable') {
106
+ // TODO:多字段,常量
86
107
  params.push(record[field]);
87
108
  }
88
109
  });
@@ -111,15 +132,16 @@ function mapping(attributes, data, fontService, mapService, minimumColor, layer)
111
132
  return attribute.scale !== undefined;
112
133
  }).forEach(function (attribute) {
113
134
  var values = applyAttributeMapping(attribute, record, minimumColor);
114
- attribute.needRemapping = false;
135
+ attribute.needRemapping = false; // TODO: 支持每个属性配置 postprocess
115
136
 
116
137
  if (attribute.name === 'color') {
117
138
  values = values.map(function (c) {
118
139
  return rgb2arr(c);
119
140
  });
120
- }
141
+ } // @ts-ignore
142
+
121
143
 
122
- encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values;
144
+ encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values; // 增加对 layer/text/iconfont unicode 映射的解析
123
145
 
124
146
  if (attribute.name === 'shape') {
125
147
  encodeRecord.shape = fontService.getIconFontKey(encodeRecord[attribute.name]);
@@ -127,14 +149,17 @@ function mapping(attributes, data, fontService, mapService, minimumColor, layer)
127
149
  });
128
150
 
129
151
  if (encodeRecord.shape === 'line' && arrow.enable) {
152
+ // 只有在线图层且支持配置箭头的时候进行插入顶点的处理
130
153
  var coords = encodeRecord.coordinates;
131
154
  var arrowPoint = getArrowPoints(coords[0], coords[1]);
132
155
  encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint);
133
156
  }
134
157
 
135
158
  return encodeRecord;
136
- });
137
- adjustData2Amap2Coordinates(mappedData, mapService);
159
+ }); // 调整数据兼容 Amap2.0
160
+
161
+ adjustData2Amap2Coordinates(mappedData, mapService); // 调整数据兼容 SimpleCoordinates
162
+
138
163
  adjustData2SimpleCoordinates(mappedData, mapService);
139
164
  return mappedData;
140
165
  }
@@ -148,5 +173,4 @@ export function calculateData(layer, fontService, mapService, styleAttributeServ
148
173
  var mappedEncodeData = mapping(attributes, filterData, fontService, mapService, bottomColor, layer);
149
174
  source.destroy();
150
175
  return mappedEncodeData;
151
- }
152
- //# sourceMappingURL=layerData.js.map
176
+ }
@@ -1,4 +1,8 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+
3
+ /**
4
+ * 'blurH' -> ['blurH', {}]
5
+ */
2
6
  export function normalizePasses(passes) {
3
7
  return passes.map(function (pass) {
4
8
  if (typeof pass === 'string') {
@@ -8,18 +12,30 @@ export function normalizePasses(passes) {
8
12
  return pass;
9
13
  });
10
14
  }
15
+ /**
16
+ * 默认添加 ClearPass、RenderPass
17
+ * 以及 PostProcessing 中的最后一个 CopyPass
18
+ */
19
+
11
20
  export function createMultiPassRenderer(layer, passes, postProcessingPassFactory, normalPassFactory) {
12
21
  var multiPassRenderer = layer.multiPassRenderer;
13
22
 
14
23
  var _layer$getLayerConfig = layer.getLayerConfig(),
15
24
  enablePicking = _layer$getLayerConfig.enablePicking,
16
- enableTAA = _layer$getLayerConfig.enableTAA;
25
+ enableTAA = _layer$getLayerConfig.enableTAA; // picking pass if enabled
26
+ // if (enablePicking) {
27
+ // multiPassRenderer.add(normalPassFactory('pixelPicking'));
28
+ // }
29
+ // use TAA pass if enabled instead of render pass
30
+
17
31
 
18
32
  if (enableTAA) {
19
33
  multiPassRenderer.add(normalPassFactory('taa'));
20
34
  } else {
35
+ // render all layers in this pass
21
36
  multiPassRenderer.add(normalPassFactory('render'));
22
- }
37
+ } // post processing
38
+
23
39
 
24
40
  normalizePasses(passes).forEach(function (pass) {
25
41
  var _pass = _slicedToArray(pass, 2),
@@ -27,8 +43,8 @@ export function createMultiPassRenderer(layer, passes, postProcessingPassFactory
27
43
  initializationOptions = _pass[1];
28
44
 
29
45
  multiPassRenderer.add(postProcessingPassFactory(passName), initializationOptions);
30
- });
46
+ }); // 末尾为固定的 CopyPass
47
+
31
48
  multiPassRenderer.add(postProcessingPassFactory('copy'));
32
49
  return multiPassRenderer;
33
- }
34
- //# sourceMappingURL=multiPassRender.js.map
50
+ }
@@ -12,6 +12,8 @@ export function computeNormal(out, dir) {
12
12
  return vec2.set(out, -dir[1], dir[0]);
13
13
  }
14
14
  export function direction(out, a, b) {
15
+ // const a1 = aProjectFlat([a[0], a[1]]) as [number, number];
16
+ // const b1 = aProjectFlat([b[0], b[1]]) as [number, number];
15
17
  vec2.sub(out, a, b);
16
18
  vec2.normalize(out, out);
17
19
  return out;
@@ -67,14 +69,14 @@ export default function (points, closed, indexOffset) {
67
69
  var index = count;
68
70
  var last = vec2.fromValues(points[i - 1][0], points[i - 1][1]);
69
71
  var cur = vec2.fromValues(points[i][0], points[i][1]);
70
- var next = i < points.length - 1 ? vec2.fromValues(points[i + 1][0], points[i + 1][1]) : null;
72
+ var next = i < points.length - 1 ? vec2.fromValues(points[i + 1][0], points[i + 1][1]) : null; // 如果当前点和前一点相同,跳过
71
73
 
72
74
  if (isPointEqual(last, cur)) {
73
75
  continue;
74
76
  }
75
77
 
76
78
  if (next) {
77
- var nextIndex = i + 1;
79
+ var nextIndex = i + 1; // 找到不相同的下一点
78
80
 
79
81
  while (next && isPointEqual(cur, next)) {
80
82
  next = nextIndex < points.length - 1 ? vec2.fromValues(points[++nextIndex][0], points[nextIndex][1]) : null;
@@ -102,54 +104,70 @@ export default function (points, closed, indexOffset) {
102
104
  extrusions(attrPos, out, miters, last, lineNormal, 1);
103
105
  }
104
106
 
105
- attrIndex.push(index + 0, index + 2, index + 1);
107
+ attrIndex.push(index + 0, index + 2, index + 1); // no miter, simple segment
106
108
 
107
109
  if (!next) {
110
+ // reset normal
108
111
  computeNormal(lineNormal, lineA);
109
112
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
110
113
  attrDistance.push(d, d);
111
114
  attrIndex.push(index + 1, index + 2, index + 3);
112
115
  count += 2;
113
116
  } else {
114
- var flatNext = aProjectFlat([next[0], next[1]]);
115
- direction(lineB, flatNext, flatCur);
116
- var miterLen = computeMiter(tangent, vec2.fromValues(miter[0], miter[1]), lineA, lineB, 1);
117
+ var flatNext = aProjectFlat([next[0], next[1]]); // get unit dir of next line
118
+
119
+ direction(lineB, flatNext, flatCur); // stores tangent & miter
120
+
121
+ var miterLen = computeMiter(tangent, vec2.fromValues(miter[0], miter[1]), lineA, lineB, 1); // get orientation
122
+
117
123
  var flip = vec2.dot(tangent, lineNormal) < 0 ? -1 : 1;
118
- var bevel = Math.abs(miterLen) > miterLimit;
124
+ var bevel = Math.abs(miterLen) > miterLimit; // 处理前后两条线段重合的情况,这种情况不需要使用任何接头(miter/bevel)。
125
+ // 理论上这种情况下 miterLen = Infinity,本应通过 isFinite(miterLen) 判断,
126
+ // 但是 AMap 投影变换后丢失精度,只能通过一个阈值(1000)判断。
119
127
 
120
128
  if (Math.abs(miterLen) > 1000) {
121
129
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
122
130
  attrIndex.push(index + 1, index + 2, index + 3);
123
131
  attrIndex.push(index + 2, index + 4, index + 3);
124
132
  computeNormal(tmp, lineB);
125
- vec2.copy(lineNormal, tmp);
133
+ vec2.copy(lineNormal, tmp); // store normal for next round
134
+
126
135
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
127
- attrDistance.push(d, d, d, d);
136
+ attrDistance.push(d, d, d, d); // the miter is now the normal for our next join
137
+
128
138
  count += 4;
129
139
  continue;
130
140
  }
131
141
 
132
142
  if (bevel) {
133
- miterLen = miterLimit;
143
+ miterLen = miterLimit; // next two points in our first segment
144
+
134
145
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
135
- attrIndex.push(index + 1, index + 2, index + 3);
146
+ attrIndex.push(index + 1, index + 2, index + 3); // now add the bevel triangle
147
+
136
148
  attrIndex.push.apply(attrIndex, _toConsumableArray(flip === 1 ? [index + 2, index + 4, index + 5] : [index + 4, index + 5, index + 3]));
137
149
  computeNormal(tmp, lineB);
138
- vec2.copy(lineNormal, tmp);
150
+ vec2.copy(lineNormal, tmp); // store normal for next round
151
+
139
152
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
140
- attrDistance.push(d, d, d, d);
153
+ attrDistance.push(d, d, d, d); // the miter is now the normal for our next join
154
+
141
155
  count += 4;
142
156
  } else {
157
+ // next two points in our first segment
143
158
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
144
- attrIndex.push(index + 1, index + 2, index + 3);
159
+ attrIndex.push(index + 1, index + 2, index + 3); // now add the miter triangles
160
+
145
161
  addNext(out, miters, lineNormal, miterLen * -flip);
146
162
  attrPos.push(cur[0], cur[1], 0);
147
163
  attrIndex.push(index + 2, index + 4, index + 3);
148
164
  attrIndex.push(index + 4, index + 5, index + 6);
149
165
  computeNormal(tmp, lineB);
150
- vec2.copy(lineNormal, tmp);
166
+ vec2.copy(lineNormal, tmp); // store normal for next round
167
+
151
168
  extrusions(attrPos, out, miters, cur, lineNormal, 1);
152
- attrDistance.push(d, d, d, d, d);
169
+ attrDistance.push(d, d, d, d, d); // the miter is now the normal for our next join
170
+
153
171
  count += 5;
154
172
  }
155
173
  }
@@ -159,13 +177,15 @@ export default function (points, closed, indexOffset) {
159
177
 
160
178
  for (var _i = 0; _i < miters.length; _i++) {
161
179
  var totalDistance = attrDistance[attrDistance.length - 1];
162
- pickData.push(attrPos[_i * 3], attrPos[_i * 3 + 1], attrPos[_i * 3 + 2], attrDistance[_i], miters[_i], totalDistance);
180
+ pickData.push(attrPos[_i * 3], attrPos[_i * 3 + 1], attrPos[_i * 3 + 2], attrDistance[_i], // dash
181
+ miters[_i], totalDistance // dash
182
+ );
163
183
  }
164
184
 
165
185
  return {
166
186
  normals: out,
167
187
  attrIndex: attrIndex,
168
- attrPos: pickData
188
+ attrPos: pickData // [x,y,z, distance, miter ,t0tal ]
189
+
169
190
  };
170
- }
171
- //# sourceMappingURL=polylineNormal.js.map
191
+ } // [x,y,z, distance, miter ]
@@ -10,12 +10,10 @@ export function direction(out, a, b) {
10
10
  return out;
11
11
  }
12
12
 
13
- var ExtrudePolyline = function () {
13
+ var ExtrudePolyline = /*#__PURE__*/function () {
14
14
  function ExtrudePolyline() {
15
15
  _classCallCheck(this, ExtrudePolyline);
16
16
 
17
- _defineProperty(this, "complex", void 0);
18
-
19
17
  _defineProperty(this, "started", false);
20
18
 
21
19
  _defineProperty(this, "totalDistance", 0);
@@ -82,7 +80,8 @@ var ExtrudePolyline = function () {
82
80
  }
83
81
  }, {
84
82
  key: "extrusions",
85
- value: function extrusions(positions, point, distanceRadio) {
83
+ value: function extrusions(positions, point, // 顶点
84
+ distanceRadio) {
86
85
  positions.push(point[0], point[1], point[2] | 0, distanceRadio, 0, point[2] | 0);
87
86
  this.complex.indexes.push(this.currentIndex);
88
87
  positions.push(point[0], point[1], point[2] | 0, distanceRadio, 0, point[2] | 0);
@@ -101,5 +100,4 @@ var ExtrudePolyline = function () {
101
100
  return ExtrudePolyline;
102
101
  }();
103
102
 
104
- export { ExtrudePolyline as default };
105
- //# sourceMappingURL=simpleLine.js.map
103
+ export { ExtrudePolyline as default };
@@ -4,6 +4,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
4
4
 
5
5
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
6
6
 
7
+ /**
8
+ * 返回文本相对锚点位置
9
+ * @param {string} anchor 锚点位置
10
+ * @return {alignment} alignment
11
+ */
7
12
  function getAnchorAlignment(anchor) {
8
13
  var horizontalAlign = 0.5;
9
14
  var verticalAlign = 0.5;
@@ -46,7 +51,8 @@ function getAnchorAlignment(anchor) {
46
51
  horizontalAlign: horizontalAlign,
47
52
  verticalAlign: verticalAlign
48
53
  };
49
- }
54
+ } // justify right = 1, left = 0, center = 0.5
55
+
50
56
 
51
57
  function justifyLine(positionedGlyphs, glyphMap, start, end, justify) {
52
58
  if (!justify) {
@@ -64,7 +70,10 @@ function justifyLine(positionedGlyphs, glyphMap, start, end, justify) {
64
70
  positionedGlyphs[j].x -= lineIndent;
65
71
  }
66
72
  }
67
- }
73
+ } // justify right=1 left=0 center=0.5
74
+ // horizontalAlign right=1 left=0 center=0.5
75
+ // verticalAlign right=1 left=0 center=0.5
76
+
68
77
 
69
78
  function align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLineLength, lineHeight, lineCount) {
70
79
  var shiftX = (justify - horizontalAlign) * maxLineLength;
@@ -87,6 +96,7 @@ function align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLin
87
96
  }
88
97
 
89
98
  function shapeLines(shaping, glyphMap, lines, lineHeight, textAnchor, textJustify, spacing) {
99
+ // buffer 为 4
90
100
  var yOffset = -8;
91
101
  var x = 0;
92
102
  var y = yOffset;
@@ -105,12 +115,13 @@ function shapeLines(shaping, glyphMap, lines, lineHeight, textAnchor, textJustif
105
115
  x: x,
106
116
  y: y + baselineOffset,
107
117
  vertical: false,
118
+ // TODO:目前只支持水平方向
108
119
  scale: 1,
109
120
  metrics: glyph
110
121
  });
111
122
  x += glyph.advance + spacing;
112
123
  }
113
- });
124
+ }); // 左右对齐
114
125
 
115
126
  if (positionedGlyphs.length !== lineStartIndex) {
116
127
  var lineLength = x - spacing;
@@ -126,7 +137,8 @@ function shapeLines(shaping, glyphMap, lines, lineHeight, textAnchor, textJustif
126
137
  horizontalAlign = _getAnchorAlignment.horizontalAlign,
127
138
  verticalAlign = _getAnchorAlignment.verticalAlign;
128
139
 
129
- align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLineLength, lineHeight, lines.length);
140
+ align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLineLength, lineHeight, lines.length); // 计算包围盒
141
+
130
142
  var height = y - yOffset;
131
143
  shaping.top += -verticalAlign * height;
132
144
  shaping.bottom = shaping.top - height;
@@ -135,6 +147,7 @@ function shapeLines(shaping, glyphMap, lines, lineHeight, textAnchor, textJustif
135
147
  }
136
148
 
137
149
  function shapeIconFont(shaping, glyphMap, iconfonts, lineHeight, textAnchor, textJustify, spacing) {
150
+ // buffer 为 4
138
151
  var yOffset = -8;
139
152
  var x = 0;
140
153
  var y = yOffset;
@@ -149,14 +162,23 @@ function shapeIconFont(shaping, glyphMap, iconfonts, lineHeight, textAnchor, tex
149
162
  if (glyph) {
150
163
  positionedGlyphs.push({
151
164
  glyph: iconfont,
165
+ // x,
166
+
167
+ /**
168
+ * iconfont
169
+ * 在计算大小的时候计算的是 unicode 字符 如 &#xe6d4;
170
+ * 在布局计算 icon 位置的时候应该始终保持居中(且 icon 只占一个字符的位置)
171
+ */
152
172
  x: glyph.advance / 2,
153
173
  y: y + baselineOffset,
154
174
  vertical: false,
175
+ // TODO:目前只支持水平方向
155
176
  scale: 1,
156
177
  metrics: glyph
157
178
  });
158
179
  x += glyph.advance + spacing;
159
- }
180
+ } // 左右对齐
181
+
160
182
 
161
183
  if (positionedGlyphs.length !== lineStartIndex) {
162
184
  var lineLength = x - spacing;
@@ -172,17 +194,33 @@ function shapeIconFont(shaping, glyphMap, iconfonts, lineHeight, textAnchor, tex
172
194
  horizontalAlign = _getAnchorAlignment2.horizontalAlign,
173
195
  verticalAlign = _getAnchorAlignment2.verticalAlign;
174
196
 
175
- align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLineLength, lineHeight, iconfonts.length);
197
+ align(positionedGlyphs, justify, horizontalAlign, verticalAlign, maxLineLength, lineHeight, iconfonts.length); // 计算包围盒
198
+
176
199
  var height = y - yOffset;
177
200
  shaping.top += -verticalAlign * height;
178
201
  shaping.bottom = shaping.top - height;
179
202
  shaping.left += -horizontalAlign * maxLineLength;
180
203
  shaping.right = shaping.left + maxLineLength;
181
204
  }
205
+ /**
206
+ * 计算文本中每个独立字符相对锚点的位置
207
+ *
208
+ * @param {string} text 原始文本
209
+ * @param {*} glyphs mapping
210
+ * @param {number} lineHeight 行高
211
+ * @param {string} textAnchor 文本相对于锚点的位置
212
+ * @param {string} textJustify 左右对齐
213
+ * @param {number} spacing 字符间距
214
+ * @param {[number, number]} translate 文本水平 & 垂直偏移量
215
+ * @param {[boolean]} isIconFont 是否是 iconfont
216
+ * @return {boolean|shaping} 每个字符相对于锚点的位置
217
+ */
218
+
182
219
 
183
220
  export function shapeText(text, glyphs, lineHeight, textAnchor, textJustify, spacing) {
184
221
  var translate = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : [0, 0];
185
222
  var isIconFont = arguments.length > 7 ? arguments[7] : undefined;
223
+ // TODO:处理换行
186
224
  var lines = text.split('\n');
187
225
  var positionedGlyphs = [];
188
226
  var shaping = {
@@ -215,7 +253,8 @@ export function getGlyphQuads(shaping) {
215
253
  try {
216
254
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
217
255
  var positionedGlyph = _step2.value;
218
- var rect = positionedGlyph.metrics;
256
+ var rect = positionedGlyph.metrics; // The rects have an addditional buffer that is not included in their size.
257
+
219
258
  var rectBuffer = 4;
220
259
  var halfAdvance = rect.advance * positionedGlyph.scale / 2;
221
260
  var glyphOffset = alongLine ? [positionedGlyph.x + halfAdvance, positionedGlyph.y] : [0, 0];
@@ -239,7 +278,8 @@ export function getGlyphQuads(shaping) {
239
278
  var br = {
240
279
  x: x2,
241
280
  y: y2
242
- };
281
+ }; // TODO:处理字符旋转的情况
282
+
243
283
  quads.push({
244
284
  tl: tl,
245
285
  tr: tr,
@@ -256,5 +296,4 @@ export function getGlyphQuads(shaping) {
256
296
  }
257
297
 
258
298
  return quads;
259
- }
260
- //# sourceMappingURL=symbol-layout.js.map
299
+ }
@@ -1,4 +1,7 @@
1
- var shapeUpdateList = [['circle', 'cylinder'], ['square', 'cylinder'], ['triangle', 'cylinder'], ['pentagon', 'cylinder'], ['hexagon', 'cylinder'], ['octogon', 'cylinder'], ['hexagram', 'cylinder'], ['rhombus', 'cylinder'], ['vesica', 'cylinder']];
1
+ // TODO: shapeUpdateList 存储一系列的 shape 类型
2
+ // 当这一系列的 shape 相互切换的时候需要重构 layer 的 model (顶点数据集)
3
+ var shapeUpdateList = [// PointLayer
4
+ ['circle', 'cylinder'], ['square', 'cylinder'], ['triangle', 'cylinder'], ['pentagon', 'cylinder'], ['hexagon', 'cylinder'], ['octogon', 'cylinder'], ['hexagram', 'cylinder'], ['rhombus', 'cylinder'], ['vesica', 'cylinder']];
2
5
  export function updateShape(layer, lastShape, currentShape) {
3
6
  if (typeof lastShape === 'string' && typeof currentShape === 'string' && lastShape !== currentShape) {
4
7
  if (layer.type === 'PointLayer') {
@@ -8,10 +11,10 @@ export function updateShape(layer, lastShape, currentShape) {
8
11
 
9
12
  shapeUpdateList.map(function (shapes) {
10
13
  if (shapes.includes(lastShape) && shapes.includes(currentShape)) {
14
+ // TODO: dataSourceNeedUpdate 借用数据更新时更新 layer model 的工作流
11
15
  layer.dataState.dataSourceNeedUpdate = true;
12
16
  return;
13
17
  }
14
18
  });
15
19
  }
16
- }
17
- //# sourceMappingURL=updateShape.js.map
20
+ }
package/es/wind/index.js CHANGED
@@ -10,10 +10,10 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
10
10
 
11
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
12
 
13
- import BaseLayer from '../core/BaseLayer';
14
- import WindModels from './models';
13
+ import BaseLayer from "../core/BaseLayer";
14
+ import WindModels from "./models";
15
15
 
16
- var WindLayer = function (_BaseLayer) {
16
+ var WindLayer = /*#__PURE__*/function (_BaseLayer) {
17
17
  _inherits(WindLayer, _BaseLayer);
18
18
 
19
19
  var _super = _createSuper(WindLayer);
@@ -60,7 +60,7 @@ var WindLayer = function (_BaseLayer) {
60
60
  key: "renderModels",
61
61
  value: function renderModels() {
62
62
  if (this.layerModel) {
63
- this.layerModel.render();
63
+ this.layerModel.render(); // 独立的渲染流程
64
64
  }
65
65
 
66
66
  return this;
@@ -97,5 +97,4 @@ var WindLayer = function (_BaseLayer) {
97
97
  return WindLayer;
98
98
  }(BaseLayer);
99
99
 
100
- export { WindLayer as default };
101
- //# sourceMappingURL=index.js.map
100
+ export { WindLayer as default };
@@ -1,6 +1,5 @@
1
- import WindModel from './wind';
1
+ import WindModel from "./wind";
2
2
  var WindModels = {
3
3
  wind: WindModel
4
4
  };
5
- export default WindModels;
6
- //# sourceMappingURL=index.js.map
5
+ export default WindModels;