@antv/l7-layers 2.9.27-alpha.4 → 2.9.27
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/core/BaseLayer.js +2 -1
- package/es/core/interface.d.ts +1 -0
- package/es/raster/index.js +1 -2
- package/es/raster/models/raster.js +2 -2
- package/es/raster/models/rasterTile.d.ts +18 -0
- package/es/raster/models/rasterTile.js +140 -0
- package/es/raster/shaders/raster_2d_frag.glsl +0 -2
- package/es/raster/shaders/raster_2d_vert.glsl +0 -1
- package/es/tile/manager/baseMapTileLayerManager.d.ts +3 -25
- package/es/tile/manager/baseMapTileLayerManager.js +31 -119
- package/es/tile/manager/baseTileManager.d.ts +27 -0
- package/es/tile/manager/baseTileManager.js +107 -0
- package/es/tile/manager/tileLayerManager.d.ts +4 -26
- package/es/tile/manager/tileLayerManager.js +64 -142
- package/es/tile/manager/tilePickerManager.d.ts +1 -0
- package/es/tile/manager/tilePickerManager.js +5 -0
- package/es/tile/models/tileModel.d.ts +1 -0
- package/es/tile/models/tileModel.js +3 -0
- package/es/tile/tileFactory/rasterData.js +9 -11
- package/es/tile/tileFactory/rasterDataLayer.d.ts +1 -1
- package/es/tile/tileFactory/rasterDataLayer.js +1 -1
- package/es/tile/tileLayer/baseMapTileLayer.d.ts +1 -0
- package/es/tile/tileLayer/baseMapTileLayer.js +7 -0
- package/es/tile/tileLayer/baseTileLayer.d.ts +1 -0
- package/es/tile/tileLayer/baseTileLayer.js +12 -1
- package/es/tile/tmsMapTileLayer.js +2 -2
- package/es/tile/tmsTileLayer.js +2 -2
- package/es/tile/utils.d.ts +1 -0
- package/es/tile/utils.js +13 -0
- package/lib/core/BaseLayer.js +2 -1
- package/lib/raster/index.js +1 -2
- package/lib/raster/models/raster.js +2 -2
- package/lib/raster/models/rasterTile.js +154 -0
- package/lib/raster/shaders/raster_2d_frag.glsl +0 -2
- package/lib/raster/shaders/raster_2d_vert.glsl +0 -1
- package/lib/tile/manager/baseMapTileLayerManager.js +33 -121
- package/lib/tile/manager/baseTileManager.js +121 -0
- package/lib/tile/manager/tileLayerManager.js +66 -144
- package/lib/tile/manager/tilePickerManager.js +5 -0
- package/lib/tile/models/tileModel.js +3 -0
- package/lib/tile/tileFactory/rasterData.js +9 -11
- package/lib/tile/tileFactory/rasterDataLayer.js +2 -2
- package/lib/tile/tileLayer/baseMapTileLayer.js +7 -0
- package/lib/tile/tileLayer/baseTileLayer.js +12 -1
- package/lib/tile/tmsMapTileLayer.js +1 -1
- package/lib/tile/tmsTileLayer.js +1 -1
- package/lib/tile/utils.js +16 -0
- package/package.json +6 -6
|
@@ -1,112 +1,47 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
1
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
4
2
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
+
import _inherits from "@babel/runtime/helpers/inherits";
|
|
4
|
+
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
5
|
+
import _getPrototypeOf from "@babel/runtime/helpers/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 { TileManager } from "./baseTileManager";
|
|
5
12
|
import { generateColorRamp } from '@antv/l7-utils';
|
|
6
|
-
import {
|
|
7
|
-
import { getLayerShape, getMaskValue } from "../utils";
|
|
13
|
+
import { getLayerShape, getMaskValue, updateLayersConfig } from "../utils";
|
|
8
14
|
import TileConfigManager from "./tileConfigManager";
|
|
9
15
|
import TilePickManager from "./tilePickerManager";
|
|
10
|
-
export var TileLayerManager = /*#__PURE__*/function () {
|
|
16
|
+
export var TileLayerManager = /*#__PURE__*/function (_TileManager) {
|
|
17
|
+
_inherits(TileLayerManager, _TileManager);
|
|
18
|
+
|
|
19
|
+
var _super = _createSuper(TileLayerManager);
|
|
20
|
+
|
|
11
21
|
function TileLayerManager(parent, mapService, rendererService, pickingService, transforms) {
|
|
22
|
+
var _this;
|
|
23
|
+
|
|
12
24
|
_classCallCheck(this, TileLayerManager);
|
|
13
25
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
this.setConfigListener();
|
|
23
|
-
this.initTileFactory();
|
|
24
|
-
}
|
|
26
|
+
_this = _super.call(this);
|
|
27
|
+
_this.parent = parent;
|
|
28
|
+
_this.children = parent.layerChildren;
|
|
29
|
+
_this.mapService = mapService;
|
|
30
|
+
_this.rendererService = rendererService;
|
|
31
|
+
_this.transforms = transforms;
|
|
32
|
+
_this.tilePickManager = new TilePickManager(parent, rendererService, pickingService, _this.children);
|
|
33
|
+
_this.tileConfigManager = new TileConfigManager();
|
|
25
34
|
|
|
26
|
-
|
|
27
|
-
key: "createTile",
|
|
28
|
-
value: function createTile(tile) {
|
|
29
|
-
return this.tileFactory.createTile(tile, this.initOptions);
|
|
30
|
-
}
|
|
31
|
-
}, {
|
|
32
|
-
key: "updateLayersConfig",
|
|
33
|
-
value: function updateLayersConfig(layers, key, value) {
|
|
34
|
-
layers.map(function (layer) {
|
|
35
|
-
if (key === 'mask') {
|
|
36
|
-
// Tip: 栅格瓦片生效、设置全局的 mask、瓦片被全局的 mask 影响
|
|
37
|
-
layer.style({
|
|
38
|
-
mask: value
|
|
39
|
-
});
|
|
40
|
-
} else {
|
|
41
|
-
layer.updateLayerConfig(_defineProperty({}, key, value));
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
}, {
|
|
46
|
-
key: "addChild",
|
|
47
|
-
value: function addChild(layer) {
|
|
48
|
-
this.children.push(layer);
|
|
49
|
-
}
|
|
50
|
-
}, {
|
|
51
|
-
key: "addChilds",
|
|
52
|
-
value: function addChilds(layers) {
|
|
53
|
-
var _this$children;
|
|
35
|
+
_this.setSubLayerInitOption();
|
|
54
36
|
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
}, {
|
|
58
|
-
key: "removeChilds",
|
|
59
|
-
value: function removeChilds(layerIDList) {
|
|
60
|
-
var refresh = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
61
|
-
var remveLayerList = [];
|
|
62
|
-
var cacheLayerList = [];
|
|
63
|
-
this.children.filter(function (child) {
|
|
64
|
-
layerIDList.includes(child.id) ? remveLayerList.push(child) : cacheLayerList.push(child);
|
|
65
|
-
});
|
|
66
|
-
remveLayerList.map(function (layer) {
|
|
67
|
-
return layer.destroy(refresh);
|
|
68
|
-
});
|
|
69
|
-
this.children = cacheLayerList;
|
|
70
|
-
}
|
|
71
|
-
}, {
|
|
72
|
-
key: "removeChild",
|
|
73
|
-
value: function removeChild(layer) {
|
|
74
|
-
var layerIndex = this.children.indexOf(layer);
|
|
37
|
+
_this.setConfigListener();
|
|
75
38
|
|
|
76
|
-
|
|
77
|
-
this.children.splice(layerIndex, 1);
|
|
78
|
-
}
|
|
39
|
+
_this.initTileFactory();
|
|
79
40
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
value: function getChilds(layerIDList) {
|
|
85
|
-
return this.children.filter(function (child) {
|
|
86
|
-
return layerIDList.includes(child.id);
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}, {
|
|
90
|
-
key: "getChild",
|
|
91
|
-
value: function getChild(layerID) {
|
|
92
|
-
return this.children.filter(function (child) {
|
|
93
|
-
return child.id === layerID;
|
|
94
|
-
})[0];
|
|
95
|
-
}
|
|
96
|
-
}, {
|
|
97
|
-
key: "clearChild",
|
|
98
|
-
value: function clearChild() {
|
|
99
|
-
this.children.forEach(function (layer) {
|
|
100
|
-
layer.destroy();
|
|
101
|
-
});
|
|
102
|
-
this.children.slice(0, this.children.length);
|
|
103
|
-
}
|
|
104
|
-
}, {
|
|
105
|
-
key: "hasChild",
|
|
106
|
-
value: function hasChild(layer) {
|
|
107
|
-
return this.children.includes(layer);
|
|
108
|
-
}
|
|
109
|
-
}, {
|
|
41
|
+
return _this;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
_createClass(TileLayerManager, [{
|
|
110
45
|
key: "render",
|
|
111
46
|
value: function render() {
|
|
112
47
|
var _this$tileConfigManag, _this$tilePickManager;
|
|
@@ -122,8 +57,8 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
122
57
|
return (_this$tilePickManager2 = this.tilePickManager) === null || _this$tilePickManager2 === void 0 ? void 0 : _this$tilePickManager2.pickRender(this.children, target);
|
|
123
58
|
}
|
|
124
59
|
}, {
|
|
125
|
-
key: "
|
|
126
|
-
value: function
|
|
60
|
+
key: "setSubLayerInitOption",
|
|
61
|
+
value: function setSubLayerInitOption() {
|
|
127
62
|
var _source$data;
|
|
128
63
|
|
|
129
64
|
var _ref = this.parent.getLayerConfig(),
|
|
@@ -175,21 +110,6 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
175
110
|
|
|
176
111
|
var parentParserType = source.getParserType();
|
|
177
112
|
var layerShape = getLayerShape(this.parent.type, this.parent);
|
|
178
|
-
var colorTexture = undefined;
|
|
179
|
-
|
|
180
|
-
if (rampColors) {
|
|
181
|
-
// 构建统一的色带贴图
|
|
182
|
-
var createTexture2D = this.rendererService.createTexture2D;
|
|
183
|
-
this.rampColorsData = generateColorRamp(rampColors);
|
|
184
|
-
var imageData = generateColorRamp(rampColors);
|
|
185
|
-
colorTexture = createTexture2D({
|
|
186
|
-
data: this.rampColorsData.data,
|
|
187
|
-
width: imageData.width,
|
|
188
|
-
height: imageData.height,
|
|
189
|
-
flipY: false
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
|
|
193
113
|
this.initOptions = {
|
|
194
114
|
layerType: this.parent.type,
|
|
195
115
|
transforms: this.transforms,
|
|
@@ -210,8 +130,6 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
210
130
|
clampHigh: clampHigh,
|
|
211
131
|
domain: domain,
|
|
212
132
|
rampColors: rampColors,
|
|
213
|
-
rampColorsData: this.rampColorsData,
|
|
214
|
-
colorTexture: colorTexture,
|
|
215
133
|
// worker
|
|
216
134
|
workerEnabled: workerEnabled,
|
|
217
135
|
pixelConstant: pixelConstant,
|
|
@@ -220,22 +138,24 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
220
138
|
pixelConstantB: pixelConstantB,
|
|
221
139
|
pixelConstantRGB: pixelConstantRGB
|
|
222
140
|
};
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
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;
|
|
233
153
|
}
|
|
234
154
|
}
|
|
235
155
|
}, {
|
|
236
156
|
key: "setConfigListener",
|
|
237
157
|
value: function setConfigListener() {
|
|
238
|
-
var
|
|
158
|
+
var _this2 = this;
|
|
239
159
|
|
|
240
160
|
// RasterLayer PolygonLayer LineLayer PointLayer
|
|
241
161
|
// All Tile Layer Need Listen
|
|
@@ -268,7 +188,7 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
268
188
|
|
|
269
189
|
this.tileConfigManager.on('updateConfig', function (updateConfigs) {
|
|
270
190
|
updateConfigs.map(function (key) {
|
|
271
|
-
|
|
191
|
+
_this2.updateStyle(key);
|
|
272
192
|
|
|
273
193
|
return '';
|
|
274
194
|
});
|
|
@@ -277,7 +197,7 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
277
197
|
}, {
|
|
278
198
|
key: "updateStyle",
|
|
279
199
|
value: function updateStyle(style) {
|
|
280
|
-
var
|
|
200
|
+
var _this3 = this;
|
|
281
201
|
|
|
282
202
|
var updateValue = null;
|
|
283
203
|
|
|
@@ -292,7 +212,7 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
292
212
|
|
|
293
213
|
updateValue = scaleValue;
|
|
294
214
|
this.children.map(function (child) {
|
|
295
|
-
|
|
215
|
+
_this3.tileFactory.setStyleAttributeField(child, style, scaleValue);
|
|
296
216
|
|
|
297
217
|
return '';
|
|
298
218
|
});
|
|
@@ -306,10 +226,18 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
306
226
|
|
|
307
227
|
var config = layerConfig[style];
|
|
308
228
|
updateValue = config;
|
|
309
|
-
|
|
229
|
+
updateLayersConfig(this.children, style, config);
|
|
310
230
|
|
|
311
231
|
if (style === 'rampColors' && config) {
|
|
312
|
-
|
|
232
|
+
var createTexture2D = this.rendererService.createTexture2D;
|
|
233
|
+
var imageData = generateColorRamp(config);
|
|
234
|
+
this.initOptions.colorTexture = createTexture2D({
|
|
235
|
+
data: imageData.data,
|
|
236
|
+
width: imageData.width,
|
|
237
|
+
height: imageData.height,
|
|
238
|
+
flipY: false
|
|
239
|
+
});
|
|
240
|
+
updateLayersConfig(this.children, 'colorTexture', this.initOptions.colorTexture);
|
|
313
241
|
}
|
|
314
242
|
} // @ts-ignore
|
|
315
243
|
|
|
@@ -317,17 +245,11 @@ export var TileLayerManager = /*#__PURE__*/function () {
|
|
|
317
245
|
this.initOptions[style] = updateValue;
|
|
318
246
|
}
|
|
319
247
|
}, {
|
|
320
|
-
key: "
|
|
321
|
-
value: function
|
|
322
|
-
|
|
323
|
-
var TileFactory = getTileFactory(this.parent.type, source.parser);
|
|
324
|
-
this.tileFactory = new TileFactory({
|
|
325
|
-
parent: this.parent,
|
|
326
|
-
mapService: this.mapService,
|
|
327
|
-
rendererService: this.rendererService
|
|
328
|
-
});
|
|
248
|
+
key: "destroy",
|
|
249
|
+
value: function destroy() {
|
|
250
|
+
this.tilePickManager.destroy();
|
|
329
251
|
}
|
|
330
252
|
}]);
|
|
331
253
|
|
|
332
254
|
return TileLayerManager;
|
|
333
|
-
}();
|
|
255
|
+
}(TileManager);
|
|
@@ -181,6 +181,11 @@ var TilePickManager = /*#__PURE__*/function (_EventEmitter) {
|
|
|
181
181
|
layer.hooks.afterRender.call();
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
|
+
}, {
|
|
185
|
+
key: "destroy",
|
|
186
|
+
value: function destroy() {
|
|
187
|
+
this.removeAllListeners();
|
|
188
|
+
}
|
|
184
189
|
}]);
|
|
185
190
|
|
|
186
191
|
return TilePickManager;
|
|
@@ -30,16 +30,15 @@ var RasterTiffTile = /*#__PURE__*/function (_TileFactory) {
|
|
|
30
30
|
_createClass(RasterTiffTile, [{
|
|
31
31
|
key: "createTile",
|
|
32
32
|
value: function createTile(tile, initOptions) {
|
|
33
|
-
var
|
|
33
|
+
var colorTexture = initOptions.colorTexture,
|
|
34
|
+
opacity = initOptions.opacity,
|
|
34
35
|
domain = initOptions.domain,
|
|
35
36
|
clampHigh = initOptions.clampHigh,
|
|
36
37
|
clampLow = initOptions.clampLow,
|
|
37
|
-
rampColors = initOptions.rampColors,
|
|
38
|
-
rampColorsData = initOptions.rampColorsData,
|
|
39
38
|
mask = initOptions.mask;
|
|
40
|
-
var
|
|
39
|
+
var rasterData = tile.data;
|
|
41
40
|
|
|
42
|
-
if (!
|
|
41
|
+
if (!rasterData.data) {
|
|
43
42
|
console.warn('raster data not exist!');
|
|
44
43
|
return {
|
|
45
44
|
layers: [],
|
|
@@ -50,20 +49,19 @@ var RasterTiffTile = /*#__PURE__*/function (_TileFactory) {
|
|
|
50
49
|
var layer = new RasterDataLayer({
|
|
51
50
|
visible: tile.isVisible,
|
|
52
51
|
mask: mask
|
|
53
|
-
}).source(
|
|
52
|
+
}).source(rasterData.data, {
|
|
54
53
|
parser: {
|
|
55
54
|
type: 'raster',
|
|
56
|
-
width:
|
|
57
|
-
height:
|
|
55
|
+
width: rasterData.width,
|
|
56
|
+
height: rasterData.height,
|
|
58
57
|
extent: tile.bboxPolygon.bbox
|
|
59
58
|
}
|
|
60
59
|
}).style({
|
|
60
|
+
colorTexture: colorTexture,
|
|
61
61
|
opacity: opacity,
|
|
62
62
|
domain: domain,
|
|
63
63
|
clampHigh: clampHigh,
|
|
64
|
-
clampLow: clampLow
|
|
65
|
-
rampColors: rampColors,
|
|
66
|
-
rampColorsData: rampColorsData
|
|
64
|
+
clampLow: clampLow
|
|
67
65
|
});
|
|
68
66
|
this.emitEvent([layer], false);
|
|
69
67
|
registerLayers(this.parentLayer, [layer]);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import BaseLayer from '../../core/BaseLayer';
|
|
2
2
|
import { IRasterLayerStyleOptions } from '../../core/interface';
|
|
3
|
-
import RasterModel from '../../raster/models/
|
|
3
|
+
import RasterModel from '../../raster/models/rasterTile';
|
|
4
4
|
export default class RasterTiffLayer extends BaseLayer<Partial<IRasterLayerStyleOptions>> {
|
|
5
5
|
type: string;
|
|
6
6
|
buildModels(): void;
|
|
@@ -11,7 +11,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
11
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
12
|
|
|
13
13
|
import BaseLayer from "../../core/BaseLayer";
|
|
14
|
-
import RasterModel from "../../raster/models/
|
|
14
|
+
import RasterModel from "../../raster/models/rasterTile";
|
|
15
15
|
|
|
16
16
|
var RasterTiffLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
17
17
|
_inherits(RasterTiffLayer, _BaseLayer);
|
|
@@ -180,6 +180,13 @@ var BaseTileLayer = /*#__PURE__*/function () {
|
|
|
180
180
|
zoom: zoom
|
|
181
181
|
};
|
|
182
182
|
}
|
|
183
|
+
}, {
|
|
184
|
+
key: "destroy",
|
|
185
|
+
value: function destroy() {
|
|
186
|
+
var _this$tilesetManager3;
|
|
187
|
+
|
|
188
|
+
(_this$tilesetManager3 = this.tilesetManager) === null || _this$tilesetManager3 === void 0 ? void 0 : _this$tilesetManager3.destroy();
|
|
189
|
+
}
|
|
183
190
|
}]);
|
|
184
191
|
|
|
185
192
|
return BaseTileLayer;
|
|
@@ -99,7 +99,8 @@ var BaseTileLayer = /*#__PURE__*/function () {
|
|
|
99
99
|
key: "pickLayers",
|
|
100
100
|
value: function pickLayers(target) {
|
|
101
101
|
return this.tileLayerManager.pickLayers(target);
|
|
102
|
-
}
|
|
102
|
+
} // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
103
|
+
|
|
103
104
|
}, {
|
|
104
105
|
key: "tileLoaded",
|
|
105
106
|
value: function tileLoaded(tile) {//
|
|
@@ -363,6 +364,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
|
|
|
363
364
|
if (!this.tilesetManager) {
|
|
364
365
|
return;
|
|
365
366
|
} // 瓦片数据加载成功
|
|
367
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
366
368
|
|
|
367
369
|
|
|
368
370
|
this.tilesetManager.on('tile-loaded', function (tile) {// 将事件抛出,图层上可以监听使用
|
|
@@ -372,6 +374,7 @@ var BaseTileLayer = /*#__PURE__*/function () {
|
|
|
372
374
|
// 将事件抛出,图层上可以监听使用
|
|
373
375
|
_this6.tileUnLoad(tile);
|
|
374
376
|
}); // 瓦片数据加载失败
|
|
377
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
375
378
|
|
|
376
379
|
this.tilesetManager.on('tile-error', function (error, tile) {
|
|
377
380
|
// 将事件抛出,图层上可以监听使用
|
|
@@ -401,6 +404,14 @@ var BaseTileLayer = /*#__PURE__*/function () {
|
|
|
401
404
|
zoom: zoom
|
|
402
405
|
};
|
|
403
406
|
}
|
|
407
|
+
}, {
|
|
408
|
+
key: "destroy",
|
|
409
|
+
value: function destroy() {
|
|
410
|
+
var _this$tilesetManager3;
|
|
411
|
+
|
|
412
|
+
(_this$tilesetManager3 = this.tilesetManager) === null || _this$tilesetManager3 === void 0 ? void 0 : _this$tilesetManager3.destroy();
|
|
413
|
+
this.tileLayerManager.destroy();
|
|
414
|
+
}
|
|
404
415
|
}]);
|
|
405
416
|
|
|
406
417
|
return BaseTileLayer;
|
|
@@ -12,7 +12,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
12
12
|
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; } }
|
|
13
13
|
|
|
14
14
|
import BaseTileLayer from "./tileLayer/baseMapTileLayer";
|
|
15
|
-
import { tileAllLoad } from "./utils";
|
|
15
|
+
import { tileAllLoad, updateLayersConfig } from "./utils";
|
|
16
16
|
export var TMSBaseMapTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
17
17
|
_inherits(TMSBaseMapTileLayer, _BaseTileLayer);
|
|
18
18
|
|
|
@@ -108,7 +108,7 @@ export var TMSBaseMapTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
|
108
108
|
var _this3 = this;
|
|
109
109
|
|
|
110
110
|
this.emitTileVisibleEvent(tile, function () {
|
|
111
|
-
|
|
111
|
+
updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
112
112
|
|
|
113
113
|
_this3.layerService.reRender();
|
|
114
114
|
});
|
package/es/tile/tmsTileLayer.js
CHANGED
|
@@ -12,7 +12,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
12
12
|
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; } }
|
|
13
13
|
|
|
14
14
|
import BaseTileLayer from "./tileLayer/baseTileLayer";
|
|
15
|
-
import { tileAllLoad } from "./utils";
|
|
15
|
+
import { tileAllLoad, updateLayersConfig } from "./utils";
|
|
16
16
|
export var TMSTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
17
17
|
_inherits(TMSTileLayer, _BaseTileLayer);
|
|
18
18
|
|
|
@@ -112,7 +112,7 @@ export var TMSTileLayer = /*#__PURE__*/function (_BaseTileLayer) {
|
|
|
112
112
|
var _this3 = this;
|
|
113
113
|
|
|
114
114
|
this.emitTileVisibleEvent(tile, function () {
|
|
115
|
-
|
|
115
|
+
updateLayersConfig(layers, 'visible', tile.isVisible);
|
|
116
116
|
|
|
117
117
|
_this3.layerService.reRender();
|
|
118
118
|
});
|
package/es/tile/utils.d.ts
CHANGED
|
@@ -15,3 +15,4 @@ export declare function isTileLoaded(tile: Tile): boolean;
|
|
|
15
15
|
export declare function isTileChildLoaded(tile: Tile): boolean;
|
|
16
16
|
export declare function isTileParentLoaded(tile: Tile): boolean;
|
|
17
17
|
export declare function tileAllLoad(tile: Tile, callback: () => void): void;
|
|
18
|
+
export declare function updateLayersConfig(layers: ILayer[], key: string, value: any): void;
|
package/es/tile/utils.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
1
2
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
3
|
import { createLayerContainer } from '@antv/l7-core';
|
|
3
4
|
import { DOM } from '@antv/l7-utils';
|
|
@@ -158,4 +159,16 @@ export function tileAllLoad(tile, callback) {
|
|
|
158
159
|
window.clearInterval(timer);
|
|
159
160
|
}
|
|
160
161
|
}, 36);
|
|
162
|
+
}
|
|
163
|
+
export function updateLayersConfig(layers, key, value) {
|
|
164
|
+
layers.map(function (layer) {
|
|
165
|
+
if (key === 'mask') {
|
|
166
|
+
// Tip: 栅格瓦片生效、设置全局的 mask、瓦片被全局的 mask 影响
|
|
167
|
+
layer.style({
|
|
168
|
+
mask: value
|
|
169
|
+
});
|
|
170
|
+
} else {
|
|
171
|
+
layer.updateLayerConfig(_defineProperty({}, key, value));
|
|
172
|
+
}
|
|
173
|
+
});
|
|
161
174
|
}
|
package/lib/core/BaseLayer.js
CHANGED
|
@@ -949,7 +949,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
949
949
|
}, {
|
|
950
950
|
key: "destroy",
|
|
951
951
|
value: function destroy() {
|
|
952
|
-
var _this$multiPassRender, _this$layerModel2;
|
|
952
|
+
var _this$multiPassRender, _this$layerModel2, _this$tileLayer;
|
|
953
953
|
|
|
954
954
|
var refresh = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
955
955
|
|
|
@@ -977,6 +977,7 @@ var BaseLayer = (_dec = (0, _l7Core.lazyInject)(_l7Core.TYPES.IGlobalConfigServi
|
|
|
977
977
|
this.hooks.afterDestroy.call(); // Tip: 清除各个图层自定义的 models 资源
|
|
978
978
|
|
|
979
979
|
(_this$layerModel2 = this.layerModel) === null || _this$layerModel2 === void 0 ? void 0 : _this$layerModel2.clearModels(refresh);
|
|
980
|
+
(_this$tileLayer = this.tileLayer) === null || _this$tileLayer === void 0 ? void 0 : _this$tileLayer.destroy();
|
|
980
981
|
this.models = [];
|
|
981
982
|
this.layerService.cleanRemove(this, refresh);
|
|
982
983
|
this.emit('remove', {
|
package/lib/raster/index.js
CHANGED
|
@@ -32,10 +32,10 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
32
32
|
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; } }
|
|
33
33
|
|
|
34
34
|
/* babel-plugin-inline-import '../shaders/raster_2d_frag.glsl' */
|
|
35
|
-
var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n if (value == u_noDataValue)\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n
|
|
35
|
+
var rasterFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nuniform sampler2D u_colorTexture;\nuniform float u_min;\nuniform float u_max;\nuniform vec2 u_domain;\nuniform float u_noDataValue;\nuniform bool u_clampLow: true;\nuniform bool u_clampHigh: true;\nvarying vec2 v_texCoord;\n\nvoid main() {\n\n float value = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y)).r;\n if (value == u_noDataValue)\n gl_FragColor = vec4(0.0, 0, 0, 0.0);\n else if ((!u_clampLow && value < u_domain[0]) || (!u_clampHigh && value > u_domain[1]))\n gl_FragColor = vec4(0, 0, 0, 0);\n else {\n float normalisedValue =(value - u_domain[0]) / (u_domain[1] -u_domain[0]);\n vec4 color = texture2D(u_colorTexture,vec2(normalisedValue, 0));\n gl_FragColor = color;\n gl_FragColor.a = gl_FragColor.a * u_opacity ;\n }\n}\n";
|
|
36
36
|
|
|
37
37
|
/* babel-plugin-inline-import '../shaders/raster_2d_vert.glsl' */
|
|
38
|
-
var rasterVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n
|
|
38
|
+
var rasterVert = "precision highp float;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nattribute vec3 a_Position;\nattribute vec2 a_Uv;\nvarying vec2 v_texCoord;\n#pragma include \"projection\"\nvoid main() {\n v_texCoord = a_Uv;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * (vec4(project_pos.xy,0., 1.0));\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\n }\n}\n";
|
|
39
39
|
|
|
40
40
|
var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
41
41
|
(0, _inherits2.default)(RasterModel, _BaseModel);
|