@antv/l7-layers 2.10.3 → 2.10.5
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 +273 -382
- 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 +268 -382
- 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,254 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
5
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
6
|
+
|
|
7
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
8
|
+
|
|
9
|
+
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; } }
|
|
10
|
+
|
|
11
|
+
import { Base } from "./base";
|
|
12
|
+
import { generateColorRamp } from '@antv/l7-utils';
|
|
13
|
+
import { getLayerShape, getMaskValue } from "../utils";
|
|
14
|
+
import { TileStyleService } from "../style/TileStyleService";
|
|
15
|
+
import { TilePickService } from "../interaction/TilePickService";
|
|
16
|
+
import { TileRenderService } from "../render/TileRenderService";
|
|
17
|
+
import { styles, Attributes } from "../style/constants";
|
|
18
|
+
import { updateTexture, updateLayersConfig, setStyleAttributeField } from "../style/utils";
|
|
19
|
+
export var TileLayerManager = /*#__PURE__*/function (_Base) {
|
|
20
|
+
_inherits(TileLayerManager, _Base);
|
|
21
|
+
|
|
22
|
+
var _super = _createSuper(TileLayerManager);
|
|
23
|
+
|
|
24
|
+
function TileLayerManager(parent, mapService, rendererService, pickingService, transforms) {
|
|
25
|
+
var _this;
|
|
26
|
+
|
|
27
|
+
_classCallCheck(this, TileLayerManager);
|
|
28
|
+
|
|
29
|
+
_this = _super.call(this);
|
|
30
|
+
_this.parent = parent;
|
|
31
|
+
_this.children = parent.layerChildren;
|
|
32
|
+
_this.mapService = mapService;
|
|
33
|
+
_this.rendererService = rendererService;
|
|
34
|
+
_this.transforms = transforms;
|
|
35
|
+
_this.tileRenderService = new TileRenderService(rendererService);
|
|
36
|
+
_this.tilePickService = new TilePickService(parent, rendererService, pickingService, _this.children, _this.tileRenderService);
|
|
37
|
+
_this.tileStyleService = new TileStyleService();
|
|
38
|
+
|
|
39
|
+
_this.setSubLayerInitOption();
|
|
40
|
+
|
|
41
|
+
_this.setConfigListener();
|
|
42
|
+
|
|
43
|
+
_this.initTileFactory();
|
|
44
|
+
|
|
45
|
+
return _this;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
_createClass(TileLayerManager, [{
|
|
49
|
+
key: "render",
|
|
50
|
+
value: function render() {
|
|
51
|
+
this.tileStyleService.checkConfig(this.parent);
|
|
52
|
+
this.tileRenderService.render(this.children);
|
|
53
|
+
}
|
|
54
|
+
}, {
|
|
55
|
+
key: "pickLayers",
|
|
56
|
+
value: function pickLayers(target) {
|
|
57
|
+
return this.tilePickService.pick(this.children, target);
|
|
58
|
+
}
|
|
59
|
+
}, {
|
|
60
|
+
key: "setSubLayerInitOption",
|
|
61
|
+
value: function setSubLayerInitOption() {
|
|
62
|
+
var _source$data;
|
|
63
|
+
|
|
64
|
+
var _ref = this.parent.getLayerConfig(),
|
|
65
|
+
_ref$zIndex = _ref.zIndex,
|
|
66
|
+
zIndex = _ref$zIndex === void 0 ? 0 : _ref$zIndex,
|
|
67
|
+
_ref$opacity = _ref.opacity,
|
|
68
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
69
|
+
_ref$mask = _ref.mask,
|
|
70
|
+
mask = _ref$mask === void 0 ? false : _ref$mask,
|
|
71
|
+
_ref$stroke = _ref.stroke,
|
|
72
|
+
stroke = _ref$stroke === void 0 ? '#fff' : _ref$stroke,
|
|
73
|
+
_ref$strokeWidth = _ref.strokeWidth,
|
|
74
|
+
strokeWidth = _ref$strokeWidth === void 0 ? 0 : _ref$strokeWidth,
|
|
75
|
+
_ref$strokeOpacity = _ref.strokeOpacity,
|
|
76
|
+
strokeOpacity = _ref$strokeOpacity === void 0 ? 1 : _ref$strokeOpacity,
|
|
77
|
+
_ref$clampLow = _ref.clampLow,
|
|
78
|
+
clampLow = _ref$clampLow === void 0 ? true : _ref$clampLow,
|
|
79
|
+
_ref$clampHigh = _ref.clampHigh,
|
|
80
|
+
clampHigh = _ref$clampHigh === void 0 ? true : _ref$clampHigh,
|
|
81
|
+
_ref$domain = _ref.domain,
|
|
82
|
+
domain = _ref$domain === void 0 ? [0, 1] : _ref$domain,
|
|
83
|
+
_ref$rampColors = _ref.rampColors,
|
|
84
|
+
rampColors = _ref$rampColors === void 0 ? {
|
|
85
|
+
colors: ['rgb(166,97,26)', 'rgb(223,194,125)', 'rgb(245,245,245)', 'rgb(128,205,193)', 'rgb(1,133,113)'],
|
|
86
|
+
positions: [0, 0.25, 0.5, 0.75, 1.0]
|
|
87
|
+
} : _ref$rampColors,
|
|
88
|
+
_ref$featureId = _ref.featureId,
|
|
89
|
+
featureId = _ref$featureId === void 0 ? 'id' : _ref$featureId,
|
|
90
|
+
_ref$workerEnabled = _ref.workerEnabled,
|
|
91
|
+
workerEnabled = _ref$workerEnabled === void 0 ? false : _ref$workerEnabled,
|
|
92
|
+
sourceLayer = _ref.sourceLayer,
|
|
93
|
+
_ref$pixelConstant = _ref.pixelConstant,
|
|
94
|
+
pixelConstant = _ref$pixelConstant === void 0 ? 0 : _ref$pixelConstant,
|
|
95
|
+
_ref$pixelConstantR = _ref.pixelConstantR,
|
|
96
|
+
pixelConstantR = _ref$pixelConstantR === void 0 ? 256 * 256 : _ref$pixelConstantR,
|
|
97
|
+
_ref$pixelConstantG = _ref.pixelConstantG,
|
|
98
|
+
pixelConstantG = _ref$pixelConstantG === void 0 ? 256 : _ref$pixelConstantG,
|
|
99
|
+
_ref$pixelConstantB = _ref.pixelConstantB,
|
|
100
|
+
pixelConstantB = _ref$pixelConstantB === void 0 ? 1 : _ref$pixelConstantB,
|
|
101
|
+
_ref$pixelConstantRGB = _ref.pixelConstantRGB,
|
|
102
|
+
pixelConstantRGB = _ref$pixelConstantRGB === void 0 ? 0.1 : _ref$pixelConstantRGB;
|
|
103
|
+
|
|
104
|
+
var colorValue = this.tileStyleService.getAttributeScale(this.parent, 'color');
|
|
105
|
+
var sizeValue = this.tileStyleService.getAttributeScale(this.parent, 'size');
|
|
106
|
+
var source = this.parent.getSource();
|
|
107
|
+
|
|
108
|
+
var _ref2 = (source === null || source === void 0 ? void 0 : (_source$data = source.data) === null || _source$data === void 0 ? void 0 : _source$data.tilesetOptions) || {},
|
|
109
|
+
coords = _ref2.coords;
|
|
110
|
+
|
|
111
|
+
var parentParserType = source.getParserType();
|
|
112
|
+
var layerShape = getLayerShape(this.parent.type, this.parent);
|
|
113
|
+
this.initOptions = {
|
|
114
|
+
layerType: this.parent.type,
|
|
115
|
+
transforms: this.transforms,
|
|
116
|
+
shape: layerShape,
|
|
117
|
+
zIndex: zIndex,
|
|
118
|
+
opacity: opacity,
|
|
119
|
+
sourceLayer: this.getSourceLayer(parentParserType, sourceLayer),
|
|
120
|
+
coords: coords,
|
|
121
|
+
featureId: featureId,
|
|
122
|
+
color: colorValue,
|
|
123
|
+
size: sizeValue,
|
|
124
|
+
mask: getMaskValue(this.parent.type, mask),
|
|
125
|
+
stroke: stroke,
|
|
126
|
+
strokeWidth: strokeWidth,
|
|
127
|
+
strokeOpacity: strokeOpacity,
|
|
128
|
+
// raster tiff
|
|
129
|
+
clampLow: clampLow,
|
|
130
|
+
clampHigh: clampHigh,
|
|
131
|
+
domain: domain,
|
|
132
|
+
rampColors: rampColors,
|
|
133
|
+
// worker
|
|
134
|
+
workerEnabled: workerEnabled,
|
|
135
|
+
pixelConstant: pixelConstant,
|
|
136
|
+
pixelConstantR: pixelConstantR,
|
|
137
|
+
pixelConstantG: pixelConstantG,
|
|
138
|
+
pixelConstantB: pixelConstantB,
|
|
139
|
+
pixelConstantRGB: pixelConstantRGB
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
if (rampColors) {
|
|
143
|
+
// 构建统一的色带贴图
|
|
144
|
+
var createTexture2D = this.rendererService.createTexture2D;
|
|
145
|
+
var imageData = generateColorRamp(rampColors);
|
|
146
|
+
var colorTexture = createTexture2D({
|
|
147
|
+
data: imageData.data,
|
|
148
|
+
width: imageData.width,
|
|
149
|
+
height: imageData.height,
|
|
150
|
+
flipY: false
|
|
151
|
+
});
|
|
152
|
+
this.initOptions.colorTexture = colorTexture;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}, {
|
|
156
|
+
key: "getInitOptionValue",
|
|
157
|
+
value: function getInitOptionValue(field) {
|
|
158
|
+
var _this$parent$getAttri, _this$parent$getAttri2, _this$parent$getAttri3;
|
|
159
|
+
|
|
160
|
+
switch (field) {
|
|
161
|
+
case 'color':
|
|
162
|
+
return (_this$parent$getAttri = this.parent.getAttribute('color')) === null || _this$parent$getAttri === void 0 ? void 0 : _this$parent$getAttri.scale;
|
|
163
|
+
|
|
164
|
+
case 'shape':
|
|
165
|
+
return (_this$parent$getAttri2 = this.parent.getAttribute('shape')) === null || _this$parent$getAttri2 === void 0 ? void 0 : _this$parent$getAttri2.scale;
|
|
166
|
+
|
|
167
|
+
case 'size':
|
|
168
|
+
return (_this$parent$getAttri3 = this.parent.getAttribute('size')) === null || _this$parent$getAttri3 === void 0 ? void 0 : _this$parent$getAttri3.scale;
|
|
169
|
+
// @ts-ignore
|
|
170
|
+
|
|
171
|
+
default:
|
|
172
|
+
return this.initOptions[field];
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}, {
|
|
176
|
+
key: "setInitOptionValue",
|
|
177
|
+
value: function setInitOptionValue(field, value) {
|
|
178
|
+
// @ts-ignore
|
|
179
|
+
this.initOptions[field] = value;
|
|
180
|
+
}
|
|
181
|
+
}, {
|
|
182
|
+
key: "setConfigListener",
|
|
183
|
+
value: function setConfigListener() {
|
|
184
|
+
var _this2 = this;
|
|
185
|
+
|
|
186
|
+
var styleConfigs = styles[this.parent.type] || [];
|
|
187
|
+
styleConfigs.map(function (style) {
|
|
188
|
+
_this2.tileStyleService.setConfig(style, _this2.getInitOptionValue(style));
|
|
189
|
+
});
|
|
190
|
+
this.tileStyleService.on('updateConfig', function (updateConfigs) {
|
|
191
|
+
updateConfigs.map(function (key) {
|
|
192
|
+
return _this2.updateStyle(key);
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
}, {
|
|
197
|
+
key: "updateAttribute",
|
|
198
|
+
value: function updateAttribute(style) {
|
|
199
|
+
var _this3 = this;
|
|
200
|
+
|
|
201
|
+
if (Attributes.includes(style)) {
|
|
202
|
+
var _this$parent$getAttri4;
|
|
203
|
+
|
|
204
|
+
var scaleValue = (_this$parent$getAttri4 = this.parent.getAttribute(style)) === null || _this$parent$getAttri4 === void 0 ? void 0 : _this$parent$getAttri4.scale;
|
|
205
|
+
|
|
206
|
+
if (!scaleValue) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
this.children.map(function (child) {
|
|
211
|
+
return setStyleAttributeField(child, _this3.parent, style, scaleValue);
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}, {
|
|
216
|
+
key: "updateStyle",
|
|
217
|
+
value: function updateStyle(style) {
|
|
218
|
+
var updateValue = null;
|
|
219
|
+
|
|
220
|
+
if (Attributes.includes(style)) {
|
|
221
|
+
this.updateAttribute(style);
|
|
222
|
+
} else {
|
|
223
|
+
var layerConfig = this.parent.getLayerConfig();
|
|
224
|
+
|
|
225
|
+
if (!(style in layerConfig)) {
|
|
226
|
+
return;
|
|
227
|
+
} // @ts-ignore
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
var config = layerConfig[style];
|
|
231
|
+
updateValue = config;
|
|
232
|
+
|
|
233
|
+
switch (style) {
|
|
234
|
+
case 'rampColors':
|
|
235
|
+
var texture = updateTexture(config, this.children, this.rendererService);
|
|
236
|
+
this.initOptions.colorTexture = texture;
|
|
237
|
+
break;
|
|
238
|
+
|
|
239
|
+
default:
|
|
240
|
+
updateLayersConfig(this.children, style, config);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
this.setInitOptionValue(style, updateValue);
|
|
245
|
+
}
|
|
246
|
+
}, {
|
|
247
|
+
key: "destroy",
|
|
248
|
+
value: function destroy() {
|
|
249
|
+
this.tilePickService.destroy();
|
|
250
|
+
}
|
|
251
|
+
}]);
|
|
252
|
+
|
|
253
|
+
return TileLayerManager;
|
|
254
|
+
}(Base);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ILayer, IMapService, IRendererService, IBaseTileLayerManager } from '@antv/l7-core';
|
|
2
|
+
import { Base } from './base';
|
|
3
|
+
export declare class BaseMapTileLayerManager extends Base implements IBaseTileLayerManager {
|
|
4
|
+
constructor(parent: ILayer, mapService: IMapService, rendererService: IRendererService);
|
|
5
|
+
render(): void;
|
|
6
|
+
private setSubLayerInitOption;
|
|
7
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
5
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
6
|
+
|
|
7
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
8
|
+
|
|
9
|
+
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; } }
|
|
10
|
+
|
|
11
|
+
import { Base } from "./base";
|
|
12
|
+
import { getLayerShape, getMaskValue } from "../utils";
|
|
13
|
+
export var BaseMapTileLayerManager = /*#__PURE__*/function (_Base) {
|
|
14
|
+
_inherits(BaseMapTileLayerManager, _Base);
|
|
15
|
+
|
|
16
|
+
var _super = _createSuper(BaseMapTileLayerManager);
|
|
17
|
+
|
|
18
|
+
// only support vector layer
|
|
19
|
+
function BaseMapTileLayerManager(parent, mapService, rendererService) {
|
|
20
|
+
var _this;
|
|
21
|
+
|
|
22
|
+
_classCallCheck(this, BaseMapTileLayerManager);
|
|
23
|
+
|
|
24
|
+
_this = _super.call(this);
|
|
25
|
+
_this.parent = parent;
|
|
26
|
+
_this.children = parent.layerChildren;
|
|
27
|
+
_this.mapService = mapService;
|
|
28
|
+
_this.rendererService = rendererService;
|
|
29
|
+
|
|
30
|
+
_this.setSubLayerInitOption();
|
|
31
|
+
|
|
32
|
+
_this.initTileFactory();
|
|
33
|
+
|
|
34
|
+
return _this;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
_createClass(BaseMapTileLayerManager, [{
|
|
38
|
+
key: "render",
|
|
39
|
+
value: function render() {
|
|
40
|
+
var _this2 = this;
|
|
41
|
+
|
|
42
|
+
this.children.filter(function (layer) {
|
|
43
|
+
return layer.inited;
|
|
44
|
+
}).filter(function (layer) {
|
|
45
|
+
return layer.isVisible();
|
|
46
|
+
}).map(function (layer) {
|
|
47
|
+
layer.hooks.beforeRenderData.call();
|
|
48
|
+
layer.hooks.beforeRender.call();
|
|
49
|
+
|
|
50
|
+
if (layer.masks.length > 0) {
|
|
51
|
+
// 清除上一次的模版缓存
|
|
52
|
+
_this2.rendererService.clear({
|
|
53
|
+
stencil: 0,
|
|
54
|
+
depth: 1,
|
|
55
|
+
framebuffer: null
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
layer.masks.map(function (m) {
|
|
59
|
+
m.hooks.beforeRenderData.call();
|
|
60
|
+
m.hooks.beforeRender.call();
|
|
61
|
+
m.render();
|
|
62
|
+
m.hooks.afterRender.call();
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
layer.render();
|
|
67
|
+
layer.hooks.afterRender.call();
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}, {
|
|
71
|
+
key: "setSubLayerInitOption",
|
|
72
|
+
value: function setSubLayerInitOption() {
|
|
73
|
+
var _colorAttribute$scale, _sizeAttribute$scale;
|
|
74
|
+
|
|
75
|
+
var _ref = this.parent.getLayerConfig(),
|
|
76
|
+
_ref$zIndex = _ref.zIndex,
|
|
77
|
+
zIndex = _ref$zIndex === void 0 ? 0 : _ref$zIndex,
|
|
78
|
+
_ref$opacity = _ref.opacity,
|
|
79
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
80
|
+
_ref$mask = _ref.mask,
|
|
81
|
+
mask = _ref$mask === void 0 ? false : _ref$mask,
|
|
82
|
+
_ref$stroke = _ref.stroke,
|
|
83
|
+
stroke = _ref$stroke === void 0 ? '#fff' : _ref$stroke,
|
|
84
|
+
_ref$strokeWidth = _ref.strokeWidth,
|
|
85
|
+
strokeWidth = _ref$strokeWidth === void 0 ? 0 : _ref$strokeWidth,
|
|
86
|
+
_ref$strokeOpacity = _ref.strokeOpacity,
|
|
87
|
+
strokeOpacity = _ref$strokeOpacity === void 0 ? 1 : _ref$strokeOpacity,
|
|
88
|
+
_ref$workerEnabled = _ref.workerEnabled,
|
|
89
|
+
workerEnabled = _ref$workerEnabled === void 0 ? false : _ref$workerEnabled,
|
|
90
|
+
sourceLayer = _ref.sourceLayer;
|
|
91
|
+
|
|
92
|
+
var source = this.parent.getSource();
|
|
93
|
+
var parentParserType = source.getParserType();
|
|
94
|
+
var colorAttribute = this.parent.getAttribute('color');
|
|
95
|
+
var basemapColor = (colorAttribute === null || colorAttribute === void 0 ? void 0 : (_colorAttribute$scale = colorAttribute.scale) === null || _colorAttribute$scale === void 0 ? void 0 : _colorAttribute$scale.field) || '#fff';
|
|
96
|
+
var sizeAttribute = this.parent.getAttribute('size');
|
|
97
|
+
var basemapSize = (sizeAttribute === null || sizeAttribute === void 0 ? void 0 : (_sizeAttribute$scale = sizeAttribute.scale) === null || _sizeAttribute$scale === void 0 ? void 0 : _sizeAttribute$scale.field) || 1;
|
|
98
|
+
var layerShape = getLayerShape(this.parent.type, this.parent);
|
|
99
|
+
this.initOptions = {
|
|
100
|
+
usage: 'basemap',
|
|
101
|
+
layerType: this.parent.type,
|
|
102
|
+
shape: layerShape,
|
|
103
|
+
zIndex: zIndex,
|
|
104
|
+
opacity: opacity,
|
|
105
|
+
sourceLayer: this.getSourceLayer(parentParserType, sourceLayer),
|
|
106
|
+
basemapColor: basemapColor,
|
|
107
|
+
basemapSize: basemapSize,
|
|
108
|
+
mask: getMaskValue(this.parent.type, mask),
|
|
109
|
+
stroke: stroke,
|
|
110
|
+
strokeWidth: strokeWidth,
|
|
111
|
+
strokeOpacity: strokeOpacity,
|
|
112
|
+
// worker
|
|
113
|
+
workerEnabled: workerEnabled
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
}]);
|
|
117
|
+
|
|
118
|
+
return BaseMapTileLayerManager;
|
|
119
|
+
}(Base);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { IModelUniform } from '@antv/l7-core';
|
|
2
|
+
import BaseModel from '../../core/BaseModel';
|
|
3
|
+
export default class TileModel extends BaseModel {
|
|
4
|
+
getUninforms(): IModelUniform;
|
|
5
|
+
private getTileLayer;
|
|
6
|
+
initModels(): never[];
|
|
7
|
+
clearModels(): void;
|
|
8
|
+
buildModels(): never[];
|
|
9
|
+
protected registerBuiltinAttributes(): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
|
|
5
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
6
|
+
|
|
7
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
8
|
+
|
|
9
|
+
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; } }
|
|
10
|
+
|
|
11
|
+
import BaseModel from "../../core/BaseModel";
|
|
12
|
+
import { TileLayer } from "../tileLayer/TileLayer";
|
|
13
|
+
import { MapTileLayer } from "../tileLayer/MapTileLayer";
|
|
14
|
+
|
|
15
|
+
var TileModel = /*#__PURE__*/function (_BaseModel) {
|
|
16
|
+
_inherits(TileModel, _BaseModel);
|
|
17
|
+
|
|
18
|
+
var _super = _createSuper(TileModel);
|
|
19
|
+
|
|
20
|
+
function TileModel() {
|
|
21
|
+
_classCallCheck(this, TileModel);
|
|
22
|
+
|
|
23
|
+
return _super.apply(this, arguments);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
_createClass(TileModel, [{
|
|
27
|
+
key: "getUninforms",
|
|
28
|
+
value: function getUninforms() {
|
|
29
|
+
return {};
|
|
30
|
+
}
|
|
31
|
+
}, {
|
|
32
|
+
key: "getTileLayer",
|
|
33
|
+
value: function getTileLayer(usage) {
|
|
34
|
+
switch (usage) {
|
|
35
|
+
case 'basemap':
|
|
36
|
+
return MapTileLayer;
|
|
37
|
+
|
|
38
|
+
default:
|
|
39
|
+
return TileLayer;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
key: "initModels",
|
|
44
|
+
value: function initModels() {
|
|
45
|
+
var source = this.layer.getSource();
|
|
46
|
+
|
|
47
|
+
var _this$layer$getLayerC = this.layer.getLayerConfig(),
|
|
48
|
+
usage = _this$layer$getLayerC.usage;
|
|
49
|
+
|
|
50
|
+
if (source !== null && source !== void 0 && source.data.isTile && !this.layer.tileLayer) {
|
|
51
|
+
var tileLayer = this.getTileLayer(usage);
|
|
52
|
+
this.layer.tileLayer = new tileLayer({
|
|
53
|
+
parent: this.layer,
|
|
54
|
+
rendererService: this.rendererService,
|
|
55
|
+
mapService: this.mapService,
|
|
56
|
+
layerService: this.layerService,
|
|
57
|
+
pickingService: this.pickingService,
|
|
58
|
+
transforms: source.transforms
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return this.buildModels();
|
|
63
|
+
}
|
|
64
|
+
}, {
|
|
65
|
+
key: "clearModels",
|
|
66
|
+
value: function clearModels() {}
|
|
67
|
+
}, {
|
|
68
|
+
key: "buildModels",
|
|
69
|
+
value: function buildModels() {
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
}, {
|
|
73
|
+
key: "registerBuiltinAttributes",
|
|
74
|
+
value: function registerBuiltinAttributes() {//
|
|
75
|
+
}
|
|
76
|
+
}]);
|
|
77
|
+
|
|
78
|
+
return TileModel;
|
|
79
|
+
}(BaseModel);
|
|
80
|
+
|
|
81
|
+
export { TileModel as default };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ILayer, IRendererService, ITileRenderService } from '@antv/l7-core';
|
|
2
|
+
/**
|
|
3
|
+
* 主要用于瓦片图层队列的渲染
|
|
4
|
+
*/
|
|
5
|
+
export declare class TileRenderService implements ITileRenderService {
|
|
6
|
+
private rendererService;
|
|
7
|
+
constructor(rendererService: IRendererService);
|
|
8
|
+
render(layers: ILayer[]): void;
|
|
9
|
+
renderMask(layer: ILayer): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* 主要用于瓦片图层队列的渲染
|
|
6
|
+
*/
|
|
7
|
+
export var TileRenderService = /*#__PURE__*/function () {
|
|
8
|
+
function TileRenderService(rendererService) {
|
|
9
|
+
_classCallCheck(this, TileRenderService);
|
|
10
|
+
|
|
11
|
+
this.rendererService = rendererService;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
_createClass(TileRenderService, [{
|
|
15
|
+
key: "render",
|
|
16
|
+
value: function render(layers) {
|
|
17
|
+
var _this = this;
|
|
18
|
+
|
|
19
|
+
layers.filter(function (layer) {
|
|
20
|
+
return layer.inited;
|
|
21
|
+
}).filter(function (layer) {
|
|
22
|
+
return layer.isVisible();
|
|
23
|
+
}).map(function (layer) {
|
|
24
|
+
layer.hooks.beforeRenderData.call();
|
|
25
|
+
layer.hooks.beforeRender.call();
|
|
26
|
+
|
|
27
|
+
if (layer.masks.length > 0) {
|
|
28
|
+
// 清除上一次的模版缓存
|
|
29
|
+
_this.rendererService.clear({
|
|
30
|
+
stencil: 0,
|
|
31
|
+
depth: 1,
|
|
32
|
+
framebuffer: null
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
layer.masks.map(function (m) {
|
|
36
|
+
m.hooks.beforeRenderData.call();
|
|
37
|
+
m.hooks.beforeRender.call();
|
|
38
|
+
m.render();
|
|
39
|
+
m.hooks.afterRender.call();
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
layer.render();
|
|
44
|
+
layer.hooks.afterRender.call();
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}, {
|
|
48
|
+
key: "renderMask",
|
|
49
|
+
value: function renderMask(layer) {
|
|
50
|
+
if (layer.inited && layer.isVisible() && layer.masks.length > 0) {
|
|
51
|
+
layer.hooks.beforeRender.call();
|
|
52
|
+
this.rendererService.clear({
|
|
53
|
+
stencil: 0,
|
|
54
|
+
depth: 1,
|
|
55
|
+
framebuffer: null
|
|
56
|
+
});
|
|
57
|
+
layer.masks.map(function (m) {
|
|
58
|
+
m.hooks.beforeRender.call();
|
|
59
|
+
m.render();
|
|
60
|
+
m.hooks.afterRender.call();
|
|
61
|
+
});
|
|
62
|
+
layer.hooks.afterRender.call();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}]);
|
|
66
|
+
|
|
67
|
+
return TileRenderService;
|
|
68
|
+
}();
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ILayer, IScaleValue } from '@antv/l7-core';
|
|
2
|
+
import EventEmitter from 'eventemitter3';
|
|
3
|
+
export interface ITileStyleService {
|
|
4
|
+
setConfig(key: string, value: any): void;
|
|
5
|
+
checkConfig(layer: ILayer): void;
|
|
6
|
+
on(event: string, fn: (...args: any[]) => void): void;
|
|
7
|
+
getAttributeScale(layer: ILayer, name: string): IScaleValue;
|
|
8
|
+
}
|
|
9
|
+
export declare class TileStyleService extends EventEmitter {
|
|
10
|
+
cacheConfig: Map<string, any>;
|
|
11
|
+
checkConfigList: string[];
|
|
12
|
+
constructor();
|
|
13
|
+
setConfig(key: string, value: any): void;
|
|
14
|
+
removeConfig(key: string): void;
|
|
15
|
+
checkConfig(layer: ILayer): void;
|
|
16
|
+
getAttributeScale(layer: ILayer, name: string): IScaleValue;
|
|
17
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
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
|
+
import { isEqual } from 'lodash';
|
|
15
|
+
export var TileStyleService = /*#__PURE__*/function (_EventEmitter) {
|
|
16
|
+
_inherits(TileStyleService, _EventEmitter);
|
|
17
|
+
|
|
18
|
+
var _super = _createSuper(TileStyleService);
|
|
19
|
+
|
|
20
|
+
function TileStyleService() {
|
|
21
|
+
var _this;
|
|
22
|
+
|
|
23
|
+
_classCallCheck(this, TileStyleService);
|
|
24
|
+
|
|
25
|
+
_this = _super.call(this);
|
|
26
|
+
|
|
27
|
+
_defineProperty(_assertThisInitialized(_this), "checkConfigList", []);
|
|
28
|
+
|
|
29
|
+
_this.cacheConfig = new Map();
|
|
30
|
+
return _this;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
_createClass(TileStyleService, [{
|
|
34
|
+
key: "setConfig",
|
|
35
|
+
value: function setConfig(key, value) {
|
|
36
|
+
if (!this.checkConfigList.includes(key)) {
|
|
37
|
+
this.checkConfigList.push(key);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
this.cacheConfig.set(key, value);
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
key: "removeConfig",
|
|
44
|
+
value: function removeConfig(key) {
|
|
45
|
+
var configIndex = this.checkConfigList.indexOf(key);
|
|
46
|
+
|
|
47
|
+
if (configIndex > -1) {
|
|
48
|
+
this.cacheConfig.delete(key);
|
|
49
|
+
this.checkConfigList.splice(configIndex, 1);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}, {
|
|
53
|
+
key: "checkConfig",
|
|
54
|
+
value: function checkConfig(layer) {
|
|
55
|
+
var _this2 = this;
|
|
56
|
+
|
|
57
|
+
if (!layer.inited) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
var layerConfig = layer.getLayerConfig();
|
|
62
|
+
var updateConfigs = [];
|
|
63
|
+
this.checkConfigList.map(function (key) {
|
|
64
|
+
var cacheConfig = _this2.cacheConfig.get(key);
|
|
65
|
+
|
|
66
|
+
var currentConfig;
|
|
67
|
+
|
|
68
|
+
if (['color', 'size', 'shape'].includes(key)) {
|
|
69
|
+
var _layer$getAttribute;
|
|
70
|
+
|
|
71
|
+
currentConfig = (_layer$getAttribute = layer.getAttribute(key)) === null || _layer$getAttribute === void 0 ? void 0 : _layer$getAttribute.scale;
|
|
72
|
+
} else {
|
|
73
|
+
if (!(key in layerConfig)) {
|
|
74
|
+
return;
|
|
75
|
+
} // @ts-ignore
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
currentConfig = layerConfig[key];
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if (!isEqual(cacheConfig, currentConfig)) {
|
|
82
|
+
updateConfigs.push(key);
|
|
83
|
+
|
|
84
|
+
_this2.setConfig(key, currentConfig);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
if (updateConfigs.length > 0) {
|
|
89
|
+
console.warn('tile config cache update!', updateConfigs);
|
|
90
|
+
this.emit('updateConfig', updateConfigs);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}, {
|
|
94
|
+
key: "getAttributeScale",
|
|
95
|
+
value: function getAttributeScale(layer, name) {
|
|
96
|
+
var attribute = layer.getAttribute(name);
|
|
97
|
+
var scaleValue = {
|
|
98
|
+
field: undefined,
|
|
99
|
+
values: undefined,
|
|
100
|
+
callback: undefined
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
if (attribute && attribute.scale) {
|
|
104
|
+
var _attribute$scale = attribute.scale,
|
|
105
|
+
field = _attribute$scale.field,
|
|
106
|
+
values = _attribute$scale.values,
|
|
107
|
+
callback = _attribute$scale.callback;
|
|
108
|
+
scaleValue.field = field;
|
|
109
|
+
scaleValue.values = values;
|
|
110
|
+
scaleValue.callback = callback;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return scaleValue;
|
|
114
|
+
}
|
|
115
|
+
}]);
|
|
116
|
+
|
|
117
|
+
return TileStyleService;
|
|
118
|
+
}(EventEmitter);
|