@antv/l7-layers 2.9.32-alpha.4 → 2.9.32-alpha.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/core/BaseLayer.d.ts +1 -0
- package/es/core/BaseLayer.js +20 -3
- package/es/core/interface.d.ts +4 -0
- package/es/mask/index.js +7 -0
- package/es/mask/models/index.d.ts +1 -1
- package/es/mask/models/index.js +3 -1
- package/es/plugins/DataMappingPlugin.d.ts +0 -1
- package/es/plugins/DataMappingPlugin.js +1 -8
- package/es/plugins/ShaderUniformPlugin.d.ts +5 -1
- package/es/plugins/ShaderUniformPlugin.js +10 -11
- package/es/raster/index.d.ts +1 -1
- package/es/raster/index.js +4 -0
- package/es/raster/models/index.d.ts +1 -1
- package/es/raster/models/index.js +2 -0
- package/es/raster/models/raster.d.ts +2 -1
- package/es/raster/models/raster.js +118 -44
- package/es/raster/models/rasterRgb.d.ts +20 -0
- package/es/raster/models/rasterRgb.js +226 -0
- package/es/raster/shaders/raster_rgb_frag.glsl +12 -0
- package/es/tile/tileFactory/base.d.ts +1 -1
- package/es/tile/tileFactory/base.js +8 -6
- package/es/tile/tileFactory/index.d.ts +1 -1
- package/es/tile/tileFactory/index.js +4 -0
- package/es/tile/tileFactory/line.d.ts +1 -1
- package/es/tile/tileFactory/line.js +8 -8
- package/es/tile/tileFactory/mask.d.ts +12 -0
- package/es/tile/tileFactory/mask.js +63 -0
- package/es/tile/tileFactory/point.d.ts +1 -1
- package/es/tile/tileFactory/point.js +8 -8
- package/es/tile/tileFactory/rasterData.js +6 -1
- package/es/tile/tileFactory/rasterDataLayer.d.ts +2 -1
- package/es/tile/tileFactory/rasterDataLayer.js +6 -1
- package/es/tile/tileFactory/vectorLayer.d.ts +6 -3
- package/es/tile/tileFactory/vectorLayer.js +4 -0
- package/es/utils/layerData.js +9 -6
- package/lib/core/BaseLayer.js +20 -3
- package/lib/mask/index.js +8 -0
- package/lib/mask/models/index.js +4 -1
- package/lib/plugins/DataMappingPlugin.js +1 -8
- package/lib/plugins/ShaderUniformPlugin.js +10 -11
- package/lib/raster/index.js +4 -0
- package/lib/raster/models/index.js +3 -0
- package/lib/raster/models/raster.js +120 -44
- package/lib/raster/models/rasterRgb.js +241 -0
- package/lib/raster/shaders/raster_rgb_frag.glsl +12 -0
- package/lib/tile/tileFactory/base.js +8 -7
- package/lib/tile/tileFactory/index.js +5 -0
- package/lib/tile/tileFactory/line.js +8 -8
- package/lib/tile/tileFactory/mask.js +74 -0
- package/lib/tile/tileFactory/point.js +8 -8
- package/lib/tile/tileFactory/rasterData.js +6 -1
- package/lib/tile/tileFactory/rasterDataLayer.js +7 -1
- package/lib/tile/tileFactory/vectorLayer.js +5 -0
- package/lib/utils/layerData.js +12 -8
- package/package.json +6 -6
package/es/core/BaseLayer.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { Container } from 'inversify';
|
|
|
6
6
|
export default class BaseLayer<ChildLayerStyleOptions = {}> extends EventEmitter<LayerEventType> implements ILayer {
|
|
7
7
|
id: string;
|
|
8
8
|
name: string;
|
|
9
|
+
coordCenter: number[];
|
|
9
10
|
type: string;
|
|
10
11
|
visible: boolean;
|
|
11
12
|
zIndex: number;
|
package/es/core/BaseLayer.js
CHANGED
|
@@ -500,7 +500,7 @@ var BaseLayer = (_dec = lazyInject(TYPES.IGlobalConfigService), (_class = /*#__P
|
|
|
500
500
|
}, {
|
|
501
501
|
key: "source",
|
|
502
502
|
value: function source(data, options) {
|
|
503
|
-
if (data
|
|
503
|
+
if ((data === null || data === void 0 ? void 0 : data.type) === 'source') {
|
|
504
504
|
// 判断是否为source
|
|
505
505
|
this.setSource(data);
|
|
506
506
|
return this;
|
|
@@ -1047,6 +1047,15 @@ var BaseLayer = (_dec = lazyInject(TYPES.IGlobalConfigService), (_class = /*#__P
|
|
|
1047
1047
|
|
|
1048
1048
|
|
|
1049
1049
|
this.layerSource.on('sourceUpdate', function () {
|
|
1050
|
+
if (_this8.coordCenter === undefined) {
|
|
1051
|
+
var layerCenter = _this8.layerSource.center;
|
|
1052
|
+
_this8.coordCenter = layerCenter;
|
|
1053
|
+
_this8.mapService.setCoordCenter && _this8.mapService.setCoordCenter(layerCenter); // // @ts-ignore
|
|
1054
|
+
// this.mapService.map.customCoords.setCenter(layerCenter);
|
|
1055
|
+
// // @ts-ignore
|
|
1056
|
+
// this.mapService.setCustomCoordCenter(layerCenter);
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1050
1059
|
_this8.sourceEvent();
|
|
1051
1060
|
});
|
|
1052
1061
|
}
|
|
@@ -1178,6 +1187,8 @@ var BaseLayer = (_dec = lazyInject(TYPES.IGlobalConfigService), (_class = /*#__P
|
|
|
1178
1187
|
return reject(err);
|
|
1179
1188
|
});
|
|
1180
1189
|
} else {
|
|
1190
|
+
// console.log(this.encodedData[1].originCoordinates[0])
|
|
1191
|
+
// console.log(this.encodedData[1].coordinates[0])
|
|
1181
1192
|
var _this9$styleAttribute = _this9.styleAttributeService.createAttributesAndIndices(_this9.encodedData, triangulation, segmentNumber),
|
|
1182
1193
|
attributes = _this9$styleAttribute.attributes,
|
|
1183
1194
|
elements = _this9$styleAttribute.elements,
|
|
@@ -1381,14 +1392,20 @@ var BaseLayer = (_dec = lazyInject(TYPES.IGlobalConfigService), (_class = /*#__P
|
|
|
1381
1392
|
}, {
|
|
1382
1393
|
key: "dispatchModelLoad",
|
|
1383
1394
|
value: function dispatchModelLoad(models) {
|
|
1395
|
+
var _this11 = this;
|
|
1396
|
+
|
|
1384
1397
|
this.models.forEach(function (model) {
|
|
1385
1398
|
return model.destroy();
|
|
1386
1399
|
});
|
|
1387
1400
|
this.models = [];
|
|
1388
1401
|
this.models = models;
|
|
1389
1402
|
this.emit('modelLoaded', null);
|
|
1390
|
-
this.modelLoaded = true;
|
|
1391
|
-
|
|
1403
|
+
this.modelLoaded = true; // Tip: setTimeout 用于延迟绘制,可以让拖动图层时连续的 setData 更加平滑 - L7Draw
|
|
1404
|
+
|
|
1405
|
+
setTimeout(function () {
|
|
1406
|
+
// Tip: 使用 renderLayers 而不是 throttleRenderLayers,让图层之间的 setData 更新绘制不存在延迟
|
|
1407
|
+
_this11.layerService.renderLayers();
|
|
1408
|
+
}, 32);
|
|
1392
1409
|
}
|
|
1393
1410
|
}, {
|
|
1394
1411
|
key: "reRender",
|
package/es/core/interface.d.ts
CHANGED
|
@@ -120,6 +120,7 @@ export interface IRasterTileLayerStyleOptions extends IBaseLayerStyleOptions {
|
|
|
120
120
|
export interface IMaskLayerStyleOptions extends IBaseLayerStyleOptions {
|
|
121
121
|
opacity: number;
|
|
122
122
|
color: string;
|
|
123
|
+
sourceLayer?: string;
|
|
123
124
|
}
|
|
124
125
|
export interface IWindLayerStyleOptions extends IBaseLayerStyleOptions {
|
|
125
126
|
uMin?: number;
|
|
@@ -217,5 +218,8 @@ export interface IRasterLayerStyleOptions extends IBaseLayerStyleOptions {
|
|
|
217
218
|
clampHigh: boolean;
|
|
218
219
|
rampColors: IColorRamp;
|
|
219
220
|
rampColorsData?: ImageData | IImagedata;
|
|
221
|
+
channelRMax?: number;
|
|
222
|
+
channelGMax?: number;
|
|
223
|
+
channelBMax?: number;
|
|
220
224
|
}
|
|
221
225
|
export {};
|
package/es/mask/index.js
CHANGED
|
@@ -19,6 +19,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
19
19
|
|
|
20
20
|
import BaseLayer from "../core/BaseLayer";
|
|
21
21
|
import MaskModels from "./models";
|
|
22
|
+
import { isVectorTile } from "../tile/utils";
|
|
22
23
|
import { TYPES } from '@antv/l7-core';
|
|
23
24
|
|
|
24
25
|
var MaskLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
@@ -143,6 +144,12 @@ var MaskLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
143
144
|
}, {
|
|
144
145
|
key: "getModelType",
|
|
145
146
|
value: function getModelType() {
|
|
147
|
+
var parserType = this.layerSource.getParserType();
|
|
148
|
+
|
|
149
|
+
if (isVectorTile(parserType)) {
|
|
150
|
+
return 'vectorMask';
|
|
151
|
+
}
|
|
152
|
+
|
|
146
153
|
return 'fill';
|
|
147
154
|
}
|
|
148
155
|
}]);
|
package/es/mask/models/index.js
CHANGED
|
@@ -11,7 +11,6 @@ export default class DataMappingPlugin implements ILayerPlugin {
|
|
|
11
11
|
private mapLayerMapping;
|
|
12
12
|
private adjustData2Amap2Coordinates;
|
|
13
13
|
private adjustData2SimpleCoordinates;
|
|
14
|
-
private getLayerCenter;
|
|
15
14
|
private unProjectCoordinates;
|
|
16
15
|
private applyAttributeMapping;
|
|
17
16
|
private applyMapLayerAttributeMapping;
|
|
@@ -254,7 +254,7 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
254
254
|
|
|
255
255
|
// 根据地图的类型判断是否需要对点位数据进行处理, 若是高德2.0则需要对坐标进行相对偏移
|
|
256
256
|
if (mappedData.length > 0 && this.mapService.version === Version['GAODE2.x']) {
|
|
257
|
-
var layerCenter =
|
|
257
|
+
var layerCenter = layer.coordCenter || layer.getSource().center;
|
|
258
258
|
|
|
259
259
|
if (typeof mappedData[0].coordinates[0] === 'number') {
|
|
260
260
|
// 单个的点数据
|
|
@@ -273,7 +273,6 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
273
273
|
});
|
|
274
274
|
} else {
|
|
275
275
|
// 连续的线、面数据
|
|
276
|
-
// @ts-ignore
|
|
277
276
|
mappedData // TODO: 避免经纬度被重复计算导致坐标位置偏移
|
|
278
277
|
.filter(function (d) {
|
|
279
278
|
return !d.originCoordinates;
|
|
@@ -303,12 +302,6 @@ var DataMappingPlugin = (_dec = injectable(), _dec2 = inject(TYPES.IMapService),
|
|
|
303
302
|
});
|
|
304
303
|
}
|
|
305
304
|
}
|
|
306
|
-
}, {
|
|
307
|
-
key: "getLayerCenter",
|
|
308
|
-
value: function getLayerCenter(layer) {
|
|
309
|
-
var source = layer.getSource();
|
|
310
|
-
return source.center;
|
|
311
|
-
}
|
|
312
305
|
}, {
|
|
313
306
|
key: "unProjectCoordinates",
|
|
314
307
|
value: function unProjectCoordinates(coordinates) {
|
|
@@ -13,5 +13,9 @@ export default class ShaderUniformPlugin implements ILayerPlugin {
|
|
|
13
13
|
private readonly rendererService;
|
|
14
14
|
private readonly mapService;
|
|
15
15
|
apply(layer: ILayer): void;
|
|
16
|
-
|
|
16
|
+
/**
|
|
17
|
+
* 对于每个 layer 都有不同的几何中心点,因此在绘制每个 layer 的时候都需要重新设置
|
|
18
|
+
* @param layer
|
|
19
|
+
*/
|
|
20
|
+
private setLayerCenter;
|
|
17
21
|
}
|
|
@@ -48,13 +48,7 @@ var ShaderUniformPlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICameraServ
|
|
|
48
48
|
_this.coordinateSystemService.refresh(offset);
|
|
49
49
|
|
|
50
50
|
if (version === 'GAODE2.x') {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
_this.mapService.map.customCoords.setCenter(layerCenter); // @ts-ignore
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
_this.mapService.setCustomCoordCenter(layerCenter); // @ts-ignore
|
|
51
|
+
_this.setLayerCenter(layer); // @ts-ignore
|
|
58
52
|
|
|
59
53
|
|
|
60
54
|
mvp = _this.mapService.map.customCoords.getMVPMatrix(); // mvp = amapCustomCoords.getMVPMatrix()
|
|
@@ -74,11 +68,16 @@ var ShaderUniformPlugin = (_dec = injectable(), _dec2 = inject(TYPES.ICameraServ
|
|
|
74
68
|
}); // TODO:脏检查,决定是否需要渲染
|
|
75
69
|
});
|
|
76
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* 对于每个 layer 都有不同的几何中心点,因此在绘制每个 layer 的时候都需要重新设置
|
|
73
|
+
* @param layer
|
|
74
|
+
*/
|
|
75
|
+
|
|
77
76
|
}, {
|
|
78
|
-
key: "
|
|
79
|
-
value: function
|
|
80
|
-
|
|
81
|
-
|
|
77
|
+
key: "setLayerCenter",
|
|
78
|
+
value: function setLayerCenter(layer) {
|
|
79
|
+
if (layer.coordCenter === undefined) layer.coordCenter = layer.getSource().center;
|
|
80
|
+
this.mapService.setCoordCenter && this.mapService.setCoordCenter(layer.coordCenter);
|
|
82
81
|
}
|
|
83
82
|
}]);
|
|
84
83
|
|
package/es/raster/index.d.ts
CHANGED
package/es/raster/index.js
CHANGED
|
@@ -73,6 +73,7 @@ var RaterLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
73
73
|
var type = this.getModelType();
|
|
74
74
|
var defaultConfig = {
|
|
75
75
|
raster: {},
|
|
76
|
+
rasterRgb: {},
|
|
76
77
|
raster3d: {},
|
|
77
78
|
rasterTile: {}
|
|
78
79
|
};
|
|
@@ -88,6 +89,9 @@ var RaterLayer = /*#__PURE__*/function (_BaseLayer) {
|
|
|
88
89
|
case 'raster':
|
|
89
90
|
return 'raster';
|
|
90
91
|
|
|
92
|
+
case 'rasterRgb':
|
|
93
|
+
return 'rasterRgb';
|
|
94
|
+
|
|
91
95
|
case 'rasterTile':
|
|
92
96
|
return 'rasterTile';
|
|
93
97
|
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import RasterTileModel from "../../tile/models/tileModel";
|
|
2
2
|
import RasterModel from "./raster";
|
|
3
|
+
import RasterRgbModel from "./rasterRgb";
|
|
3
4
|
var RasterModels = {
|
|
4
5
|
raster: RasterModel,
|
|
6
|
+
rasterRgb: RasterRgbModel,
|
|
5
7
|
raster3d: RasterModel,
|
|
6
8
|
rasterTile: RasterTileModel
|
|
7
9
|
};
|
|
@@ -13,7 +13,8 @@ export default class RasterModel extends BaseModel {
|
|
|
13
13
|
u_noDataValue: number;
|
|
14
14
|
u_colorTexture: ITexture2D;
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
private getRasterData;
|
|
17
|
+
initModels(callbackModel: (models: IModel[]) => void): Promise<void>;
|
|
17
18
|
buildModels(callbackModel: (models: IModel[]) => void): void;
|
|
18
19
|
clearModels(): void;
|
|
19
20
|
protected registerBuiltinAttributes(): void;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
1
2
|
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
3
|
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
4
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
4
5
|
import _possibleConstructorReturn from "@babel/runtime/helpers/possibleConstructorReturn";
|
|
5
6
|
import _getPrototypeOf from "@babel/runtime/helpers/getPrototypeOf";
|
|
7
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
8
|
|
|
7
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); }; }
|
|
8
10
|
|
|
@@ -62,53 +64,125 @@ var RasterModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
62
64
|
u_colorTexture: this.colorTexture
|
|
63
65
|
};
|
|
64
66
|
}
|
|
67
|
+
}, {
|
|
68
|
+
key: "getRasterData",
|
|
69
|
+
value: function () {
|
|
70
|
+
var _getRasterData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(parserDataItem) {
|
|
71
|
+
var _yield$parserDataItem, rasterData, width, height;
|
|
72
|
+
|
|
73
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
74
|
+
while (1) {
|
|
75
|
+
switch (_context.prev = _context.next) {
|
|
76
|
+
case 0:
|
|
77
|
+
if (!Array.isArray(parserDataItem.data)) {
|
|
78
|
+
_context.next = 4;
|
|
79
|
+
break;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return _context.abrupt("return", {
|
|
83
|
+
data: parserDataItem.data,
|
|
84
|
+
width: parserDataItem.width,
|
|
85
|
+
height: parserDataItem.height
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
case 4:
|
|
89
|
+
_context.next = 6;
|
|
90
|
+
return parserDataItem.data;
|
|
91
|
+
|
|
92
|
+
case 6:
|
|
93
|
+
_yield$parserDataItem = _context.sent;
|
|
94
|
+
rasterData = _yield$parserDataItem.rasterData;
|
|
95
|
+
width = _yield$parserDataItem.width;
|
|
96
|
+
height = _yield$parserDataItem.height;
|
|
97
|
+
return _context.abrupt("return", {
|
|
98
|
+
data: Array.from(rasterData),
|
|
99
|
+
width: width,
|
|
100
|
+
height: height
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
case 11:
|
|
104
|
+
case "end":
|
|
105
|
+
return _context.stop();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}, _callee);
|
|
109
|
+
}));
|
|
110
|
+
|
|
111
|
+
function getRasterData(_x) {
|
|
112
|
+
return _getRasterData.apply(this, arguments);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return getRasterData;
|
|
116
|
+
}()
|
|
65
117
|
}, {
|
|
66
118
|
key: "initModels",
|
|
67
|
-
value: function
|
|
68
|
-
var
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
119
|
+
value: function () {
|
|
120
|
+
var _initModels = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(callbackModel) {
|
|
121
|
+
var _ref2, _ref2$mask, mask, _ref2$maskInside, maskInside, rampColorsData, rampColors, source, createTexture2D, parserDataItem, _yield$this$getRaster, data, width, height, imageData;
|
|
122
|
+
|
|
123
|
+
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
124
|
+
while (1) {
|
|
125
|
+
switch (_context2.prev = _context2.next) {
|
|
126
|
+
case 0:
|
|
127
|
+
_ref2 = this.layer.getLayerConfig(), _ref2$mask = _ref2.mask, mask = _ref2$mask === void 0 ? false : _ref2$mask, _ref2$maskInside = _ref2.maskInside, maskInside = _ref2$maskInside === void 0 ? true : _ref2$maskInside, rampColorsData = _ref2.rampColorsData, rampColors = _ref2.rampColors;
|
|
128
|
+
source = this.layer.getSource();
|
|
129
|
+
createTexture2D = this.rendererService.createTexture2D;
|
|
130
|
+
parserDataItem = source.data.dataArray[0];
|
|
131
|
+
_context2.next = 6;
|
|
132
|
+
return this.getRasterData(parserDataItem);
|
|
133
|
+
|
|
134
|
+
case 6:
|
|
135
|
+
_yield$this$getRaster = _context2.sent;
|
|
136
|
+
data = _yield$this$getRaster.data;
|
|
137
|
+
width = _yield$this$getRaster.width;
|
|
138
|
+
height = _yield$this$getRaster.height;
|
|
139
|
+
this.texture = createTexture2D({
|
|
140
|
+
data: data,
|
|
141
|
+
width: width,
|
|
142
|
+
height: height,
|
|
143
|
+
format: gl.LUMINANCE,
|
|
144
|
+
type: gl.FLOAT // aniso: 4,
|
|
145
|
+
|
|
146
|
+
});
|
|
147
|
+
imageData = rampColorsData ? rampColorsData : generateColorRamp(rampColors);
|
|
148
|
+
this.colorTexture = createTexture2D({
|
|
149
|
+
data: imageData.data,
|
|
150
|
+
width: imageData.width,
|
|
151
|
+
height: imageData.height,
|
|
152
|
+
flipY: false
|
|
153
|
+
});
|
|
154
|
+
this.layer.buildLayerModel({
|
|
155
|
+
moduleName: 'rasterImageData',
|
|
156
|
+
vertexShader: rasterVert,
|
|
157
|
+
fragmentShader: rasterFrag,
|
|
158
|
+
triangulation: RasterImageTriangulation,
|
|
159
|
+
primitive: gl.TRIANGLES,
|
|
160
|
+
depth: {
|
|
161
|
+
enable: false
|
|
162
|
+
},
|
|
163
|
+
stencil: getMask(mask, maskInside),
|
|
164
|
+
pick: false
|
|
165
|
+
}).then(function (model) {
|
|
166
|
+
callbackModel([model]);
|
|
167
|
+
}).catch(function (err) {
|
|
168
|
+
console.warn(err);
|
|
169
|
+
callbackModel([]);
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
case 14:
|
|
173
|
+
case "end":
|
|
174
|
+
return _context2.stop();
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}, _callee2, this);
|
|
178
|
+
}));
|
|
85
179
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
flipY: false
|
|
93
|
-
});
|
|
94
|
-
this.layer.buildLayerModel({
|
|
95
|
-
moduleName: 'rasterImageData',
|
|
96
|
-
vertexShader: rasterVert,
|
|
97
|
-
fragmentShader: rasterFrag,
|
|
98
|
-
triangulation: RasterImageTriangulation,
|
|
99
|
-
primitive: gl.TRIANGLES,
|
|
100
|
-
depth: {
|
|
101
|
-
enable: false
|
|
102
|
-
},
|
|
103
|
-
stencil: getMask(mask, maskInside),
|
|
104
|
-
pick: false
|
|
105
|
-
}).then(function (model) {
|
|
106
|
-
callbackModel([model]);
|
|
107
|
-
}).catch(function (err) {
|
|
108
|
-
console.warn(err);
|
|
109
|
-
callbackModel([]);
|
|
110
|
-
});
|
|
111
|
-
}
|
|
180
|
+
function initModels(_x2) {
|
|
181
|
+
return _initModels.apply(this, arguments);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
return initModels;
|
|
185
|
+
}()
|
|
112
186
|
}, {
|
|
113
187
|
key: "buildModels",
|
|
114
188
|
value: function buildModels(callbackModel) {
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IModel, ITexture2D } from '@antv/l7-core';
|
|
2
|
+
import BaseModel from '../../core/BaseModel';
|
|
3
|
+
export default class RasterModel extends BaseModel {
|
|
4
|
+
protected texture: ITexture2D;
|
|
5
|
+
protected channelRMax: number;
|
|
6
|
+
protected channelGMax: number;
|
|
7
|
+
protected channelBMax: number;
|
|
8
|
+
getUninforms(): {
|
|
9
|
+
u_opacity: number;
|
|
10
|
+
u_texture: ITexture2D;
|
|
11
|
+
u_channelRMax: number;
|
|
12
|
+
u_channelGMax: number;
|
|
13
|
+
u_channelBMax: number;
|
|
14
|
+
};
|
|
15
|
+
private getRasterData;
|
|
16
|
+
initModels(callbackModel: (models: IModel[]) => void): Promise<void>;
|
|
17
|
+
buildModels(callbackModel: (models: IModel[]) => void): void;
|
|
18
|
+
clearModels(): void;
|
|
19
|
+
protected registerBuiltinAttributes(): void;
|
|
20
|
+
}
|