@antv/l7-layers 2.10.1 → 2.10.2

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 (353) hide show
  1. package/es/Geometry/index.d.ts +2 -3
  2. package/es/Geometry/index.js +27 -17
  3. package/es/Geometry/models/billboard.d.ts +2 -2
  4. package/es/Geometry/models/billboard.js +77 -37
  5. package/es/Geometry/models/plane.d.ts +2 -2
  6. package/es/Geometry/models/plane.js +80 -40
  7. package/es/Geometry/models/sprite.d.ts +2 -2
  8. package/es/Geometry/models/sprite.js +83 -45
  9. package/es/canvas/index.d.ts +3 -4
  10. package/es/canvas/index.js +35 -24
  11. package/es/canvas/models/canvas.d.ts +2 -2
  12. package/es/canvas/models/canvas.js +54 -15
  13. package/es/citybuliding/building.d.ts +2 -3
  14. package/es/citybuliding/building.js +26 -17
  15. package/es/citybuliding/models/build.d.ts +2 -2
  16. package/es/citybuliding/models/build.js +70 -25
  17. package/es/core/BaseLayer.d.ts +21 -18
  18. package/es/core/BaseLayer.js +391 -261
  19. package/es/core/BaseModel.d.ts +2 -2
  20. package/es/core/BaseModel.js +47 -6
  21. package/es/core/LayerPickService.d.ts +9 -0
  22. package/es/core/LayerPickService.js +85 -0
  23. package/es/core/triangulation.js +8 -1
  24. package/es/earth/index.d.ts +3 -3
  25. package/es/earth/index.js +28 -9
  26. package/es/earth/models/atmosphere.d.ts +2 -2
  27. package/es/earth/models/atmosphere.js +67 -22
  28. package/es/earth/models/base.d.ts +2 -2
  29. package/es/earth/models/base.js +89 -43
  30. package/es/earth/models/bloomsphere.d.ts +2 -2
  31. package/es/earth/models/bloomsphere.js +67 -22
  32. package/es/heatmap/index.d.ts +2 -3
  33. package/es/heatmap/index.js +33 -22
  34. package/es/heatmap/models/grid.d.ts +2 -2
  35. package/es/heatmap/models/grid.js +68 -27
  36. package/es/heatmap/models/grid3d.d.ts +2 -2
  37. package/es/heatmap/models/grid3d.js +69 -28
  38. package/es/heatmap/models/heatmap.d.ts +2 -2
  39. package/es/heatmap/models/heatmap.js +40 -14
  40. package/es/heatmap/models/hexagon.d.ts +2 -2
  41. package/es/heatmap/models/hexagon.js +69 -28
  42. package/es/image/index.d.ts +2 -3
  43. package/es/image/index.js +27 -17
  44. package/es/image/models/dataImage.d.ts +2 -2
  45. package/es/image/models/dataImage.js +93 -54
  46. package/es/image/models/image.d.ts +2 -2
  47. package/es/image/models/image.js +108 -67
  48. package/es/image/models/tileDataImage.d.ts +2 -2
  49. package/es/image/models/tileDataImage.js +84 -43
  50. package/es/index.d.ts +2 -2
  51. package/es/index.js +2 -2
  52. package/es/line/index.d.ts +5 -4
  53. package/es/line/index.js +51 -25
  54. package/es/line/models/arc.d.ts +2 -2
  55. package/es/line/models/arc.js +73 -38
  56. package/es/line/models/arc_3d.d.ts +2 -2
  57. package/es/line/models/arc_3d.js +69 -34
  58. package/es/line/models/earthArc_3d.d.ts +2 -2
  59. package/es/line/models/earthArc_3d.js +72 -37
  60. package/es/line/models/great_circle.d.ts +2 -2
  61. package/es/line/models/great_circle.js +70 -29
  62. package/es/line/models/half.d.ts +2 -2
  63. package/es/line/models/half.js +40 -17
  64. package/es/line/models/index.d.ts +1 -1
  65. package/es/line/models/index.js +0 -2
  66. package/es/line/models/line.d.ts +2 -2
  67. package/es/line/models/line.js +79 -47
  68. package/es/line/models/linearline.d.ts +2 -2
  69. package/es/line/models/linearline.js +70 -31
  70. package/es/line/models/simpleLine.d.ts +2 -2
  71. package/es/line/models/simpleLine.js +71 -34
  72. package/es/line/models/simpleTileLine.d.ts +2 -2
  73. package/es/line/models/simpleTileLine.js +70 -30
  74. package/es/line/models/tile.d.ts +2 -2
  75. package/es/line/models/tile.js +40 -17
  76. package/es/line/models/wall.d.ts +2 -2
  77. package/es/line/models/wall.js +67 -22
  78. package/es/mask/index.d.ts +2 -4
  79. package/es/mask/index.js +27 -97
  80. package/es/mask/models/fill.d.ts +2 -2
  81. package/es/mask/models/fill.js +40 -16
  82. package/es/mask/models/index.d.ts +1 -1
  83. package/es/mask/models/index.js +1 -3
  84. package/es/plugins/DataMappingPlugin.js +80 -66
  85. package/es/plugins/DataSourcePlugin.js +64 -25
  86. package/es/plugins/FeatureScalePlugin.js +84 -44
  87. package/es/plugins/LayerAnimateStylePlugin.js +6 -3
  88. package/es/plugins/LayerModelPlugin.d.ts +2 -2
  89. package/es/plugins/LayerModelPlugin.js +124 -37
  90. package/es/plugins/LayerStylePlugin.js +1 -6
  91. package/es/plugins/MultiPassRendererPlugin.js +1 -1
  92. package/es/plugins/PixelPickingPlugin.js +1 -1
  93. package/es/plugins/RegisterStyleAttributePlugin.js +4 -17
  94. package/es/plugins/ShaderUniformPlugin.js +7 -2
  95. package/es/plugins/UpdateStyleAttributePlugin.js +8 -5
  96. package/es/point/index.d.ts +4 -4
  97. package/es/point/index.js +55 -23
  98. package/es/point/models/earthExtrude.d.ts +2 -2
  99. package/es/point/models/earthExtrude.js +73 -30
  100. package/es/point/models/earthFill.d.ts +2 -2
  101. package/es/point/models/earthFill.js +66 -21
  102. package/es/point/models/extrude.d.ts +2 -2
  103. package/es/point/models/extrude.js +40 -17
  104. package/es/point/models/fill.d.ts +2 -2
  105. package/es/point/models/fill.js +43 -20
  106. package/es/point/models/fillmage.d.ts +2 -2
  107. package/es/point/models/fillmage.js +82 -43
  108. package/es/point/models/image.d.ts +2 -2
  109. package/es/point/models/image.js +72 -31
  110. package/es/point/models/index.d.ts +1 -1
  111. package/es/point/models/index.js +0 -2
  112. package/es/point/models/normal.d.ts +2 -2
  113. package/es/point/models/normal.js +71 -30
  114. package/es/point/models/radar.d.ts +2 -2
  115. package/es/point/models/radar.js +75 -35
  116. package/es/point/models/simplePoint.d.ts +2 -2
  117. package/es/point/models/simplePoint.js +70 -29
  118. package/es/point/models/text.d.ts +3 -2
  119. package/es/point/models/text.js +164 -107
  120. package/es/point/models/tile.d.ts +2 -2
  121. package/es/point/models/tile.js +77 -35
  122. package/es/point/models/tileText.d.ts +2 -2
  123. package/es/point/models/tileText.js +151 -116
  124. package/es/polygon/index.d.ts +2 -3
  125. package/es/polygon/index.js +27 -24
  126. package/es/polygon/models/extrude.d.ts +2 -2
  127. package/es/polygon/models/extrude.js +66 -29
  128. package/es/polygon/models/fill.d.ts +2 -2
  129. package/es/polygon/models/fill.js +76 -43
  130. package/es/polygon/models/index.d.ts +1 -1
  131. package/es/polygon/models/index.js +0 -2
  132. package/es/polygon/models/ocean.d.ts +2 -2
  133. package/es/polygon/models/ocean.js +69 -28
  134. package/es/polygon/models/tile.d.ts +2 -2
  135. package/es/polygon/models/tile.js +70 -30
  136. package/es/polygon/models/water.d.ts +2 -2
  137. package/es/polygon/models/water.js +69 -28
  138. package/es/raster/index.d.ts +3 -4
  139. package/es/raster/index.js +28 -22
  140. package/es/raster/models/index.d.ts +1 -1
  141. package/es/raster/models/index.js +1 -3
  142. package/es/raster/models/raster.d.ts +2 -2
  143. package/es/raster/models/raster.js +36 -13
  144. package/es/raster/models/rasterRgb.d.ts +2 -2
  145. package/es/raster/models/rasterRgb.js +36 -13
  146. package/es/raster/models/rasterTile.d.ts +2 -2
  147. package/es/raster/models/rasterTile.js +77 -36
  148. package/es/raster/raster.d.ts +1 -1
  149. package/es/raster/raster.js +42 -22
  150. package/es/tile/interaction/getRasterData.d.ts +2 -2
  151. package/es/tile/interaction/utils.js +3 -11
  152. package/es/tile/interface.d.ts +5 -4
  153. package/es/tile/manager/base.d.ts +17 -12
  154. package/es/tile/manager/base.js +212 -47
  155. package/es/tile/service/TileLayerService.d.ts +33 -0
  156. package/es/tile/service/TileLayerService.js +172 -0
  157. package/es/tile/service/TilePickService.d.ts +22 -0
  158. package/es/tile/service/TilePickService.js +124 -0
  159. package/es/tile/style/constants.d.ts +1 -13
  160. package/es/tile/style/constants.js +6 -15
  161. package/es/tile/style/utils.d.ts +1 -8
  162. package/es/tile/style/utils.js +0 -126
  163. package/es/tile/tileFactory/DebugTile.d.ts +16 -0
  164. package/es/tile/tileFactory/DebugTile.js +100 -0
  165. package/es/tile/tileFactory/ImageTile.d.ts +14 -0
  166. package/es/tile/tileFactory/ImageTile.js +89 -0
  167. package/es/tile/tileFactory/MaskTile.d.ts +17 -0
  168. package/es/tile/tileFactory/MaskTile.js +98 -0
  169. package/es/tile/tileFactory/RasterRGBTile.d.ts +16 -0
  170. package/es/tile/tileFactory/RasterRGBTile.js +91 -0
  171. package/es/tile/tileFactory/RasterTile.d.ts +27 -0
  172. package/es/tile/tileFactory/RasterTile.js +186 -0
  173. package/es/tile/tileFactory/Tile.d.ts +23 -0
  174. package/es/tile/tileFactory/Tile.js +136 -0
  175. package/es/tile/tileFactory/VectorTile.d.ts +20 -0
  176. package/es/tile/tileFactory/VectorTile.js +158 -0
  177. package/es/tile/tileFactory/index.d.ts +10 -4
  178. package/es/tile/tileFactory/index.js +30 -23
  179. package/es/tile/tileFactory/layers/{rasterDataLayer.d.ts → RasterDataLayer.d.ts} +3 -3
  180. package/es/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +33 -21
  181. package/es/tile/tileFactory/layers/{tileTest.d.ts → TileDebugLayer.d.ts} +2 -2
  182. package/es/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +23 -10
  183. package/es/tile/tileFactory/util.d.ts +6 -0
  184. package/es/tile/tileFactory/util.js +33 -0
  185. package/es/tile/tileLayer/BaseLayer.d.ts +46 -0
  186. package/es/tile/tileLayer/BaseLayer.js +358 -0
  187. package/es/tile/utils.d.ts +1 -11
  188. package/es/tile/utils.js +0 -127
  189. package/es/utils/dataMappingStyle.d.ts +4 -4
  190. package/es/utils/dataMappingStyle.js +19 -19
  191. package/es/utils/layerData.js +5 -11
  192. package/es/wind/index.d.ts +2 -3
  193. package/es/wind/index.js +27 -17
  194. package/es/wind/models/wind.d.ts +2 -2
  195. package/es/wind/models/wind.js +120 -104
  196. package/lib/Geometry/index.js +29 -17
  197. package/lib/Geometry/models/billboard.js +79 -37
  198. package/lib/Geometry/models/plane.js +82 -40
  199. package/lib/Geometry/models/sprite.js +85 -45
  200. package/lib/canvas/index.js +37 -24
  201. package/lib/canvas/models/canvas.js +56 -15
  202. package/lib/citybuliding/building.js +28 -17
  203. package/lib/citybuliding/models/build.js +72 -25
  204. package/lib/core/BaseLayer.js +391 -256
  205. package/lib/core/BaseModel.js +48 -6
  206. package/lib/core/LayerPickService.js +96 -0
  207. package/lib/core/triangulation.js +8 -1
  208. package/lib/earth/index.js +30 -9
  209. package/lib/earth/models/atmosphere.js +69 -22
  210. package/lib/earth/models/base.js +90 -42
  211. package/lib/earth/models/bloomsphere.js +69 -22
  212. package/lib/heatmap/index.js +35 -22
  213. package/lib/heatmap/models/grid.js +70 -27
  214. package/lib/heatmap/models/grid3d.js +71 -28
  215. package/lib/heatmap/models/heatmap.js +40 -14
  216. package/lib/heatmap/models/hexagon.js +71 -28
  217. package/lib/image/index.js +29 -17
  218. package/lib/image/models/dataImage.js +95 -54
  219. package/lib/image/models/image.js +110 -67
  220. package/lib/image/models/tileDataImage.js +86 -43
  221. package/lib/index.js +5 -5
  222. package/lib/line/index.js +53 -26
  223. package/lib/line/models/arc.js +75 -38
  224. package/lib/line/models/arc_3d.js +71 -34
  225. package/lib/line/models/earthArc_3d.js +74 -37
  226. package/lib/line/models/great_circle.js +72 -29
  227. package/lib/line/models/half.js +40 -17
  228. package/lib/line/models/index.js +0 -3
  229. package/lib/line/models/line.js +81 -47
  230. package/lib/line/models/linearline.js +72 -31
  231. package/lib/line/models/simpleLine.js +73 -34
  232. package/lib/line/models/simpleTileLine.js +72 -30
  233. package/lib/line/models/tile.js +40 -17
  234. package/lib/line/models/wall.js +69 -22
  235. package/lib/mask/index.js +28 -99
  236. package/lib/mask/models/fill.js +40 -16
  237. package/lib/mask/models/index.js +1 -4
  238. package/lib/plugins/DataMappingPlugin.js +81 -65
  239. package/lib/plugins/DataSourcePlugin.js +71 -30
  240. package/lib/plugins/FeatureScalePlugin.js +86 -44
  241. package/lib/plugins/LayerAnimateStylePlugin.js +6 -3
  242. package/lib/plugins/LayerModelPlugin.js +131 -41
  243. package/lib/plugins/LayerStylePlugin.js +1 -6
  244. package/lib/plugins/MultiPassRendererPlugin.js +1 -1
  245. package/lib/plugins/PixelPickingPlugin.js +1 -1
  246. package/lib/plugins/RegisterStyleAttributePlugin.js +4 -17
  247. package/lib/plugins/ShaderUniformPlugin.js +7 -2
  248. package/lib/plugins/UpdateStyleAttributePlugin.js +8 -5
  249. package/lib/point/index.js +56 -24
  250. package/lib/point/models/earthExtrude.js +75 -30
  251. package/lib/point/models/earthFill.js +68 -21
  252. package/lib/point/models/extrude.js +40 -17
  253. package/lib/point/models/fill.js +44 -21
  254. package/lib/point/models/fillmage.js +84 -43
  255. package/lib/point/models/image.js +74 -31
  256. package/lib/point/models/index.js +0 -3
  257. package/lib/point/models/normal.js +73 -30
  258. package/lib/point/models/radar.js +77 -35
  259. package/lib/point/models/simplePoint.js +72 -29
  260. package/lib/point/models/text.js +164 -106
  261. package/lib/point/models/tile.js +79 -35
  262. package/lib/point/models/tileText.js +151 -115
  263. package/lib/polygon/index.js +29 -25
  264. package/lib/polygon/models/extrude.js +68 -29
  265. package/lib/polygon/models/fill.js +78 -43
  266. package/lib/polygon/models/index.js +0 -3
  267. package/lib/polygon/models/ocean.js +71 -28
  268. package/lib/polygon/models/tile.js +72 -30
  269. package/lib/polygon/models/water.js +71 -28
  270. package/lib/raster/index.js +30 -22
  271. package/lib/raster/models/index.js +1 -4
  272. package/lib/raster/models/raster.js +36 -13
  273. package/lib/raster/models/rasterRgb.js +36 -13
  274. package/lib/raster/models/rasterTile.js +79 -36
  275. package/lib/raster/raster.js +44 -22
  276. package/lib/tile/interaction/utils.js +3 -11
  277. package/lib/tile/manager/base.js +213 -47
  278. package/lib/tile/service/TileLayerService.js +185 -0
  279. package/lib/tile/service/TilePickService.js +136 -0
  280. package/lib/tile/style/constants.js +8 -19
  281. package/lib/tile/style/utils.js +0 -140
  282. package/lib/tile/tileFactory/DebugTile.js +115 -0
  283. package/lib/tile/tileFactory/ImageTile.js +104 -0
  284. package/lib/tile/tileFactory/MaskTile.js +113 -0
  285. package/lib/tile/tileFactory/RasterRGBTile.js +106 -0
  286. package/lib/tile/tileFactory/RasterTile.js +205 -0
  287. package/lib/tile/tileFactory/Tile.js +146 -0
  288. package/lib/tile/tileFactory/VectorTile.js +173 -0
  289. package/lib/tile/tileFactory/index.js +42 -24
  290. package/lib/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +35 -21
  291. package/lib/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +24 -11
  292. package/lib/tile/tileFactory/util.js +48 -0
  293. package/lib/tile/tileLayer/BaseLayer.js +373 -0
  294. package/lib/tile/utils.js +0 -146
  295. package/lib/utils/dataMappingStyle.js +21 -21
  296. package/lib/utils/layerData.js +4 -10
  297. package/lib/wind/index.js +29 -17
  298. package/lib/wind/models/wind.js +122 -104
  299. package/package.json +7 -7
  300. package/es/tile/interaction/TilePickService.d.ts +0 -16
  301. package/es/tile/interaction/TilePickService.js +0 -129
  302. package/es/tile/manager/layerManager.d.ts +0 -19
  303. package/es/tile/manager/layerManager.js +0 -254
  304. package/es/tile/manager/mapLayerManager.d.ts +0 -7
  305. package/es/tile/manager/mapLayerManager.js +0 -119
  306. package/es/tile/models/tileModel.d.ts +0 -10
  307. package/es/tile/models/tileModel.js +0 -81
  308. package/es/tile/render/TileRenderService.d.ts +0 -10
  309. package/es/tile/render/TileRenderService.js +0 -68
  310. package/es/tile/style/TileStyleService.d.ts +0 -17
  311. package/es/tile/style/TileStyleService.js +0 -118
  312. package/es/tile/tileFactory/base.d.ts +0 -45
  313. package/es/tile/tileFactory/base.js +0 -403
  314. package/es/tile/tileFactory/layers/vectorLayer.d.ts +0 -30
  315. package/es/tile/tileFactory/layers/vectorLayer.js +0 -253
  316. package/es/tile/tileFactory/line.d.ts +0 -12
  317. package/es/tile/tileFactory/line.js +0 -59
  318. package/es/tile/tileFactory/mask.d.ts +0 -12
  319. package/es/tile/tileFactory/mask.js +0 -60
  320. package/es/tile/tileFactory/point.d.ts +0 -12
  321. package/es/tile/tileFactory/point.js +0 -60
  322. package/es/tile/tileFactory/polygon.d.ts +0 -12
  323. package/es/tile/tileFactory/polygon.js +0 -59
  324. package/es/tile/tileFactory/raster.d.ts +0 -12
  325. package/es/tile/tileFactory/raster.js +0 -55
  326. package/es/tile/tileFactory/rasterData.d.ts +0 -12
  327. package/es/tile/tileFactory/rasterData.js +0 -81
  328. package/es/tile/tileFactory/test.d.ts +0 -12
  329. package/es/tile/tileFactory/test.js +0 -94
  330. package/es/tile/tileLayer/MapTileLayer.d.ts +0 -6
  331. package/es/tile/tileLayer/MapTileLayer.js +0 -48
  332. package/es/tile/tileLayer/TileLayer.d.ts +0 -22
  333. package/es/tile/tileLayer/TileLayer.js +0 -198
  334. package/es/tile/tileLayer/base.d.ts +0 -33
  335. package/es/tile/tileLayer/base.js +0 -212
  336. package/lib/tile/interaction/TilePickService.js +0 -143
  337. package/lib/tile/manager/layerManager.js +0 -275
  338. package/lib/tile/manager/mapLayerManager.js +0 -134
  339. package/lib/tile/models/tileModel.js +0 -94
  340. package/lib/tile/render/TileRenderService.js +0 -78
  341. package/lib/tile/style/TileStyleService.js +0 -133
  342. package/lib/tile/tileFactory/base.js +0 -427
  343. package/lib/tile/tileFactory/layers/vectorLayer.js +0 -268
  344. package/lib/tile/tileFactory/line.js +0 -70
  345. package/lib/tile/tileFactory/mask.js +0 -71
  346. package/lib/tile/tileFactory/point.js +0 -71
  347. package/lib/tile/tileFactory/polygon.js +0 -70
  348. package/lib/tile/tileFactory/raster.js +0 -68
  349. package/lib/tile/tileFactory/rasterData.js +0 -93
  350. package/lib/tile/tileFactory/test.js +0 -106
  351. package/lib/tile/tileLayer/MapTileLayer.js +0 -63
  352. package/lib/tile/tileLayer/TileLayer.js +0 -215
  353. package/lib/tile/tileLayer/base.js +0 -225
