@antv/l7-layers 2.14.1 → 2.14.2
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/models/billboard.js +3 -6
- package/es/Geometry/models/plane.js +3 -6
- package/es/core/BaseLayer.d.ts +7 -3
- package/es/core/BaseLayer.js +62 -18
- package/es/core/BaseModel.d.ts +3 -2
- package/es/core/BaseModel.js +39 -3
- package/es/core/LayerPickService.js +6 -2
- package/es/heatmap/index.d.ts +2 -2
- package/es/heatmap/index.js +5 -2
- package/es/heatmap/models/grid.js +5 -9
- package/es/heatmap/models/grid3d.js +5 -10
- package/es/heatmap/models/heatmap.d.ts +2 -2
- package/es/heatmap/models/heatmap.js +54 -46
- package/es/heatmap/models/hexagon.js +5 -10
- package/es/image/models/image.js +13 -16
- package/es/image/shaders/image_frag.glsl +2 -0
- package/es/index.js +6 -0
- package/es/line/models/arc.js +4 -6
- package/es/line/models/arc_3d.js +4 -6
- package/es/line/models/earthArc_3d.js +4 -6
- package/es/line/models/great_circle.js +9 -13
- package/es/line/models/half.js +4 -6
- package/es/line/models/line.js +3 -5
- package/es/line/models/linearline.js +4 -6
- package/es/line/models/simpleLine.js +5 -8
- package/es/mask/models/fill.js +1 -17
- package/es/plugins/LayerMaskPlugin.d.ts +8 -0
- package/es/plugins/LayerMaskPlugin.js +42 -0
- package/es/plugins/LayerStylePlugin.js +2 -1
- package/es/point/models/extrude.js +0 -1
- package/es/point/models/fill.js +4 -6
- package/es/point/models/fillmage.js +8 -12
- package/es/point/models/image.js +9 -14
- package/es/point/models/normal.js +4 -9
- package/es/point/models/radar.js +5 -10
- package/es/point/models/simplePoint.js +5 -10
- package/es/point/models/text.js +10 -16
- package/es/point/shaders/fill_frag.glsl +4 -0
- package/es/point/shaders/image_frag.glsl +4 -0
- package/es/point/shaders/text_frag.glsl +4 -0
- package/es/polygon/index.js +1 -1
- package/es/polygon/models/extrude.js +11 -13
- package/es/polygon/models/fill.js +3 -5
- package/es/polygon/models/ocean.js +6 -9
- package/es/polygon/models/water.js +7 -11
- package/es/raster/models/raster.js +9 -11
- package/es/raster/models/rasterRgb.js +8 -11
- package/es/raster/models/rasterTerrainRgb.js +9 -13
- package/es/raster/shaders/raster_2d_frag.glsl +6 -3
- package/es/raster/shaders/raster_frag.glsl +2 -0
- package/es/raster/shaders/raster_rgb_frag.glsl +2 -0
- package/es/raster/shaders/raster_terrain_rgb_frag.glsl +2 -0
- package/es/tile/service/TileLayerService.js +5 -4
- package/es/tile/style/constants.js +1 -1
- package/es/tile/tileFactory/Tile.d.ts +8 -0
- package/es/tile/tileFactory/Tile.js +102 -14
- package/es/tile/tileFactory/VectorTile.d.ts +0 -1
- package/es/tile/tileFactory/VectorTile.js +6 -46
- package/es/tile/tileLayer/BaseLayer.d.ts +1 -0
- package/es/tile/tileLayer/BaseLayer.js +5 -0
- package/es/utils/stencil.d.ts +7 -0
- package/es/utils/stencil.js +50 -0
- package/es/wind/index.d.ts +2 -1
- package/es/wind/index.js +3 -1
- package/es/wind/models/wind.d.ts +2 -2
- package/es/wind/models/wind.js +12 -10
- package/lib/Geometry/models/billboard.js +3 -7
- package/lib/Geometry/models/plane.js +2 -6
- package/lib/core/BaseLayer.js +62 -18
- package/lib/core/BaseModel.js +40 -2
- package/lib/core/LayerPickService.js +6 -2
- package/lib/heatmap/index.js +5 -2
- package/lib/heatmap/models/grid.js +5 -10
- package/lib/heatmap/models/grid3d.js +5 -11
- package/lib/heatmap/models/heatmap.js +53 -45
- package/lib/heatmap/models/hexagon.js +5 -11
- package/lib/image/models/image.js +12 -15
- package/lib/image/shaders/image_frag.glsl +2 -0
- package/lib/index.js +8 -0
- package/lib/line/models/arc.js +3 -5
- package/lib/line/models/arc_3d.js +3 -5
- package/lib/line/models/earthArc_3d.js +3 -5
- package/lib/line/models/great_circle.js +8 -12
- package/lib/line/models/half.js +3 -5
- package/lib/line/models/line.js +2 -4
- package/lib/line/models/linearline.js +3 -5
- package/lib/line/models/simpleLine.js +4 -7
- package/lib/mask/models/fill.js +1 -18
- package/lib/plugins/LayerMaskPlugin.js +54 -0
- package/lib/plugins/LayerStylePlugin.js +2 -1
- package/lib/point/models/extrude.js +0 -1
- package/lib/point/models/fill.js +3 -5
- package/lib/point/models/fillmage.js +7 -11
- package/lib/point/models/image.js +9 -15
- package/lib/point/models/normal.js +4 -10
- package/lib/point/models/radar.js +5 -11
- package/lib/point/models/simplePoint.js +5 -11
- package/lib/point/models/text.js +9 -15
- package/lib/point/shaders/fill_frag.glsl +4 -0
- package/lib/point/shaders/image_frag.glsl +4 -0
- package/lib/point/shaders/text_frag.glsl +4 -0
- package/lib/polygon/index.js +1 -1
- package/lib/polygon/models/extrude.js +10 -12
- package/lib/polygon/models/fill.js +2 -4
- package/lib/polygon/models/ocean.js +5 -8
- package/lib/polygon/models/water.js +7 -12
- package/lib/raster/models/raster.js +8 -10
- package/lib/raster/models/rasterRgb.js +8 -12
- package/lib/raster/models/rasterTerrainRgb.js +8 -12
- package/lib/raster/shaders/raster_2d_frag.glsl +6 -3
- package/lib/raster/shaders/raster_frag.glsl +2 -0
- package/lib/raster/shaders/raster_rgb_frag.glsl +2 -0
- package/lib/raster/shaders/raster_terrain_rgb_frag.glsl +2 -0
- package/lib/tile/service/TileLayerService.js +5 -4
- package/lib/tile/style/constants.js +1 -1
- package/lib/tile/tileFactory/Tile.js +102 -14
- package/lib/tile/tileFactory/VectorTile.js +6 -47
- package/lib/tile/tileLayer/BaseLayer.js +5 -0
- package/lib/utils/stencil.js +60 -0
- package/lib/wind/index.js +3 -1
- package/lib/wind/models/wind.js +11 -9
- package/package.json +7 -7
|
@@ -34,7 +34,7 @@ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflec
|
|
|
34
34
|
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; } }
|
|
35
35
|
|
|
36
36
|
/* babel-plugin-inline-import '../shaders/image_frag.glsl' */
|
|
37
|
-
var ImageFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nvoid main() {\n vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));\n gl_FragColor = color;\n gl_FragColor.a *= u_opacity;\n}\n";
|
|
37
|
+
var ImageFrag = "precision mediump float;\nuniform float u_opacity: 1.0;\nuniform sampler2D u_texture;\nvarying vec2 v_texCoord;\nvoid main() {\n vec4 color = texture2D(u_texture,vec2(v_texCoord.x,v_texCoord.y));\n gl_FragColor = color;\n gl_FragColor.a *= u_opacity;\n if(gl_FragColor.a < 0.01)\n discard;\n}\n";
|
|
38
38
|
|
|
39
39
|
/* babel-plugin-inline-import '../shaders/image_vert.glsl' */
|
|
40
40
|
var ImageVert = "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 // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy,0., 1.0));\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";
|
|
@@ -66,13 +66,11 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
66
66
|
var _initModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
67
67
|
var _this = this;
|
|
68
68
|
|
|
69
|
-
var
|
|
70
|
-
|
|
69
|
+
var source, createTexture2D, canvas, img, imageData, model;
|
|
71
70
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
72
71
|
while (1) {
|
|
73
72
|
switch (_context.prev = _context.next) {
|
|
74
73
|
case 0:
|
|
75
|
-
_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;
|
|
76
74
|
source = this.layer.getSource();
|
|
77
75
|
createTexture2D = this.rendererService.createTexture2D;
|
|
78
76
|
this.texture = createTexture2D({
|
|
@@ -81,7 +79,7 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
81
79
|
});
|
|
82
80
|
|
|
83
81
|
if (!_l7Utils.isMini) {
|
|
84
|
-
_context.next =
|
|
82
|
+
_context.next = 11;
|
|
85
83
|
break;
|
|
86
84
|
}
|
|
87
85
|
|
|
@@ -101,14 +99,14 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
101
99
|
_this.layerService.reRender();
|
|
102
100
|
};
|
|
103
101
|
|
|
104
|
-
_context.next =
|
|
102
|
+
_context.next = 15;
|
|
105
103
|
break;
|
|
106
104
|
|
|
107
|
-
case
|
|
108
|
-
_context.next =
|
|
105
|
+
case 11:
|
|
106
|
+
_context.next = 13;
|
|
109
107
|
return source.data.images;
|
|
110
108
|
|
|
111
|
-
case
|
|
109
|
+
case 13:
|
|
112
110
|
imageData = _context.sent;
|
|
113
111
|
this.texture = createTexture2D({
|
|
114
112
|
data: imageData[0],
|
|
@@ -118,8 +116,8 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
118
116
|
min: _l7Core.gl.LINEAR
|
|
119
117
|
});
|
|
120
118
|
|
|
121
|
-
case
|
|
122
|
-
_context.next =
|
|
119
|
+
case 15:
|
|
120
|
+
_context.next = 17;
|
|
123
121
|
return this.layer.buildLayerModel({
|
|
124
122
|
moduleName: 'rasterImage',
|
|
125
123
|
vertexShader: ImageVert,
|
|
@@ -132,15 +130,14 @@ var ImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
132
130
|
},
|
|
133
131
|
depth: {
|
|
134
132
|
enable: false
|
|
135
|
-
}
|
|
136
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
133
|
+
}
|
|
137
134
|
});
|
|
138
135
|
|
|
139
|
-
case
|
|
136
|
+
case 17:
|
|
140
137
|
model = _context.sent;
|
|
141
138
|
return _context.abrupt("return", [model]);
|
|
142
139
|
|
|
143
|
-
case
|
|
140
|
+
case 19:
|
|
144
141
|
case "end":
|
|
145
142
|
return _context.stop();
|
|
146
143
|
}
|
package/lib/index.js
CHANGED
|
@@ -153,6 +153,8 @@ var _FeatureScalePlugin = _interopRequireDefault(require("./plugins/FeatureScale
|
|
|
153
153
|
|
|
154
154
|
var _LayerAnimateStylePlugin = _interopRequireDefault(require("./plugins/LayerAnimateStylePlugin"));
|
|
155
155
|
|
|
156
|
+
var _LayerMaskPlugin = _interopRequireDefault(require("./plugins/LayerMaskPlugin"));
|
|
157
|
+
|
|
156
158
|
var _LayerModelPlugin = _interopRequireDefault(require("./plugins/LayerModelPlugin"));
|
|
157
159
|
|
|
158
160
|
var _LayerStylePlugin = _interopRequireDefault(require("./plugins/LayerStylePlugin"));
|
|
@@ -225,6 +227,12 @@ _l7Core.container.bind(_l7Core.TYPES.ILayerPlugin).to(_DataMappingPlugin.default
|
|
|
225
227
|
|
|
226
228
|
|
|
227
229
|
_l7Core.container.bind(_l7Core.TYPES.ILayerPlugin).to(_LayerStylePlugin.default).inRequestScope();
|
|
230
|
+
/**
|
|
231
|
+
* 初始化地图 Mask
|
|
232
|
+
*/
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
_l7Core.container.bind(_l7Core.TYPES.ILayerPlugin).to(_LayerMaskPlugin.default).inRequestScope();
|
|
228
236
|
/**
|
|
229
237
|
* 负责属性更新
|
|
230
238
|
*/
|
package/lib/line/models/arc.js
CHANGED
|
@@ -288,13 +288,13 @@ var ArcModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
288
288
|
key: "buildModels",
|
|
289
289
|
value: function () {
|
|
290
290
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
291
|
-
var _ref4, _ref4$segmentNumber, segmentNumber,
|
|
291
|
+
var _ref4, _ref4$segmentNumber, segmentNumber, _this$getShaders, frag, vert, type, model;
|
|
292
292
|
|
|
293
293
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
294
294
|
while (1) {
|
|
295
295
|
switch (_context2.prev = _context2.next) {
|
|
296
296
|
case 0:
|
|
297
|
-
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber
|
|
297
|
+
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber;
|
|
298
298
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type; //
|
|
299
299
|
|
|
300
300
|
_context2.next = 4;
|
|
@@ -306,9 +306,7 @@ var ArcModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
306
306
|
depth: {
|
|
307
307
|
enable: false
|
|
308
308
|
},
|
|
309
|
-
|
|
310
|
-
segmentNumber: segmentNumber,
|
|
311
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
309
|
+
segmentNumber: segmentNumber
|
|
312
310
|
});
|
|
313
311
|
|
|
314
312
|
case 4:
|
|
@@ -271,13 +271,13 @@ var Arc3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
271
271
|
key: "buildModels",
|
|
272
272
|
value: function () {
|
|
273
273
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
274
|
-
var _ref4, _ref4$segmentNumber, segmentNumber,
|
|
274
|
+
var _ref4, _ref4$segmentNumber, segmentNumber, _this$getShaders, frag, vert, type, model;
|
|
275
275
|
|
|
276
276
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
277
277
|
while (1) {
|
|
278
278
|
switch (_context2.prev = _context2.next) {
|
|
279
279
|
case 0:
|
|
280
|
-
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber
|
|
280
|
+
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber;
|
|
281
281
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type;
|
|
282
282
|
_context2.next = 4;
|
|
283
283
|
return this.layer.buildLayerModel({
|
|
@@ -285,9 +285,7 @@ var Arc3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
285
285
|
vertexShader: vert,
|
|
286
286
|
fragmentShader: frag,
|
|
287
287
|
triangulation: _triangulation.LineArcTriangulation,
|
|
288
|
-
|
|
289
|
-
segmentNumber: segmentNumber,
|
|
290
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
288
|
+
segmentNumber: segmentNumber
|
|
291
289
|
});
|
|
292
290
|
|
|
293
291
|
case 4:
|
|
@@ -271,13 +271,13 @@ var Arc3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
271
271
|
key: "buildModels",
|
|
272
272
|
value: function () {
|
|
273
273
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
274
|
-
var _ref4, _ref4$segmentNumber, segmentNumber,
|
|
274
|
+
var _ref4, _ref4$segmentNumber, segmentNumber, _this$getShaders, frag, vert, type, model;
|
|
275
275
|
|
|
276
276
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
277
277
|
while (1) {
|
|
278
278
|
switch (_context2.prev = _context2.next) {
|
|
279
279
|
case 0:
|
|
280
|
-
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber
|
|
280
|
+
_ref4 = this.layer.getLayerConfig(), _ref4$segmentNumber = _ref4.segmentNumber, segmentNumber = _ref4$segmentNumber === void 0 ? 30 : _ref4$segmentNumber;
|
|
281
281
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type;
|
|
282
282
|
_context2.next = 4;
|
|
283
283
|
return this.layer.buildLayerModel({
|
|
@@ -288,9 +288,7 @@ var Arc3DModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
288
288
|
depth: {
|
|
289
289
|
enable: true
|
|
290
290
|
},
|
|
291
|
-
|
|
292
|
-
segmentNumber: segmentNumber,
|
|
293
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
291
|
+
segmentNumber: segmentNumber
|
|
294
292
|
});
|
|
295
293
|
|
|
296
294
|
case 4:
|
|
@@ -234,14 +234,12 @@ var GreatCircleModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
234
234
|
key: "buildModels",
|
|
235
235
|
value: function () {
|
|
236
236
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
237
|
-
var
|
|
238
|
-
|
|
237
|
+
var model;
|
|
239
238
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
240
239
|
while (1) {
|
|
241
240
|
switch (_context2.prev = _context2.next) {
|
|
242
241
|
case 0:
|
|
243
|
-
|
|
244
|
-
_context2.next = 3;
|
|
242
|
+
_context2.next = 2;
|
|
245
243
|
return this.layer.buildLayerModel({
|
|
246
244
|
moduleName: 'lineGreatCircle',
|
|
247
245
|
vertexShader: line_arc2d_vert,
|
|
@@ -249,16 +247,14 @@ var GreatCircleModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
249
247
|
triangulation: _triangulation.LineArcTriangulation,
|
|
250
248
|
depth: {
|
|
251
249
|
enable: false
|
|
252
|
-
}
|
|
253
|
-
blend: this.getBlend(),
|
|
254
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
250
|
+
}
|
|
255
251
|
});
|
|
256
252
|
|
|
257
|
-
case
|
|
253
|
+
case 2:
|
|
258
254
|
model = _context2.sent;
|
|
259
255
|
return _context2.abrupt("return", [model]);
|
|
260
256
|
|
|
261
|
-
case
|
|
257
|
+
case 4:
|
|
262
258
|
case "end":
|
|
263
259
|
return _context2.stop();
|
|
264
260
|
}
|
|
@@ -330,12 +326,12 @@ var GreatCircleModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
330
326
|
|
|
331
327
|
var texture = feature.texture; // console.log('icon feature', feature)
|
|
332
328
|
|
|
333
|
-
var
|
|
329
|
+
var _ref3 = iconMap[texture] || {
|
|
334
330
|
x: 0,
|
|
335
331
|
y: 0
|
|
336
332
|
},
|
|
337
|
-
x =
|
|
338
|
-
y =
|
|
333
|
+
x = _ref3.x,
|
|
334
|
+
y = _ref3.y;
|
|
339
335
|
|
|
340
336
|
return [x, y];
|
|
341
337
|
}
|
package/lib/line/models/half.js
CHANGED
|
@@ -162,13 +162,13 @@ var LineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
162
162
|
key: "buildModels",
|
|
163
163
|
value: function () {
|
|
164
164
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
165
|
-
var _ref2, _ref2$
|
|
165
|
+
var _ref2, _ref2$depth, depth, _this$getShaders, frag, vert, model;
|
|
166
166
|
|
|
167
167
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
168
168
|
while (1) {
|
|
169
169
|
switch (_context2.prev = _context2.next) {
|
|
170
170
|
case 0:
|
|
171
|
-
_ref2 = this.layer.getLayerConfig(), _ref2$
|
|
171
|
+
_ref2 = this.layer.getLayerConfig(), _ref2$depth = _ref2.depth, depth = _ref2$depth === void 0 ? false : _ref2$depth;
|
|
172
172
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert;
|
|
173
173
|
this.layer.triangulation = _triangulation.LineTriangulation;
|
|
174
174
|
_context2.next = 5;
|
|
@@ -179,9 +179,7 @@ var LineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
179
179
|
triangulation: _triangulation.LineTriangulation,
|
|
180
180
|
depth: {
|
|
181
181
|
enable: depth
|
|
182
|
-
}
|
|
183
|
-
blend: this.getBlend(),
|
|
184
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
182
|
+
}
|
|
185
183
|
});
|
|
186
184
|
|
|
187
185
|
case 5:
|
package/lib/line/models/line.js
CHANGED
|
@@ -293,13 +293,13 @@ var LineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
293
293
|
key: "buildModels",
|
|
294
294
|
value: function () {
|
|
295
295
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
296
|
-
var _ref3, _ref3$
|
|
296
|
+
var _ref3, _ref3$depth, depth, _ref3$workerEnabled, workerEnabled, enablePicking, _this$getShaders, frag, vert, type, model;
|
|
297
297
|
|
|
298
298
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
299
299
|
while (1) {
|
|
300
300
|
switch (_context2.prev = _context2.next) {
|
|
301
301
|
case 0:
|
|
302
|
-
_ref3 = this.layer.getLayerConfig(), _ref3$
|
|
302
|
+
_ref3 = this.layer.getLayerConfig(), _ref3$depth = _ref3.depth, depth = _ref3$depth === void 0 ? false : _ref3$depth, _ref3$workerEnabled = _ref3.workerEnabled, workerEnabled = _ref3$workerEnabled === void 0 ? false : _ref3$workerEnabled, enablePicking = _ref3.enablePicking;
|
|
303
303
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type; // console.log(frag)
|
|
304
304
|
|
|
305
305
|
this.layer.triangulation = _l7Utils.LineTriangulation;
|
|
@@ -312,8 +312,6 @@ var LineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
312
312
|
depth: {
|
|
313
313
|
enable: depth
|
|
314
314
|
},
|
|
315
|
-
blend: this.getBlend(),
|
|
316
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside),
|
|
317
315
|
workerEnabled: workerEnabled,
|
|
318
316
|
workerOptions: {
|
|
319
317
|
modelType: 'line' + type,
|
|
@@ -191,13 +191,13 @@ var LinearLineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
191
191
|
key: "buildModels",
|
|
192
192
|
value: function () {
|
|
193
193
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
194
|
-
var _ref3, _ref3$
|
|
194
|
+
var _ref3, _ref3$depth, depth, model;
|
|
195
195
|
|
|
196
196
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
197
197
|
while (1) {
|
|
198
198
|
switch (_context2.prev = _context2.next) {
|
|
199
199
|
case 0:
|
|
200
|
-
_ref3 = this.layer.getLayerConfig(), _ref3$
|
|
200
|
+
_ref3 = this.layer.getLayerConfig(), _ref3$depth = _ref3.depth, depth = _ref3$depth === void 0 ? false : _ref3$depth;
|
|
201
201
|
this.layer.triangulation = _triangulation.LineTriangulation;
|
|
202
202
|
_context2.next = 4;
|
|
203
203
|
return this.layer.buildLayerModel({
|
|
@@ -207,9 +207,7 @@ var LinearLineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
207
207
|
triangulation: _triangulation.LineTriangulation,
|
|
208
208
|
depth: {
|
|
209
209
|
enable: depth
|
|
210
|
-
}
|
|
211
|
-
blend: this.getBlend(),
|
|
212
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside)
|
|
210
|
+
}
|
|
213
211
|
});
|
|
214
212
|
|
|
215
213
|
case 4:
|
|
@@ -179,15 +179,14 @@ var SimpleLineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
179
179
|
key: "buildModels",
|
|
180
180
|
value: function () {
|
|
181
181
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
182
|
-
var
|
|
182
|
+
var _this$getShaders, frag, vert, type, model;
|
|
183
183
|
|
|
184
184
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
185
185
|
while (1) {
|
|
186
186
|
switch (_context2.prev = _context2.next) {
|
|
187
187
|
case 0:
|
|
188
|
-
_ref3 = this.layer.getLayerConfig(), _ref3$mask = _ref3.mask, mask = _ref3$mask === void 0 ? false : _ref3$mask, _ref3$maskInside = _ref3.maskInside, maskInside = _ref3$maskInside === void 0 ? true : _ref3$maskInside;
|
|
189
188
|
_this$getShaders = this.getShaders(), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type;
|
|
190
|
-
_context2.next =
|
|
189
|
+
_context2.next = 3;
|
|
191
190
|
return this.layer.buildLayerModel({
|
|
192
191
|
moduleName: type,
|
|
193
192
|
vertexShader: vert,
|
|
@@ -197,16 +196,14 @@ var SimpleLineModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
197
196
|
depth: {
|
|
198
197
|
enable: false
|
|
199
198
|
},
|
|
200
|
-
blend: this.getBlend(),
|
|
201
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside),
|
|
202
199
|
pick: false
|
|
203
200
|
});
|
|
204
201
|
|
|
205
|
-
case
|
|
202
|
+
case 3:
|
|
206
203
|
model = _context2.sent;
|
|
207
204
|
return _context2.abrupt("return", [model]);
|
|
208
205
|
|
|
209
|
-
case
|
|
206
|
+
case 5:
|
|
210
207
|
case "end":
|
|
211
208
|
return _context2.stop();
|
|
212
209
|
}
|
package/lib/mask/models/fill.js
CHANGED
|
@@ -21,8 +21,6 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
21
21
|
|
|
22
22
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
23
|
|
|
24
|
-
var _l7Core = require("@antv/l7-core");
|
|
25
|
-
|
|
26
24
|
var _l7Utils = require("@antv/l7-utils");
|
|
27
25
|
|
|
28
26
|
var _lodash = require("lodash");
|
|
@@ -56,7 +54,7 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
56
54
|
value: function getUninforms() {
|
|
57
55
|
var _ref = this.layer.getLayerConfig(),
|
|
58
56
|
_ref$opacity = _ref.opacity,
|
|
59
|
-
opacity = _ref$opacity === void 0 ?
|
|
57
|
+
opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
|
|
60
58
|
_ref$color = _ref.color,
|
|
61
59
|
color = _ref$color === void 0 ? '#000' : _ref$color;
|
|
62
60
|
|
|
@@ -107,21 +105,6 @@ var MaskModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
107
105
|
depth: {
|
|
108
106
|
enable: false
|
|
109
107
|
},
|
|
110
|
-
blend: this.getBlend(),
|
|
111
|
-
stencil: {
|
|
112
|
-
enable: true,
|
|
113
|
-
mask: 0xff,
|
|
114
|
-
func: {
|
|
115
|
-
cmp: _l7Core.gl.ALWAYS,
|
|
116
|
-
ref: 1,
|
|
117
|
-
mask: 0xff
|
|
118
|
-
},
|
|
119
|
-
opFront: {
|
|
120
|
-
fail: _l7Core.gl.REPLACE,
|
|
121
|
-
zfail: _l7Core.gl.REPLACE,
|
|
122
|
-
zpass: _l7Core.gl.REPLACE
|
|
123
|
-
}
|
|
124
|
-
},
|
|
125
108
|
pick: false
|
|
126
109
|
});
|
|
127
110
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
+
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
|
+
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
+
|
|
16
|
+
var _inversify = require("inversify");
|
|
17
|
+
|
|
18
|
+
require("reflect-metadata");
|
|
19
|
+
|
|
20
|
+
var _dec, _class;
|
|
21
|
+
|
|
22
|
+
var LayerStylePlugin = (
|
|
23
|
+
/**
|
|
24
|
+
* 更新图层样式,初始图层相关配置
|
|
25
|
+
*/
|
|
26
|
+
_dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
|
|
27
|
+
function LayerStylePlugin() {
|
|
28
|
+
(0, _classCallCheck2.default)(this, LayerStylePlugin);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
(0, _createClass2.default)(LayerStylePlugin, [{
|
|
32
|
+
key: "apply",
|
|
33
|
+
value: function apply(layer) {
|
|
34
|
+
layer.hooks.afterInit.tap('LayerMaskPlugin', function () {
|
|
35
|
+
var _layer$getLayerConfig = layer.getLayerConfig(),
|
|
36
|
+
maskLayers = _layer$getLayerConfig.maskLayers,
|
|
37
|
+
enableMask = _layer$getLayerConfig.enableMask; // mask 初始化
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
if (!layer.tileLayer && maskLayers && maskLayers.length > 0) {
|
|
41
|
+
var _layer$masks;
|
|
42
|
+
|
|
43
|
+
(_layer$masks = layer.masks).push.apply(_layer$masks, (0, _toConsumableArray2.default)(maskLayers));
|
|
44
|
+
|
|
45
|
+
layer.updateLayerConfig({
|
|
46
|
+
mask: true && enableMask
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}]);
|
|
52
|
+
return LayerStylePlugin;
|
|
53
|
+
}()) || _class);
|
|
54
|
+
exports.default = LayerStylePlugin;
|
|
@@ -32,7 +32,8 @@ _dec = (0, _inversify.injectable)(), _dec(_class = /*#__PURE__*/function () {
|
|
|
32
32
|
layer.hooks.afterInit.tap('LayerStylePlugin', function () {
|
|
33
33
|
var _layer$getLayerConfig = layer.getLayerConfig(),
|
|
34
34
|
autoFit = _layer$getLayerConfig.autoFit,
|
|
35
|
-
fitBoundsOptions = _layer$getLayerConfig.fitBoundsOptions;
|
|
35
|
+
fitBoundsOptions = _layer$getLayerConfig.fitBoundsOptions; // mask 初始化
|
|
36
|
+
|
|
36
37
|
|
|
37
38
|
if (autoFit) {
|
|
38
39
|
layer.fitBounds(fitBoundsOptions);
|
|
@@ -216,7 +216,6 @@ var ExtrudeModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
216
216
|
vertexShader: pointExtrudeVert,
|
|
217
217
|
fragmentShader: pointExtrudeFrag,
|
|
218
218
|
triangulation: _triangulation.PointExtrudeTriangulation,
|
|
219
|
-
blend: this.getBlend(),
|
|
220
219
|
cull: {
|
|
221
220
|
enable: true,
|
|
222
221
|
face: (0, _l7Utils.getCullFace)(this.mapService.version)
|
package/lib/point/models/fill.js
CHANGED
|
@@ -40,7 +40,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
40
40
|
var waveFillFrag = "\nuniform float u_additive;\n\nvarying mat4 styleMappingMat; // \u4F20\u9012\u4ECE\u7247\u5143\u4E2D\u4F20\u9012\u7684\u6620\u5C04\u6570\u636E\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\nuniform float u_time;\nuniform vec4 u_animate: [ 1., 2., 1.0, 0.2 ];\n\n#pragma include \"sdf_2d\"\n#pragma include \"picking\"\n\nvoid main() {\n\n vec4 textrueStroke = vec4(\n styleMappingMat[1][0],\n styleMappingMat[1][1],\n styleMappingMat[1][2],\n styleMappingMat[1][3]\n );\n\n float opacity = styleMappingMat[0][0];\n\n lowp float antialiasblur = v_data.z;\n float r = v_radius / (v_radius);\n\n float outer_df;\n float inner_df;\n // 'circle', 'triangle', 'square', 'pentagon', 'hexagon', 'octogon', 'hexagram', 'rhombus', 'vesica'\n \n outer_df = sdCircle(v_data.xy, 1.0);\n inner_df = sdCircle(v_data.xy, r);\n\n\n float opacity_t = smoothstep(0.0, antialiasblur, outer_df);\n\n float color_t = smoothstep(\n antialiasblur,\n 0.0,\n inner_df\n );\n float PI = 3.14159;\n float N_RINGS = 3.0;\n float FREQ = 1.0;\n\n gl_FragColor = vec4(v_color.rgb, v_color.a * opacity);\n\n float d = length(v_data.xy);\n if(d > 0.5) {\n discard;\n }\n float intensity = clamp(cos(d * PI), 0.0, 1.0) * clamp(cos(2.0 * PI * (d * 2.0 * u_animate.z - u_animate.y * u_time)), 0.0, 1.0);\n \n // \u6839\u636E\u53E0\u52A0\u6A21\u5F0F\u9009\u62E9\u6548\u679C\n if(u_additive > 0.0) {\n gl_FragColor *= intensity;\n // \u4F18\u5316\u6C34\u6CE2\u70B9 blend additive \u6A21\u5F0F\u4E0B\u6709\u7684\u62FE\u53D6\u6548\u679C \n gl_FragColor = filterColorAlpha(gl_FragColor, gl_FragColor.a);\n } else {\n gl_FragColor = vec4(gl_FragColor.xyz, gl_FragColor.a * intensity);\n gl_FragColor = filterColor(gl_FragColor);\n }\n}\n"; // static pointLayer shader - not support animate
|
|
41
41
|
|
|
42
42
|
/* babel-plugin-inline-import '../shaders/fill_frag.glsl' */
|
|
43
|
-
var pointFillFrag = "uniform float u_additive;\n\nvarying mat4 styleMappingMat; // \u4F20\u9012\u4ECE\u7247\u5143\u4E2D\u4F20\u9012\u7684\u6620\u5C04\u6570\u636E\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\n\n#pragma include \"sdf_2d\"\n#pragma include \"picking\"\n\n\nvoid main() {\n int shape = int(floor(v_data.w + 0.5));\n\n vec4 textrueStroke = vec4(\n styleMappingMat[1][0],\n styleMappingMat[1][1],\n styleMappingMat[1][2],\n styleMappingMat[1][3]\n );\n\n float opacity = styleMappingMat[0][0];\n float stroke_opacity = styleMappingMat[0][1];\n float strokeWidth = styleMappingMat[0][2];\n vec4 strokeColor = textrueStroke == vec4(0) ? v_color : textrueStroke;\n\n lowp float antialiasblur = v_data.z;\n float r = v_radius / (v_radius + strokeWidth);\n\n float outer_df;\n float inner_df;\n // 'circle', 'triangle', 'square', 'pentagon', 'hexagon', 'octogon', 'hexagram', 'rhombus', 'vesica'\n if (shape == 0) {\n outer_df = sdCircle(v_data.xy, 1.0);\n inner_df = sdCircle(v_data.xy, r);\n } else if (shape == 1) {\n outer_df = sdEquilateralTriangle(1.1 * v_data.xy);\n inner_df = sdEquilateralTriangle(1.1 / r * v_data.xy);\n } else if (shape == 2) {\n outer_df = sdBox(v_data.xy, vec2(1.));\n inner_df = sdBox(v_data.xy, vec2(r));\n } else if (shape == 3) {\n outer_df = sdPentagon(v_data.xy, 0.8);\n inner_df = sdPentagon(v_data.xy, r * 0.8);\n } else if (shape == 4) {\n outer_df = sdHexagon(v_data.xy, 0.8);\n inner_df = sdHexagon(v_data.xy, r * 0.8);\n } else if (shape == 5) {\n outer_df = sdOctogon(v_data.xy, 1.0);\n inner_df = sdOctogon(v_data.xy, r);\n } else if (shape == 6) {\n outer_df = sdHexagram(v_data.xy, 0.52);\n inner_df = sdHexagram(v_data.xy, r * 0.52);\n } else if (shape == 7) {\n outer_df = sdRhombus(v_data.xy, vec2(1.0));\n inner_df = sdRhombus(v_data.xy, vec2(r));\n } else if (shape == 8) {\n outer_df = sdVesica(v_data.xy, 1.1, 0.8);\n inner_df = sdVesica(v_data.xy, r * 1.1, r * 0.8);\n }\n\n float opacity_t = smoothstep(0.0, antialiasblur, outer_df);\n\n float color_t = strokeWidth < 0.01 ? 0.0 : smoothstep(\n antialiasblur,\n 0.0,\n inner_df\n );\n\n if(strokeWidth < 0.01) {\n gl_FragColor = vec4(v_color.rgb, v_color.a * opacity);\n } else {\n gl_FragColor = mix(vec4(v_color.rgb, v_color.a * opacity), strokeColor * stroke_opacity, color_t);\n }\n\n if(u_additive > 0.0) {\n gl_FragColor *= opacity_t;\n gl_FragColor = filterColorAlpha(gl_FragColor, gl_FragColor.a);\n } else {\n gl_FragColor.a *= opacity_t;\n gl_FragColor = filterColor(gl_FragColor);\n }\n}\n";
|
|
43
|
+
var pointFillFrag = "uniform float u_additive;\n\nvarying mat4 styleMappingMat; // \u4F20\u9012\u4ECE\u7247\u5143\u4E2D\u4F20\u9012\u7684\u6620\u5C04\u6570\u636E\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\n\n#pragma include \"sdf_2d\"\n#pragma include \"picking\"\n\n\nvoid main() {\n int shape = int(floor(v_data.w + 0.5));\n\n vec4 textrueStroke = vec4(\n styleMappingMat[1][0],\n styleMappingMat[1][1],\n styleMappingMat[1][2],\n styleMappingMat[1][3]\n );\n\n float opacity = styleMappingMat[0][0];\n float stroke_opacity = styleMappingMat[0][1];\n float strokeWidth = styleMappingMat[0][2];\n vec4 strokeColor = textrueStroke == vec4(0) ? v_color : textrueStroke;\n\n lowp float antialiasblur = v_data.z;\n float r = v_radius / (v_radius + strokeWidth);\n\n float outer_df;\n float inner_df;\n // 'circle', 'triangle', 'square', 'pentagon', 'hexagon', 'octogon', 'hexagram', 'rhombus', 'vesica'\n if (shape == 0) {\n outer_df = sdCircle(v_data.xy, 1.0);\n inner_df = sdCircle(v_data.xy, r);\n } else if (shape == 1) {\n outer_df = sdEquilateralTriangle(1.1 * v_data.xy);\n inner_df = sdEquilateralTriangle(1.1 / r * v_data.xy);\n } else if (shape == 2) {\n outer_df = sdBox(v_data.xy, vec2(1.));\n inner_df = sdBox(v_data.xy, vec2(r));\n } else if (shape == 3) {\n outer_df = sdPentagon(v_data.xy, 0.8);\n inner_df = sdPentagon(v_data.xy, r * 0.8);\n } else if (shape == 4) {\n outer_df = sdHexagon(v_data.xy, 0.8);\n inner_df = sdHexagon(v_data.xy, r * 0.8);\n } else if (shape == 5) {\n outer_df = sdOctogon(v_data.xy, 1.0);\n inner_df = sdOctogon(v_data.xy, r);\n } else if (shape == 6) {\n outer_df = sdHexagram(v_data.xy, 0.52);\n inner_df = sdHexagram(v_data.xy, r * 0.52);\n } else if (shape == 7) {\n outer_df = sdRhombus(v_data.xy, vec2(1.0));\n inner_df = sdRhombus(v_data.xy, vec2(r));\n } else if (shape == 8) {\n outer_df = sdVesica(v_data.xy, 1.1, 0.8);\n inner_df = sdVesica(v_data.xy, r * 1.1, r * 0.8);\n }\n\n float opacity_t = smoothstep(0.0, antialiasblur, outer_df);\n\n float color_t = strokeWidth < 0.01 ? 0.0 : smoothstep(\n antialiasblur,\n 0.0,\n inner_df\n );\n\n if(strokeWidth < 0.01) {\n gl_FragColor = vec4(v_color.rgb, v_color.a * opacity);\n } else {\n gl_FragColor = mix(vec4(v_color.rgb, v_color.a * opacity), strokeColor * stroke_opacity, color_t);\n }\n\n if(u_additive > 0.0) {\n gl_FragColor *= opacity_t;\n gl_FragColor = filterColorAlpha(gl_FragColor, gl_FragColor.a);\n } else {\n gl_FragColor.a *= opacity_t;\n gl_FragColor = filterColor(gl_FragColor);\n }\n // \u4F5C\u4E3A mask \u6A21\u677F\u65F6\u9700\u8981\u4E22\u5F03\u900F\u660E\u7684\u50CF\u7D20\n if(gl_FragColor.a < 0.01) {\n discard;\n } \n}\n";
|
|
44
44
|
|
|
45
45
|
/* babel-plugin-inline-import '../shaders/fill_vert.glsl' */
|
|
46
46
|
var pointFillVert = "attribute vec4 a_Color;\nattribute vec3 a_Position;\nattribute vec3 a_Extrude;\nattribute float a_Size;\nattribute float a_Shape;\n\nvarying mat4 styleMappingMat; // \u7528\u4E8E\u5C06\u5728\u9876\u70B9\u7740\u8272\u5668\u4E2D\u8BA1\u7B97\u597D\u7684\u6837\u5F0F\u503C\u4F20\u9012\u7ED9\u7247\u5143\n\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_Mvp;\nuniform int u_Size_Unit;\n\nvarying vec4 v_data;\nvarying vec4 v_color;\nvarying float v_radius;\n\nuniform float u_opacity : 1;\nuniform float u_stroke_opacity : 1;\nuniform float u_stroke_width : 2;\nuniform vec4 u_stroke_color : [0.0, 0.0, 0.0, 0.0];\nuniform vec2 u_offsets;\n\nuniform float u_blur : 0.0;\nuniform float u_raisingHeight: 0.0;\nuniform float u_heightfixed: 0.0;\n\n#pragma include \"styleMapping\"\n#pragma include \"styleMappingCalOpacity\"\n#pragma include \"styleMappingCalStrokeOpacity\"\n#pragma include \"styleMappingCalStrokeWidth\"\n\n#pragma include \"projection\"\n#pragma include \"picking\"\n\n\nvoid main() {\n vec3 extrude = a_Extrude;\n float shape_type = a_Shape;\n /*\n * setPickingSize \u8BBE\u7F6E\u62FE\u53D6\u5927\u5C0F\n * u_meter2coord \u5728\u7B49\u9762\u79EF\u5927\u5C0F\u7684\u65F6\u5019\u8BBE\u7F6E\u5355\u4F4D\n */\n float newSize = setPickingSize(a_Size);\n // float newSize = setPickingSize(a_Size) * 0.00001038445708445579;\n\n // cal style mapping - \u6570\u636E\u7EB9\u7406\u6620\u5C04\u90E8\u5206\u7684\u8BA1\u7B97\n styleMappingMat = mat4(\n 0.0, 0.0, 0.0, 0.0, // opacity - strokeOpacity - strokeWidth - empty\n 0.0, 0.0, 0.0, 0.0, // strokeR - strokeG - strokeB - strokeA\n 0.0, 0.0, 0.0, 0.0, // offsets[0] - offsets[1]\n 0.0, 0.0, 0.0, 0.0\n );\n\n float rowCount = u_cellTypeLayout[0][0]; // \u5F53\u524D\u7684\u6570\u636E\u7EB9\u7406\u6709\u51E0\u884C\n float columnCount = u_cellTypeLayout[0][1]; // \u5F53\u770B\u5230\u6570\u636E\u7EB9\u7406\u6709\u51E0\u5217\n float columnWidth = 1.0/columnCount; // \u5217\u5BBD\n float rowHeight = 1.0/rowCount; // \u884C\u9AD8\n float cellCount = calCellCount(); // opacity - strokeOpacity - strokeWidth - stroke - offsets\n float id = a_vertexId; // \u7B2Cn\u4E2A\u9876\u70B9\n float cellCurrentRow = floor(id * cellCount / columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u884C\n float cellCurrentColumn = mod(id * cellCount, columnCount) + 1.0; // \u8D77\u59CB\u70B9\u5728\u7B2C\u51E0\u5217\n \n // cell \u56FA\u5B9A\u987A\u5E8F opacity -> strokeOpacity -> strokeWidth -> stroke ... \n // \u6309\u987A\u5E8F\u4ECE cell \u4E2D\u53D6\u503C\u3001\u82E5\u6CA1\u6709\u5219\u81EA\u52A8\u5F80\u4E0B\u53D6\u503C\n float textureOffset = 0.0; // \u5728 cell \u4E2D\u53D6\u503C\u7684\u504F\u79FB\u91CF\n\n vec2 opacityAndOffset = calOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);\n styleMappingMat[0][0] = opacityAndOffset.r;\n textureOffset = opacityAndOffset.g;\n\n vec2 strokeOpacityAndOffset = calStrokeOpacityAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);\n styleMappingMat[0][1] = strokeOpacityAndOffset.r;\n textureOffset = strokeOpacityAndOffset.g;\n\n vec2 strokeWidthAndOffset = calStrokeWidthAndOffset(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset, columnWidth, rowHeight);\n styleMappingMat[0][2] = strokeWidthAndOffset.r;\n textureOffset = strokeWidthAndOffset.g;\n\n vec4 textrueStroke = vec4(-1.0, -1.0, -1.0, -1.0);\n if(hasStroke()) {\n vec2 valueRPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n styleMappingMat[1][0] = pos2value(valueRPos, columnWidth, rowHeight); // R\n textureOffset += 1.0;\n\n vec2 valueGPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n styleMappingMat[1][1] = pos2value(valueGPos, columnWidth, rowHeight); // G\n textureOffset += 1.0;\n\n vec2 valueBPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n styleMappingMat[1][2] = pos2value(valueBPos, columnWidth, rowHeight); // B\n textureOffset += 1.0;\n\n vec2 valueAPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n styleMappingMat[1][3] = pos2value(valueAPos, columnWidth, rowHeight); // A\n textureOffset += 1.0;\n } else {\n if(u_stroke_color == vec4(0.0)) {\n styleMappingMat[1][0] = v_color.r;\n styleMappingMat[1][1] = v_color.g;\n styleMappingMat[1][2] = v_color.b;\n styleMappingMat[1][3] = v_color.a;\n } else {\n styleMappingMat[1][0] = u_stroke_color.r;\n styleMappingMat[1][1] = u_stroke_color.g;\n styleMappingMat[1][2] = u_stroke_color.b;\n styleMappingMat[1][3] = u_stroke_color.a;\n }\n }\n\n vec2 textrueOffsets = vec2(0.0, 0.0);\n if(hasOffsets()) {\n vec2 valueXPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n textrueOffsets.r = pos2value(valueXPos, columnWidth, rowHeight); // x\n textureOffset += 1.0;\n\n vec2 valueYPos = nextPos(cellCurrentRow, cellCurrentColumn, columnCount, textureOffset);\n textrueOffsets.g = pos2value(valueYPos, columnWidth, rowHeight); // x\n textureOffset += 1.0;\n } else {\n textrueOffsets = u_offsets;\n }\n\n // cal style mapping\n\n // unpack color(vec2)\n v_color = a_Color;\nif(u_Size_Unit == 1) {\n newSize = newSize * u_PixelsPerMeter.z;\n }\n\n v_radius = newSize;\n\n // anti-alias\n // float antialiased_blur = -max(u_blur, antialiasblur);\n float antialiasblur = -max(2.0 / u_DevicePixelRatio / newSize, u_blur);\n\n vec2 offset = (extrude.xy * (newSize + u_stroke_width) + textrueOffsets);\n vec3 aPosition = a_Position;\n\n offset = project_pixel(offset);\n \n // TODP: /abs(extrude.x) \u662F\u4E3A\u4E86\u517C\u5BB9\u5730\u7403\u6A21\u5F0F\n v_data = vec4(extrude.x/abs(extrude.x), extrude.y/abs(extrude.y), antialiasblur,shape_type);\n\n\n // vec4 project_pos = project_position(vec4(a_Position.xy, 0.0, 1.0));\n vec4 project_pos = project_position(vec4(aPosition.xy, 0.0, 1.0));\n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, project_pixel(setPickingOrder(0.0)), 1.0));\n\n float raisingHeight = u_raisingHeight;\n\n if(u_heightfixed < 1.0) { // false\n raisingHeight = project_pixel(u_raisingHeight);\n } else {\n if(u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT || u_CoordinateSystem == COORDINATE_SYSTEM_LNGLAT_OFFSET) {\n float mapboxZoomScale = 4.0/pow(2.0, 21.0 - u_Zoom);\n raisingHeight = u_raisingHeight * mapboxZoomScale;\n }\n }\n \n\n if(u_CoordinateSystem == COORDINATE_SYSTEM_P20_2) { // gaode2.x\n gl_Position = u_Mvp * vec4(project_pos.xy + offset, raisingHeight, 1.0);\n } else {\n gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, raisingHeight, 1.0));\n }\n \n // gl_Position = project_common_position_to_clipspace(vec4(project_pos.xy + offset, 0.0, 1.0));\n\n setPickingColor(a_PickingColor);\n}\n";
|
|
@@ -183,13 +183,13 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
183
183
|
key: "buildModels",
|
|
184
184
|
value: function () {
|
|
185
185
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
186
|
-
var _ref3, _ref3$
|
|
186
|
+
var _ref3, _ref3$animateOption, animateOption, _ref3$workerEnabled, workerEnabled, enablePicking, shape2d, _this$getShaders, frag, vert, type, model;
|
|
187
187
|
|
|
188
188
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
189
189
|
while (1) {
|
|
190
190
|
switch (_context2.prev = _context2.next) {
|
|
191
191
|
case 0:
|
|
192
|
-
_ref3 = this.layer.getLayerConfig(), _ref3$
|
|
192
|
+
_ref3 = this.layer.getLayerConfig(), _ref3$animateOption = _ref3.animateOption, animateOption = _ref3$animateOption === void 0 ? {
|
|
193
193
|
enable: false
|
|
194
194
|
} : _ref3$animateOption, _ref3$workerEnabled = _ref3.workerEnabled, workerEnabled = _ref3$workerEnabled === void 0 ? false : _ref3$workerEnabled, enablePicking = _ref3.enablePicking, shape2d = _ref3.shape2d;
|
|
195
195
|
_this$getShaders = this.getShaders(animateOption), frag = _this$getShaders.frag, vert = _this$getShaders.vert, type = _this$getShaders.type;
|
|
@@ -203,8 +203,6 @@ var FillModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
203
203
|
depth: {
|
|
204
204
|
enable: false
|
|
205
205
|
},
|
|
206
|
-
blend: this.getBlend(),
|
|
207
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside),
|
|
208
206
|
workerEnabled: workerEnabled,
|
|
209
207
|
workerOptions: {
|
|
210
208
|
modelType: type,
|
|
@@ -218,14 +218,12 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
218
218
|
key: "buildModels",
|
|
219
219
|
value: function () {
|
|
220
220
|
var _buildModels = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
221
|
-
var
|
|
222
|
-
|
|
221
|
+
var model;
|
|
223
222
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
224
223
|
while (1) {
|
|
225
224
|
switch (_context2.prev = _context2.next) {
|
|
226
225
|
case 0:
|
|
227
|
-
|
|
228
|
-
_context2.next = 3;
|
|
226
|
+
_context2.next = 2;
|
|
229
227
|
return this.layer.buildLayerModel({
|
|
230
228
|
moduleName: 'pointFillImage',
|
|
231
229
|
vertexShader: pointFillVert,
|
|
@@ -234,19 +232,17 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
234
232
|
depth: {
|
|
235
233
|
enable: false
|
|
236
234
|
},
|
|
237
|
-
blend: this.getBlend(),
|
|
238
|
-
stencil: (0, _l7Utils.getMask)(mask, maskInside),
|
|
239
235
|
cull: {
|
|
240
236
|
enable: true,
|
|
241
237
|
face: (0, _l7Utils.getCullFace)(this.mapService.version)
|
|
242
238
|
}
|
|
243
239
|
});
|
|
244
240
|
|
|
245
|
-
case
|
|
241
|
+
case 2:
|
|
246
242
|
model = _context2.sent;
|
|
247
243
|
return _context2.abrupt("return", [model]);
|
|
248
244
|
|
|
249
|
-
case
|
|
245
|
+
case 4:
|
|
250
246
|
case "end":
|
|
251
247
|
return _context2.stop();
|
|
252
248
|
}
|
|
@@ -310,12 +306,12 @@ var FillImageModel = /*#__PURE__*/function (_BaseModel) {
|
|
|
310
306
|
|
|
311
307
|
var shape = feature.shape;
|
|
312
308
|
|
|
313
|
-
var
|
|
309
|
+
var _ref2 = iconMap[shape] || {
|
|
314
310
|
x: -64,
|
|
315
311
|
y: -64
|
|
316
312
|
},
|
|
317
|
-
x =
|
|
318
|
-
y =
|
|
313
|
+
x = _ref2.x,
|
|
314
|
+
y = _ref2.y;
|
|
319
315
|
|
|
320
316
|
return [x, y];
|
|
321
317
|
}
|