@antv/l7-layers 2.21.1 → 2.21.3
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/canvas/index.js +60 -113
- package/es/canvas/models/canvas.js +95 -135
- package/es/canvas/models/constants.js +1 -1
- package/es/citybuliding/building.js +20 -58
- package/es/citybuliding/models/build.js +142 -199
- package/es/core/BaseLayer.d.ts +1 -1
- package/es/core/BaseLayer.js +1113 -1412
- package/es/core/BaseModel.js +263 -317
- package/es/core/CommonStyleAttribute.js +25 -18
- package/es/core/LayerPickService.js +92 -141
- package/es/core/TextureService.js +58 -69
- package/es/core/constant.js +2 -2
- package/es/core/interface.js +5 -5
- package/es/core/line_trangluation.js +38 -43
- package/es/core/shape/Path.js +21 -12
- package/es/core/shape/arrow.js +50 -62
- package/es/core/shape/extrude.js +54 -62
- package/es/core/triangulation.js +192 -171
- package/es/core/utils.js +5 -5
- package/es/earth/index.js +35 -73
- package/es/earth/models/atmosphere.js +98 -148
- package/es/earth/models/base.js +148 -201
- package/es/earth/models/bloomsphere.js +97 -147
- package/es/earth/utils.js +37 -38
- package/es/geometry/index.js +36 -75
- package/es/geometry/models/billboard.js +147 -204
- package/es/geometry/models/index.js +1 -1
- package/es/geometry/models/plane.js +277 -357
- package/es/geometry/models/sprite.js +182 -240
- package/es/heatmap/index.js +72 -121
- package/es/heatmap/models/grid.js +66 -118
- package/es/heatmap/models/grid3d.js +101 -151
- package/es/heatmap/models/heatmap.js +398 -455
- package/es/heatmap/models/hexagon.js +67 -119
- package/es/heatmap/models/index.js +1 -1
- package/es/heatmap/triangulation.js +20 -20
- package/es/image/index.js +23 -62
- package/es/image/models/image.js +99 -163
- package/es/image/models/index.js +1 -1
- package/es/line/index.js +65 -106
- package/es/line/models/arc.js +200 -248
- package/es/line/models/arc_3d.js +190 -241
- package/es/line/models/flow.js +101 -153
- package/es/line/models/great_circle.js +183 -234
- package/es/line/models/index.js +1 -1
- package/es/line/models/line.js +230 -285
- package/es/line/models/simple_line.js +142 -192
- package/es/line/models/wall.js +221 -273
- package/es/mask/index.js +16 -53
- package/es/mask/models/fill.js +51 -108
- package/es/mask/models/index.js +1 -1
- package/es/plugins/DataMappingPlugin.js +205 -249
- package/es/plugins/DataSourcePlugin.js +64 -92
- package/es/plugins/FeatureScalePlugin.js +258 -302
- package/es/plugins/LayerAnimateStylePlugin.js +12 -22
- package/es/plugins/LayerMaskPlugin.js +15 -24
- package/es/plugins/LayerModelPlugin.js +52 -136
- package/es/plugins/LayerStylePlugin.js +14 -23
- package/es/plugins/LightingPlugin.js +26 -37
- package/es/plugins/MultiPassRendererPlugin.js +34 -39
- package/es/plugins/PixelPickingPlugin.js +129 -150
- package/es/plugins/RegisterStyleAttributePlugin.js +80 -96
- package/es/plugins/ShaderUniformPlugin.js +159 -131
- package/es/plugins/UpdateModelPlugin.js +16 -26
- package/es/plugins/UpdateStyleAttributePlugin.js +47 -65
- package/es/plugins/index.d.ts +1 -1
- package/es/point/index.js +118 -182
- package/es/point/models/billboard_point.js +72 -127
- package/es/point/models/earthExtrude.js +170 -220
- package/es/point/models/earthFill.js +136 -192
- package/es/point/models/extrude.js +167 -217
- package/es/point/models/fill.js +152 -209
- package/es/point/models/fillImage.js +156 -211
- package/es/point/models/image.js +127 -180
- package/es/point/models/index.js +1 -1
- package/es/point/models/normal.js +67 -122
- package/es/point/models/radar.js +93 -148
- package/es/point/models/text.js +447 -578
- package/es/point/shape/extrude.js +19 -25
- package/es/polygon/index.js +61 -99
- package/es/polygon/models/extrude.js +208 -281
- package/es/polygon/models/extrusion.js +95 -142
- package/es/polygon/models/fill.js +102 -153
- package/es/polygon/models/index.js +1 -1
- package/es/polygon/models/ocean.js +139 -198
- package/es/polygon/models/water.js +120 -179
- package/es/raster/buffers/triangulation.js +13 -11
- package/es/raster/index.js +47 -88
- package/es/raster/models/index.js +1 -1
- package/es/raster/models/raster.js +134 -202
- package/es/raster/models/rasterRgb.js +134 -208
- package/es/raster/models/rasterTerrainRgb.js +98 -153
- package/es/tile/core/BaseLayer.d.ts +1 -0
- package/es/tile/core/BaseLayer.js +206 -282
- package/es/tile/core/TileDebugLayer.js +12 -46
- package/es/tile/interaction/getRasterData.js +24 -30
- package/es/tile/interaction/utils.js +15 -33
- package/es/tile/service/TileLayerService.js +104 -177
- package/es/tile/service/TilePickService.js +99 -156
- package/es/tile/service/TileSourceService.js +17 -26
- package/es/tile/tile/DebugTile.js +41 -78
- package/es/tile/tile/ImageTile.js +33 -66
- package/es/tile/tile/MaskTile.js +47 -81
- package/es/tile/tile/RasterRGBTile.js +40 -71
- package/es/tile/tile/RasterTerrainRGBTile.js +33 -66
- package/es/tile/tile/RasterTile.js +69 -104
- package/es/tile/tile/Tile.d.ts +1 -1
- package/es/tile/tile/Tile.js +151 -232
- package/es/tile/tile/VectorTile.js +77 -124
- package/es/tile/tile/index.d.ts +1 -1
- package/es/tile/tile/index.js +4 -2
- package/es/tile/tile/util.d.ts +1 -1
- package/es/tile/utils/constants.js +1 -1
- package/es/tile/utils/utils.js +2 -2
- package/es/utils/blend.js +52 -46
- package/es/utils/collision-index.js +62 -70
- package/es/utils/extrude_polyline.js +441 -471
- package/es/utils/grid-index.js +97 -123
- package/es/utils/identityScale.js +5 -5
- package/es/utils/load-image.js +15 -39
- package/es/utils/multiPassRender.js +7 -9
- package/es/utils/polylineNormal.js +40 -42
- package/es/utils/rampcolor_legend.js +5 -3
- package/es/utils/simpleLine.js +53 -66
- package/es/utils/symbol-layout.js +95 -117
- package/es/wind/index.js +28 -70
- package/es/wind/models/index.js +1 -1
- package/es/wind/models/utils.js +36 -34
- package/es/wind/models/wind.js +203 -260
- package/es/wind/models/windRender.js +258 -269
- package/es/wind/models/windShader.js +145 -6
- package/lib/canvas/index.d.ts +18 -0
- package/lib/canvas/index.js +64 -113
- package/lib/canvas/models/canvas.d.ts +23 -0
- package/lib/canvas/models/canvas.js +97 -136
- package/lib/canvas/models/constants.d.ts +2 -0
- package/lib/canvas/models/constants.js +1 -1
- package/lib/canvas/models/index.d.ts +2 -0
- package/lib/canvas/models/index.js +2 -2
- package/lib/citybuliding/building.d.ts +7 -0
- package/lib/citybuliding/building.js +22 -58
- package/lib/citybuliding/models/build.d.ts +17 -0
- package/lib/citybuliding/models/build.js +144 -199
- package/lib/core/BaseLayer.d.ts +247 -0
- package/lib/core/BaseLayer.js +1115 -1412
- package/lib/core/BaseModel.d.ts +82 -0
- package/lib/core/BaseModel.js +263 -315
- package/lib/core/CommonStyleAttribute.d.ts +20 -0
- package/lib/core/CommonStyleAttribute.js +25 -18
- package/lib/core/LayerPickService.d.ts +12 -0
- package/lib/core/LayerPickService.js +93 -140
- package/lib/core/TextureService.d.ts +15 -0
- package/lib/core/TextureService.js +59 -68
- package/lib/core/constant.d.ts +6 -0
- package/lib/core/constant.js +2 -2
- package/lib/core/interface.d.ts +282 -0
- package/lib/core/interface.js +5 -5
- package/lib/core/line_trangluation.d.ts +19 -0
- package/lib/core/line_trangluation.js +38 -43
- package/lib/core/schema.d.ts +27 -0
- package/lib/core/shape/Path.d.ts +39 -0
- package/lib/core/shape/Path.js +21 -13
- package/lib/core/shape/arrow.d.ts +25 -0
- package/lib/core/shape/arrow.js +50 -62
- package/lib/core/shape/extrude.d.ts +17 -0
- package/lib/core/shape/extrude.js +54 -62
- package/lib/core/triangulation.d.ts +136 -0
- package/lib/core/triangulation.js +194 -174
- package/lib/core/utils.d.ts +4 -0
- package/lib/core/utils.js +5 -5
- package/lib/earth/index.d.ts +22 -0
- package/lib/earth/index.js +37 -73
- package/lib/earth/models/atmosphere.d.ts +15 -0
- package/lib/earth/models/atmosphere.js +100 -148
- package/lib/earth/models/base.d.ts +22 -0
- package/lib/earth/models/base.js +150 -201
- package/lib/earth/models/bloomsphere.d.ts +15 -0
- package/lib/earth/models/bloomsphere.js +99 -147
- package/lib/earth/utils.d.ts +26 -0
- package/lib/earth/utils.js +37 -39
- package/lib/geometry/index.d.ts +22 -0
- package/lib/geometry/index.js +38 -75
- package/lib/geometry/models/billboard.d.ts +24 -0
- package/lib/geometry/models/billboard.js +149 -204
- package/lib/geometry/models/index.d.ts +5 -0
- package/lib/geometry/models/index.js +1 -1
- package/lib/geometry/models/plane.d.ts +43 -0
- package/lib/geometry/models/plane.js +280 -357
- package/lib/geometry/models/sprite.d.ts +48 -0
- package/lib/geometry/models/sprite.js +184 -240
- package/lib/heatmap/index.d.ts +13 -0
- package/lib/heatmap/index.js +74 -121
- package/lib/heatmap/models/grid.d.ts +15 -0
- package/lib/heatmap/models/grid.js +68 -118
- package/lib/heatmap/models/grid3d.d.ts +15 -0
- package/lib/heatmap/models/grid3d.js +103 -151
- package/lib/heatmap/models/heatmap.d.ts +27 -0
- package/lib/heatmap/models/heatmap.js +400 -455
- package/lib/heatmap/models/hexagon.d.ts +15 -0
- package/lib/heatmap/models/hexagon.js +69 -119
- package/lib/heatmap/models/index.d.ts +5 -0
- package/lib/heatmap/models/index.js +1 -1
- package/lib/heatmap/triangulation.d.ts +5 -0
- package/lib/heatmap/triangulation.js +20 -20
- package/lib/image/index.d.ts +9 -0
- package/lib/image/index.js +25 -62
- package/lib/image/models/image.d.ts +17 -0
- package/lib/image/models/image.js +101 -163
- package/lib/image/models/index.d.ts +5 -0
- package/lib/image/models/index.js +1 -1
- package/lib/index.d.ts +18 -0
- package/lib/index.js +17 -17
- package/lib/line/index.d.ts +36 -0
- package/lib/line/index.js +67 -106
- package/lib/line/models/arc.d.ts +22 -0
- package/lib/line/models/arc.js +202 -248
- package/lib/line/models/arc_3d.d.ts +22 -0
- package/lib/line/models/arc_3d.js +193 -241
- package/lib/line/models/flow.d.ts +14 -0
- package/lib/line/models/flow.js +103 -153
- package/lib/line/models/great_circle.d.ts +17 -0
- package/lib/line/models/great_circle.js +185 -234
- package/lib/line/models/index.d.ts +5 -0
- package/lib/line/models/index.js +1 -1
- package/lib/line/models/line.d.ts +27 -0
- package/lib/line/models/line.js +232 -285
- package/lib/line/models/simple_line.d.ts +19 -0
- package/lib/line/models/simple_line.js +144 -192
- package/lib/line/models/wall.d.ts +17 -0
- package/lib/line/models/wall.js +223 -273
- package/lib/mask/index.d.ts +16 -0
- package/lib/mask/index.js +18 -53
- package/lib/mask/models/fill.d.ts +18 -0
- package/lib/mask/models/fill.js +53 -108
- package/lib/mask/models/index.d.ts +5 -0
- package/lib/mask/models/index.js +1 -1
- package/lib/plugins/DataMappingPlugin.d.ts +13 -0
- package/lib/plugins/DataMappingPlugin.js +206 -248
- package/lib/plugins/DataSourcePlugin.d.ts +6 -0
- package/lib/plugins/DataSourcePlugin.js +65 -91
- package/lib/plugins/FeatureScalePlugin.d.ts +20 -0
- package/lib/plugins/FeatureScalePlugin.js +261 -304
- package/lib/plugins/LayerAnimateStylePlugin.d.ts +4 -0
- package/lib/plugins/LayerAnimateStylePlugin.js +13 -21
- package/lib/plugins/LayerMaskPlugin.d.ts +7 -0
- package/lib/plugins/LayerMaskPlugin.js +16 -24
- package/lib/plugins/LayerModelPlugin.d.ts +10 -0
- package/lib/plugins/LayerModelPlugin.js +53 -135
- package/lib/plugins/LayerStylePlugin.d.ts +7 -0
- package/lib/plugins/LayerStylePlugin.js +15 -23
- package/lib/plugins/LightingPlugin.d.ts +35 -0
- package/lib/plugins/LightingPlugin.js +27 -36
- package/lib/plugins/MultiPassRendererPlugin.d.ts +22 -0
- package/lib/plugins/MultiPassRendererPlugin.js +35 -38
- package/lib/plugins/PixelPickingPlugin.d.ts +11 -0
- package/lib/plugins/PixelPickingPlugin.js +130 -149
- package/lib/plugins/RegisterStyleAttributePlugin.d.ts +11 -0
- package/lib/plugins/RegisterStyleAttributePlugin.js +81 -96
- package/lib/plugins/ShaderUniformPlugin.d.ts +22 -0
- package/lib/plugins/ShaderUniformPlugin.js +160 -130
- package/lib/plugins/UpdateModelPlugin.d.ts +7 -0
- package/lib/plugins/UpdateModelPlugin.js +17 -26
- package/lib/plugins/UpdateStyleAttributePlugin.d.ts +9 -0
- package/lib/plugins/UpdateStyleAttributePlugin.js +48 -65
- package/lib/plugins/index.d.ts +15 -0
- package/lib/point/index.d.ts +33 -0
- package/lib/point/index.js +120 -182
- package/lib/point/models/billboard_point.d.ts +21 -0
- package/lib/point/models/billboard_point.js +74 -127
- package/lib/point/models/earthExtrude.d.ts +16 -0
- package/lib/point/models/earthExtrude.js +172 -220
- package/lib/point/models/earthFill.d.ts +15 -0
- package/lib/point/models/earthFill.js +138 -192
- package/lib/point/models/extrude.d.ts +16 -0
- package/lib/point/models/extrude.js +169 -217
- package/lib/point/models/fill.d.ts +31 -0
- package/lib/point/models/fill.js +154 -209
- package/lib/point/models/fillImage.d.ts +26 -0
- package/lib/point/models/fillImage.js +159 -211
- package/lib/point/models/image.d.ts +18 -0
- package/lib/point/models/image.js +129 -180
- package/lib/point/models/index.d.ts +5 -0
- package/lib/point/models/index.js +1 -1
- package/lib/point/models/normal.d.ts +22 -0
- package/lib/point/models/normal.js +69 -122
- package/lib/point/models/radar.d.ts +22 -0
- package/lib/point/models/radar.js +95 -148
- package/lib/point/models/text.d.ts +69 -0
- package/lib/point/models/text.js +449 -578
- package/lib/point/shape/extrude.d.ts +15 -0
- package/lib/point/shape/extrude.js +19 -25
- package/lib/polygon/index.d.ts +18 -0
- package/lib/polygon/index.js +63 -99
- package/lib/polygon/models/extrude.d.ts +25 -0
- package/lib/polygon/models/extrude.js +210 -281
- package/lib/polygon/models/extrusion.d.ts +24 -0
- package/lib/polygon/models/extrusion.js +97 -142
- package/lib/polygon/models/fill.d.ts +18 -0
- package/lib/polygon/models/fill.js +104 -153
- package/lib/polygon/models/index.d.ts +5 -0
- package/lib/polygon/models/index.js +1 -1
- package/lib/polygon/models/ocean.d.ts +23 -0
- package/lib/polygon/models/ocean.js +141 -198
- package/lib/polygon/models/water.d.ts +21 -0
- package/lib/polygon/models/water.js +122 -179
- package/lib/raster/buffers/triangulation.d.ts +6 -0
- package/lib/raster/buffers/triangulation.js +13 -11
- package/lib/raster/index.d.ts +11 -0
- package/lib/raster/index.js +49 -88
- package/lib/raster/models/index.d.ts +5 -0
- package/lib/raster/models/index.js +1 -1
- package/lib/raster/models/raster.d.ts +21 -0
- package/lib/raster/models/raster.js +136 -202
- package/lib/raster/models/rasterRgb.d.ts +21 -0
- package/lib/raster/models/rasterRgb.js +136 -208
- package/lib/raster/models/rasterTerrainRgb.d.ts +16 -0
- package/lib/raster/models/rasterTerrainRgb.js +100 -153
- package/lib/tile/core/BaseLayer.d.ts +48 -0
- package/lib/tile/core/BaseLayer.js +207 -281
- package/lib/tile/core/TileDebugLayer.d.ts +15 -0
- package/lib/tile/core/TileDebugLayer.js +14 -46
- package/lib/tile/interaction/getFeatureData.d.ts +0 -0
- package/lib/tile/interaction/getRasterData.d.ts +4 -0
- package/lib/tile/interaction/getRasterData.js +24 -31
- package/lib/tile/interaction/utils.d.ts +11 -0
- package/lib/tile/interaction/utils.js +15 -34
- package/lib/tile/interface.d.ts +29 -0
- package/lib/tile/service/TileLayerService.d.ts +33 -0
- package/lib/tile/service/TileLayerService.js +105 -177
- package/lib/tile/service/TilePickService.d.ts +26 -0
- package/lib/tile/service/TilePickService.js +100 -156
- package/lib/tile/service/TileSourceService.d.ts +7 -0
- package/lib/tile/service/TileSourceService.js +20 -29
- package/lib/tile/tile/DebugTile.d.ts +16 -0
- package/lib/tile/tile/DebugTile.js +43 -78
- package/lib/tile/tile/ImageTile.d.ts +14 -0
- package/lib/tile/tile/ImageTile.js +35 -66
- package/lib/tile/tile/MaskTile.d.ts +18 -0
- package/lib/tile/tile/MaskTile.js +49 -81
- package/lib/tile/tile/RasterRGBTile.d.ts +11 -0
- package/lib/tile/tile/RasterRGBTile.js +42 -71
- package/lib/tile/tile/RasterTerrainRGBTile.d.ts +14 -0
- package/lib/tile/tile/RasterTerrainRGBTile.js +35 -66
- package/lib/tile/tile/RasterTile.d.ts +18 -0
- package/lib/tile/tile/RasterTile.js +71 -104
- package/lib/tile/tile/Tile.d.ts +114 -0
- package/lib/tile/tile/Tile.js +152 -231
- package/lib/tile/tile/VectorTile.d.ts +26 -0
- package/lib/tile/tile/VectorTile.js +79 -124
- package/lib/tile/tile/index.d.ts +12 -0
- package/lib/tile/tile/index.js +6 -4
- package/lib/tile/tile/util.d.ts +5 -0
- package/lib/tile/utils/constants.d.ts +1 -0
- package/lib/tile/utils/constants.js +1 -1
- package/lib/tile/utils/utils.d.ts +8 -0
- package/lib/tile/utils/utils.js +2 -2
- package/lib/utils/blend.d.ts +2 -0
- package/lib/utils/blend.js +52 -47
- package/lib/utils/collision-index.d.ts +47 -0
- package/lib/utils/collision-index.js +64 -69
- package/lib/utils/extrude_polyline.d.ts +68 -0
- package/lib/utils/extrude_polyline.js +442 -470
- package/lib/utils/grid-index.d.ts +28 -0
- package/lib/utils/grid-index.js +97 -123
- package/lib/utils/identityScale.d.ts +8 -0
- package/lib/utils/identityScale.js +5 -5
- package/lib/utils/load-image.d.ts +1 -0
- package/lib/utils/load-image.js +15 -39
- package/lib/utils/multiPassRender.d.ts +16 -0
- package/lib/utils/multiPassRender.js +7 -10
- package/lib/utils/polylineNormal.d.ts +9 -0
- package/lib/utils/polylineNormal.js +40 -43
- package/lib/utils/rampcolor_legend.d.ts +6 -0
- package/lib/utils/rampcolor_legend.js +5 -4
- package/lib/utils/simpleLine.d.ts +23 -0
- package/lib/utils/simpleLine.js +54 -65
- package/lib/utils/stencil.d.ts +7 -0
- package/lib/utils/symbol-layout.d.ts +43 -0
- package/lib/utils/symbol-layout.js +95 -117
- package/lib/wind/index.d.ts +11 -0
- package/lib/wind/index.js +30 -70
- package/lib/wind/models/index.d.ts +5 -0
- package/lib/wind/models/index.js +1 -1
- package/lib/wind/models/utils.d.ts +19 -0
- package/lib/wind/models/utils.js +36 -34
- package/lib/wind/models/wind.d.ts +24 -0
- package/lib/wind/models/wind.js +205 -260
- package/lib/wind/models/windRender.d.ts +104 -0
- package/lib/wind/models/windRender.js +261 -272
- package/lib/wind/models/windShader.d.ts +12 -0
- package/lib/wind/models/windShader.js +145 -6
- package/package.json +16 -19
- package/es/glsl.d.ts +0 -5
- package/lib/glsl.d.ts +0 -5
package/es/tile/tile/Tile.js
CHANGED
|
@@ -1,247 +1,166 @@
|
|
|
1
1
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
2
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
|
-
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
4
|
-
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
5
|
-
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
6
|
-
import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
|
|
7
|
-
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
8
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
9
|
-
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
10
3
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
11
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
12
|
-
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); }; }
|
|
13
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
14
4
|
import { createLayerContainer } from '@antv/l7-core';
|
|
15
5
|
import { EventEmitter } from 'eventemitter3';
|
|
16
6
|
import PolygonLayer from "../../polygon";
|
|
17
7
|
import { isNeedMask } from "./util";
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
_defineProperty(
|
|
26
|
-
_defineProperty(
|
|
27
|
-
_defineProperty(
|
|
28
|
-
_defineProperty(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
8
|
+
export default class Tile extends EventEmitter {
|
|
9
|
+
constructor(sourceTile, parent) {
|
|
10
|
+
super();
|
|
11
|
+
_defineProperty(this, "x", void 0);
|
|
12
|
+
_defineProperty(this, "y", void 0);
|
|
13
|
+
_defineProperty(this, "z", void 0);
|
|
14
|
+
_defineProperty(this, "key", void 0);
|
|
15
|
+
_defineProperty(this, "parent", void 0);
|
|
16
|
+
_defineProperty(this, "sourceTile", void 0);
|
|
17
|
+
_defineProperty(this, "visible", true);
|
|
18
|
+
_defineProperty(this, "layers", []);
|
|
19
|
+
_defineProperty(this, "isLoaded", false);
|
|
20
|
+
_defineProperty(this, "tileMaskLayers", []);
|
|
21
|
+
_defineProperty(this, "tileMask", void 0);
|
|
22
|
+
this.parent = parent;
|
|
23
|
+
this.sourceTile = sourceTile;
|
|
24
|
+
this.x = sourceTile.x;
|
|
25
|
+
this.y = sourceTile.y;
|
|
26
|
+
this.z = sourceTile.z;
|
|
27
|
+
this.key = `${this.x}_${this.y}_${this.z}`;
|
|
28
|
+
}
|
|
29
|
+
getLayers() {
|
|
30
|
+
return this.layers;
|
|
36
31
|
}
|
|
37
|
-
_createClass(Tile, [{
|
|
38
|
-
key: "getLayers",
|
|
39
|
-
value: function getLayers() {
|
|
40
|
-
return this.layers;
|
|
41
|
-
}
|
|
42
32
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
value: function getMaskLayer() {
|
|
79
|
-
var _this2 = this;
|
|
80
|
-
var _this$parent$getLayer = this.parent.getLayerConfig(),
|
|
81
|
-
maskLayers = _this$parent$getLayer.maskLayers;
|
|
82
|
-
var layers = [];
|
|
83
|
-
maskLayers === null || maskLayers === void 0 || maskLayers.forEach(function (layer) {
|
|
84
|
-
if (!layer.tileLayer) {
|
|
85
|
-
// 非瓦片图层返回图层本身,瓦片图层返回对应的行列号图层
|
|
86
|
-
layers.push(layer);
|
|
87
|
-
return layer;
|
|
88
|
-
}
|
|
89
|
-
var tileLayer = layer.tileLayer;
|
|
90
|
-
var tile = tileLayer.getTile(_this2.sourceTile.key);
|
|
91
|
-
var l = tile === null || tile === void 0 ? void 0 : tile.getLayers()[0];
|
|
92
|
-
if (l) {
|
|
93
|
-
layers.push(l);
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
return layers;
|
|
97
|
-
}
|
|
98
|
-
}, {
|
|
99
|
-
key: "addTileMask",
|
|
100
|
-
value: function () {
|
|
101
|
-
var _addTileMask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
102
|
-
var mask, container, mainLayer;
|
|
103
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
104
|
-
while (1) switch (_context.prev = _context.next) {
|
|
105
|
-
case 0:
|
|
106
|
-
mask = new PolygonLayer({
|
|
107
|
-
name: 'mask',
|
|
108
|
-
visible: true,
|
|
109
|
-
enablePicking: false
|
|
110
|
-
}).source({
|
|
111
|
-
type: 'FeatureCollection',
|
|
112
|
-
features: [this.sourceTile.bboxPolygon]
|
|
113
|
-
}, {
|
|
114
|
-
parser: {
|
|
115
|
-
type: 'geojson',
|
|
116
|
-
featureId: 'id'
|
|
117
|
-
}
|
|
118
|
-
}).shape('fill').color('#0f0').style({
|
|
119
|
-
opacity: 0.5
|
|
120
|
-
});
|
|
121
|
-
container = createLayerContainer(this.parent.container);
|
|
122
|
-
mask.setContainer(container);
|
|
123
|
-
_context.next = 5;
|
|
124
|
-
return mask.init();
|
|
125
|
-
case 5:
|
|
126
|
-
this.tileMask = mask;
|
|
127
|
-
mainLayer = this.getMainLayer();
|
|
128
|
-
if (mainLayer !== undefined) {
|
|
129
|
-
mainLayer.tileMask = mask;
|
|
130
|
-
}
|
|
131
|
-
return _context.abrupt("return", mask);
|
|
132
|
-
case 9:
|
|
133
|
-
case "end":
|
|
134
|
-
return _context.stop();
|
|
135
|
-
}
|
|
136
|
-
}, _callee, this);
|
|
137
|
-
}));
|
|
138
|
-
function addTileMask() {
|
|
139
|
-
return _addTileMask.apply(this, arguments);
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
+
styleUpdate(...arg) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
lnglatInBounds(lnglat) {
|
|
38
|
+
const [minLng, minLat, maxLng, maxLat] = this.sourceTile.bounds;
|
|
39
|
+
const {
|
|
40
|
+
lng,
|
|
41
|
+
lat
|
|
42
|
+
} = lnglat;
|
|
43
|
+
return lng >= minLng && lng <= maxLng && lat >= minLat && lat <= maxLat;
|
|
44
|
+
}
|
|
45
|
+
getLayerOptions() {
|
|
46
|
+
var _options$maskLayers;
|
|
47
|
+
const options = this.parent.getLayerConfig();
|
|
48
|
+
return _objectSpread(_objectSpread({}, options), {}, {
|
|
49
|
+
textAllowOverlap: true,
|
|
50
|
+
// 文本允许重叠
|
|
51
|
+
autoFit: false,
|
|
52
|
+
maskLayers: this.getMaskLayer(),
|
|
53
|
+
tileMask: isNeedMask(this.parent.type),
|
|
54
|
+
mask: options.mask || ((_options$maskLayers = options.maskLayers) === null || _options$maskLayers === void 0 ? void 0 : _options$maskLayers.length) !== 0 && options.enableMask
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
// 获取Mask 图层
|
|
58
|
+
getMaskLayer() {
|
|
59
|
+
const {
|
|
60
|
+
maskLayers
|
|
61
|
+
} = this.parent.getLayerConfig();
|
|
62
|
+
const layers = [];
|
|
63
|
+
maskLayers === null || maskLayers === void 0 || maskLayers.forEach(layer => {
|
|
64
|
+
if (!layer.tileLayer) {
|
|
65
|
+
// 非瓦片图层返回图层本身,瓦片图层返回对应的行列号图层
|
|
66
|
+
layers.push(layer);
|
|
67
|
+
return layer;
|
|
140
68
|
}
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
var _addMask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(layer, mask) {
|
|
147
|
-
var container;
|
|
148
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
149
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
150
|
-
case 0:
|
|
151
|
-
container = createLayerContainer(this.parent.container);
|
|
152
|
-
mask.setContainer(container);
|
|
153
|
-
_context2.next = 4;
|
|
154
|
-
return mask.init();
|
|
155
|
-
case 4:
|
|
156
|
-
layer.addMask(mask);
|
|
157
|
-
this.tileMaskLayers.push(mask);
|
|
158
|
-
case 6:
|
|
159
|
-
case "end":
|
|
160
|
-
return _context2.stop();
|
|
161
|
-
}
|
|
162
|
-
}, _callee2, this);
|
|
163
|
-
}));
|
|
164
|
-
function addMask(_x, _x2) {
|
|
165
|
-
return _addMask.apply(this, arguments);
|
|
69
|
+
const tileLayer = layer.tileLayer;
|
|
70
|
+
const tile = tileLayer.getTile(this.sourceTile.key);
|
|
71
|
+
const l = tile === null || tile === void 0 ? void 0 : tile.getLayers()[0];
|
|
72
|
+
if (l) {
|
|
73
|
+
layers.push(l);
|
|
166
74
|
}
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
75
|
+
});
|
|
76
|
+
return layers;
|
|
77
|
+
}
|
|
78
|
+
addTileMask() {
|
|
79
|
+
var _this = this;
|
|
80
|
+
return _asyncToGenerator(function* () {
|
|
81
|
+
const mask = new PolygonLayer({
|
|
82
|
+
name: 'mask',
|
|
83
|
+
visible: true,
|
|
84
|
+
enablePicking: false
|
|
85
|
+
}).source({
|
|
86
|
+
type: 'FeatureCollection',
|
|
87
|
+
features: [_this.sourceTile.bboxPolygon]
|
|
88
|
+
}, {
|
|
89
|
+
parser: {
|
|
90
|
+
type: 'geojson',
|
|
91
|
+
featureId: 'id'
|
|
92
|
+
}
|
|
93
|
+
}).shape('fill').color('#0f0').style({
|
|
94
|
+
opacity: 0.5
|
|
95
|
+
});
|
|
96
|
+
const container = createLayerContainer(_this.parent.container);
|
|
97
|
+
mask.setContainer(container);
|
|
98
|
+
yield mask.init();
|
|
99
|
+
_this.tileMask = mask;
|
|
100
|
+
const mainLayer = _this.getMainLayer();
|
|
101
|
+
if (mainLayer !== undefined) {
|
|
102
|
+
mainLayer.tileMask = mask;
|
|
192
103
|
}
|
|
193
|
-
return
|
|
194
|
-
}()
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
104
|
+
return mask;
|
|
105
|
+
})();
|
|
106
|
+
}
|
|
107
|
+
// 全局 Mask
|
|
108
|
+
addMask(layer, mask) {
|
|
109
|
+
var _this2 = this;
|
|
110
|
+
return _asyncToGenerator(function* () {
|
|
111
|
+
const container = createLayerContainer(_this2.parent.container);
|
|
112
|
+
mask.setContainer(container);
|
|
113
|
+
yield mask.init();
|
|
114
|
+
layer.addMask(mask);
|
|
115
|
+
_this2.tileMaskLayers.push(mask);
|
|
116
|
+
})();
|
|
117
|
+
}
|
|
118
|
+
addLayer(layer) {
|
|
119
|
+
var _this3 = this;
|
|
120
|
+
return _asyncToGenerator(function* () {
|
|
121
|
+
// set flag
|
|
122
|
+
layer.isTileLayer = true;
|
|
123
|
+
const container = createLayerContainer(_this3.parent.container);
|
|
124
|
+
layer.setContainer(container);
|
|
125
|
+
_this3.layers.push(layer);
|
|
126
|
+
yield layer.init();
|
|
127
|
+
})();
|
|
128
|
+
}
|
|
129
|
+
updateVisible(value) {
|
|
130
|
+
this.visible = value;
|
|
131
|
+
this.updateOptions('visible', value);
|
|
132
|
+
}
|
|
133
|
+
updateOptions(key, value) {
|
|
134
|
+
this.layers.forEach(l => {
|
|
135
|
+
l.updateLayerConfig({
|
|
136
|
+
[key]: value
|
|
206
137
|
});
|
|
207
|
-
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
208
140
|
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
}
|
|
219
|
-
key: "getFeatures",
|
|
220
|
-
value: function getFeatures(sourceLayer) {
|
|
221
|
-
return [];
|
|
222
|
-
}
|
|
141
|
+
/**
|
|
142
|
+
* 一个 Tile 可能有多个 layer,但是在发生拾取、点击事件的时候只有一个生效
|
|
143
|
+
*/
|
|
144
|
+
getMainLayer() {
|
|
145
|
+
return this.layers[0];
|
|
146
|
+
}
|
|
147
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
148
|
+
getFeatures(sourceLayer) {
|
|
149
|
+
return [];
|
|
150
|
+
}
|
|
223
151
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
(_this$tileMask = this.tileMask) === null || _this$tileMask === void 0 || _this$tileMask.destroy();
|
|
240
|
-
this.layers.forEach(function (layer) {
|
|
241
|
-
return layer.destroy();
|
|
242
|
-
});
|
|
243
|
-
}
|
|
244
|
-
}]);
|
|
245
|
-
return Tile;
|
|
246
|
-
}(EventEmitter);
|
|
247
|
-
export { Tile as default };
|
|
152
|
+
/**
|
|
153
|
+
* 在一个 Tile 中可能存在一个相同 ID 的 feature
|
|
154
|
+
* @param id
|
|
155
|
+
* @returns
|
|
156
|
+
*/
|
|
157
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
158
|
+
getFeatureById(id) {
|
|
159
|
+
return [];
|
|
160
|
+
}
|
|
161
|
+
destroy() {
|
|
162
|
+
var _this$tileMask;
|
|
163
|
+
(_this$tileMask = this.tileMask) === null || _this$tileMask === void 0 || _this$tileMask.destroy();
|
|
164
|
+
this.layers.forEach(layer => layer.destroy());
|
|
165
|
+
}
|
|
166
|
+
}
|
|
@@ -1,134 +1,87 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
2
|
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
3
|
-
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
4
|
-
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
5
|
-
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
6
|
-
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
7
|
-
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
8
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
9
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
10
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
11
3
|
import Tile from "./Tile";
|
|
12
4
|
import { getTileLayer } from "./util";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
case 8:
|
|
40
|
-
layer = new vectorLayer(_objectSpread({}, layerOptions)).source(sourceOptions.data, sourceOptions.options); // 初始化数据映射
|
|
41
|
-
Object.keys(attributes).forEach(function (type) {
|
|
42
|
-
var _attributes$attr, _attributes$attr2;
|
|
43
|
-
var attr = type;
|
|
44
|
-
// @ts-ignore
|
|
45
|
-
layer[attr]((_attributes$attr = attributes[attr]) === null || _attributes$attr === void 0 ? void 0 : _attributes$attr.field, (_attributes$attr2 = attributes[attr]) === null || _attributes$attr2 === void 0 ? void 0 : _attributes$attr2.values);
|
|
46
|
-
});
|
|
47
|
-
_context.next = 12;
|
|
48
|
-
return this.addLayer(layer);
|
|
49
|
-
case 12:
|
|
50
|
-
if (!layerOptions.tileMask) {
|
|
51
|
-
_context.next = 15;
|
|
52
|
-
break;
|
|
53
|
-
}
|
|
54
|
-
_context.next = 15;
|
|
55
|
-
return this.addTileMask();
|
|
56
|
-
case 15:
|
|
57
|
-
this.setLayerMinMaxZoom(layer);
|
|
58
|
-
this.isLoaded = true;
|
|
59
|
-
this.emit('loaded');
|
|
60
|
-
case 18:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context.stop();
|
|
63
|
-
}
|
|
64
|
-
}, _callee, this);
|
|
65
|
-
}));
|
|
66
|
-
function initTileLayer() {
|
|
67
|
-
return _initTileLayer.apply(this, arguments);
|
|
5
|
+
export default class VectorTile extends Tile {
|
|
6
|
+
initTileLayer() {
|
|
7
|
+
var _this = this;
|
|
8
|
+
return _asyncToGenerator(function* () {
|
|
9
|
+
const attributes = _this.parent.getLayerAttributeConfig();
|
|
10
|
+
const layerOptions = _this.getLayerOptions();
|
|
11
|
+
const vectorLayer = getTileLayer(_this.parent.type);
|
|
12
|
+
const sourceOptions = _this.getSourceOption();
|
|
13
|
+
if (!sourceOptions) {
|
|
14
|
+
_this.isLoaded = true;
|
|
15
|
+
_this.emit('loaded');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const layer = new vectorLayer(_objectSpread({}, layerOptions)).source(sourceOptions.data, sourceOptions.options);
|
|
19
|
+
|
|
20
|
+
// 初始化数据映射
|
|
21
|
+
Object.keys(attributes).forEach(type => {
|
|
22
|
+
var _attributes$attr, _attributes$attr2;
|
|
23
|
+
const attr = type;
|
|
24
|
+
// @ts-ignore
|
|
25
|
+
layer[attr]((_attributes$attr = attributes[attr]) === null || _attributes$attr === void 0 ? void 0 : _attributes$attr.field, (_attributes$attr2 = attributes[attr]) === null || _attributes$attr2 === void 0 ? void 0 : _attributes$attr2.values);
|
|
26
|
+
});
|
|
27
|
+
yield _this.addLayer(layer);
|
|
28
|
+
if (layerOptions.tileMask) {
|
|
29
|
+
// 瓦片数据裁剪
|
|
30
|
+
yield _this.addTileMask();
|
|
68
31
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
32
|
+
_this.setLayerMinMaxZoom(layer);
|
|
33
|
+
_this.isLoaded = true;
|
|
34
|
+
_this.emit('loaded');
|
|
35
|
+
})();
|
|
36
|
+
}
|
|
37
|
+
getSourceOption() {
|
|
38
|
+
const rawSource = this.parent.getSource();
|
|
39
|
+
const {
|
|
40
|
+
sourceLayer = 'defaultLayer',
|
|
41
|
+
featureId = 'id'
|
|
42
|
+
} = this.parent.getLayerConfig();
|
|
43
|
+
const features = this.getFeatures(sourceLayer);
|
|
44
|
+
return {
|
|
45
|
+
data: {
|
|
46
|
+
type: 'FeatureCollection',
|
|
47
|
+
features
|
|
48
|
+
},
|
|
49
|
+
options: {
|
|
50
|
+
parser: {
|
|
51
|
+
type: 'geojson',
|
|
52
|
+
featureId
|
|
85
53
|
},
|
|
86
|
-
|
|
87
|
-
parser: {
|
|
88
|
-
type: 'geojson',
|
|
89
|
-
featureId: featureId
|
|
90
|
-
},
|
|
91
|
-
transforms: rawSource.transforms
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
}
|
|
95
|
-
}, {
|
|
96
|
-
key: "setLayerMinMaxZoom",
|
|
97
|
-
value: function setLayerMinMaxZoom(layer) {
|
|
98
|
-
// 文本图层设置,可见范围
|
|
99
|
-
if (layer.getModelType() === 'text') {
|
|
100
|
-
layer.updateLayerConfig({
|
|
101
|
-
maxZoom: this.z + 1,
|
|
102
|
-
minZoom: this.z - 1
|
|
103
|
-
});
|
|
54
|
+
transforms: rawSource.transforms
|
|
104
55
|
}
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
setLayerMinMaxZoom(layer) {
|
|
59
|
+
// 文本图层设置,可见范围
|
|
60
|
+
if (layer.getModelType() === 'text') {
|
|
61
|
+
layer.updateLayerConfig({
|
|
62
|
+
maxZoom: this.z + 1,
|
|
63
|
+
minZoom: this.z - 1
|
|
64
|
+
});
|
|
105
65
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
key: "getFeatures",
|
|
109
|
-
value: function getFeatures(sourceLayer) {
|
|
110
|
-
var source = this.sourceTile.data;
|
|
111
|
-
return source.getTileData(sourceLayer);
|
|
112
|
-
}
|
|
66
|
+
}
|
|
67
|
+
// 获取瓦片数据
|
|
113
68
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
});
|
|
129
|
-
return res;
|
|
69
|
+
getFeatures(sourceLayer) {
|
|
70
|
+
const source = this.sourceTile.data;
|
|
71
|
+
return source.getTileData(sourceLayer);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* 在一个 Tile 中可能存在一个相同 ID 的 feature
|
|
76
|
+
* @param id
|
|
77
|
+
* @returns
|
|
78
|
+
*/
|
|
79
|
+
getFeatureById(id) {
|
|
80
|
+
const layer = this.getMainLayer();
|
|
81
|
+
if (!layer) {
|
|
82
|
+
return [];
|
|
130
83
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
}
|
|
134
|
-
|
|
84
|
+
const res = layer.getSource().data.dataArray.filter(d => d._id === id);
|
|
85
|
+
return res;
|
|
86
|
+
}
|
|
87
|
+
}
|
package/es/tile/tile/index.d.ts
CHANGED
|
@@ -7,6 +7,6 @@ import RasterTerrainRGBTile from './RasterTerrainRGBTile';
|
|
|
7
7
|
import RasterTile from './RasterTile';
|
|
8
8
|
import VectorTile from './VectorTile';
|
|
9
9
|
export type TileType = 'VectorTile' | 'DebugTile' | 'PolygonLayer' | 'PointLayer' | 'LineLayer' | 'RasterLayer' | 'image' | 'MaskLayer' | 'TileDebugLayer';
|
|
10
|
-
export declare function getTileFactory(layer: ILayer): typeof
|
|
10
|
+
export declare function getTileFactory(layer: ILayer): typeof VectorTile | typeof DebugTile | typeof MaskLayer | typeof RasterRGBTile | typeof RasterTile | typeof RasterTerrainRGBTile | typeof ImageTile;
|
|
11
11
|
export * from '../interface';
|
|
12
12
|
export * from './Tile';
|
package/es/tile/tile/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import RasterTerrainRGBTile from "./RasterTerrainRGBTile";
|
|
|
7
7
|
import RasterTile from "./RasterTile";
|
|
8
8
|
import VectorTile from "./VectorTile";
|
|
9
9
|
export function getTileFactory(layer) {
|
|
10
|
-
|
|
10
|
+
const tileType = layer.type;
|
|
11
11
|
switch (tileType) {
|
|
12
12
|
case 'PolygonLayer':
|
|
13
13
|
return VectorTile;
|
|
@@ -20,7 +20,9 @@ export function getTileFactory(layer) {
|
|
|
20
20
|
case 'MaskLayer':
|
|
21
21
|
return MaskLayer;
|
|
22
22
|
case 'RasterLayer':
|
|
23
|
-
|
|
23
|
+
const {
|
|
24
|
+
dataType
|
|
25
|
+
} = layer.getSource().parser;
|
|
24
26
|
switch (dataType) {
|
|
25
27
|
case RasterTileType.RGB:
|
|
26
28
|
case RasterTileType.CUSTOMRGB:
|
package/es/tile/tile/util.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import LineLayer from '../../line';
|
|
2
2
|
import PointLayer from '../../point/index';
|
|
3
3
|
import PolygonLayer from '../../polygon';
|
|
4
|
-
export declare function getTileLayer(type: string): typeof
|
|
4
|
+
export declare function getTileLayer(type: string): typeof PolygonLayer | typeof LineLayer | typeof PointLayer;
|
|
5
5
|
export declare function isNeedMask(type: string): boolean;
|