@@ -89,57 +89,27 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
89
89
 
90
90
  _defineProperty(_assertThisInitialized(_this), "preTextStyle", {});
91
91
 
92
- _defineProperty(_assertThisInitialized(_this), "buildModels", /*#__PURE__*/function () {
93
- var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(callbackModel) {
94
- var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside;
92
+ _defineProperty(_assertThisInitialized(_this), "mapping", /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
93
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
94
+ while (1) {
95
+ switch (_context.prev = _context.next) {
96
+ case 0:
97
+ _this.initGlyph();
95
98
 
96
- return _regeneratorRuntime.wrap(function _callee$(_context) {
97
- while (1) {
98
- switch (_context.prev = _context.next) {
99
- case 0:
100
- _ref2 = _this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside;
99
+ _this.updateTexture();
101
100
 
102
- _this.mapping();
101
+ _this.filterGlyphs();
103
102
 
104
- _this.layer.buildLayerModel({
105
- moduleName: 'pointText',
106
- vertexShader: textVert,
107
- fragmentShader: textFrag,
108
- triangulation: TextTriangulation.bind(_assertThisInitialized(_this)),
109
- depth: {
110
- enable: false
111
- },
112
- blend: _this.getBlend(),
113
- stencil: getMask(mask, maskInside)
114
- }).then(function (model) {
115
- callbackModel([model]);
116
- }).catch(function (err) {
117
- console.warn(err);
118
- callbackModel([]);
119
- });
103
+ _context.next = 5;
104
+ return _this.reBuildModel();
120
105
 
121
- case 3:
122
- case "end":
123
- return _context.stop();
124
- }
106
+ case 5:
107
+ case "end":
108
+ return _context.stop();
125
109
  }
126
- }, _callee);
127
- }));
128
-
129
- return function (_x) {
130
- return _ref.apply(this, arguments);
131
- };
132
- }());
133
-
134
- _defineProperty(_assertThisInitialized(_this), "mapping", function () {
135
- _this.initGlyph();
136
-
137
- _this.updateTexture();
138
-
139
- _this.filterGlyphs();
140
-
141
- _this.reBuildModel();
142
- });
110
+ }
111
+ }, _callee);
112
+ })));
143
113
 
