@antv/l7-layers 2.10.5 → 2.10.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/Geometry/index.d.ts +2 -3
- package/es/Geometry/index.js +27 -17
- package/es/Geometry/models/billboard.d.ts +2 -2
- package/es/Geometry/models/billboard.js +77 -37
- package/es/Geometry/models/plane.d.ts +2 -2
- package/es/Geometry/models/plane.js +80 -40
- package/es/Geometry/models/sprite.d.ts +2 -2
- package/es/Geometry/models/sprite.js +83 -45
- package/es/canvas/index.d.ts +2 -3
- package/es/canvas/index.js +29 -19
- package/es/canvas/models/canvas.d.ts +2 -2
- package/es/canvas/models/canvas.js +54 -15
- package/es/citybuliding/building.d.ts +2 -3
- package/es/citybuliding/building.js +26 -17
- package/es/citybuliding/models/build.d.ts +2 -2
- package/es/citybuliding/models/build.js +70 -25
- package/es/core/BaseLayer.d.ts +22 -18
- package/es/core/BaseLayer.js +387 -266
- package/es/core/BaseModel.d.ts +2 -2
- package/es/core/BaseModel.js +47 -6
- package/es/core/LayerPickService.d.ts +12 -0
- package/es/core/LayerPickService.js +165 -0
- package/es/core/TextureService.d.ts +14 -0
- package/es/core/TextureService.js +67 -0
- package/es/core/triangulation.js +8 -1
- package/es/earth/index.d.ts +2 -2
- package/es/earth/index.js +28 -9
- package/es/earth/models/atmosphere.d.ts +2 -2
- package/es/earth/models/atmosphere.js +67 -22
- package/es/earth/models/base.d.ts +2 -2
- package/es/earth/models/base.js +89 -43
- package/es/earth/models/bloomsphere.d.ts +2 -2
- package/es/earth/models/bloomsphere.js +67 -22
- package/es/heatmap/index.d.ts +2 -3
- package/es/heatmap/index.js +33 -24
- package/es/heatmap/models/grid.d.ts +2 -2
- package/es/heatmap/models/grid.js +68 -27
- package/es/heatmap/models/grid3d.d.ts +2 -2
- package/es/heatmap/models/grid3d.js +70 -29
- package/es/heatmap/models/heatmap.d.ts +2 -2
- package/es/heatmap/models/heatmap.js +40 -14
- package/es/heatmap/models/hexagon.d.ts +2 -2
- package/es/heatmap/models/hexagon.js +69 -28
- package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
- package/es/image/index.d.ts +3 -4
- package/es/image/index.js +29 -34
- package/es/image/models/image.d.ts +2 -2
- package/es/image/models/image.js +117 -67
- package/es/image/models/index.d.ts +1 -1
- package/es/image/models/index.js +1 -5
- package/es/image/shaders/dataImage_frag.glsl +10 -16
- package/es/index.d.ts +2 -2
- package/es/index.js +2 -2
- package/es/line/index.d.ts +5 -4
- package/es/line/index.js +51 -25
- package/es/line/models/arc.d.ts +2 -2
- package/es/line/models/arc.js +73 -38
- package/es/line/models/arc_3d.d.ts +2 -2
- package/es/line/models/arc_3d.js +69 -34
- package/es/line/models/earthArc_3d.d.ts +2 -2
- package/es/line/models/earthArc_3d.js +72 -37
- package/es/line/models/great_circle.d.ts +2 -2
- package/es/line/models/great_circle.js +70 -29
- package/es/line/models/half.d.ts +2 -2
- package/es/line/models/half.js +40 -17
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +0 -2
- package/es/line/models/line.d.ts +2 -2
- package/es/line/models/line.js +79 -47
- package/es/line/models/linearline.d.ts +2 -2
- package/es/line/models/linearline.js +70 -31
- package/es/line/models/simpleLine.d.ts +2 -2
- package/es/line/models/simpleLine.js +71 -34
- package/es/line/models/simpleTileLine.d.ts +2 -2
- package/es/line/models/simpleTileLine.js +70 -30
- package/es/line/models/tile.d.ts +2 -2
- package/es/line/models/tile.js +40 -17
- package/es/line/models/wall.d.ts +2 -2
- package/es/line/models/wall.js +67 -22
- package/es/mask/index.d.ts +2 -4
- package/es/mask/index.js +27 -97
- package/es/mask/models/fill.d.ts +2 -2
- package/es/mask/models/fill.js +40 -16
- package/es/mask/models/index.d.ts +1 -1
- package/es/mask/models/index.js +1 -3
- package/es/plugins/DataMappingPlugin.d.ts +0 -2
- package/es/plugins/DataMappingPlugin.js +90 -152
- package/es/plugins/DataSourcePlugin.js +67 -30
- package/es/plugins/FeatureScalePlugin.d.ts +0 -1
- package/es/plugins/FeatureScalePlugin.js +85 -61
- package/es/plugins/LayerModelPlugin.d.ts +2 -2
- package/es/plugins/LayerModelPlugin.js +121 -37
- package/es/plugins/LayerStylePlugin.js +1 -6
- package/es/plugins/MultiPassRendererPlugin.js +1 -1
- package/es/plugins/PixelPickingPlugin.js +1 -1
- package/es/plugins/RegisterStyleAttributePlugin.js +1 -16
- package/es/plugins/UpdateModelPlugin.js +3 -0
- package/es/plugins/UpdateStyleAttributePlugin.js +3 -6
- package/es/point/index.d.ts +4 -4
- package/es/point/index.js +55 -23
- package/es/point/models/earthExtrude.d.ts +2 -2
- package/es/point/models/earthExtrude.js +73 -30
- package/es/point/models/earthFill.d.ts +2 -2
- package/es/point/models/earthFill.js +66 -21
- package/es/point/models/extrude.d.ts +2 -2
- package/es/point/models/extrude.js +40 -17
- package/es/point/models/fill.d.ts +2 -2
- package/es/point/models/fill.js +43 -20
- package/es/point/models/fillmage.d.ts +2 -2
- package/es/point/models/fillmage.js +82 -43
- package/es/point/models/image.d.ts +2 -2
- package/es/point/models/image.js +72 -31
- package/es/point/models/index.d.ts +1 -1
- package/es/point/models/index.js +0 -2
- package/es/point/models/normal.d.ts +2 -2
- package/es/point/models/normal.js +71 -30
- package/es/point/models/radar.d.ts +2 -2
- package/es/point/models/radar.js +75 -35
- package/es/point/models/simplePoint.d.ts +2 -2
- package/es/point/models/simplePoint.js +70 -29
- package/es/point/models/text.d.ts +3 -2
- package/es/point/models/text.js +185 -112
- package/es/point/models/tile.d.ts +2 -2
- package/es/point/models/tile.js +77 -35
- package/es/point/models/tileText.d.ts +2 -2
- package/es/point/models/tileText.js +151 -116
- package/es/polygon/index.d.ts +2 -3
- package/es/polygon/index.js +27 -24
- package/es/polygon/models/extrude.d.ts +2 -2
- package/es/polygon/models/extrude.js +69 -32
- package/es/polygon/models/fill.d.ts +2 -2
- package/es/polygon/models/fill.js +76 -43
- package/es/polygon/models/index.d.ts +1 -1
- package/es/polygon/models/index.js +0 -2
- package/es/polygon/models/ocean.d.ts +2 -2
- package/es/polygon/models/ocean.js +69 -28
- package/es/polygon/models/tile.d.ts +2 -2
- package/es/polygon/models/tile.js +70 -30
- package/es/polygon/models/water.d.ts +2 -2
- package/es/polygon/models/water.js +69 -28
- package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
- package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
- package/es/raster/index.d.ts +2 -3
- package/es/raster/index.js +30 -20
- package/es/raster/models/index.d.ts +1 -1
- package/es/raster/models/index.js +2 -2
- package/es/raster/models/raster.d.ts +2 -2
- package/es/raster/models/raster.js +39 -28
- package/es/raster/models/rasterRgb.d.ts +7 -8
- package/es/raster/models/rasterRgb.js +75 -45
- package/es/{image/models/tileDataImage.d.ts → raster/models/rasterTerrainRgb.d.ts} +3 -3
- package/es/raster/models/rasterTerrainRgb.js +184 -0
- package/es/raster/models/rasterTile.d.ts +2 -2
- package/es/raster/models/rasterTile.js +78 -37
- package/es/raster/shaders/raster_2d_frag.glsl +2 -38
- package/es/raster/shaders/raster_rgb_frag.glsl +10 -4
- package/es/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
- package/es/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
- package/es/tile/interaction/getRasterData.d.ts +2 -2
- package/es/tile/interaction/utils.js +3 -11
- package/es/tile/interface.d.ts +5 -4
- package/es/tile/manager/base.d.ts +17 -12
- package/es/tile/manager/base.js +212 -47
- package/es/tile/service/TileLayerService.d.ts +34 -0
- package/es/tile/service/TileLayerService.js +220 -0
- package/es/tile/service/TilePickService.d.ts +26 -0
- package/es/tile/service/TilePickService.js +174 -0
- package/es/tile/service/TileSourceService.d.ts +7 -0
- package/es/tile/service/TileSourceService.js +39 -0
- package/es/tile/style/constants.d.ts +1 -13
- package/es/tile/style/constants.js +6 -15
- package/es/tile/style/utils.d.ts +1 -8
- package/es/tile/style/utils.js +0 -126
- package/es/tile/tileFactory/DebugTile.d.ts +16 -0
- package/es/tile/tileFactory/DebugTile.js +100 -0
- package/es/tile/tileFactory/ImageTile.d.ts +14 -0
- package/es/tile/tileFactory/ImageTile.js +89 -0
- package/es/tile/tileFactory/MaskTile.d.ts +18 -0
- package/es/tile/tileFactory/MaskTile.js +105 -0
- package/es/tile/tileFactory/RasterRGBTile.d.ts +11 -0
- package/es/tile/tileFactory/RasterRGBTile.js +98 -0
- package/es/tile/tileFactory/RasterTerrainRGBTile.d.ts +14 -0
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +89 -0
- package/es/tile/tileFactory/RasterTile.d.ts +18 -0
- package/es/tile/tileFactory/RasterTile.js +133 -0
- package/es/tile/tileFactory/Tile.d.ts +34 -0
- package/es/tile/tileFactory/Tile.js +161 -0
- package/es/tile/tileFactory/VectorTile.d.ts +27 -0
- package/es/tile/tileFactory/VectorTile.js +198 -0
- package/es/tile/tileFactory/index.d.ts +11 -4
- package/es/tile/tileFactory/index.js +34 -23
- package/es/tile/tileFactory/layers/{rasterDataLayer.d.ts → RasterDataLayer.d.ts} +3 -3
- package/es/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +34 -22
- package/es/tile/tileFactory/layers/{tileTest.d.ts → TileDebugLayer.d.ts} +2 -2
- package/es/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +23 -10
- package/es/tile/tileFactory/util.d.ts +5 -0
- package/es/tile/tileFactory/util.js +21 -0
- package/es/tile/tileLayer/BaseLayer.d.ts +45 -0
- package/es/tile/tileLayer/BaseLayer.js +348 -0
- package/es/tile/utils.d.ts +1 -11
- package/es/tile/utils.js +0 -129
- package/es/utils/dataMappingStyle.d.ts +4 -4
- package/es/utils/dataMappingStyle.js +16 -18
- package/es/utils/layerData.js +5 -11
- package/es/wind/index.d.ts +2 -3
- package/es/wind/index.js +27 -17
- package/es/wind/models/wind.d.ts +2 -2
- package/es/wind/models/wind.js +123 -104
- package/lib/Geometry/index.js +29 -17
- package/lib/Geometry/models/billboard.js +79 -37
- package/lib/Geometry/models/plane.js +82 -40
- package/lib/Geometry/models/sprite.js +85 -45
- package/lib/canvas/index.js +31 -19
- package/lib/canvas/models/canvas.js +56 -15
- package/lib/citybuliding/building.js +28 -17
- package/lib/citybuliding/models/build.js +72 -25
- package/lib/core/BaseLayer.js +388 -261
- package/lib/core/BaseModel.js +48 -6
- package/lib/core/LayerPickService.js +179 -0
- package/lib/core/TextureService.js +77 -0
- package/lib/core/triangulation.js +8 -1
- package/lib/earth/index.js +30 -9
- package/lib/earth/models/atmosphere.js +69 -22
- package/lib/earth/models/base.js +90 -42
- package/lib/earth/models/bloomsphere.js +69 -22
- package/lib/heatmap/index.js +35 -24
- package/lib/heatmap/models/grid.js +70 -27
- package/lib/heatmap/models/grid3d.js +72 -29
- package/lib/heatmap/models/heatmap.js +40 -14
- package/lib/heatmap/models/hexagon.js +71 -28
- package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -13
- package/lib/image/index.js +31 -34
- package/lib/image/models/image.js +119 -67
- package/lib/image/models/index.js +1 -7
- package/lib/image/shaders/dataImage_frag.glsl +10 -16
- package/lib/index.js +5 -5
- package/lib/line/index.js +53 -26
- package/lib/line/models/arc.js +75 -38
- package/lib/line/models/arc_3d.js +71 -34
- package/lib/line/models/earthArc_3d.js +74 -37
- package/lib/line/models/great_circle.js +72 -29
- package/lib/line/models/half.js +40 -17
- package/lib/line/models/index.js +0 -3
- package/lib/line/models/line.js +81 -47
- package/lib/line/models/linearline.js +72 -31
- package/lib/line/models/simpleLine.js +73 -34
- package/lib/line/models/simpleTileLine.js +72 -30
- package/lib/line/models/tile.js +40 -17
- package/lib/line/models/wall.js +69 -22
- package/lib/mask/index.js +28 -99
- package/lib/mask/models/fill.js +40 -16
- package/lib/mask/models/index.js +1 -4
- package/lib/plugins/DataMappingPlugin.js +91 -149
- package/lib/plugins/DataSourcePlugin.js +69 -30
- package/lib/plugins/FeatureScalePlugin.js +87 -61
- package/lib/plugins/LayerModelPlugin.js +128 -41
- package/lib/plugins/LayerStylePlugin.js +1 -6
- package/lib/plugins/MultiPassRendererPlugin.js +1 -1
- package/lib/plugins/PixelPickingPlugin.js +1 -1
- package/lib/plugins/RegisterStyleAttributePlugin.js +1 -16
- package/lib/plugins/UpdateModelPlugin.js +3 -0
- package/lib/plugins/UpdateStyleAttributePlugin.js +3 -6
- package/lib/point/index.js +56 -24
- package/lib/point/models/earthExtrude.js +75 -30
- package/lib/point/models/earthFill.js +68 -21
- package/lib/point/models/extrude.js +40 -17
- package/lib/point/models/fill.js +44 -21
- package/lib/point/models/fillmage.js +84 -43
- package/lib/point/models/image.js +74 -31
- package/lib/point/models/index.js +0 -3
- package/lib/point/models/normal.js +73 -30
- package/lib/point/models/radar.js +77 -35
- package/lib/point/models/simplePoint.js +72 -29
- package/lib/point/models/text.js +185 -111
- package/lib/point/models/tile.js +79 -35
- package/lib/point/models/tileText.js +151 -115
- package/lib/polygon/index.js +29 -25
- package/lib/polygon/models/extrude.js +71 -32
- package/lib/polygon/models/fill.js +78 -43
- package/lib/polygon/models/index.js +0 -3
- package/lib/polygon/models/ocean.js +71 -28
- package/lib/polygon/models/tile.js +72 -30
- package/lib/polygon/models/water.js +71 -28
- package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +1 -2
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +1 -2
- package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +1 -2
- package/lib/raster/index.js +32 -20
- package/lib/raster/models/index.js +3 -3
- package/lib/raster/models/raster.js +39 -29
- package/lib/raster/models/rasterRgb.js +78 -43
- package/lib/raster/models/rasterTerrainRgb.js +200 -0
- package/lib/raster/models/rasterTile.js +80 -37
- package/lib/raster/shaders/raster_2d_frag.glsl +2 -38
- package/lib/raster/shaders/raster_rgb_frag.glsl +10 -4
- package/lib/raster/shaders/raster_terrain_rgb_frag.glsl +31 -0
- package/lib/raster/shaders/rater_terrain_rgb_vert.glsl +17 -0
- package/lib/tile/interaction/utils.js +3 -11
- package/lib/tile/manager/base.js +213 -47
- package/lib/tile/service/TileLayerService.js +233 -0
- package/lib/tile/service/TilePickService.js +190 -0
- package/lib/tile/service/TileSourceService.js +59 -0
- package/lib/tile/style/constants.js +8 -19
- package/lib/tile/style/utils.js +0 -140
- package/lib/tile/tileFactory/DebugTile.js +115 -0
- package/lib/tile/tileFactory/ImageTile.js +104 -0
- package/lib/tile/tileFactory/MaskTile.js +120 -0
- package/lib/tile/tileFactory/RasterRGBTile.js +112 -0
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +104 -0
- package/lib/tile/tileFactory/RasterTile.js +149 -0
- package/lib/tile/tileFactory/Tile.js +171 -0
- package/lib/tile/tileFactory/VectorTile.js +214 -0
- package/lib/tile/tileFactory/index.js +46 -23
- package/lib/tile/tileFactory/layers/{rasterDataLayer.js → RasterDataLayer.js} +36 -22
- package/lib/tile/tileFactory/layers/{tileTest.js → TileDebugLayer.js} +24 -11
- package/lib/tile/tileFactory/util.js +35 -0
- package/lib/tile/tileLayer/BaseLayer.js +363 -0
- package/lib/tile/utils.js +0 -148
- package/lib/utils/dataMappingStyle.js +18 -20
- package/lib/utils/layerData.js +4 -10
- package/lib/wind/index.js +29 -17
- package/lib/wind/models/wind.js +125 -104
- package/package.json +7 -7
- package/es/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
- package/es/image/models/dataImage.d.ts +0 -13
- package/es/image/models/dataImage.js +0 -186
- package/es/image/models/tileDataImage.js +0 -160
- package/es/raster/raster.d.ts +0 -21
- package/es/raster/raster.js +0 -161
- package/es/tile/interaction/TilePickService.d.ts +0 -16
- package/es/tile/interaction/TilePickService.js +0 -129
- package/es/tile/manager/layerManager.d.ts +0 -19
- package/es/tile/manager/layerManager.js +0 -254
- package/es/tile/manager/mapLayerManager.d.ts +0 -7
- package/es/tile/manager/mapLayerManager.js +0 -119
- package/es/tile/models/tileModel.d.ts +0 -10
- package/es/tile/models/tileModel.js +0 -81
- package/es/tile/render/TileRenderService.d.ts +0 -10
- package/es/tile/render/TileRenderService.js +0 -68
- package/es/tile/style/TileStyleService.d.ts +0 -17
- package/es/tile/style/TileStyleService.js +0 -118
- package/es/tile/tileFactory/base.d.ts +0 -45
- package/es/tile/tileFactory/base.js +0 -403
- package/es/tile/tileFactory/layers/vectorLayer.d.ts +0 -30
- package/es/tile/tileFactory/layers/vectorLayer.js +0 -253
- package/es/tile/tileFactory/line.d.ts +0 -12
- package/es/tile/tileFactory/line.js +0 -59
- package/es/tile/tileFactory/mask.d.ts +0 -12
- package/es/tile/tileFactory/mask.js +0 -60
- package/es/tile/tileFactory/point.d.ts +0 -12
- package/es/tile/tileFactory/point.js +0 -60
- package/es/tile/tileFactory/polygon.d.ts +0 -12
- package/es/tile/tileFactory/polygon.js +0 -59
- package/es/tile/tileFactory/raster.d.ts +0 -12
- package/es/tile/tileFactory/raster.js +0 -55
- package/es/tile/tileFactory/rasterData.d.ts +0 -12
- package/es/tile/tileFactory/rasterData.js +0 -81
- package/es/tile/tileFactory/test.d.ts +0 -12
- package/es/tile/tileFactory/test.js +0 -94
- package/es/tile/tileLayer/MapTileLayer.d.ts +0 -6
- package/es/tile/tileLayer/MapTileLayer.js +0 -48
- package/es/tile/tileLayer/TileLayer.d.ts +0 -22
- package/es/tile/tileLayer/TileLayer.js +0 -198
- package/es/tile/tileLayer/base.d.ts +0 -33
- package/es/tile/tileLayer/base.js +0 -212
- package/lib/heatmap/shaders/hexagon_3d_frag.glsl +0 -0
- package/lib/image/models/dataImage.js +0 -201
- package/lib/image/models/tileDataImage.js +0 -174
- package/lib/raster/raster.js +0 -178
- package/lib/tile/interaction/TilePickService.js +0 -143
- package/lib/tile/manager/layerManager.js +0 -275
- package/lib/tile/manager/mapLayerManager.js +0 -134
- package/lib/tile/models/tileModel.js +0 -94
- package/lib/tile/render/TileRenderService.js +0 -78
- package/lib/tile/style/TileStyleService.js +0 -133
- package/lib/tile/tileFactory/base.js +0 -427
- package/lib/tile/tileFactory/layers/vectorLayer.js +0 -268
- package/lib/tile/tileFactory/line.js +0 -70
- package/lib/tile/tileFactory/mask.js +0 -71
- package/lib/tile/tileFactory/point.js +0 -71
- package/lib/tile/tileFactory/polygon.js +0 -70
- package/lib/tile/tileFactory/raster.js +0 -68
- package/lib/tile/tileFactory/rasterData.js +0 -93
- package/lib/tile/tileFactory/test.js +0 -106
- package/lib/tile/tileLayer/MapTileLayer.js +0 -63
- package/lib/tile/tileLayer/TileLayer.js +0 -215
- package/lib/tile/tileLayer/base.js +0 -225
package/es/mask/models/fill.d.ts
CHANGED
|
@@ -5,8 +5,8 @@ export default class MaskModel extends BaseModel {
|
|
|
5
5
|
u_opacity: number;
|
|
6
6
|
u_color: number[];
|
|
7
7
|
};
|
|
8
|
-
initModels(
|
|
9
|
-
buildModels(
|
|
8
|
+
initModels(): Promise<IModel[]>;
|
|
9
|
+
buildModels(): Promise<IModel[]>;
|
|
10
10
|
clearModels(refresh?: boolean): void;
|
|
11
11
|
protected registerBuiltinAttributes(): string;
|
|
12
12
|
}
|
package/es/mask/models/fill.js
CHANGED
|
@@ -49,18 +49,43 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
49
49
|
}
|
|
50
50
|
}, {
|
|
51
51
|
key: "initModels",
|
|
52
|
-
value: function initModels(callbackModel) {
|
|
53
|
-
this.buildModels(callbackModel);
|
|
54
|
-
}
|
|
55
|
-
}, {
|
|
56
|
-
key: "buildModels",
|
|
57
52
|
value: function () {
|
|
58
|
-
var
|
|
53
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
59
54
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
60
55
|
while (1) {
|
|
61
56
|
switch (_context.prev = _context.next) {
|
|
62
57
|
case 0:
|
|
63
|
-
|
|
58
|
+
_context.next = 2;
|
|
59
|
+
return this.buildModels();
|
|
60
|
+
|
|
61
|
+
case 2:
|
|
62
|
+
return _context.abrupt("return", _context.sent);
|
|
63
|
+
|
|
64
|
+
case 3:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context.stop();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}, _callee, this);
|
|
70
|
+
}));
|
|
71
|
+
|
|
72
|
+
function initModels() {
|
|
73
|
+
return _initModels.apply(this, arguments);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return initModels;
|
|
77
|
+
}()
|
|
78
|
+
}, {
|
|
79
|
+
key: "buildModels",
|
|
80
|
+
value: function () {
|
|
81
|
+
var _buildModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
82
|
+
var model;
|
|
83
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
84
|
+
while (1) {
|
|
85
|
+
switch (_context2.prev = _context2.next) {
|
|
86
|
+
case 0:
|
|
87
|
+
_context2.next = 2;
|
|
88
|
+
return this.layer.buildLayerModel({
|
|
64
89
|
moduleName: 'mask',
|
|
65
90
|
vertexShader: mask_vert,
|
|
66
91
|
fragmentShader: mask_frag,
|
|
@@ -84,22 +109,21 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
84
109
|
}
|
|
85
110
|
},
|
|
86
111
|
pick: false
|
|
87
|
-
}).then(function (model) {
|
|
88
|
-
callbackModel([model]);
|
|
89
|
-
}).catch(function (err) {
|
|
90
|
-
console.warn(err);
|
|
91
|
-
callbackModel([]);
|
|
92
112
|
});
|
|
93
113
|
|
|
94
|
-
case
|
|
114
|
+
case 2:
|
|
115
|
+
model = _context2.sent;
|
|
116
|
+
return _context2.abrupt("return", [model]);
|
|
117
|
+
|
|
118
|
+
case 4:
|
|
95
119
|
case "end":
|
|
96
|
-
return
|
|
120
|
+
return _context2.stop();
|
|
97
121
|
}
|
|
98
122
|
}
|
|
99
|
-
},
|
|
123
|
+
}, _callee2, this);
|
|
100
124
|
}));
|
|
101
125
|
|
|
102
|
-
function buildModels(
|
|
126
|
+
function buildModels() {
|
|
103
127
|
return _buildModels.apply(this, arguments);
|
|
104
128
|
}
|
|
105
129
|
|
package/es/mask/models/index.js
CHANGED
|
@@ -8,11 +8,9 @@ export default class DataMappingPlugin implements ILayerPlugin {
|
|
|
8
8
|
}): void;
|
|
9
9
|
private generateMaping;
|
|
10
10
|
private mapping;
|
|
11
|
-
private mapLayerMapping;
|
|
12
11
|
private adjustData2Amap2Coordinates;
|
|
13
12
|
private adjustData2SimpleCoordinates;
|
|
14
13
|
private unProjectCoordinates;
|
|
15
14
|
private applyAttributeMapping;
|
|
16
|
-
private applyMapLayerAttributeMapping;
|
|
17
15
|
private getArrowPoints;
|
|
18
16
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
3
|
import _initializerDefineProperty from "@babel/runtime/helpers/esm/initializerDefineProperty";
|
|
3
4
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
4
5
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
@@ -8,9 +9,10 @@ import _initializerWarningHelper from "@babel/runtime/helpers/esm/initializerWar
|
|
|
8
9
|
|
|
9
10
|
var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
|
|
10
11
|
|
|
12
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
11
13
|
import { TYPES } from '@antv/l7-core';
|
|
12
14
|
import { Version } from '@antv/l7-maps';
|
|
13
|
-
import {
|
|
15
|
+
import { normalize, rgb2arr } from '@antv/l7-utils';
|
|
14
16
|
import { inject, injectable } from 'inversify';
|
|
15
17
|
import { cloneDeep } from 'lodash';
|
|
16
18
|
import 'reflect-metadata';
|
|
@@ -29,59 +31,73 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
29
31
|
var _this = this;
|
|
30
32
|
|
|
31
33
|
var styleAttributeService = _ref.styleAttributeService;
|
|
32
|
-
layer.hooks.init.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
var
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
34
|
+
layer.hooks.init.tapPromise('DataMappingPlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
35
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
36
|
+
while (1) {
|
|
37
|
+
switch (_context.prev = _context.next) {
|
|
38
|
+
case 0:
|
|
39
|
+
// 初始化重新生成 map
|
|
40
|
+
_this.generateMaping(layer, {
|
|
41
|
+
styleAttributeService: styleAttributeService
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
case 1:
|
|
45
|
+
case "end":
|
|
46
|
+
return _context.stop();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}, _callee);
|
|
50
|
+
})));
|
|
51
|
+
layer.hooks.beforeRenderData.tapPromise('DataMappingPlugin', /*#__PURE__*/function () {
|
|
52
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(flag) {
|
|
53
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
54
|
+
while (1) {
|
|
55
|
+
switch (_context2.prev = _context2.next) {
|
|
56
|
+
case 0:
|
|
57
|
+
if (flag) {
|
|
58
|
+
_context2.next = 2;
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return _context2.abrupt("return", flag);
|
|
63
|
+
|
|
64
|
+
case 2:
|
|
65
|
+
layer.dataState.dataMappingNeedUpdate = false;
|
|
66
|
+
|
|
67
|
+
_this.generateMaping(layer, {
|
|
68
|
+
styleAttributeService: styleAttributeService
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
return _context2.abrupt("return", true);
|
|
72
|
+
|
|
73
|
+
case 5:
|
|
74
|
+
case "end":
|
|
75
|
+
return _context2.stop();
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}, _callee2);
|
|
79
|
+
}));
|
|
63
80
|
|
|
64
|
-
return
|
|
65
|
-
|
|
81
|
+
return function (_x) {
|
|
82
|
+
return _ref3.apply(this, arguments);
|
|
83
|
+
};
|
|
84
|
+
}()); // remapping before render
|
|
66
85
|
|
|
67
86
|
layer.hooks.beforeRender.tap('DataMappingPlugin', function () {
|
|
68
|
-
var _layer$getLayerConfig = layer.getLayerConfig(),
|
|
69
|
-
usage = _layer$getLayerConfig.usage;
|
|
70
|
-
|
|
71
|
-
if (usage === 'basemap') {
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
87
|
var source = layer.getSource();
|
|
76
88
|
|
|
77
89
|
if (layer.layerModelNeedUpdate || !source || !source.inited) {
|
|
78
90
|
return;
|
|
79
91
|
}
|
|
80
92
|
|
|
81
|
-
var bottomColor = layer.getBottomColor();
|
|
82
93
|
var attributes = styleAttributeService.getLayerStyleAttributes() || [];
|
|
83
94
|
var filter = styleAttributeService.getLayerStyleAttribute('filter');
|
|
84
|
-
var dataArray = source.data.dataArray;
|
|
95
|
+
var dataArray = source.data.dataArray; // TODO 数据为空的情况
|
|
96
|
+
|
|
97
|
+
if (Array.isArray(dataArray) && dataArray.length === 0) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
|
|
85
101
|
var attributesToRemapping = attributes.filter(function (attribute) {
|
|
86
102
|
return attribute.needRemapping;
|
|
87
103
|
} // 如果filter变化
|
|
@@ -90,35 +106,33 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
90
106
|
|
|
91
107
|
if (filter !== null && filter !== void 0 && filter.needRemapping && filter !== null && filter !== void 0 && filter.scale) {
|
|
92
108
|
filterData = dataArray.filter(function (record) {
|
|
93
|
-
return _this.applyAttributeMapping(filter, record
|
|
109
|
+
return _this.applyAttributeMapping(filter, record)[0];
|
|
94
110
|
});
|
|
95
111
|
}
|
|
96
112
|
|
|
97
113
|
if (attributesToRemapping.length) {
|
|
98
114
|
// 过滤数据
|
|
99
115
|
if (filter !== null && filter !== void 0 && filter.needRemapping) {
|
|
100
|
-
var encodeData = _this.mapping(layer, attributes, filterData, undefined
|
|
116
|
+
var encodeData = _this.mapping(layer, attributes, filterData, undefined);
|
|
101
117
|
|
|
102
118
|
layer.setEncodedData(encodeData);
|
|
103
119
|
filter.needRemapping = false;
|
|
104
120
|
} else {
|
|
105
|
-
var _encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData()
|
|
121
|
+
var _encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData());
|
|
106
122
|
|
|
107
123
|
layer.setEncodedData(_encodeData);
|
|
108
|
-
} //
|
|
109
|
-
|
|
124
|
+
} // 处理文本更新,更新文字形状
|
|
125
|
+
// layer.emit('remapping', null);
|
|
110
126
|
|
|
111
|
-
layer.emit('remapping', null);
|
|
112
127
|
}
|
|
113
128
|
});
|
|
114
129
|
}
|
|
115
130
|
}, {
|
|
116
131
|
key: "generateMaping",
|
|
117
|
-
value: function generateMaping(layer,
|
|
132
|
+
value: function generateMaping(layer, _ref4) {
|
|
118
133
|
var _this2 = this;
|
|
119
134
|
|
|
120
|
-
var styleAttributeService =
|
|
121
|
-
var bottomColor = layer.getBottomColor();
|
|
135
|
+
var styleAttributeService = _ref4.styleAttributeService;
|
|
122
136
|
var attributes = styleAttributeService.getLayerStyleAttributes() || [];
|
|
123
137
|
var filter = styleAttributeService.getLayerStyleAttribute('filter');
|
|
124
138
|
var dataArray = layer.getSource().data.dataArray;
|
|
@@ -126,30 +140,29 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
126
140
|
|
|
127
141
|
if (filter !== null && filter !== void 0 && filter.scale) {
|
|
128
142
|
filterData = dataArray.filter(function (record) {
|
|
129
|
-
return _this2.applyAttributeMapping(filter, record
|
|
143
|
+
return _this2.applyAttributeMapping(filter, record)[0];
|
|
130
144
|
});
|
|
131
|
-
}
|
|
145
|
+
} // Tip: layer 对数据做处理
|
|
146
|
+
// 数据处理 在数据进行 mapping 生成 encodeData 之前对数据进行处理
|
|
147
|
+
// 在各个 layer 中继承
|
|
148
|
+
|
|
132
149
|
|
|
133
|
-
|
|
150
|
+
filterData = layer.processData(filterData);
|
|
151
|
+
var encodeData = this.mapping(layer, attributes, filterData, undefined);
|
|
134
152
|
layer.setEncodedData(encodeData); // 对外暴露事件
|
|
135
153
|
|
|
136
154
|
layer.emit('dataUpdate', null);
|
|
137
155
|
}
|
|
138
156
|
}, {
|
|
139
157
|
key: "mapping",
|
|
140
|
-
value: function mapping(layer, attributes, data, predata
|
|
158
|
+
value: function mapping(layer, attributes, data, predata) {
|
|
141
159
|
var _this3 = this;
|
|
142
160
|
|
|
143
|
-
var
|
|
144
|
-
|
|
145
|
-
arrow =
|
|
161
|
+
var _ref5 = layer.getLayerConfig(),
|
|
162
|
+
_ref5$arrow = _ref5.arrow,
|
|
163
|
+
arrow = _ref5$arrow === void 0 ? {
|
|
146
164
|
enable: false
|
|
147
|
-
} :
|
|
148
|
-
usage = _ref3.usage;
|
|
149
|
-
|
|
150
|
-
if (usage === 'basemap') {
|
|
151
|
-
return this.mapLayerMapping(layer, attributes, data, predata);
|
|
152
|
-
}
|
|
165
|
+
} : _ref5$arrow;
|
|
153
166
|
|
|
154
167
|
var usedAttributes = attributes.filter(function (attribute) {
|
|
155
168
|
return attribute.scale !== undefined;
|
|
@@ -163,7 +176,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
163
176
|
}, preRecord);
|
|
164
177
|
|
|
165
178
|
usedAttributes.forEach(function (attribute) {
|
|
166
|
-
var values = _this3.applyAttributeMapping(attribute, record
|
|
179
|
+
var values = _this3.applyAttributeMapping(attribute, record);
|
|
167
180
|
|
|
168
181
|
attribute.needRemapping = false; // TODO: 支持每个属性配置 postprocess
|
|
169
182
|
|
|
@@ -203,57 +216,10 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
203
216
|
this.adjustData2SimpleCoordinates(mappedData);
|
|
204
217
|
return mappedData;
|
|
205
218
|
}
|
|
206
|
-
}, {
|
|
207
|
-
key: "mapLayerMapping",
|
|
208
|
-
value: function mapLayerMapping(layer, attributes, data, predata) {
|
|
209
|
-
var _this4 = this;
|
|
210
|
-
|
|
211
|
-
var usedAttributes = attributes.filter(function (attribute) {
|
|
212
|
-
return attribute.scale !== undefined;
|
|
213
|
-
});
|
|
214
|
-
var mappedData = data.map(function (record, i) {
|
|
215
|
-
var preRecord = predata ? predata[i] : {};
|
|
216
|
-
|
|
217
|
-
var encodeRecord = _objectSpread({
|
|
218
|
-
id: record._id,
|
|
219
|
-
coordinates: record.coordinates
|
|
220
|
-
}, preRecord);
|
|
221
|
-
|
|
222
|
-
usedAttributes.forEach(function (attribute) {
|
|
223
|
-
var _layer$shapeOption;
|
|
224
|
-
|
|
225
|
-
if (attribute.name === 'shape' && // @ts-ignore
|
|
226
|
-
((_layer$shapeOption = layer.shapeOption) === null || _layer$shapeOption === void 0 ? void 0 : _layer$shapeOption.field) === 'simple') {
|
|
227
|
-
encodeRecord[attribute.name] = 'simple';
|
|
228
|
-
attribute.needRemapping = false;
|
|
229
|
-
} else {
|
|
230
|
-
var values = _this4.applyMapLayerAttributeMapping(attribute, record);
|
|
231
|
-
|
|
232
|
-
attribute.needRemapping = false; // @ts-ignore
|
|
233
|
-
|
|
234
|
-
encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values; // 增加对 layer/text/iconfont unicode 映射的解析
|
|
235
|
-
|
|
236
|
-
if (attribute.name === 'shape') {
|
|
237
|
-
encodeRecord.shape = _this4.fontService.getIconFontKey(encodeRecord[attribute.name]);
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
});
|
|
241
|
-
|
|
242
|
-
if (encodeRecord.size === undefined) {
|
|
243
|
-
// in case not set size
|
|
244
|
-
encodeRecord.size = 1;
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
return encodeRecord;
|
|
248
|
-
}); // 调整数据兼容 Amap2.0
|
|
249
|
-
|
|
250
|
-
this.adjustData2Amap2Coordinates(mappedData, layer);
|
|
251
|
-
return mappedData;
|
|
252
|
-
}
|
|
253
219
|
}, {
|
|
254
220
|
key: "adjustData2Amap2Coordinates",
|
|
255
221
|
value: function adjustData2Amap2Coordinates(mappedData, layer) {
|
|
256
|
-
var
|
|
222
|
+
var _this4 = this;
|
|
257
223
|
|
|
258
224
|
// 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
|
|
259
225
|
if (mappedData.length > 0 && this.mapService.version === Version['GAODE2.x']) {
|
|
@@ -272,7 +238,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
272
238
|
// @ts-ignore
|
|
273
239
|
// d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
|
|
274
240
|
|
|
275
|
-
d.coordinates =
|
|
241
|
+
d.coordinates = _this4.mapService.lngLatToCoordByLayer(d.coordinates, layerCenter);
|
|
276
242
|
});
|
|
277
243
|
} else {
|
|
278
244
|
// 连续的线、面数据
|
|
@@ -286,7 +252,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
286
252
|
// @ts-ignore
|
|
287
253
|
// d.coordinates = this.mapService.lngLatToCoords(d.coordinates);
|
|
288
254
|
|
|
289
|
-
d.coordinates =
|
|
255
|
+
d.coordinates = _this4.mapService.lngLatToCoordsByLayer(d.coordinates, layerCenter);
|
|
290
256
|
});
|
|
291
257
|
}
|
|
292
258
|
}
|
|
@@ -294,12 +260,12 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
294
260
|
}, {
|
|
295
261
|
key: "adjustData2SimpleCoordinates",
|
|
296
262
|
value: function adjustData2SimpleCoordinates(mappedData) {
|
|
297
|
-
var
|
|
263
|
+
var _this5 = this;
|
|
298
264
|
|
|
299
265
|
if (mappedData.length > 0 && this.mapService.version === Version.SIMPLE) {
|
|
300
266
|
mappedData.map(function (d) {
|
|
301
267
|
if (!d.simpleCoordinate) {
|
|
302
|
-
d.coordinates =
|
|
268
|
+
d.coordinates = _this5.unProjectCoordinates(d.coordinates);
|
|
303
269
|
d.simpleCoordinate = true;
|
|
304
270
|
}
|
|
305
271
|
});
|
|
@@ -308,7 +274,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
308
274
|
}, {
|
|
309
275
|
key: "unProjectCoordinates",
|
|
310
276
|
value: function unProjectCoordinates(coordinates) {
|
|
311
|
-
var
|
|
277
|
+
var _this6 = this;
|
|
312
278
|
|
|
313
279
|
if (typeof coordinates[0] === 'number') {
|
|
314
280
|
return this.mapService.simpleMapCoord.unproject(coordinates);
|
|
@@ -321,7 +287,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
321
287
|
// @ts-ignore
|
|
322
288
|
var c1 = [];
|
|
323
289
|
coord.map(function (co) {
|
|
324
|
-
c1.push(
|
|
290
|
+
c1.push(_this6.mapService.simpleMapCoord.unproject(co));
|
|
325
291
|
}); // @ts-ignore
|
|
326
292
|
|
|
327
293
|
coords.push(c1);
|
|
@@ -333,7 +299,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
333
299
|
var _coords = []; // @ts-ignore
|
|
334
300
|
|
|
335
301
|
coordinates.map(function (coord) {
|
|
336
|
-
_coords.push(
|
|
302
|
+
_coords.push(_this6.mapService.simpleMapCoord.unproject(coord));
|
|
337
303
|
}); // @ts-ignore
|
|
338
304
|
|
|
339
305
|
return _coords;
|
|
@@ -341,7 +307,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
341
307
|
}
|
|
342
308
|
}, {
|
|
343
309
|
key: "applyAttributeMapping",
|
|
344
|
-
value: function applyAttributeMapping(attribute, record
|
|
310
|
+
value: function applyAttributeMapping(attribute, record) {
|
|
345
311
|
var _attribute$scale;
|
|
346
312
|
|
|
347
313
|
if (!attribute.scale) {
|
|
@@ -350,10 +316,10 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
350
316
|
|
|
351
317
|
var scalers = (attribute === null || attribute === void 0 ? void 0 : (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.scalers) || [];
|
|
352
318
|
var params = [];
|
|
353
|
-
scalers.forEach(function (
|
|
319
|
+
scalers.forEach(function (_ref6) {
|
|
354
320
|
var _attribute$scale2;
|
|
355
321
|
|
|
356
|
-
var field =
|
|
322
|
+
var field = _ref6.field;
|
|
357
323
|
|
|
358
324
|
if (record.hasOwnProperty(field) || ((_attribute$scale2 = attribute.scale) === null || _attribute$scale2 === void 0 ? void 0 : _attribute$scale2.type) === 'variable') {
|
|
359
325
|
// TODO:多字段,常量
|
|
@@ -361,36 +327,8 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
361
327
|
}
|
|
362
328
|
});
|
|
363
329
|
var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
|
|
364
|
-
|
|
365
|
-
if (attribute.name === 'color' && !isColor(mappingResult[0])) {
|
|
366
|
-
return [minimumColor];
|
|
367
|
-
}
|
|
368
|
-
|
|
369
330
|
return mappingResult; // return attribute.mapping ? attribute.mapping(params) : [];
|
|
370
331
|
}
|
|
371
|
-
}, {
|
|
372
|
-
key: "applyMapLayerAttributeMapping",
|
|
373
|
-
value: function applyMapLayerAttributeMapping(attribute, record) {
|
|
374
|
-
var _attribute$scale3;
|
|
375
|
-
|
|
376
|
-
if (!attribute.scale) {
|
|
377
|
-
return [];
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
var scalers = (attribute === null || attribute === void 0 ? void 0 : (_attribute$scale3 = attribute.scale) === null || _attribute$scale3 === void 0 ? void 0 : _attribute$scale3.scalers) || [];
|
|
381
|
-
var params = [];
|
|
382
|
-
scalers.forEach(function (_ref5) {
|
|
383
|
-
var _attribute$scale4;
|
|
384
|
-
|
|
385
|
-
var field = _ref5.field;
|
|
386
|
-
|
|
387
|
-
if (record.hasOwnProperty(field) || ((_attribute$scale4 = attribute.scale) === null || _attribute$scale4 === void 0 ? void 0 : _attribute$scale4.type) === 'variable') {
|
|
388
|
-
params.push(record[field]);
|
|
389
|
-
}
|
|
390
|
-
});
|
|
391
|
-
var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
|
|
392
|
-
return mappingResult;
|
|
393
|
-
}
|
|
394
332
|
}, {
|
|
395
333
|
key: "getArrowPoints",
|
|
396
334
|
value: function getArrowPoints(p1, p2) {
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
1
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
3
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
4
|
|
|
4
5
|
var _dec, _class;
|
|
5
6
|
|
|
7
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
8
|
import { TYPES } from '@antv/l7-core';
|
|
7
9
|
import Source from '@antv/l7-source';
|
|
8
10
|
import { injectable } from 'inversify';
|
|
@@ -18,41 +20,76 @@ var DataSourcePlugin = (_dec = injectable(), _dec(_class = /*#__PURE__*/function
|
|
|
18
20
|
var _this = this;
|
|
19
21
|
|
|
20
22
|
this.mapService = layer.getContainer().get(TYPES.IMapService);
|
|
21
|
-
layer.hooks.init.
|
|
22
|
-
var source
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
23
|
+
layer.hooks.init.tapPromise('DataSourcePlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
24
|
+
var source, _ref2, data, options;
|
|
25
|
+
|
|
26
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
27
|
+
while (1) {
|
|
28
|
+
switch (_context.prev = _context.next) {
|
|
29
|
+
case 0:
|
|
30
|
+
source = layer.getSource();
|
|
31
|
+
|
|
32
|
+
if (!source) {
|
|
33
|
+
// Tip: 用户没有传入 source 的时候使用图层的默认数据
|
|
34
|
+
_ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
|
|
35
|
+
source = new Source(data, options);
|
|
36
|
+
layer.setSource(source);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
if (!source.inited) {
|
|
40
|
+
_context.next = 6;
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
_this.updateClusterData(layer);
|
|
45
|
+
|
|
46
|
+
_context.next = 8;
|
|
47
|
+
break;
|
|
48
|
+
|
|
49
|
+
case 6:
|
|
50
|
+
_context.next = 8;
|
|
51
|
+
return new Promise(function (resolve) {
|
|
52
|
+
source.on('update', function (e) {
|
|
53
|
+
if (e.type === 'inited') {
|
|
54
|
+
_this.updateClusterData(layer);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
resolve(null);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
case 8:
|
|
62
|
+
case "end":
|
|
63
|
+
return _context.stop();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}, _callee);
|
|
67
|
+
}))); // 检测数据是否需要更新
|
|
68
|
+
|
|
69
|
+
layer.hooks.beforeRenderData.tapPromise('DataSourcePlugin', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
70
|
+
var neeUpdateCluster, dataSourceNeedUpdate;
|
|
71
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
72
|
+
while (1) {
|
|
73
|
+
switch (_context2.prev = _context2.next) {
|
|
74
|
+
case 0:
|
|
75
|
+
neeUpdateCluster = _this.updateClusterData(layer);
|
|
76
|
+
dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
|
|
77
|
+
layer.dataState.dataSourceNeedUpdate = false;
|
|
78
|
+
return _context2.abrupt("return", neeUpdateCluster || dataSourceNeedUpdate);
|
|
79
|
+
|
|
80
|
+
case 4:
|
|
81
|
+
case "end":
|
|
82
|
+
return _context2.stop();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}, _callee2);
|
|
86
|
+
})));
|
|
50
87
|
}
|
|
51
88
|
}, {
|
|
52
89
|
key: "updateClusterData",
|
|
53
90
|
value: function updateClusterData(layer) {
|
|
54
91
|
// Tip: 矢量瓦片不需要进行聚合操作
|
|
55
|
-
if (layer.isTileLayer || layer.tileLayer) {
|
|
92
|
+
if (layer.isTileLayer || layer.tileLayer || !layer.getSource()) {
|
|
56
93
|
return false;
|
|
57
94
|
}
|
|
58
95
|
|