@antv/l7-layers 2.16.1 → 2.16.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.
- package/es/Geometry/index.js +9 -31
- package/es/Geometry/models/billboard.js +51 -89
- package/es/Geometry/models/plane.js +81 -143
- package/es/Geometry/models/sprite.js +60 -118
- package/es/canvas/index.js +10 -33
- package/es/canvas/models/canvas.js +41 -97
- package/es/citybuliding/building.js +8 -27
- package/es/citybuliding/models/build.js +57 -82
- package/es/core/BaseLayer.d.ts +3 -0
- package/es/core/BaseLayer.js +360 -528
- package/es/core/BaseModel.d.ts +9 -71
- package/es/core/BaseModel.js +118 -429
- package/es/core/CommonStyleAttribute.d.ts +2 -0
- package/es/core/CommonStyleAttribute.js +66 -0
- package/es/core/LayerPickService.js +21 -32
- package/es/core/TextureService.js +0 -13
- package/es/core/interface.d.ts +13 -3
- package/es/core/interface.js +17 -24
- package/es/core/shape/Path.js +13 -20
- package/es/core/shape/extrude.js +27 -36
- package/es/core/triangulation.d.ts +12 -0
- package/es/core/triangulation.js +124 -114
- package/es/earth/index.js +9 -33
- package/es/earth/models/atmosphere.js +30 -54
- package/es/earth/models/base.js +47 -85
- package/es/earth/models/bloomsphere.js +30 -54
- package/es/earth/utils.js +9 -13
- package/es/heatmap/index.js +10 -40
- package/es/heatmap/models/grid.js +29 -53
- package/es/heatmap/models/grid3d.js +29 -53
- package/es/heatmap/models/heatmap.d.ts +1 -0
- package/es/heatmap/models/heatmap.js +99 -150
- package/es/heatmap/models/hexagon.js +29 -53
- package/es/heatmap/shaders/grid_vert.glsl +2 -2
- package/es/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
- package/es/heatmap/shaders/hexagon_vert.glsl +2 -2
- package/es/heatmap/triangulation.js +0 -4
- package/es/image/index.js +9 -28
- package/es/image/models/image.js +66 -100
- package/es/index.js +9 -17
- package/es/line/index.d.ts +1 -0
- package/es/line/index.js +12 -36
- package/es/line/models/arc.js +72 -160
- package/es/line/models/arc_3d.js +67 -148
- package/es/line/models/earthArc_3d.js +66 -148
- package/es/line/models/{half.d.ts → flow.d.ts} +1 -11
- package/es/line/models/flow.js +167 -0
- package/es/line/models/great_circle.js +57 -135
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +3 -3
- package/es/line/models/line.js +98 -186
- package/es/line/models/linearline.js +46 -115
- package/es/line/models/simpleLine.d.ts +0 -1
- package/es/line/models/simpleLine.js +42 -114
- package/es/line/models/wall.js +52 -92
- package/es/line/shaders/dash/arc_dash_frag.glsl +3 -6
- package/es/line/shaders/dash/arc_dash_vert.glsl +6 -46
- package/es/line/shaders/dash/line_dash_frag.glsl +4 -7
- package/es/line/shaders/dash/line_dash_vert.glsl +3 -33
- package/es/line/shaders/flow/flow_line_frag.glsl +13 -0
- package/es/line/shaders/flow/flow_line_vert.glsl +83 -0
- package/es/line/shaders/line_arc_3d_frag.glsl +6 -6
- package/es/line/shaders/line_arc_3d_vert.glsl +4 -34
- package/es/line/shaders/line_arc_frag.glsl +7 -11
- package/es/line/shaders/line_arc_great_circle_frag.glsl +5 -6
- package/es/line/shaders/line_arc_great_circle_vert.glsl +4 -32
- package/es/line/shaders/line_arc_vert.glsl +9 -45
- package/es/line/shaders/line_frag.glsl +15 -17
- package/es/line/shaders/line_vert.glsl +3 -34
- package/es/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
- package/es/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
- package/es/line/shaders/linear/arc_linear_frag.glsl +2 -30
- package/es/line/shaders/linear/arc_linear_vert.glsl +9 -45
- package/es/line/shaders/linear/line_linear_frag.glsl +5 -6
- package/es/line/shaders/linearLine/line_linear_frag.glsl +2 -14
- package/es/line/shaders/linearLine/line_linear_vert.glsl +14 -32
- package/es/line/shaders/simple/simpleline_frag.glsl +1 -5
- package/es/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
- package/es/line/shaders/simple/simpleline_vert.glsl +7 -33
- package/es/mask/index.js +9 -28
- package/es/mask/models/fill.js +29 -54
- package/es/plugins/DataMappingPlugin.js +90 -141
- package/es/plugins/DataSourcePlugin.js +45 -68
- package/es/plugins/FeatureScalePlugin.js +67 -122
- package/es/plugins/LayerAnimateStylePlugin.js +0 -5
- package/es/plugins/LayerMaskPlugin.js +3 -11
- package/es/plugins/LayerModelPlugin.js +79 -104
- package/es/plugins/LayerStylePlugin.js +3 -9
- package/es/plugins/LightingPlugin.js +12 -18
- package/es/plugins/MultiPassRendererPlugin.js +11 -16
- package/es/plugins/PixelPickingPlugin.js +12 -21
- package/es/plugins/RegisterStyleAttributePlugin.js +5 -12
- package/es/plugins/ShaderUniformPlugin.js +15 -29
- package/es/plugins/UpdateModelPlugin.js +0 -5
- package/es/plugins/UpdateStyleAttributePlugin.js +5 -11
- package/es/point/index.d.ts +1 -0
- package/es/point/index.js +27 -77
- package/es/point/models/earthExtrude.d.ts +0 -3
- package/es/point/models/earthExtrude.js +60 -139
- package/es/point/models/earthFill.d.ts +0 -1
- package/es/point/models/earthFill.js +59 -140
- package/es/point/models/extrude.d.ts +0 -3
- package/es/point/models/extrude.js +60 -140
- package/es/point/models/fill.d.ts +0 -1
- package/es/point/models/fill.js +67 -158
- package/es/point/models/fillmage.js +66 -147
- package/es/point/models/image.js +52 -126
- package/es/point/models/index.js +2 -2
- package/es/point/models/normal.js +32 -56
- package/es/point/models/radar.d.ts +0 -1
- package/es/point/models/radar.js +42 -75
- package/es/point/models/simplePoint.d.ts +0 -1
- package/es/point/models/simplePoint.js +46 -115
- package/es/point/models/text.js +211 -344
- package/es/point/shaders/animate/wave_frag.glsl +1 -11
- package/es/point/shaders/earth/extrude_frag.glsl +5 -17
- package/es/point/shaders/earth/extrude_vert.glsl +14 -29
- package/es/point/shaders/earth/fill_frag.glsl +5 -14
- package/es/point/shaders/earth/fill_vert.glsl +1 -75
- package/es/point/shaders/extrude/extrude_frag.glsl +3 -29
- package/es/point/shaders/extrude/extrude_vert.glsl +27 -35
- package/es/point/shaders/fill_frag.glsl +9 -20
- package/es/point/shaders/fill_vert.glsl +16 -101
- package/es/point/shaders/image/fillImage_frag.glsl +2 -5
- package/es/point/shaders/image/fillImage_vert.glsl +4 -47
- package/es/point/shaders/image_frag.glsl +1 -5
- package/es/point/shaders/image_vert.glsl +1 -44
- package/es/point/shaders/normal_frag.glsl +0 -2
- package/es/point/shaders/normal_vert.glsl +2 -1
- package/es/point/shaders/radar/radar_vert.glsl +2 -2
- package/es/point/shaders/simplePoint_frag.glsl +0 -7
- package/es/point/shaders/simplePoint_vert.glsl +3 -45
- package/es/point/shaders/text_frag.glsl +6 -19
- package/es/point/shaders/text_vert.glsl +5 -66
- package/es/point/shape/extrude.js +4 -13
- package/es/polygon/index.d.ts +1 -0
- package/es/polygon/index.js +12 -40
- package/es/polygon/models/extrude.d.ts +0 -3
- package/es/polygon/models/extrude.js +122 -162
- package/es/polygon/models/fill.d.ts +0 -4
- package/es/polygon/models/fill.js +57 -130
- package/es/polygon/models/index.js +3 -2
- package/es/polygon/models/ocean.js +42 -76
- package/es/polygon/models/water.js +37 -71
- package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
- package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
- package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
- package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
- package/es/polygon/shaders/polygon_frag.glsl +0 -5
- package/es/polygon/shaders/polygon_linear_frag.glsl +0 -8
- package/es/polygon/shaders/polygon_linear_vert.glsl +0 -32
- package/es/polygon/shaders/polygon_vert.glsl +1 -27
- package/es/raster/buffers/triangulation.js +2 -4
- package/es/raster/index.js +9 -32
- package/es/raster/models/raster.js +80 -116
- package/es/raster/models/rasterRgb.js +84 -127
- package/es/raster/models/rasterTerrainRgb.js +56 -84
- package/es/tile/interaction/getRasterData.js +14 -20
- package/es/tile/interaction/utils.js +7 -9
- package/es/tile/manager/base.js +63 -96
- package/es/tile/service/TileLayerService.js +33 -55
- package/es/tile/service/TilePickService.js +26 -40
- package/es/tile/service/TileSourceService.js +3 -7
- package/es/tile/tileFactory/DebugTile.js +29 -46
- package/es/tile/tileFactory/ImageTile.js +20 -38
- package/es/tile/tileFactory/MaskTile.js +22 -43
- package/es/tile/tileFactory/RasterRGBTile.js +22 -42
- package/es/tile/tileFactory/RasterTerrainRGBTile.js +20 -38
- package/es/tile/tileFactory/RasterTile.js +30 -53
- package/es/tile/tileFactory/Tile.js +63 -97
- package/es/tile/tileFactory/VectorTile.js +41 -68
- package/es/tile/tileFactory/index.js +0 -11
- package/es/tile/tileFactory/layers/TileDebugLayer.js +6 -27
- package/es/tile/tileFactory/util.js +0 -3
- package/es/tile/tileLayer/BaseLayer.js +105 -146
- package/es/tile/utils.js +1 -1
- package/es/utils/blend.js +0 -2
- package/es/utils/collision-index.js +9 -16
- package/es/utils/extrude_polyline.js +101 -149
- package/es/utils/grid-index.js +2 -27
- package/es/utils/identityScale.js +0 -8
- package/es/utils/layerData.js +32 -46
- package/es/utils/multiPassRender.js +11 -13
- package/es/utils/polylineNormal.js +31 -37
- package/es/utils/simpleLine.js +2 -16
- package/es/utils/stencil.js +2 -3
- package/es/utils/symbol-layout.js +27 -53
- package/es/wind/index.js +9 -29
- package/es/wind/models/utils.js +26 -51
- package/es/wind/models/wind.js +101 -147
- package/es/wind/models/windRender.js +53 -66
- package/lib/Geometry/index.js +9 -38
- package/lib/Geometry/models/billboard.js +51 -97
- package/lib/Geometry/models/index.js +0 -5
- package/lib/Geometry/models/plane.js +79 -151
- package/lib/Geometry/models/sprite.js +60 -127
- package/lib/canvas/index.js +10 -40
- package/lib/canvas/models/canvas.js +41 -101
- package/lib/canvas/models/index.js +0 -3
- package/lib/citybuliding/building.js +8 -35
- package/lib/citybuliding/models/build.js +57 -92
- package/lib/core/BaseLayer.js +358 -520
- package/lib/core/BaseModel.js +117 -441
- package/lib/core/CommonStyleAttribute.js +72 -0
- package/lib/core/LayerPickService.js +21 -37
- package/lib/core/TextureService.js +0 -16
- package/lib/core/interface.js +21 -31
- package/lib/core/schema.js +0 -1
- package/lib/core/shape/Path.js +14 -31
- package/lib/core/shape/extrude.js +27 -59
- package/lib/core/triangulation.js +125 -153
- package/lib/earth/index.js +9 -43
- package/lib/earth/models/atmosphere.js +30 -63
- package/lib/earth/models/base.js +47 -90
- package/lib/earth/models/bloomsphere.js +30 -63
- package/lib/earth/utils.js +7 -31
- package/lib/heatmap/index.js +10 -48
- package/lib/heatmap/models/grid.js +29 -61
- package/lib/heatmap/models/grid3d.js +29 -61
- package/lib/heatmap/models/heatmap.js +99 -166
- package/lib/heatmap/models/hexagon.js +29 -61
- package/lib/heatmap/models/index.js +0 -6
- package/lib/heatmap/shaders/grid_vert.glsl +2 -2
- package/lib/heatmap/shaders/hexagon_3d_vert.glsl +2 -2
- package/lib/heatmap/shaders/hexagon_vert.glsl +2 -2
- package/lib/heatmap/triangulation.js +0 -5
- package/lib/image/index.js +9 -36
- package/lib/image/models/image.js +66 -109
- package/lib/image/models/index.js +0 -3
- package/lib/index.js +7 -61
- package/lib/line/index.js +12 -42
- package/lib/line/models/arc.js +70 -170
- package/lib/line/models/arc_3d.js +65 -159
- package/lib/line/models/earthArc_3d.js +64 -159
- package/lib/line/models/flow.js +174 -0
- package/lib/line/models/great_circle.js +57 -146
- package/lib/line/models/index.js +3 -14
- package/lib/line/models/line.js +96 -194
- package/lib/line/models/linearline.js +46 -127
- package/lib/line/models/simpleLine.js +42 -124
- package/lib/line/models/wall.js +52 -103
- package/lib/line/shaders/dash/arc_dash_frag.glsl +3 -6
- package/lib/line/shaders/dash/arc_dash_vert.glsl +6 -46
- package/lib/line/shaders/dash/line_dash_frag.glsl +4 -7
- package/lib/line/shaders/dash/line_dash_vert.glsl +3 -33
- package/lib/line/shaders/flow/flow_line_frag.glsl +13 -0
- package/lib/line/shaders/flow/flow_line_vert.glsl +83 -0
- package/lib/line/shaders/line_arc_3d_frag.glsl +6 -6
- package/lib/line/shaders/line_arc_3d_vert.glsl +4 -34
- package/lib/line/shaders/line_arc_frag.glsl +7 -11
- package/lib/line/shaders/line_arc_great_circle_frag.glsl +5 -6
- package/lib/line/shaders/line_arc_great_circle_vert.glsl +4 -32
- package/lib/line/shaders/line_arc_vert.glsl +9 -45
- package/lib/line/shaders/line_frag.glsl +15 -17
- package/lib/line/shaders/line_vert.glsl +3 -34
- package/lib/line/shaders/linear/arc3d_linear_frag.glsl +5 -19
- package/lib/line/shaders/linear/arc3d_linear_vert.glsl +9 -48
- package/lib/line/shaders/linear/arc_linear_frag.glsl +2 -30
- package/lib/line/shaders/linear/arc_linear_vert.glsl +9 -45
- package/lib/line/shaders/linear/line_linear_frag.glsl +5 -6
- package/lib/line/shaders/linearLine/line_linear_frag.glsl +2 -14
- package/lib/line/shaders/linearLine/line_linear_vert.glsl +14 -32
- package/lib/line/shaders/simple/simpleline_frag.glsl +1 -5
- package/lib/line/shaders/simple/simpleline_linear_frag.glsl +2 -6
- package/lib/line/shaders/simple/simpleline_vert.glsl +7 -33
- package/lib/mask/index.js +9 -36
- package/lib/mask/models/fill.js +29 -63
- package/lib/mask/models/index.js +0 -3
- package/lib/plugins/DataMappingPlugin.js +90 -152
- package/lib/plugins/DataSourcePlugin.js +45 -76
- package/lib/plugins/FeatureScalePlugin.js +67 -138
- package/lib/plugins/LayerAnimateStylePlugin.js +0 -10
- package/lib/plugins/LayerMaskPlugin.js +4 -17
- package/lib/plugins/LayerModelPlugin.js +80 -113
- package/lib/plugins/LayerStylePlugin.js +4 -14
- package/lib/plugins/LightingPlugin.js +12 -25
- package/lib/plugins/MultiPassRendererPlugin.js +11 -22
- package/lib/plugins/PixelPickingPlugin.js +12 -27
- package/lib/plugins/RegisterStyleAttributePlugin.js +5 -19
- package/lib/plugins/ShaderUniformPlugin.js +15 -36
- package/lib/plugins/UpdateModelPlugin.js +1 -10
- package/lib/plugins/UpdateStyleAttributePlugin.js +5 -16
- package/lib/point/index.js +27 -83
- package/lib/point/models/earthExtrude.js +60 -150
- package/lib/point/models/earthFill.js +59 -170
- package/lib/point/models/extrude.js +60 -150
- package/lib/point/models/fill.js +65 -167
- package/lib/point/models/fillmage.js +64 -155
- package/lib/point/models/image.js +52 -136
- package/lib/point/models/index.js +1 -12
- package/lib/point/models/normal.js +32 -66
- package/lib/point/models/radar.js +42 -85
- package/lib/point/models/simplePoint.js +46 -125
- package/lib/point/models/text.js +209 -350
- package/lib/point/shaders/animate/wave_frag.glsl +1 -11
- package/lib/point/shaders/earth/extrude_frag.glsl +5 -17
- package/lib/point/shaders/earth/extrude_vert.glsl +14 -29
- package/lib/point/shaders/earth/fill_frag.glsl +5 -14
- package/lib/point/shaders/earth/fill_vert.glsl +1 -75
- package/lib/point/shaders/extrude/extrude_frag.glsl +3 -29
- package/lib/point/shaders/extrude/extrude_vert.glsl +27 -35
- package/lib/point/shaders/fill_frag.glsl +9 -20
- package/lib/point/shaders/fill_vert.glsl +16 -101
- package/lib/point/shaders/image/fillImage_frag.glsl +2 -5
- package/lib/point/shaders/image/fillImage_vert.glsl +4 -47
- package/lib/point/shaders/image_frag.glsl +1 -5
- package/lib/point/shaders/image_vert.glsl +1 -44
- package/lib/point/shaders/normal_frag.glsl +0 -2
- package/lib/point/shaders/normal_vert.glsl +2 -1
- package/lib/point/shaders/radar/radar_vert.glsl +2 -2
- package/lib/point/shaders/simplePoint_frag.glsl +0 -7
- package/lib/point/shaders/simplePoint_vert.glsl +3 -45
- package/lib/point/shaders/text_frag.glsl +6 -19
- package/lib/point/shaders/text_vert.glsl +5 -66
- package/lib/point/shape/extrude.js +4 -20
- package/lib/polygon/index.js +12 -48
- package/lib/polygon/models/extrude.js +122 -173
- package/lib/polygon/models/fill.js +57 -140
- package/lib/polygon/models/index.js +2 -14
- package/lib/polygon/models/ocean.js +42 -88
- package/lib/polygon/models/water.js +37 -82
- package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -23
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +7 -5
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +7 -32
- package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +33 -38
- package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +12 -9
- package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +16 -44
- package/lib/polygon/shaders/polygon_frag.glsl +0 -5
- package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -8
- package/lib/polygon/shaders/polygon_linear_vert.glsl +0 -32
- package/lib/polygon/shaders/polygon_vert.glsl +1 -27
- package/lib/raster/buffers/triangulation.js +3 -7
- package/lib/raster/index.js +9 -40
- package/lib/raster/models/index.js +0 -5
- package/lib/raster/models/raster.js +80 -125
- package/lib/raster/models/rasterRgb.js +84 -139
- package/lib/raster/models/rasterTerrainRgb.js +56 -93
- package/lib/tile/interaction/getRasterData.js +14 -25
- package/lib/tile/interaction/utils.js +7 -19
- package/lib/tile/manager/base.js +63 -104
- package/lib/tile/service/TileLayerService.js +33 -60
- package/lib/tile/service/TilePickService.js +26 -48
- package/lib/tile/service/TileSourceService.js +2 -16
- package/lib/tile/style/utils.js +0 -3
- package/lib/tile/tileFactory/DebugTile.js +29 -54
- package/lib/tile/tileFactory/ImageTile.js +20 -46
- package/lib/tile/tileFactory/MaskTile.js +22 -51
- package/lib/tile/tileFactory/RasterRGBTile.js +22 -50
- package/lib/tile/tileFactory/RasterTerrainRGBTile.js +20 -46
- package/lib/tile/tileFactory/RasterTile.js +30 -63
- package/lib/tile/tileFactory/Tile.js +63 -102
- package/lib/tile/tileFactory/VectorTile.js +41 -76
- package/lib/tile/tileFactory/index.js +0 -25
- package/lib/tile/tileFactory/layers/TileDebugLayer.js +6 -32
- package/lib/tile/tileFactory/util.js +0 -9
- package/lib/tile/tileLayer/BaseLayer.js +105 -153
- package/lib/tile/utils.js +1 -5
- package/lib/utils/blend.js +0 -5
- package/lib/utils/collision-index.js +9 -25
- package/lib/utils/extrude_polyline.js +101 -181
- package/lib/utils/grid-index.js +2 -28
- package/lib/utils/identityScale.js +0 -9
- package/lib/utils/layerData.js +32 -51
- package/lib/utils/multiPassRender.js +11 -16
- package/lib/utils/polylineNormal.js +31 -66
- package/lib/utils/simpleLine.js +2 -21
- package/lib/utils/stencil.js +0 -4
- package/lib/utils/symbol-layout.js +27 -55
- package/lib/wind/index.js +9 -37
- package/lib/wind/models/index.js +0 -3
- package/lib/wind/models/utils.js +26 -62
- package/lib/wind/models/wind.js +101 -157
- package/lib/wind/models/windRender.js +53 -71
- package/lib/wind/models/windShader.js +0 -1
- package/package.json +7 -7
- package/es/line/models/half.js +0 -298
- package/es/line/shaders/half/line_half_frag.glsl +0 -53
- package/es/line/shaders/half/line_half_vert.glsl +0 -169
- package/es/utils/dataMappingStyle.d.ts +0 -31
- package/es/utils/dataMappingStyle.js +0 -147
- package/lib/line/models/half.js +0 -315
- package/lib/line/shaders/half/line_half_frag.glsl +0 -53
- package/lib/line/shaders/half/line_half_vert.glsl +0 -169
- package/lib/utils/dataMappingStyle.js +0 -151
|
@@ -1,74 +1,50 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
13
|
-
|
|
14
10
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
15
|
-
|
|
16
11
|
var _initializerDefineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/initializerDefineProperty"));
|
|
17
|
-
|
|
18
12
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
|
-
|
|
20
13
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
21
|
-
|
|
22
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
-
|
|
24
15
|
var _applyDecoratedDescriptor2 = _interopRequireDefault(require("@babel/runtime/helpers/applyDecoratedDescriptor"));
|
|
25
|
-
|
|
26
16
|
var _initializerWarningHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/initializerWarningHelper"));
|
|
27
|
-
|
|
28
17
|
var _l7Core = require("@antv/l7-core");
|
|
29
|
-
|
|
30
18
|
var _l7Maps = require("@antv/l7-maps");
|
|
31
|
-
|
|
32
19
|
var _l7Utils = require("@antv/l7-utils");
|
|
33
|
-
|
|
34
20
|
var _inversify = require("inversify");
|
|
35
|
-
|
|
36
21
|
var _lodash = require("lodash");
|
|
37
|
-
|
|
38
22
|
require("reflect-metadata");
|
|
39
|
-
|
|
40
23
|
var _dec, _dec2, _dec3, _class, _class2, _descriptor, _descriptor2;
|
|
41
|
-
|
|
42
24
|
var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inversify.inject)(_l7Core.TYPES.IMapService), _dec3 = (0, _inversify.inject)(_l7Core.TYPES.IFontService), _dec(_class = (_class2 = /*#__PURE__*/function () {
|
|
43
25
|
function DataMappingPlugin() {
|
|
44
26
|
(0, _classCallCheck2.default)(this, DataMappingPlugin);
|
|
45
27
|
(0, _initializerDefineProperty2.default)(this, "mapService", _descriptor, this);
|
|
46
28
|
(0, _initializerDefineProperty2.default)(this, "fontService", _descriptor2, this);
|
|
47
29
|
}
|
|
48
|
-
|
|
49
30
|
(0, _createClass2.default)(DataMappingPlugin, [{
|
|
50
31
|
key: "apply",
|
|
51
32
|
value: function apply(layer, _ref) {
|
|
52
33
|
var _this = this;
|
|
53
|
-
|
|
54
34
|
var styleAttributeService = _ref.styleAttributeService;
|
|
55
35
|
layer.hooks.init.tapPromise('DataMappingPlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
56
36
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
57
|
-
while (1) {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
case 3:
|
|
69
|
-
case "end":
|
|
70
|
-
return _context.stop();
|
|
71
|
-
}
|
|
37
|
+
while (1) switch (_context.prev = _context.next) {
|
|
38
|
+
case 0:
|
|
39
|
+
layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.INIT);
|
|
40
|
+
// 初始化重新生成 map
|
|
41
|
+
_this.generateMaping(layer, {
|
|
42
|
+
styleAttributeService: styleAttributeService
|
|
43
|
+
});
|
|
44
|
+
layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.INIT);
|
|
45
|
+
case 3:
|
|
46
|
+
case "end":
|
|
47
|
+
return _context.stop();
|
|
72
48
|
}
|
|
73
49
|
}, _callee);
|
|
74
50
|
})));
|
|
@@ -76,104 +52,95 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
76
52
|
var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(flag) {
|
|
77
53
|
var mappingResult;
|
|
78
54
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
79
|
-
while (1) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
case 7:
|
|
99
|
-
case "end":
|
|
100
|
-
return _context2.stop();
|
|
101
|
-
}
|
|
55
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
56
|
+
case 0:
|
|
57
|
+
if (flag) {
|
|
58
|
+
_context2.next = 2;
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
return _context2.abrupt("return", flag);
|
|
62
|
+
case 2:
|
|
63
|
+
layer.dataState.dataMappingNeedUpdate = false;
|
|
64
|
+
layer.log(_l7Core.IDebugLog.MappingStart, _l7Core.ILayerStage.UPDATE);
|
|
65
|
+
mappingResult = _this.generateMaping(layer, {
|
|
66
|
+
styleAttributeService: styleAttributeService
|
|
67
|
+
});
|
|
68
|
+
layer.log(_l7Core.IDebugLog.MappingEnd, _l7Core.ILayerStage.UPDATE);
|
|
69
|
+
return _context2.abrupt("return", mappingResult);
|
|
70
|
+
case 7:
|
|
71
|
+
case "end":
|
|
72
|
+
return _context2.stop();
|
|
102
73
|
}
|
|
103
74
|
}, _callee2);
|
|
104
75
|
}));
|
|
105
|
-
|
|
106
76
|
return function (_x) {
|
|
107
77
|
return _ref3.apply(this, arguments);
|
|
108
78
|
};
|
|
109
|
-
}());
|
|
79
|
+
}());
|
|
110
80
|
|
|
81
|
+
// remapping before render
|
|
111
82
|
layer.hooks.beforeRender.tap('DataMappingPlugin', function () {
|
|
112
83
|
var source = layer.getSource();
|
|
113
|
-
|
|
114
84
|
if (layer.layerModelNeedUpdate || !source || !source.inited) {
|
|
115
85
|
return;
|
|
116
86
|
}
|
|
117
|
-
|
|
118
87
|
var attributes = styleAttributeService.getLayerStyleAttributes() || [];
|
|
119
88
|
var filter = styleAttributeService.getLayerStyleAttribute('filter');
|
|
120
|
-
var dataArray = source.data.dataArray;
|
|
121
|
-
|
|
89
|
+
var dataArray = source.data.dataArray;
|
|
90
|
+
// TODO 数据为空的情况
|
|
122
91
|
if (Array.isArray(dataArray) && dataArray.length === 0) {
|
|
123
92
|
return;
|
|
124
93
|
}
|
|
125
|
-
|
|
126
94
|
var attributesToRemapping = attributes.filter(function (attribute) {
|
|
127
95
|
return attribute.needRemapping;
|
|
128
96
|
} // 如果filter变化
|
|
129
97
|
);
|
|
130
|
-
var filterData = dataArray; // 数据过滤完 再执行数据映射
|
|
131
98
|
|
|
99
|
+
var filterData = dataArray;
|
|
100
|
+
// 数据过滤完 再执行数据映射
|
|
132
101
|
if (filter !== null && filter !== void 0 && filter.needRemapping && filter !== null && filter !== void 0 && filter.scale) {
|
|
133
102
|
filterData = dataArray.filter(function (record) {
|
|
134
103
|
return _this.applyAttributeMapping(filter, record)[0];
|
|
135
104
|
});
|
|
136
105
|
}
|
|
137
|
-
|
|
138
106
|
if (attributesToRemapping.length) {
|
|
139
107
|
// 过滤数据
|
|
140
|
-
var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData()
|
|
108
|
+
var encodeData = _this.mapping(layer, attributesToRemapping, filterData, layer.getEncodedData() // TODO 优化
|
|
109
|
+
);
|
|
141
110
|
|
|
142
111
|
layer.setEncodedData(encodeData);
|
|
143
|
-
}
|
|
144
|
-
// layer.emit('remapping', null);
|
|
112
|
+
}
|
|
145
113
|
|
|
114
|
+
// 处理文本更新,更新文字形状
|
|
115
|
+
// layer.emit('remapping', null);
|
|
146
116
|
});
|
|
147
117
|
}
|
|
148
118
|
}, {
|
|
149
119
|
key: "generateMaping",
|
|
150
120
|
value: function generateMaping(layer, _ref4) {
|
|
151
121
|
var _this2 = this;
|
|
152
|
-
|
|
153
122
|
var styleAttributeService = _ref4.styleAttributeService;
|
|
154
123
|
var attributes = styleAttributeService.getLayerStyleAttributes() || [];
|
|
155
124
|
var filter = styleAttributeService.getLayerStyleAttribute('filter');
|
|
156
125
|
var dataArray = layer.getSource().data.dataArray;
|
|
157
|
-
var filterData = dataArray;
|
|
158
|
-
|
|
126
|
+
var filterData = dataArray;
|
|
127
|
+
// 数据过滤完 再执行数据映射
|
|
159
128
|
if (filter !== null && filter !== void 0 && filter.scale) {
|
|
160
129
|
filterData = dataArray.filter(function (record) {
|
|
161
130
|
return _this2.applyAttributeMapping(filter, record)[0];
|
|
162
131
|
});
|
|
163
|
-
}
|
|
132
|
+
}
|
|
133
|
+
// Tip: layer 对数据做处理
|
|
164
134
|
// 数据处理 在数据进行 mapping 生成 encodeData 之前对数据进行处理
|
|
165
135
|
// 在各个 layer 中继承
|
|
166
136
|
|
|
167
|
-
|
|
168
|
-
filterData = layer.processData(filterData);
|
|
137
|
+
filterData = layer.processData(filterData); // 目前只有简单线需要处理
|
|
169
138
|
var encodeData = this.mapping(layer, attributes, filterData, undefined);
|
|
170
139
|
layer.setEncodedData(encodeData);
|
|
171
|
-
|
|
172
140
|
if (dataArray.length === 0 && layer.encodeDataLength === 0) {
|
|
173
141
|
return false;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
|
|
142
|
+
}
|
|
143
|
+
// 对外暴露事件
|
|
177
144
|
layer.emit('dataUpdate', null);
|
|
178
145
|
return true;
|
|
179
146
|
}
|
|
@@ -181,13 +148,11 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
181
148
|
key: "mapping",
|
|
182
149
|
value: function mapping(layer, attributes, data, predata) {
|
|
183
150
|
var _this3 = this;
|
|
184
|
-
|
|
185
151
|
var _ref5 = layer.getLayerConfig(),
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
152
|
+
_ref5$arrow = _ref5.arrow,
|
|
153
|
+
arrow = _ref5$arrow === void 0 ? {
|
|
154
|
+
enable: false
|
|
155
|
+
} : _ref5$arrow;
|
|
191
156
|
var usedAttributes = attributes.filter(function (attribute) {
|
|
192
157
|
return attribute.scale !== undefined;
|
|
193
158
|
}).filter(function (attribute) {
|
|
@@ -200,45 +165,42 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
200
165
|
coordinates: record.coordinates
|
|
201
166
|
}, preRecord);
|
|
202
167
|
usedAttributes.forEach(function (attribute) {
|
|
203
|
-
var values = _this3.applyAttributeMapping(attribute, record);
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
if (attribute.name === 'color') {
|
|
168
|
+
var values = _this3.applyAttributeMapping(attribute, record);
|
|
169
|
+
// TODO: 支持每个属性配置 postprocess}
|
|
170
|
+
if (attribute.name === 'color' || attribute.name === 'stroke') {
|
|
207
171
|
values = values.map(function (c) {
|
|
208
172
|
return (0, _l7Utils.rgb2arr)(c);
|
|
209
173
|
});
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values; // 增加对 layer/text/iconfont unicode 映射的解析
|
|
174
|
+
}
|
|
175
|
+
// @ts-ignore
|
|
176
|
+
encodeRecord[attribute.name] = Array.isArray(values) && values.length === 1 ? values[0] : values;
|
|
214
177
|
|
|
178
|
+
// 增加对 layer/text/iconfont unicode 映射的解析
|
|
215
179
|
if (attribute.name === 'shape') {
|
|
216
180
|
encodeRecord.shape = _this3.fontService.getIconFontKey(encodeRecord[attribute.name]);
|
|
217
181
|
}
|
|
218
182
|
});
|
|
219
|
-
|
|
220
|
-
if (arrow.enable && (encodeRecord.shape === 'line' || encodeRecord.shape === 'halfLine')) {
|
|
183
|
+
if (arrow.enable && encodeRecord.shape === 'line') {
|
|
221
184
|
// 只有在线图层且支持配置箭头的时候进行插入顶点的处理
|
|
222
|
-
var coords = encodeRecord.coordinates;
|
|
223
|
-
|
|
185
|
+
var coords = encodeRecord.coordinates;
|
|
186
|
+
// @ts-ignore
|
|
224
187
|
if (layer.arrowInsertCount < layer.encodeDataLength) {
|
|
225
188
|
// Tip: arrowInsert 的判断用于确保每一条线数据 arrow 的属性点只会被植入一次
|
|
226
189
|
var arrowPoint = _this3.getArrowPoints(coords[0], coords[1]);
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
190
|
+
encodeRecord.coordinates.splice(1, 0, arrowPoint, arrowPoint);
|
|
191
|
+
// @ts-ignore
|
|
230
192
|
layer.arrowInsertCount++;
|
|
231
193
|
}
|
|
232
194
|
}
|
|
233
|
-
|
|
234
195
|
return encodeRecord;
|
|
235
196
|
});
|
|
236
197
|
attributes.forEach(function (attribute) {
|
|
237
198
|
attribute.needRemapping = false;
|
|
238
|
-
});
|
|
239
|
-
|
|
240
|
-
this.adjustData2Amap2Coordinates(mappedData, layer);
|
|
199
|
+
});
|
|
200
|
+
// 调整数据兼容 Amap2.0
|
|
201
|
+
this.adjustData2Amap2Coordinates(mappedData, layer);
|
|
241
202
|
|
|
203
|
+
// 调整数据兼容 SimpleCoordinates
|
|
242
204
|
this.adjustData2SimpleCoordinates(mappedData);
|
|
243
205
|
return mappedData;
|
|
244
206
|
}
|
|
@@ -246,48 +208,29 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
246
208
|
key: "adjustData2Amap2Coordinates",
|
|
247
209
|
value: function adjustData2Amap2Coordinates(mappedData, layer) {
|
|
248
210
|
var _this4 = this;
|
|
249
|
-
|
|
250
211
|
// 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
|
|
251
212
|
if (mappedData.length > 0 && this.mapService.version === _l7Maps.Version['GAODE2.x']) {
|
|
252
213
|
var layerCenter = layer.coordCenter || layer.getSource().center;
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
214
|
+
// 单个的点数据
|
|
215
|
+
// @ts-ignore
|
|
216
|
+
mappedData
|
|
217
|
+
// TODO: 避免经纬度被重复计算导致坐标位置偏移
|
|
218
|
+
.filter(function (d) {
|
|
219
|
+
return !d.originCoordinates;
|
|
220
|
+
}).map(function (d) {
|
|
221
|
+
d.version = _l7Maps.Version['GAODE2.x'];
|
|
256
222
|
// @ts-ignore
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
|
|
264
|
-
// @ts-ignore
|
|
265
|
-
// d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
|
|
266
|
-
|
|
267
|
-
d.coordinates = _this4.mapService.lngLatToCoordByLayer(d.coordinates, layerCenter);
|
|
268
|
-
});
|
|
269
|
-
} else {
|
|
270
|
-
// 连续的线、面数据
|
|
271
|
-
mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
|
|
272
|
-
.filter(function (d) {
|
|
273
|
-
return !d.originCoordinates;
|
|
274
|
-
}).map(function (d) {
|
|
275
|
-
d.version = _l7Maps.Version['GAODE2.x']; // @ts-ignore
|
|
276
|
-
|
|
277
|
-
d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
|
|
278
|
-
// @ts-ignore
|
|
279
|
-
// d.coordinates = this.mapService.lngLatToCoords(d.coordinates);
|
|
280
|
-
|
|
281
|
-
d.coordinates = _this4.mapService.lngLatToCoordsByLayer(d.coordinates, layerCenter);
|
|
282
|
-
});
|
|
283
|
-
}
|
|
223
|
+
d.originCoordinates = (0, _lodash.cloneDeep)(d.coordinates); // 为了兼容高德1.x 需要保存一份原始的经纬度坐标数据(许多上层逻辑依赖经纬度数据)
|
|
224
|
+
// @ts-ignore
|
|
225
|
+
// d.coordinates = this.mapService.lngLatToCoord(d.coordinates);
|
|
226
|
+
d.coordinates = _this4.mapService.coordToAMap2RelativeCoordinates(d.coordinates, layerCenter);
|
|
227
|
+
});
|
|
284
228
|
}
|
|
285
229
|
}
|
|
286
230
|
}, {
|
|
287
231
|
key: "adjustData2SimpleCoordinates",
|
|
288
232
|
value: function adjustData2SimpleCoordinates(mappedData) {
|
|
289
233
|
var _this5 = this;
|
|
290
|
-
|
|
291
234
|
if (mappedData.length > 0 && this.mapService.version === _l7Maps.Version.SIMPLE) {
|
|
292
235
|
mappedData.map(function (d) {
|
|
293
236
|
if (!d.simpleCoordinate) {
|
|
@@ -301,11 +244,9 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
301
244
|
key: "unProjectCoordinates",
|
|
302
245
|
value: function unProjectCoordinates(coordinates) {
|
|
303
246
|
var _this6 = this;
|
|
304
|
-
|
|
305
247
|
if (typeof coordinates[0] === 'number') {
|
|
306
248
|
return this.mapService.simpleMapCoord.unproject(coordinates);
|
|
307
249
|
}
|
|
308
|
-
|
|
309
250
|
if (coordinates[0] && coordinates[0][0] instanceof Array) {
|
|
310
251
|
// @ts-ignore
|
|
311
252
|
var coords = [];
|
|
@@ -314,20 +255,20 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
314
255
|
var c1 = [];
|
|
315
256
|
coord.map(function (co) {
|
|
316
257
|
c1.push(_this6.mapService.simpleMapCoord.unproject(co));
|
|
317
|
-
});
|
|
318
|
-
|
|
258
|
+
});
|
|
259
|
+
// @ts-ignore
|
|
319
260
|
coords.push(c1);
|
|
320
|
-
});
|
|
321
|
-
|
|
261
|
+
});
|
|
262
|
+
// @ts-ignore
|
|
322
263
|
return coords;
|
|
323
264
|
} else {
|
|
324
265
|
// @ts-ignore
|
|
325
|
-
var _coords = [];
|
|
326
|
-
|
|
266
|
+
var _coords = [];
|
|
267
|
+
// @ts-ignore
|
|
327
268
|
coordinates.map(function (coord) {
|
|
328
269
|
_coords.push(_this6.mapService.simpleMapCoord.unproject(coord));
|
|
329
|
-
});
|
|
330
|
-
|
|
270
|
+
});
|
|
271
|
+
// @ts-ignore
|
|
331
272
|
return _coords;
|
|
332
273
|
}
|
|
333
274
|
}
|
|
@@ -335,25 +276,22 @@ var DataMappingPlugin = (_dec = (0, _inversify.injectable)(), _dec2 = (0, _inver
|
|
|
335
276
|
key: "applyAttributeMapping",
|
|
336
277
|
value: function applyAttributeMapping(attribute, record) {
|
|
337
278
|
var _attribute$scale;
|
|
338
|
-
|
|
339
279
|
if (!attribute.scale) {
|
|
340
280
|
return [];
|
|
341
281
|
}
|
|
342
|
-
|
|
343
282
|
var scalers = (attribute === null || attribute === void 0 ? void 0 : (_attribute$scale = attribute.scale) === null || _attribute$scale === void 0 ? void 0 : _attribute$scale.scalers) || [];
|
|
344
283
|
var params = [];
|
|
345
284
|
scalers.forEach(function (_ref6) {
|
|
346
285
|
var _attribute$scale2;
|
|
347
|
-
|
|
348
286
|
var field = _ref6.field;
|
|
349
|
-
|
|
350
287
|
if (record.hasOwnProperty(field) || ((_attribute$scale2 = attribute.scale) === null || _attribute$scale2 === void 0 ? void 0 : _attribute$scale2.type) === 'variable') {
|
|
351
288
|
// TODO:多字段,常量
|
|
352
289
|
params.push(record[field]);
|
|
353
290
|
}
|
|
354
291
|
});
|
|
355
292
|
var mappingResult = attribute.mapping ? attribute.mapping(params) : [];
|
|
356
|
-
return mappingResult;
|
|
293
|
+
return mappingResult;
|
|
294
|
+
// return attribute.mapping ? attribute.mapping(params) : [];
|
|
357
295
|
}
|
|
358
296
|
}, {
|
|
359
297
|
key: "getArrowPoints",
|
|
@@ -1,107 +1,81 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
9
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
-
|
|
14
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
12
|
var _l7Core = require("@antv/l7-core");
|
|
19
|
-
|
|
20
13
|
var _l7Source = _interopRequireDefault(require("@antv/l7-source"));
|
|
21
|
-
|
|
22
14
|
var _inversify = require("inversify");
|
|
23
|
-
|
|
24
15
|
require("reflect-metadata");
|
|
25
|
-
|
|
26
16
|
var _dec, _class;
|
|
27
|
-
|
|
28
17
|
var DataSourcePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
|
|
29
18
|
function DataSourcePlugin() {
|
|
30
19
|
(0, _classCallCheck2.default)(this, DataSourcePlugin);
|
|
31
20
|
}
|
|
32
|
-
|
|
33
21
|
(0, _createClass2.default)(DataSourcePlugin, [{
|
|
34
22
|
key: "apply",
|
|
35
23
|
value: function apply(layer) {
|
|
36
24
|
var _this = this;
|
|
37
|
-
|
|
38
25
|
this.mapService = layer.getContainer().get(_l7Core.TYPES.IMapService);
|
|
39
26
|
layer.hooks.init.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
40
27
|
var source, _ref2, data, options;
|
|
41
|
-
|
|
42
28
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
43
|
-
while (1) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
if (!source.inited) {
|
|
57
|
-
_context.next = 8;
|
|
58
|
-
break;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
_this.updateClusterData(layer);
|
|
62
|
-
|
|
63
|
-
layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
|
|
64
|
-
_context.next = 10;
|
|
29
|
+
while (1) switch (_context.prev = _context.next) {
|
|
30
|
+
case 0:
|
|
31
|
+
layer.log(_l7Core.IDebugLog.SourceInitStart, _l7Core.ILayerStage.INIT);
|
|
32
|
+
source = layer.getSource();
|
|
33
|
+
if (!source) {
|
|
34
|
+
// Tip: 用户没有传入 source 的时候使用图层的默认数据
|
|
35
|
+
_ref2 = layer.sourceOption || layer.defaultSourceConfig, data = _ref2.data, options = _ref2.options;
|
|
36
|
+
source = new _l7Source.default(data, options);
|
|
37
|
+
layer.setSource(source);
|
|
38
|
+
}
|
|
39
|
+
if (!source.inited) {
|
|
40
|
+
_context.next = 8;
|
|
65
41
|
break;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}
|
|
42
|
+
}
|
|
43
|
+
_this.updateClusterData(layer);
|
|
44
|
+
layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
|
|
45
|
+
_context.next = 10;
|
|
46
|
+
break;
|
|
47
|
+
case 8:
|
|
48
|
+
_context.next = 10;
|
|
49
|
+
return new Promise(function (resolve) {
|
|
50
|
+
source.on('update', function (e) {
|
|
51
|
+
if (e.type === 'inited') {
|
|
52
|
+
_this.updateClusterData(layer);
|
|
53
|
+
layer.log(_l7Core.IDebugLog.SourceInitEnd, _l7Core.ILayerStage.INIT);
|
|
54
|
+
}
|
|
55
|
+
resolve(null);
|
|
79
56
|
});
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
57
|
+
});
|
|
58
|
+
case 10:
|
|
59
|
+
case "end":
|
|
60
|
+
return _context.stop();
|
|
85
61
|
}
|
|
86
62
|
}, _callee);
|
|
87
|
-
})));
|
|
63
|
+
})));
|
|
88
64
|
|
|
65
|
+
// 检测数据是否需要更新
|
|
89
66
|
layer.hooks.beforeRenderData.tapPromise('DataSourcePlugin', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
90
67
|
var neeUpdateCluster, dataSourceNeedUpdate, needScale;
|
|
91
68
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
92
|
-
while (1) {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
case "end":
|
|
103
|
-
return _context2.stop();
|
|
104
|
-
}
|
|
69
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
70
|
+
case 0:
|
|
71
|
+
neeUpdateCluster = _this.updateClusterData(layer);
|
|
72
|
+
dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
|
|
73
|
+
layer.dataState.dataSourceNeedUpdate = false;
|
|
74
|
+
needScale = neeUpdateCluster || dataSourceNeedUpdate;
|
|
75
|
+
return _context2.abrupt("return", needScale);
|
|
76
|
+
case 5:
|
|
77
|
+
case "end":
|
|
78
|
+
return _context2.stop();
|
|
105
79
|
}
|
|
106
80
|
}, _callee2);
|
|
107
81
|
})));
|
|
@@ -113,29 +87,24 @@ var DataSourcePlugin = (_dec = (0, _inversify.injectable)(), _dec(_class = /*#__
|
|
|
113
87
|
if (layer.isTileLayer || layer.tileLayer || !layer.getSource()) {
|
|
114
88
|
return false;
|
|
115
89
|
}
|
|
116
|
-
|
|
117
90
|
var source = layer.getSource();
|
|
118
91
|
var cluster = source.cluster;
|
|
119
92
|
var _source$clusterOption = source.clusterOptions.zoom,
|
|
120
|
-
|
|
93
|
+
zoom = _source$clusterOption === void 0 ? 0 : _source$clusterOption;
|
|
121
94
|
var newZoom = this.mapService.getZoom() - 1;
|
|
122
95
|
var dataSourceNeedUpdate = layer.dataState.dataSourceNeedUpdate;
|
|
123
|
-
|
|
124
96
|
if (cluster && dataSourceNeedUpdate) {
|
|
125
97
|
// 数据发生更新
|
|
126
98
|
source.updateClusterData(Math.floor(newZoom));
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
99
|
+
}
|
|
100
|
+
// 如果 dataSource 有更新,跳过 zoom 的判断,直接更新一次
|
|
130
101
|
if (cluster && Math.abs(layer.clusterZoom - newZoom) >= 1) {
|
|
131
102
|
if (zoom !== Math.floor(newZoom)) {
|
|
132
103
|
source.updateClusterData(Math.floor(newZoom));
|
|
133
104
|
}
|
|
134
|
-
|
|
135
105
|
layer.clusterZoom = newZoom;
|
|
136
106
|
return true;
|
|
137
107
|
}
|
|
138
|
-
|
|
139
108
|
return false;
|
|
140
109
|
}
|
|
141
110
|
}]);
|