144
114
  return _this;
145
115
  }
@@ -147,23 +117,23 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
147
117
  _createClass(TextModel, [{
148
118
  key: "getUninforms",
149
119
  value: function getUninforms() {
150
- var _ref3 = this.layer.getLayerConfig(),
151
- _ref3$opacity = _ref3.opacity,
152
- opacity = _ref3$opacity === void 0 ? 1.0 : _ref3$opacity,
153
- _ref3$stroke = _ref3.stroke,
154
- stroke = _ref3$stroke === void 0 ? '#fff' : _ref3$stroke,
155
- _ref3$strokeWidth = _ref3.strokeWidth,
156
- strokeWidth = _ref3$strokeWidth === void 0 ? 0 : _ref3$strokeWidth,
157
- _ref3$textAnchor = _ref3.textAnchor,
158
- textAnchor = _ref3$textAnchor === void 0 ? 'center' : _ref3$textAnchor,
159
- _ref3$textAllowOverla = _ref3.textAllowOverlap,
160
- textAllowOverlap = _ref3$textAllowOverla === void 0 ? false : _ref3$textAllowOverla,
161
- _ref3$halo = _ref3.halo,
162
- halo = _ref3$halo === void 0 ? 0.5 : _ref3$halo,
163
- _ref3$gamma = _ref3.gamma,
164
- gamma = _ref3$gamma === void 0 ? 2.0 : _ref3$gamma,
165
- _ref3$raisingHeight = _ref3.raisingHeight,
166
- raisingHeight = _ref3$raisingHeight === void 0 ? 0 : _ref3$raisingHeight;
120
+ var _ref2 = this.layer.getLayerConfig(),
121
+ _ref2$opacity = _ref2.opacity,
122
+ opacity = _ref2$opacity === void 0 ? 1.0 : _ref2$opacity,
123
+ _ref2$stroke = _ref2.stroke,
124
+ stroke = _ref2$stroke === void 0 ? '#fff' : _ref2$stroke,
125
+ _ref2$strokeWidth = _ref2.strokeWidth,
126
+ strokeWidth = _ref2$strokeWidth === void 0 ? 0 : _ref2$strokeWidth,
127
+ _ref2$textAnchor = _ref2.textAnchor,
128
+ textAnchor = _ref2$textAnchor === void 0 ? 'center' : _ref2$textAnchor,
129
+ _ref2$textAllowOverla = _ref2.textAllowOverlap,
130
+ textAllowOverlap = _ref2$textAllowOverla === void 0 ? false : _ref2$textAllowOverla,
131
+ _ref2$halo = _ref2.halo,
132
+ halo = _ref2$halo === void 0 ? 0.5 : _ref2$halo,
133
+ _ref2$gamma = _ref2.gamma,
134
+ gamma = _ref2$gamma === void 0 ? 2.0 : _ref2$gamma,
135
+ _ref2$raisingHeight = _ref2.raisingHeight,
136
+ raisingHeight = _ref2$raisingHeight === void 0 ? 0 : _ref2$raisingHeight;
167
137
 
168
138
  var _this$fontService = this.fontService,
169
139
  canvas = _this$fontService.canvas,
@@ -231,22 +201,85 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
231
201
  }
232
202
  }, {
233
203
  key: "initModels",
234
- value: function initModels(callbackModel) {
235
- this.layer.on('remapping', this.mapping);
236
- this.extent = this.textExtent();
204
+ value: function () {
205
+ var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
206
+ var _ref3, _ref3$textAnchor, textAnchor, _ref3$textAllowOverla, textAllowOverlap;
237
207
 
238
- var _ref4 = this.layer.getLayerConfig(),
239
- _ref4$textAnchor = _ref4.textAnchor,
240
- textAnchor = _ref4$textAnchor === void 0 ? 'center' : _ref4$textAnchor,
241
- _ref4$textAllowOverla = _ref4.textAllowOverlap,
242
- textAllowOverlap = _ref4$textAllowOverla === void 0 ? true : _ref4$textAllowOverla;
208
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
209
+ while (1) {
210
+ switch (_context2.prev = _context2.next) {
211
+ case 0:
212
+ // 绑定事件
213
+ this.bindEvent();
214
+ this.extent = this.textExtent();
215
+ _ref3 = this.layer.getLayerConfig(), _ref3$textAnchor = _ref3.textAnchor, textAnchor = _ref3$textAnchor === void 0 ? 'center' : _ref3$textAnchor, _ref3$textAllowOverla = _ref3.textAllowOverlap, textAllowOverlap = _ref3$textAllowOverla === void 0 ? true : _ref3$textAllowOverla;
216
+ this.preTextStyle = {
217
+ textAnchor: textAnchor,
218
+ textAllowOverlap: textAllowOverlap
219
+ };
220
+ _context2.next = 6;
221
+ return this.buildModels();
222
+
223
+ case 6:
224
+ return _context2.abrupt("return", _context2.sent);
225
+
226
+ case 7:
227
+ case "end":
228
+ return _context2.stop();
229
+ }
230
+ }
231
+ }, _callee2, this);
232
+ }));
243
233
 
