@antv/l7-layers 2.10.3 → 2.10.4
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 +3 -2
- package/es/Geometry/index.js +17 -27
- package/es/Geometry/models/billboard.d.ts +2 -2
- package/es/Geometry/models/billboard.js +37 -77
- package/es/Geometry/models/plane.d.ts +2 -2
- package/es/Geometry/models/plane.js +40 -80
- package/es/Geometry/models/sprite.d.ts +2 -2
- package/es/Geometry/models/sprite.js +45 -83
- package/es/canvas/index.d.ts +3 -2
- package/es/canvas/index.js +19 -29
- package/es/canvas/models/canvas.d.ts +2 -2
- package/es/canvas/models/canvas.js +15 -54
- package/es/citybuliding/building.d.ts +3 -2
- package/es/citybuliding/building.js +17 -26
- package/es/citybuliding/models/build.d.ts +2 -2
- package/es/citybuliding/models/build.js +25 -70
- package/es/core/BaseLayer.d.ts +18 -21
- package/es/core/BaseLayer.js +274 -385
- package/es/core/BaseModel.d.ts +2 -2
- package/es/core/BaseModel.js +6 -47
- package/es/core/triangulation.js +1 -8
- package/es/earth/index.d.ts +2 -2
- package/es/earth/index.js +9 -28
- package/es/earth/models/atmosphere.d.ts +2 -2
- package/es/earth/models/atmosphere.js +22 -67
- package/es/earth/models/base.d.ts +2 -2
- package/es/earth/models/base.js +43 -89
- package/es/earth/models/bloomsphere.d.ts +2 -2
- package/es/earth/models/bloomsphere.js +22 -67
- package/es/heatmap/index.d.ts +3 -2
- package/es/heatmap/index.js +22 -33
- package/es/heatmap/models/grid.d.ts +2 -2
- package/es/heatmap/models/grid.js +27 -68
- package/es/heatmap/models/grid3d.d.ts +2 -2
- package/es/heatmap/models/grid3d.js +28 -69
- package/es/heatmap/models/heatmap.d.ts +2 -2
- package/es/heatmap/models/heatmap.js +14 -40
- package/es/heatmap/models/hexagon.d.ts +2 -2
- package/es/heatmap/models/hexagon.js +28 -69
- package/es/image/index.d.ts +3 -2
- package/es/image/index.js +17 -27
- package/es/image/models/dataImage.d.ts +2 -2
- package/es/image/models/dataImage.js +54 -93
- package/es/image/models/image.d.ts +2 -2
- package/es/image/models/image.js +67 -108
- package/es/image/models/tileDataImage.d.ts +2 -2
- package/es/image/models/tileDataImage.js +43 -84
- package/es/index.d.ts +2 -2
- package/es/index.js +2 -2
- package/es/line/index.d.ts +4 -5
- package/es/line/index.js +25 -51
- package/es/line/models/arc.d.ts +2 -2
- package/es/line/models/arc.js +38 -73
- package/es/line/models/arc_3d.d.ts +2 -2
- package/es/line/models/arc_3d.js +34 -69
- package/es/line/models/earthArc_3d.d.ts +2 -2
- package/es/line/models/earthArc_3d.js +37 -72
- package/es/line/models/great_circle.d.ts +2 -2
- package/es/line/models/great_circle.js +29 -70
- package/es/line/models/half.d.ts +2 -2
- package/es/line/models/half.js +17 -40
- package/es/line/models/index.d.ts +1 -1
- package/es/line/models/index.js +2 -0
- package/es/line/models/line.d.ts +2 -2
- package/es/line/models/line.js +47 -79
- package/es/line/models/linearline.d.ts +2 -2
- package/es/line/models/linearline.js +31 -70
- package/es/line/models/simpleLine.d.ts +2 -2
- package/es/line/models/simpleLine.js +34 -71
- package/es/line/models/simpleTileLine.d.ts +2 -2
- package/es/line/models/simpleTileLine.js +30 -70
- package/es/line/models/tile.d.ts +2 -2
- package/es/line/models/tile.js +17 -40
- package/es/line/models/wall.d.ts +2 -2
- package/es/line/models/wall.js +22 -67
- package/es/mask/index.d.ts +4 -2
- package/es/mask/index.js +97 -27
- package/es/mask/models/fill.d.ts +2 -2
- package/es/mask/models/fill.js +16 -40
- package/es/mask/models/index.d.ts +1 -1
- package/es/mask/models/index.js +3 -1
- package/es/plugins/DataMappingPlugin.d.ts +2 -0
- package/es/plugins/DataMappingPlugin.js +152 -90
- package/es/plugins/DataSourcePlugin.js +30 -74
- package/es/plugins/FeatureScalePlugin.d.ts +1 -0
- package/es/plugins/FeatureScalePlugin.js +61 -85
- package/es/plugins/LayerModelPlugin.d.ts +2 -2
- package/es/plugins/LayerModelPlugin.js +37 -121
- package/es/plugins/LayerStylePlugin.js +6 -1
- package/es/plugins/MultiPassRendererPlugin.js +1 -1
- package/es/plugins/PixelPickingPlugin.js +1 -1
- package/es/plugins/RegisterStyleAttributePlugin.js +16 -1
- package/es/plugins/UpdateModelPlugin.js +0 -3
- package/es/plugins/UpdateStyleAttributePlugin.js +6 -3
- package/es/point/index.d.ts +4 -4
- package/es/point/index.js +23 -55
- package/es/point/models/earthExtrude.d.ts +2 -2
- package/es/point/models/earthExtrude.js +30 -73
- package/es/point/models/earthFill.d.ts +2 -2
- package/es/point/models/earthFill.js +21 -66
- package/es/point/models/extrude.d.ts +2 -2
- package/es/point/models/extrude.js +17 -40
- package/es/point/models/fill.d.ts +2 -2
- package/es/point/models/fill.js +20 -43
- package/es/point/models/fillmage.d.ts +2 -2
- package/es/point/models/fillmage.js +43 -82
- package/es/point/models/image.d.ts +2 -2
- package/es/point/models/image.js +31 -72
- package/es/point/models/index.d.ts +1 -1
- package/es/point/models/index.js +2 -0
- package/es/point/models/normal.d.ts +2 -2
- package/es/point/models/normal.js +30 -71
- package/es/point/models/radar.d.ts +2 -2
- package/es/point/models/radar.js +35 -75
- package/es/point/models/simplePoint.d.ts +2 -2
- package/es/point/models/simplePoint.js +29 -70
- package/es/point/models/text.d.ts +2 -3
- package/es/point/models/text.js +110 -183
- package/es/point/models/tile.d.ts +2 -2
- package/es/point/models/tile.js +35 -77
- package/es/point/models/tileText.d.ts +2 -2
- package/es/point/models/tileText.js +116 -151
- package/es/polygon/index.d.ts +3 -2
- package/es/polygon/index.js +24 -27
- package/es/polygon/models/extrude.d.ts +2 -2
- package/es/polygon/models/extrude.js +32 -69
- package/es/polygon/models/fill.d.ts +2 -2
- package/es/polygon/models/fill.js +43 -76
- package/es/polygon/models/index.d.ts +1 -1
- package/es/polygon/models/index.js +2 -0
- package/es/polygon/models/ocean.d.ts +2 -2
- package/es/polygon/models/ocean.js +28 -69
- package/es/polygon/models/tile.d.ts +2 -2
- package/es/polygon/models/tile.js +30 -70
- package/es/polygon/models/water.d.ts +2 -2
- package/es/polygon/models/water.js +28 -69
- package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -1
- package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +2 -1
- package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +2 -1
- package/es/raster/index.d.ts +4 -3
- package/es/raster/index.js +22 -28
- package/es/raster/models/index.d.ts +1 -1
- package/es/raster/models/index.js +3 -1
- package/es/raster/models/raster.d.ts +2 -2
- package/es/raster/models/raster.js +13 -36
- package/es/raster/models/rasterRgb.d.ts +2 -2
- package/es/raster/models/rasterRgb.js +13 -36
- package/es/raster/models/rasterTile.d.ts +2 -2
- package/es/raster/models/rasterTile.js +36 -77
- package/es/raster/raster.d.ts +1 -1
- package/es/raster/raster.js +22 -42
- package/es/tile/interaction/TilePickService.d.ts +16 -0
- package/es/tile/interaction/TilePickService.js +129 -0
- package/es/tile/interaction/getRasterData.d.ts +2 -2
- package/es/tile/interaction/utils.js +11 -3
- package/es/tile/interface.d.ts +4 -5
- package/es/tile/manager/base.d.ts +12 -17
- package/es/tile/manager/base.js +47 -212
- package/es/tile/manager/layerManager.d.ts +19 -0
- package/es/tile/manager/layerManager.js +254 -0
- package/es/tile/manager/mapLayerManager.d.ts +7 -0
- package/es/tile/manager/mapLayerManager.js +119 -0
- package/es/tile/models/tileModel.d.ts +10 -0
- package/es/tile/models/tileModel.js +81 -0
- package/es/tile/render/TileRenderService.d.ts +10 -0
- package/es/tile/render/TileRenderService.js +68 -0
- package/es/tile/style/TileStyleService.d.ts +17 -0
- package/es/tile/style/TileStyleService.js +118 -0
- package/es/tile/style/constants.d.ts +13 -1
- package/es/tile/style/constants.js +15 -6
- package/es/tile/style/utils.d.ts +8 -1
- package/es/tile/style/utils.js +126 -0
- package/es/tile/tileFactory/base.d.ts +45 -0
- package/es/tile/tileFactory/base.js +403 -0
- package/es/tile/tileFactory/index.d.ts +4 -10
- package/es/tile/tileFactory/index.js +23 -30
- package/es/tile/tileFactory/layers/{RasterDataLayer.d.ts → rasterDataLayer.d.ts} +3 -3
- package/es/tile/tileFactory/layers/{RasterDataLayer.js → rasterDataLayer.js} +21 -33
- package/es/tile/tileFactory/layers/{TileDebugLayer.d.ts → tileTest.d.ts} +2 -2
- package/es/tile/tileFactory/layers/{TileDebugLayer.js → tileTest.js} +10 -23
- package/es/tile/tileFactory/layers/vectorLayer.d.ts +30 -0
- package/es/tile/tileFactory/layers/vectorLayer.js +253 -0
- package/es/tile/tileFactory/line.d.ts +12 -0
- package/es/tile/tileFactory/line.js +59 -0
- package/es/tile/tileFactory/mask.d.ts +12 -0
- package/es/tile/tileFactory/mask.js +60 -0
- package/es/tile/tileFactory/point.d.ts +12 -0
- package/es/tile/tileFactory/point.js +60 -0
- package/es/tile/tileFactory/polygon.d.ts +12 -0
- package/es/tile/tileFactory/polygon.js +59 -0
- package/es/tile/tileFactory/raster.d.ts +12 -0
- package/es/tile/tileFactory/raster.js +55 -0
- package/es/tile/tileFactory/rasterData.d.ts +12 -0
- package/es/tile/tileFactory/rasterData.js +81 -0
- package/es/tile/tileFactory/test.d.ts +12 -0
- package/es/tile/tileFactory/test.js +94 -0
- package/es/tile/tileLayer/MapTileLayer.d.ts +6 -0
- package/es/tile/tileLayer/MapTileLayer.js +48 -0
- package/es/tile/tileLayer/TileLayer.d.ts +22 -0
- package/es/tile/tileLayer/TileLayer.js +198 -0
- package/es/tile/tileLayer/base.d.ts +33 -0
- package/es/tile/tileLayer/base.js +212 -0
- package/es/tile/utils.d.ts +11 -1
- package/es/tile/utils.js +129 -0
- package/es/utils/dataMappingStyle.d.ts +4 -4
- package/es/utils/dataMappingStyle.js +18 -16
- package/es/utils/layerData.js +11 -5
- package/es/wind/index.d.ts +3 -2
- package/es/wind/index.js +17 -27
- package/es/wind/models/wind.d.ts +2 -2
- package/es/wind/models/wind.js +104 -123
- package/lib/Geometry/index.js +17 -29
- package/lib/Geometry/models/billboard.js +37 -79
- package/lib/Geometry/models/plane.js +40 -82
- package/lib/Geometry/models/sprite.js +45 -85
- package/lib/canvas/index.js +19 -31
- package/lib/canvas/models/canvas.js +15 -56
- package/lib/citybuliding/building.js +17 -28
- package/lib/citybuliding/models/build.js +25 -72
- package/lib/core/BaseLayer.js +269 -385
- package/lib/core/BaseModel.js +6 -48
- package/lib/core/triangulation.js +1 -8
- package/lib/earth/index.js +9 -30
- package/lib/earth/models/atmosphere.js +22 -69
- package/lib/earth/models/base.js +42 -90
- package/lib/earth/models/bloomsphere.js +22 -69
- package/lib/heatmap/index.js +22 -35
- package/lib/heatmap/models/grid.js +27 -70
- package/lib/heatmap/models/grid3d.js +28 -71
- package/lib/heatmap/models/heatmap.js +14 -40
- package/lib/heatmap/models/hexagon.js +28 -71
- package/lib/image/index.js +17 -29
- package/lib/image/models/dataImage.js +54 -95
- package/lib/image/models/image.js +67 -110
- package/lib/image/models/tileDataImage.js +43 -86
- package/lib/index.js +5 -5
- package/lib/line/index.js +26 -53
- package/lib/line/models/arc.js +38 -75
- package/lib/line/models/arc_3d.js +34 -71
- package/lib/line/models/earthArc_3d.js +37 -74
- package/lib/line/models/great_circle.js +29 -72
- package/lib/line/models/half.js +17 -40
- package/lib/line/models/index.js +3 -0
- package/lib/line/models/line.js +47 -81
- package/lib/line/models/linearline.js +31 -72
- package/lib/line/models/simpleLine.js +34 -73
- package/lib/line/models/simpleTileLine.js +30 -72
- package/lib/line/models/tile.js +17 -40
- package/lib/line/models/wall.js +22 -69
- package/lib/mask/index.js +99 -28
- package/lib/mask/models/fill.js +16 -40
- package/lib/mask/models/index.js +4 -1
- package/lib/plugins/DataMappingPlugin.js +149 -91
- package/lib/plugins/DataSourcePlugin.js +30 -76
- package/lib/plugins/FeatureScalePlugin.js +61 -87
- package/lib/plugins/LayerModelPlugin.js +41 -128
- package/lib/plugins/LayerStylePlugin.js +6 -1
- package/lib/plugins/MultiPassRendererPlugin.js +1 -1
- package/lib/plugins/PixelPickingPlugin.js +1 -1
- package/lib/plugins/RegisterStyleAttributePlugin.js +16 -1
- package/lib/plugins/UpdateModelPlugin.js +0 -3
- package/lib/plugins/UpdateStyleAttributePlugin.js +6 -3
- package/lib/point/index.js +24 -56
- package/lib/point/models/earthExtrude.js +30 -75
- package/lib/point/models/earthFill.js +21 -68
- package/lib/point/models/extrude.js +17 -40
- package/lib/point/models/fill.js +21 -44
- package/lib/point/models/fillmage.js +43 -84
- package/lib/point/models/image.js +31 -74
- package/lib/point/models/index.js +3 -0
- package/lib/point/models/normal.js +30 -73
- package/lib/point/models/radar.js +35 -77
- package/lib/point/models/simplePoint.js +29 -72
- package/lib/point/models/text.js +109 -183
- package/lib/point/models/tile.js +35 -79
- package/lib/point/models/tileText.js +115 -151
- package/lib/polygon/index.js +25 -29
- package/lib/polygon/models/extrude.js +32 -71
- package/lib/polygon/models/fill.js +43 -78
- package/lib/polygon/models/index.js +3 -0
- package/lib/polygon/models/ocean.js +28 -71
- package/lib/polygon/models/tile.js +30 -72
- package/lib/polygon/models/water.js +28 -71
- package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +2 -1
- package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +2 -1
- package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +2 -1
- package/lib/raster/index.js +22 -30
- package/lib/raster/models/index.js +4 -1
- package/lib/raster/models/raster.js +13 -36
- package/lib/raster/models/rasterRgb.js +13 -36
- package/lib/raster/models/rasterTile.js +36 -79
- package/lib/raster/raster.js +22 -44
- package/lib/tile/interaction/TilePickService.js +143 -0
- package/lib/tile/interaction/utils.js +11 -3
- package/lib/tile/manager/base.js +47 -213
- package/lib/tile/manager/layerManager.js +275 -0
- package/lib/tile/manager/mapLayerManager.js +134 -0
- package/lib/tile/models/tileModel.js +94 -0
- package/lib/tile/render/TileRenderService.js +78 -0
- package/lib/tile/style/TileStyleService.js +133 -0
- package/lib/tile/style/constants.js +19 -8
- package/lib/tile/style/utils.js +140 -0
- package/lib/tile/tileFactory/base.js +427 -0
- package/lib/tile/tileFactory/index.js +24 -42
- package/lib/tile/tileFactory/layers/{RasterDataLayer.js → rasterDataLayer.js} +21 -35
- package/lib/tile/tileFactory/layers/{TileDebugLayer.js → tileTest.js} +11 -24
- package/lib/tile/tileFactory/layers/vectorLayer.js +268 -0
- package/lib/tile/tileFactory/line.js +70 -0
- package/lib/tile/tileFactory/mask.js +71 -0
- package/lib/tile/tileFactory/point.js +71 -0
- package/lib/tile/tileFactory/polygon.js +70 -0
- package/lib/tile/tileFactory/raster.js +68 -0
- package/lib/tile/tileFactory/rasterData.js +93 -0
- package/lib/tile/tileFactory/test.js +106 -0
- package/lib/tile/tileLayer/MapTileLayer.js +63 -0
- package/lib/tile/tileLayer/TileLayer.js +215 -0
- package/lib/tile/tileLayer/base.js +225 -0
- package/lib/tile/utils.js +148 -0
- package/lib/utils/dataMappingStyle.js +20 -18
- package/lib/utils/layerData.js +10 -4
- package/lib/wind/index.js +17 -29
- package/lib/wind/models/wind.js +104 -125
- package/package.json +7 -7
- package/es/core/LayerPickService.d.ts +0 -9
- package/es/core/LayerPickService.js +0 -85
- package/es/tile/service/TileLayerService.d.ts +0 -33
- package/es/tile/service/TileLayerService.js +0 -172
- package/es/tile/service/TilePickService.d.ts +0 -22
- package/es/tile/service/TilePickService.js +0 -148
- package/es/tile/service/TileSourceService.d.ts +0 -7
- package/es/tile/service/TileSourceService.js +0 -39
- package/es/tile/tileFactory/DebugTile.d.ts +0 -16
- package/es/tile/tileFactory/DebugTile.js +0 -100
- package/es/tile/tileFactory/ImageTile.d.ts +0 -14
- package/es/tile/tileFactory/ImageTile.js +0 -89
- package/es/tile/tileFactory/MaskTile.d.ts +0 -17
- package/es/tile/tileFactory/MaskTile.js +0 -98
- package/es/tile/tileFactory/RasterRGBTile.d.ts +0 -16
- package/es/tile/tileFactory/RasterRGBTile.js +0 -91
- package/es/tile/tileFactory/RasterTile.d.ts +0 -27
- package/es/tile/tileFactory/RasterTile.js +0 -186
- package/es/tile/tileFactory/Tile.d.ts +0 -34
- package/es/tile/tileFactory/Tile.js +0 -199
- package/es/tile/tileFactory/VectorTile.d.ts +0 -20
- package/es/tile/tileFactory/VectorTile.js +0 -152
- package/es/tile/tileFactory/util.d.ts +0 -6
- package/es/tile/tileFactory/util.js +0 -33
- package/es/tile/tileLayer/BaseLayer.d.ts +0 -46
- package/es/tile/tileLayer/BaseLayer.js +0 -358
- package/lib/core/LayerPickService.js +0 -96
- package/lib/tile/service/TileLayerService.js +0 -185
- package/lib/tile/service/TilePickService.js +0 -162
- package/lib/tile/service/TileSourceService.js +0 -59
- package/lib/tile/tileFactory/DebugTile.js +0 -115
- package/lib/tile/tileFactory/ImageTile.js +0 -104
- package/lib/tile/tileFactory/MaskTile.js +0 -113
- package/lib/tile/tileFactory/RasterRGBTile.js +0 -106
- package/lib/tile/tileFactory/RasterTile.js +0 -205
- package/lib/tile/tileFactory/Tile.js +0 -210
- package/lib/tile/tileFactory/VectorTile.js +0 -167
- package/lib/tile/tileFactory/util.js +0 -48
- package/lib/tile/tileLayer/BaseLayer.js +0 -373
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
|
|
4
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
5
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
6
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
7
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
8
|
+
|
|
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
|
+
|
|
11
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
12
|
+
|
|
13
|
+
import { EventEmitter } from 'eventemitter3';
|
|
14
|
+
export var TilePickService = /*#__PURE__*/function (_EventEmitter) {
|
|
15
|
+
_inherits(TilePickService, _EventEmitter);
|
|
16
|
+
|
|
17
|
+
var _super = _createSuper(TilePickService);
|
|
18
|
+
|
|
19
|
+
function TilePickService(parent, rendererService, pickingService, children, tileRenderService) {
|
|
20
|
+
var _this;
|
|
21
|
+
|
|
22
|
+
_classCallCheck(this, TilePickService);
|
|
23
|
+
|
|
24
|
+
_this = _super.call(this);
|
|
25
|
+
|
|
26
|
+
_defineProperty(_assertThisInitialized(_this), "isLastPicked", false);
|
|
27
|
+
|
|
28
|
+
_this.parent = parent;
|
|
29
|
+
_this.rendererService = rendererService;
|
|
30
|
+
_this.pickingService = pickingService;
|
|
31
|
+
_this.children = children;
|
|
32
|
+
_this.tileRenderService = tileRenderService;
|
|
33
|
+
return _this;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
_createClass(TilePickService, [{
|
|
37
|
+
key: "pick",
|
|
38
|
+
value: function pick(layers, target) {
|
|
39
|
+
var _this2 = this;
|
|
40
|
+
|
|
41
|
+
// Tip: 在进行拾取渲染的时候也需要先渲染一遍父组件然后再渲染子组件
|
|
42
|
+
// 如需要在 栅格瓦片存在 Mask 的时候发生的拾取,那么就需要先渲染父组件(渲染父组件的帧缓冲)
|
|
43
|
+
this.tileRenderService.renderMask(this.parent);
|
|
44
|
+
var isPicked = layers.filter(function (layer) {
|
|
45
|
+
return _this2.parent.needPick(target.type) && layer.inited && layer.isVisible();
|
|
46
|
+
}).some(function (layer) {
|
|
47
|
+
layer.hooks.beforePickingEncode.call();
|
|
48
|
+
|
|
49
|
+
if (layer.masks.length > 0) {
|
|
50
|
+
// 清除上一次的模版缓存
|
|
51
|
+
_this2.rendererService.clear({
|
|
52
|
+
stencil: 0,
|
|
53
|
+
depth: 1,
|
|
54
|
+
framebuffer: null
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
layer.masks.map(function (m) {
|
|
58
|
+
m.hooks.beforeRender.call();
|
|
59
|
+
m.render();
|
|
60
|
+
m.hooks.afterRender.call();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
layer.renderModels(true);
|
|
65
|
+
layer.hooks.afterPickingEncode.call();
|
|
66
|
+
|
|
67
|
+
var layerPicked = _this2.pickingService.pickFromPickingFBO(layer, target); // RasterLayer 不参与拾取后的 shader 计算
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
if (layerPicked && _this2.parent.type !== 'RasterLayer') {
|
|
71
|
+
_this2.emit('pick', {
|
|
72
|
+
type: target.type,
|
|
73
|
+
pickedColors: _this2.pickingService.pickedColors,
|
|
74
|
+
layer: layer
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
_this2.pickingService.pickedTileLayers = [_this2.parent];
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
return layerPicked;
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
if (this.parent.type !== 'RasterLayer' && !isPicked && this.isLastPicked && target.type !== 'click') {
|
|
84
|
+
// 只有上一次有被高亮选中,本次未选中的时候才需要清除选中状态
|
|
85
|
+
this.pickingService.pickedTileLayers = [];
|
|
86
|
+
this.emit('unpick', {});
|
|
87
|
+
this.beforeHighlight([0, 0, 0]);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
this.isLastPicked = isPicked;
|
|
91
|
+
return isPicked;
|
|
92
|
+
}
|
|
93
|
+
}, {
|
|
94
|
+
key: "clearPick",
|
|
95
|
+
value: function clearPick() {
|
|
96
|
+
this.children.filter(function (child) {
|
|
97
|
+
return child.inited && child.isVisible();
|
|
98
|
+
}).map(function (layer) {
|
|
99
|
+
layer.hooks.beforeSelect.call([0, 0, 0]);
|
|
100
|
+
});
|
|
101
|
+
this.pickingService.pickedTileLayers = [];
|
|
102
|
+
}
|
|
103
|
+
}, {
|
|
104
|
+
key: "beforeHighlight",
|
|
105
|
+
value: function beforeHighlight(pickedColors) {
|
|
106
|
+
this.children.filter(function (child) {
|
|
107
|
+
return child.inited && child.isVisible();
|
|
108
|
+
}).map(function (child) {
|
|
109
|
+
child.hooks.beforeHighlight.call(pickedColors);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}, {
|
|
113
|
+
key: "beforeSelect",
|
|
114
|
+
value: function beforeSelect(pickedColors) {
|
|
115
|
+
this.children.filter(function (child) {
|
|
116
|
+
return child.inited && child.isVisible();
|
|
117
|
+
}).map(function (layer) {
|
|
118
|
+
layer.hooks.beforeSelect.call(pickedColors);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}, {
|
|
122
|
+
key: "destroy",
|
|
123
|
+
value: function destroy() {
|
|
124
|
+
this.removeAllListeners();
|
|
125
|
+
}
|
|
126
|
+
}]);
|
|
127
|
+
|
|
128
|
+
return TilePickService;
|
|
129
|
+
}(EventEmitter);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IMapService, IRendererService } from '@antv/l7-core';
|
|
2
|
-
import {
|
|
3
|
-
export declare function readRasterValue(tile:
|
|
2
|
+
import { Tile } from '@antv/l7-utils';
|
|
3
|
+
export declare function readRasterValue(tile: Tile, mapService: IMapService, x: number, y: number): any;
|
|
4
4
|
export declare function readPixel(x: number, y: number, rendererService: IRendererService): false | Uint8Array;
|
|
@@ -27,7 +27,7 @@ export function setSelect(layers, pickedColors, renderList) {
|
|
|
27
27
|
}); // unselect normal layer
|
|
28
28
|
|
|
29
29
|
renderList.filter(function (layer) {
|
|
30
|
-
return layer.inited && layer.isVisible() && layer.needPick('click');
|
|
30
|
+
return layer.inited && !layer.isVector && layer.isVisible() && layer.needPick('click');
|
|
31
31
|
}).filter(function (layer) {
|
|
32
32
|
return layer.getCurrentSelectedId() !== null;
|
|
33
33
|
}).map(function (layer) {
|
|
@@ -39,8 +39,9 @@ export function setSelect(layers, pickedColors, renderList) {
|
|
|
39
39
|
export function setHighlight(layers, pickedColors) {
|
|
40
40
|
var pickId = decodePickingColor(pickedColors);
|
|
41
41
|
layers.filter(function (layer) {
|
|
42
|
-
return layer.inited && layer.isVisible();
|
|
43
|
-
}) //
|
|
42
|
+
return layer.inited && layer.isVisible() && layer.isVector;
|
|
43
|
+
}) // Tip: 使用 vectorLayer 上的 pickID 优化高亮操作(过滤重复操作)
|
|
44
|
+
// @ts-ignore
|
|
44
45
|
.filter(function (layer) {
|
|
45
46
|
return layer.getPickID() !== pickId;
|
|
46
47
|
}).map(function (layer) {
|
|
@@ -52,6 +53,13 @@ export function setHighlight(layers, pickedColors) {
|
|
|
52
53
|
export function setPickState(layers, pickColors) {
|
|
53
54
|
if (pickColors.select) {
|
|
54
55
|
layers.map(function (layer) {
|
|
56
|
+
// if(layer.modelLoaded) {
|
|
57
|
+
// selectFeature(layer, this.pickColors.select);
|
|
58
|
+
// } else {
|
|
59
|
+
// layer.once('modelLoaded', () => {
|
|
60
|
+
// selectFeature(layer, this.pickColors.select);
|
|
61
|
+
// })
|
|
62
|
+
// }
|
|
55
63
|
selectFeature(layer, pickColors.select);
|
|
56
64
|
});
|
|
57
65
|
}
|
package/es/tile/interface.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ILayer, IMapService, IRendererService, ISource, ISubLayerInitOptions } from '@antv/l7-core';
|
|
2
|
-
import {
|
|
2
|
+
import { Tile } from '@antv/l7-utils';
|
|
3
3
|
export declare type Timeout = any;
|
|
4
4
|
export declare type CacheEvent = 'click' | 'mousemove' | 'mouseup' | 'mousedown' | 'contextmenu';
|
|
5
5
|
export interface ITileFactoryOptions {
|
|
@@ -12,17 +12,16 @@ export interface ITileStyles {
|
|
|
12
12
|
}
|
|
13
13
|
export interface ILayerTileConfig {
|
|
14
14
|
L7Layer?: any;
|
|
15
|
-
tile:
|
|
15
|
+
tile: Tile;
|
|
16
16
|
initOptions: ISubLayerInitOptions;
|
|
17
17
|
vectorTileLayer?: any;
|
|
18
18
|
source: ISource;
|
|
19
19
|
needListen?: boolean;
|
|
20
20
|
}
|
|
21
21
|
export interface ITileFactory {
|
|
22
|
-
|
|
23
|
-
layers: ILayer[];
|
|
24
|
-
createTile(tile: SourceTile, initOptions: ISubLayerInitOptions): {
|
|
22
|
+
createTile(tile: Tile, initOptions: ISubLayerInitOptions): {
|
|
25
23
|
layers: ILayer[];
|
|
24
|
+
layerIDList: string[];
|
|
26
25
|
};
|
|
27
26
|
createLayer(option: ILayerTileConfig): ILayer;
|
|
28
27
|
updateStyle(styles: ITileStyles): string;
|
|
@@ -1,35 +1,30 @@
|
|
|
1
|
-
import { ILayer, IRendererService, IMapService, ISubLayerInitOptions
|
|
2
|
-
import {
|
|
1
|
+
import { ILayer, IRendererService, IMapService, ISubLayerInitOptions } from '@antv/l7-core';
|
|
2
|
+
import { Tile } from '@antv/l7-utils';
|
|
3
|
+
import { ITileFactory } from '../tileFactory';
|
|
3
4
|
export declare class Base {
|
|
4
5
|
sourceLayer: string;
|
|
5
6
|
parent: ILayer;
|
|
6
7
|
children: ILayer[];
|
|
7
8
|
mapService: IMapService;
|
|
8
9
|
rendererService: IRendererService;
|
|
9
|
-
protected tileFactory:
|
|
10
|
+
protected tileFactory: ITileFactory;
|
|
10
11
|
protected initOptions: ISubLayerInitOptions;
|
|
11
12
|
private tileCache;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
removeTile(tile:
|
|
13
|
+
hasTile(tile: Tile): boolean;
|
|
14
|
+
addTile(tile: Tile): {
|
|
15
|
+
layers: ILayer[];
|
|
16
|
+
layerIDList: string[];
|
|
17
|
+
};
|
|
18
|
+
removeTile(tile: Tile): void;
|
|
18
19
|
addChild(layer: ILayer): void;
|
|
19
20
|
addChildren(layers: ILayer[]): void;
|
|
20
|
-
|
|
21
|
+
removeChildren(layerIDList: string[], refresh?: boolean): void;
|
|
21
22
|
removeChild(layer: ILayer): void;
|
|
22
|
-
|
|
23
|
+
getChildren(layerIDList: string[]): ILayer[];
|
|
23
24
|
getChild(layerID: string): ILayer;
|
|
24
25
|
clearChild(): void;
|
|
25
26
|
hasChild(layer: ILayer): boolean;
|
|
26
27
|
initTileFactory(): void;
|
|
27
28
|
getSourceLayer(parentParserType: string, sourceLayer: string | undefined): string | undefined;
|
|
28
|
-
updateTileVisible(tile: SourceTile, layerService: ILayerService): void;
|
|
29
|
-
listenLoad(tile: SourceTile, callback: () => void): void;
|
|
30
|
-
isTileLoaded(tile: SourceTile): boolean;
|
|
31
|
-
isTileChildLoaded(tile: SourceTile): boolean;
|
|
32
|
-
isTileParentLoaded(tile: SourceTile): boolean;
|
|
33
|
-
isTileAllLoad(tile: SourceTile): boolean;
|
|
34
29
|
destroy(): void;
|
|
35
30
|
}
|
package/es/tile/manager/base.js
CHANGED
|
@@ -1,143 +1,55 @@
|
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
3
2
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
4
3
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
5
4
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
8
|
-
import { updateLayersConfig } from "../style/utils";
|
|
5
|
+
import { getTileFactory } from "../tileFactory";
|
|
6
|
+
import { registerLayers } from "../utils";
|
|
9
7
|
export var Base = /*#__PURE__*/function () {
|
|
10
8
|
function Base() {
|
|
11
9
|
_classCallCheck(this, Base);
|
|
12
10
|
|
|
13
11
|
_defineProperty(this, "tileCache", new Map());
|
|
14
|
-
|
|
15
|
-
_defineProperty(this, "tileLayerCache", new Map());
|
|
16
12
|
}
|
|
17
13
|
|
|
18
14
|
_createClass(Base, [{
|
|
19
|
-
key: "initTileLayers",
|
|
20
|
-
value: function () {
|
|
21
|
-
var _initTileLayers = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(layers, tile) {
|
|
22
|
-
var _this = this;
|
|
23
|
-
|
|
24
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
25
|
-
while (1) {
|
|
26
|
-
switch (_context2.prev = _context2.next) {
|
|
27
|
-
case 0:
|
|
28
|
-
return _context2.abrupt("return", Promise.all(layers.map( /*#__PURE__*/function () {
|
|
29
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(layer) {
|
|
30
|
-
var container;
|
|
31
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
32
|
-
while (1) {
|
|
33
|
-
switch (_context.prev = _context.next) {
|
|
34
|
-
case 0:
|
|
35
|
-
container = createLayerContainer(_this.parent.sceneContainer);
|
|
36
|
-
layer.setContainer(container, _this.parent.sceneContainer);
|
|
37
|
-
_context.next = 4;
|
|
38
|
-
return layer.init();
|
|
39
|
-
|
|
40
|
-
case 4:
|
|
41
|
-
_this.addChild(layer);
|
|
42
|
-
|
|
43
|
-
tile.layerLoad();
|
|
44
|
-
|
|
45
|
-
_this.render();
|
|
46
|
-
|
|
47
|
-
case 7:
|
|
48
|
-
case "end":
|
|
49
|
-
return _context.stop();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}, _callee);
|
|
53
|
-
}));
|
|
54
|
-
|
|
55
|
-
return function (_x3) {
|
|
56
|
-
return _ref.apply(this, arguments);
|
|
57
|
-
};
|
|
58
|
-
}())));
|
|
59
|
-
|
|
60
|
-
case 1:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context2.stop();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}, _callee2);
|
|
66
|
-
}));
|
|
67
|
-
|
|
68
|
-
function initTileLayers(_x, _x2) {
|
|
69
|
-
return _initTileLayers.apply(this, arguments);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
return initTileLayers;
|
|
73
|
-
}()
|
|
74
|
-
}, {
|
|
75
|
-
key: "render",
|
|
76
|
-
value: function render() {
|
|
77
|
-
this.parent.renderLayers();
|
|
78
|
-
}
|
|
79
|
-
}, {
|
|
80
15
|
key: "hasTile",
|
|
81
16
|
value: function hasTile(tile) {
|
|
82
|
-
return this.tileCache.has(tile.key);
|
|
83
|
-
}
|
|
84
|
-
|
|
17
|
+
return !!this.tileCache.has(tile.key);
|
|
18
|
+
}
|
|
85
19
|
}, {
|
|
86
20
|
key: "addTile",
|
|
87
|
-
value: function () {
|
|
88
|
-
var
|
|
89
|
-
var layerCollections;
|
|
90
|
-
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
91
|
-
while (1) {
|
|
92
|
-
switch (_context3.prev = _context3.next) {
|
|
93
|
-
case 0:
|
|
94
|
-
if (!this.hasTile(tile)) {
|
|
95
|
-
_context3.next = 2;
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
21
|
+
value: function addTile(tile) {
|
|
22
|
+
var _tile$layerIDList;
|
|
98
23
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
24
|
+
// oldTile 存在的时候暂时直接结束
|
|
25
|
+
// TODO:合并不存在的时候
|
|
26
|
+
if (this.hasTile(tile)) return {
|
|
27
|
+
layers: [],
|
|
28
|
+
layerIDList: []
|
|
29
|
+
}; // 存储当前 tile
|
|
102
30
|
|
|
103
|
-
|
|
104
|
-
// 存储当前 tile
|
|
105
|
-
this.tileCache.set(tile.key, tile); // 创建 tile 对应的 layers
|
|
31
|
+
this.tileCache.set(tile.key, tile); // 创建 tile 对应的 layers
|
|
106
32
|
|
|
107
|
-
|
|
33
|
+
var layerCollections = this.tileFactory.createTile(tile, this.initOptions); // regist layer 将创建出来的 layer 进行注册初始化操作
|
|
108
34
|
|
|
109
|
-
|
|
110
|
-
return this.initTileLayers(layerCollections.layers, tile);
|
|
35
|
+
registerLayers(this.parent, layerCollections.layers);
|
|
111
36
|
|
|
112
|
-
|
|
113
|
-
this.tileLayerCache.set(tile.key, layerCollections.layers); // const visible = tile.parent ? tile.parent.children.every(t=>this.tileLayerCache.has(t.key)) : true
|
|
114
|
-
// tile.parent?.children.forEach((t)=>{
|
|
115
|
-
// updateLayersConfig(this.getLayers(t),'visible',visible)
|
|
116
|
-
// })
|
|
37
|
+
(_tile$layerIDList = tile.layerIDList).push.apply(_tile$layerIDList, _toConsumableArray(layerCollections.layerIDList)); // add layer into layerGroup
|
|
117
38
|
|
|
118
|
-
return _context3.abrupt("return", layerCollections);
|
|
119
|
-
|
|
120
|
-
case 8:
|
|
121
|
-
case "end":
|
|
122
|
-
return _context3.stop();
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}, _callee3, this);
|
|
126
|
-
}));
|
|
127
|
-
|
|
128
|
-
function addTile(_x4) {
|
|
129
|
-
return _addTile.apply(this, arguments);
|
|
130
|
-
}
|
|
131
39
|
|
|
132
|
-
|
|
133
|
-
|
|
40
|
+
this.addChildren(layerCollections.layers);
|
|
41
|
+
layerCollections.layers.map(function (layer) {
|
|
42
|
+
layer.once('modelLoaded', function () {
|
|
43
|
+
tile.layerLoad();
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
return layerCollections;
|
|
47
|
+
}
|
|
134
48
|
}, {
|
|
135
49
|
key: "removeTile",
|
|
136
50
|
value: function removeTile(tile) {
|
|
137
51
|
this.tileCache.delete(tile.key);
|
|
138
|
-
|
|
139
|
-
this.tileLayerCache.delete(tile.key);
|
|
140
|
-
this.removeLayers(layers, false);
|
|
52
|
+
this.removeChildren(tile.layerIDList, false);
|
|
141
53
|
}
|
|
142
54
|
}, {
|
|
143
55
|
key: "addChild",
|
|
@@ -152,16 +64,18 @@ export var Base = /*#__PURE__*/function () {
|
|
|
152
64
|
(_this$children = this.children).push.apply(_this$children, _toConsumableArray(layers));
|
|
153
65
|
}
|
|
154
66
|
}, {
|
|
155
|
-
key: "
|
|
156
|
-
value: function
|
|
157
|
-
var layers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
67
|
+
key: "removeChildren",
|
|
68
|
+
value: function removeChildren(layerIDList) {
|
|
158
69
|
var refresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
159
|
-
|
|
160
|
-
|
|
70
|
+
var remveLayerList = [];
|
|
71
|
+
var cacheLayerList = [];
|
|
72
|
+
this.children.filter(function (child) {
|
|
73
|
+
layerIDList.includes(child.id) ? remveLayerList.push(child) : cacheLayerList.push(child);
|
|
161
74
|
});
|
|
162
|
-
|
|
75
|
+
remveLayerList.map(function (layer) {
|
|
163
76
|
return layer.destroy(refresh);
|
|
164
77
|
});
|
|
78
|
+
this.children = cacheLayerList;
|
|
165
79
|
}
|
|
166
80
|
}, {
|
|
167
81
|
key: "removeChild",
|
|
@@ -175,10 +89,11 @@ export var Base = /*#__PURE__*/function () {
|
|
|
175
89
|
layer.destroy();
|
|
176
90
|
}
|
|
177
91
|
}, {
|
|
178
|
-
key: "
|
|
179
|
-
value: function
|
|
180
|
-
|
|
181
|
-
|
|
92
|
+
key: "getChildren",
|
|
93
|
+
value: function getChildren(layerIDList) {
|
|
94
|
+
return this.children.filter(function (child) {
|
|
95
|
+
return layerIDList.includes(child.id);
|
|
96
|
+
});
|
|
182
97
|
}
|
|
183
98
|
}, {
|
|
184
99
|
key: "getChild",
|
|
@@ -202,11 +117,14 @@ export var Base = /*#__PURE__*/function () {
|
|
|
202
117
|
}
|
|
203
118
|
}, {
|
|
204
119
|
key: "initTileFactory",
|
|
205
|
-
value: function initTileFactory() {
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
120
|
+
value: function initTileFactory() {
|
|
121
|
+
var source = this.parent.getSource();
|
|
122
|
+
var TileFactory = getTileFactory(this.parent.type, source.parser);
|
|
123
|
+
this.tileFactory = new TileFactory({
|
|
124
|
+
parent: this.parent,
|
|
125
|
+
mapService: this.mapService,
|
|
126
|
+
rendererService: this.rendererService
|
|
127
|
+
});
|
|
210
128
|
}
|
|
211
129
|
}, {
|
|
212
130
|
key: "getSourceLayer",
|
|
@@ -219,92 +137,9 @@ export var Base = /*#__PURE__*/function () {
|
|
|
219
137
|
return sourceLayer;
|
|
220
138
|
}
|
|
221
139
|
}
|
|
222
|
-
}, {
|
|
223
|
-
key: "updateTileVisible",
|
|
224
|
-
value: function updateTileVisible(tile, layerService) {
|
|
225
|
-
var layers = this.getLayers(tile);
|
|
226
|
-
if (layers.length === 0) return;
|
|
227
|
-
|
|
228
|
-
if (tile.isVisible) {
|
|
229
|
-
// 如果可见直接进行渲染,父级发
|
|
230
|
-
updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
231
|
-
} else {
|
|
232
|
-
// 如果不可见,放大,等到子瓦片渲染完成,缩小:父级渲染成功
|
|
233
|
-
// console.log('updateTileVisible',`${tile.x}_${tile.y}_${tile.z}`,tile.isVisible)
|
|
234
|
-
// console.log(tile);
|
|
235
|
-
// console.log(`子瓦片${tile.x}/${tile.y}/${tile.z}`,tile.children.length)
|
|
236
|
-
// tile.children.forEach((t)=>{
|
|
237
|
-
// console.log(`${t.x}/${t.y}/${t.z}`)
|
|
238
|
-
// })
|
|
239
|
-
updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
240
|
-
} // this.listenLoad(tile, () => {
|
|
241
|
-
// this.isTileAllLoad(tile) && updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
242
|
-
// })
|
|
243
|
-
|
|
244
|
-
}
|
|
245
|
-
}, {
|
|
246
|
-
key: "listenLoad",
|
|
247
|
-
value: function listenLoad(tile, callback) {
|
|
248
|
-
var _tile$parent;
|
|
249
|
-
|
|
250
|
-
tile.once('layerLoaded', function () {
|
|
251
|
-
callback();
|
|
252
|
-
});
|
|
253
|
-
tile.children.map(function (childTile) {
|
|
254
|
-
childTile.once('layerLoaded', function () {
|
|
255
|
-
callback();
|
|
256
|
-
});
|
|
257
|
-
});
|
|
258
|
-
(_tile$parent = tile.parent) === null || _tile$parent === void 0 ? void 0 : _tile$parent.once('layerLoaded', function () {
|
|
259
|
-
callback();
|
|
260
|
-
});
|
|
261
|
-
}
|
|
262
|
-
}, {
|
|
263
|
-
key: "isTileLoaded",
|
|
264
|
-
value: function isTileLoaded(tile) {
|
|
265
|
-
if (tile.isLoad) return true;
|
|
266
|
-
var isLoad = this.getLayers(tile).length === tile.loadedLayers;
|
|
267
|
-
tile.isLoad = isLoad;
|
|
268
|
-
return isLoad;
|
|
269
|
-
}
|
|
270
|
-
}, {
|
|
271
|
-
key: "isTileChildLoaded",
|
|
272
|
-
value: function isTileChildLoaded(tile) {
|
|
273
|
-
var _this2 = this;
|
|
274
|
-
|
|
275
|
-
if (tile.isChildLoad) return true;
|
|
276
|
-
var children = tile.children;
|
|
277
|
-
var isLoad = children.filter(function (child) {
|
|
278
|
-
return _this2.isTileLoaded(child);
|
|
279
|
-
}).length === children.length;
|
|
280
|
-
tile.isChildLoad = isLoad;
|
|
281
|
-
return isLoad;
|
|
282
|
-
}
|
|
283
|
-
}, {
|
|
284
|
-
key: "isTileParentLoaded",
|
|
285
|
-
value: function isTileParentLoaded(tile) {
|
|
286
|
-
var parent = tile.parent;
|
|
287
|
-
|
|
288
|
-
if (!parent) {
|
|
289
|
-
return true;
|
|
290
|
-
} else {
|
|
291
|
-
return this.isTileLoaded(parent);
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
}, {
|
|
295
|
-
key: "isTileAllLoad",
|
|
296
|
-
value: function isTileAllLoad(tile) {
|
|
297
|
-
var tileLoaded = this.isTileLoaded(tile);
|
|
298
|
-
var tileChildLoaded = this.isTileChildLoaded(tile);
|
|
299
|
-
var tileParentLoaded = this.isTileParentLoaded(tile);
|
|
300
|
-
return tileLoaded && tileChildLoaded && tileParentLoaded;
|
|
301
|
-
}
|
|
302
140
|
}, {
|
|
303
141
|
key: "destroy",
|
|
304
|
-
value: function destroy() {
|
|
305
|
-
this.tileCache.clear();
|
|
306
|
-
this.tileLayerCache.clear();
|
|
307
|
-
}
|
|
142
|
+
value: function destroy() {}
|
|
308
143
|
}]);
|
|
309
144
|
|
|
310
145
|
return Base;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IInteractionTarget, ILayer, IMapService, IPickingService, IRendererService, ITileLayerManager, ITilePickService, ITileRenderService, ITransform } from '@antv/l7-core';
|
|
2
|
+
import { Base } from './base';
|
|
3
|
+
import { ITileStyleService } from '../style/TileStyleService';
|
|
4
|
+
export declare class TileLayerManager extends Base implements ITileLayerManager {
|
|
5
|
+
tilePickService: ITilePickService;
|
|
6
|
+
tileStyleService: ITileStyleService;
|
|
7
|
+
tileRenderService: ITileRenderService;
|
|
8
|
+
private transforms;
|
|
9
|
+
constructor(parent: ILayer, mapService: IMapService, rendererService: IRendererService, pickingService: IPickingService, transforms: ITransform[]);
|
|
10
|
+
render(): void;
|
|
11
|
+
pickLayers(target: IInteractionTarget): boolean;
|
|
12
|
+
private setSubLayerInitOption;
|
|
13
|
+
private getInitOptionValue;
|
|
14
|
+
private setInitOptionValue;
|
|
15
|
+
private setConfigListener;
|
|
16
|
+
private updateAttribute;
|
|
17
|
+
private updateStyle;
|
|
18
|
+
destroy(): void;
|
|
19
|
+
}
|