244
- this.preTextStyle = {
245
- textAnchor: textAnchor,
246
- textAllowOverlap: textAllowOverlap
247
- };
248
- this.buildModels(callbackModel);
249
- }
234
+ function initModels() {
235
+ return _initModels.apply(this, arguments);
236
+ }
237
+
238
+ return initModels;
239
+ }()
240
+ }, {
241
+ key: "buildModels",
242
+ value: function () {
243
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
244
+ var _ref4, _ref4$mask, mask, _ref4$maskInside, maskInside, model;
245
+
246
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
247
+ while (1) {
248
+ switch (_context3.prev = _context3.next) {
249
+ case 0:
250
+ _ref4 = this.layer.getLayerConfig(), _ref4$mask = _ref4.mask, mask = _ref4$mask === void 0 ? false : _ref4$mask, _ref4$maskInside = _ref4.maskInside, maskInside = _ref4$maskInside === void 0 ? true : _ref4$maskInside;
251
+ this.mapping();
252
+ _context3.next = 4;
253
+ return this.layer.buildLayerModel({
254
+ moduleName: 'pointText',
255
+ vertexShader: textVert,
256
+ fragmentShader: textFrag,
257
+ triangulation: TextTriangulation.bind(this),
258
+ depth: {
259
+ enable: false
260
+ },
261
+ blend: this.getBlend(),
262
+ stencil: getMask(mask, maskInside)
263
+ });
264
+
265
+ case 4:
266
+ model = _context3.sent;
267
+ return _context3.abrupt("return", [model]);
268
+
269
+ case 6:
270
+ case "end":
271
+ return _context3.stop();
272
+ }
273
+ }
274
+ }, _callee3, this);
275
+ }));
276
+
277
+ function buildModels() {
278
+ return _buildModels.apply(this, arguments);
279
+ }
280
+
281
+ return buildModels;
282
+ }()
250
283
  }, {
251
284
  key: "needUpdate",
252
285
  value: function needUpdate() {
@@ -260,6 +293,7 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
260
293
  var flag = boundsContains(this.extent, extent); // 文本不能压盖则进行过滤
261
294
 
262
295
  if (!textAllowOverlap && (Math.abs(this.currentZoom - zoom) > 1 || !flag) || textAllowOverlap !== this.preTextStyle.textAllowOverlap) {
296
+ // TODO this.mapping
263
297
  this.reBuildModel();
264
298
  return true;
265
299
  }
@@ -272,7 +306,8 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
272
306
  var _this$texture, _this$dataTexture;
273
307
 
274
308
  (_this$texture = this.texture) === null || _this$texture === void 0 ? void 0 : _this$texture.destroy();
275
- (_this$dataTexture = this.dataTexture) === null || _this$dataTexture === void 0 ? void 0 : _this$dataTexture.destroy();
309
+ (_this$dataTexture = this.dataTexture) === null || _this$dataTexture === void 0 ? void 0 : _this$dataTexture.destroy(); // TODO this.mapping
310
+
276
311
  this.layer.off('remapping', this.mapping);
277
312
  }
278
313
  }, {
@@ -350,6 +385,14 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
350
385
  }
351
386
  });
352
387
  }
388
+ }, {
389
+ key: "bindEvent",
390
+ value: function bindEvent() {
391
+ if (!this.layer.isTileLayer) {
392
+ // console.log('mapping')
393
+ this.layer.on('remapping', this.mapping);
394
+ }
395
+ }
353
396
  }, {
354
397
  key: "textExtent",
355
398
  value: function textExtent() {
@@ -582,35 +625,49 @@ var TextModel = /*#__PURE__*/function (_BaseModel) {
582
625
  }
583
626
  }, {
584
627
  key: "reBuildModel",
585
- value: function reBuildModel() {
586
- var _this4 = this;
587
-
588
- var _ref10 = this.layer.getLayerConfig(),
589
- _ref10$mask = _ref10.mask,
590
- mask = _ref10$mask === void 0 ? false : _ref10$mask,
591
- _ref10$maskInside = _ref10.maskInside,
592
- maskInside = _ref10$maskInside === void 0 ? true : _ref10$maskInside;
593
-
594
- this.filterGlyphs();
595
- this.layer.buildLayerModel({
596
- moduleName: 'pointText',
597
- vertexShader: textVert,
598
- fragmentShader: textFrag,
599
- triangulation: TextTriangulation.bind(this),
600
- depth: {
601
- enable: false
602
- },
603
- blend: this.getBlend(),
604
- stencil: getMask(mask, maskInside)
605
- }).then(function (model) {
606
- _this4.layer.models = [model];
607
-
608
- _this4.layerService.throttleRenderLayers();
609
- }).catch(function (err) {
610
- console.warn(err);
611
- _this4.layer.models = [];
612
- });
613
- }
628
+ value: function () {
629
+ var _reBuildModel = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {
630
+ var _ref10, _ref10$mask, mask, _ref10$maskInside, maskInside, model;
631
+
632
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
633
+ while (1) {
634
+ switch (_context4.prev = _context4.next) {
635
+ case 0:
636
+ _ref10 = this.layer.getLayerConfig(), _ref10$mask = _ref10.mask, mask = _ref10$mask === void 0 ? false : _ref10$mask, _ref10$maskInside = _ref10.maskInside, maskInside = _ref10$maskInside === void 0 ? true : _ref10$maskInside;
637
+ this.filterGlyphs();
638
+ _context4.next = 4;
639
+ return this.layer.buildLayerModel({
640
+ moduleName: 'pointText',
641
+ vertexShader: textVert,
642
+ fragmentShader: textFrag,
643
+ triangulation: TextTriangulation.bind(this),
644
+ depth: {
645
+ enable: false
646
+ },
647
+ blend: this.getBlend(),
648
+ stencil: getMask(mask, maskInside)
649
+ });
650
+
651
+ case 4:
652
+ model = _context4.sent;
653
+ // TODO 渲染流程待修改
654
+ this.layer.models = [model];
655
+ this.layerService.throttleRenderLayers();
656
+
657
+ case 7:
658
+ case "end":
659
+ return _context4.stop();
660
+ }
661
+ }
662
+ }, _callee4, this);
663
+ }));
664
+
665
+ function reBuildModel() {
666
+ return _reBuildModel.apply(this, arguments);
667
+ }
668
+
669
+ return reBuildModel;
670
+ }()
614
671
  }]);
615
672
 
616
673
  return TextModel;
@@ -8,8 +8,8 @@ export default class FillModel extends BaseModel {
8
8
  };
9
9
  elements: IElements;
10
10
  };
11
- initModels(callbackModel: (models: IModel[]) => void): void;
12
- buildModels(callbackModel: (models: IModel[]) => void): void;
11
+ initModels(): Promise<IModel[]>;
12
+ buildModels(): Promise<IModel[]>;
13
13
  clearModels(): void;
14
14
  protected registerBuiltinAttributes(): void;
15
15
  }
@@ -1,8 +1,10 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
1
2
  import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
3
  import _createClass from "@babel/runtime/helpers/createClass";
3
4
  import _inherits from "@babel/runtime/helpers/inherits";
4
5
  import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
5
6
  import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
7
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
6
8
 
7
9
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
8
10
 
@@ -61,43 +63,83 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
61
63
  }
62
64
  }, {
63
65
  key: "initModels",
64
- value: function initModels(callbackModel) {
65
- this.buildModels(callbackModel);
66
- }
66
+ value: function () {
67
+ var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
68
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
69
+ while (1) {
70
+ switch (_context.prev = _context.next) {
71
+ case 0:
72
+ _context.next = 2;
73
+ return this.buildModels();
74
+
75
+ case 2:
76
+ return _context.abrupt("return", _context.sent);
77
+
78
+ case 3:
79
+ case "end":
80
+ return _context.stop();
81
+ }
82
+ }
83
+ }, _callee, this);
84
+ }));
85
+
86
+ function initModels() {
87
+ return _initModels.apply(this, arguments);
88
+ }
89
+
90
+ return initModels;
91
+ }()
67
92
  }, {
68
93
  key: "buildModels",
69
- value: function buildModels(callbackModel) {
70
- var _ref2 = this.layer.getLayerConfig(),
71
- _ref2$workerEnabled = _ref2.workerEnabled,
72
- workerEnabled = _ref2$workerEnabled === void 0 ? false : _ref2$workerEnabled,
73
- usage = _ref2.usage;
74
-
75
- this.layer.triangulation = PointFillTriangulation;
76
- this.layer.buildLayerModel({
77
- moduleName: 'pointTile_' + usage,
78
- vertexShader: point_tile_vert,
79
- fragmentShader: point_tile_frag,
80
- triangulation: PointFillTriangulation,
81
- depth: {
82
- enable: false
83
- },
84
- cull: {
85
- enable: true,
86
- face: getCullFace(this.mapService.version)
87
- },
88
- blend: this.getBlend(),
89
- workerEnabled: workerEnabled,
90
- workerOptions: {
91
- modelType: 'pointTile'
92
- },
93
- pick: usage !== 'basemap'
94
- }).then(function (model) {
95
- callbackModel([model]);
96
- }).catch(function (err) {
97
- console.warn(err);
98
- callbackModel([]);
99
- });
100
- }
94
+ value: function () {
95
+ var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
96
+ var _ref2, _ref2$workerEnabled, workerEnabled, usage, model;
97
+
98
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
99
+ while (1) {
100
+ switch (_context2.prev = _context2.next) {
101
+ case 0:
102
+ _ref2 = this.layer.getLayerConfig(), _ref2$workerEnabled = _ref2.workerEnabled, workerEnabled = _ref2$workerEnabled === void 0 ? false : _ref2$workerEnabled, usage = _ref2.usage;
103
+ this.layer.triangulation = PointFillTriangulation;
104
+ _context2.next = 4;
105
+ return this.layer.buildLayerModel({
106
+ moduleName: 'pointTile_' + usage,
107
+ vertexShader: point_tile_vert,
108
+ fragmentShader: point_tile_frag,
109
+ triangulation: PointFillTriangulation,
110
+ depth: {
111
+ enable: false
112
+ },
113
+ cull: {
114
+ enable: true,
115
+ face: getCullFace(this.mapService.version)
116
+ },
117
+ blend: this.getBlend(),
118
+ workerEnabled: workerEnabled,
119
+ workerOptions: {
120
+ modelType: 'pointTile'
121
+ },
122
+ pick: usage !== 'basemap'
123
+ });
124
+
125
+ case 4:
126
+ model = _context2.sent;
127
+ return _context2.abrupt("return", [model]);
128
+
129
+ case 6:
130
+ case "end":
131
+ return _context2.stop();
132
+ }
133
+ }
134
+ }, _callee2, this);
135
+ }));
136
+
137
+ function buildModels() {
138
+ return _buildModels.apply(this, arguments);
139
+ }
140
+
141
+ return buildModels;
142
+ }()
101
143
  }, {
102
144
  key: "clearModels",
103
145
  value: function clearModels() {}
@@ -22,8 +22,8 @@ export default class TextModel extends BaseModel {
22
22
  private textCount;
23
23
  private preTextStyle;
24
24
  getUninforms(): IModelUniform;
25
- initModels(callbackModel: (models: IModel[]) => void): void;
26
- buildModels: (callbackModel: (models: IModel[]) => void) => Promise<void>;
25
+ initModels(): Promise<IModel[]>;
26
+ buildModels(): Promise<IModel[]>;
27
27
  clearModels(): void;
28
28
  protected registerBuiltinAttributes(): void;
29
29
  private mapping;