Skip to content

Commit 2f4e99e

Browse files
committed
【bug】1)其他示例报错,修复缺陷
1 parent a599674 commit 2f4e99e

File tree

7 files changed

+156
-16
lines changed

7 files changed

+156
-16
lines changed

dist/mapboxgl/iclient-mapboxgl-es6.js

Lines changed: 55 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64992,6 +64992,9 @@ const MapboxSymbolLayerManager = (m) => {
6499264992
const expressionRest = this.getStyleExpression(style, symbolInfos, type, k);
6499364993
if (expressionRest.length > 0) {
6499464994
result[k] = [...expression, ...expressionRest];
64995+
if (expressionRest.length % 2 === 0) {
64996+
result[k].push(result[k][result[k].length - 1]);
64997+
}
6499564998
}
6499664999
})
6499765000
return result;
@@ -65033,6 +65036,53 @@ const MapboxSymbolLayerManager = (m) => {
6503365036
map.addLayerBak({ ...layer, paint, layout }, before);
6503465037
},
6503565038

65039+
/**
65040+
* 将symbol为表达式的线图层拆分为多图层
65041+
* @param {*} layer
65042+
* @param {*} symbol
65043+
* @returns
65044+
*/
65045+
getExpresionLineLayers(layer, symbol) {
65046+
const layers = [];
65047+
const filter = ["all"];
65048+
if(layer.filter) {
65049+
filter.push(layer.filter);
65050+
}
65051+
const expression = symbol.slice(2);
65052+
expression.forEach((r, index) => {
65053+
if (index % 2 === 1) {
65054+
layers.push({
65055+
...layer, "filter": [
65056+
...filter,
65057+
[
65058+
"==",
65059+
symbol[1][1],
65060+
expression[index - 1]
65061+
]
65062+
], symbol: r
65063+
});
65064+
} else if (index === expression.length - 1) {
65065+
layers.unshift({ ...layer, symbol: r });
65066+
}
65067+
});
65068+
return layers;
65069+
},
65070+
65071+
/**
65072+
* 添加symbol为表达式的线图层
65073+
* @param {*} layer
65074+
* @param {*} symbol
65075+
* @param {*} before
65076+
*/
65077+
addExpressionLineLayer(layer, symbol, before) {
65078+
const layers = this.getExpresionLineLayers(layer, symbol);
65079+
layers.forEach((l, index) => {
65080+
l.id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
65081+
map.addLayer(l, before);
65082+
map.compositeLayersManager.addLayer(layer.id, l.id);
65083+
})
65084+
},
65085+
6503665086
/**
6503765087
* 符号转换成图层
6503865088
* @param {*} layer
@@ -65055,6 +65105,8 @@ const MapboxSymbolLayerManager = (m) => {
6505565105
}
6505665106
this.addSimpleSymbol(layer, symbolInfo, before);
6505765107
}
65108+
} else if (layer.type === 'line') {
65109+
this.addExpressionLineLayer(layer, symbol, before);
6505865110
} else {
6505965111
this.addExpressionSymbolLayer(layer, symbol, before);
6506065112
}
@@ -65097,8 +65149,7 @@ const MapboxSymbolLayerManager = (m) => {
6509765149
* @param {*} symbol
6509865150
*/
6509965151
addMultiSymbol(layer, symbol, before) {
65100-
const { styles } = symbol;
65101-
styles.forEach((style, index) => {
65152+
symbol.forEach((style, index) => {
6510265153
const id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
6510365154
this.addSimpleSymbol({ ...layer, id }, style, before);
6510465155
map.compositeLayersManager.addLayer(layer.id, id);
@@ -65134,7 +65185,7 @@ const MapboxSymbolLayerManager = (m) => {
6513465185
const symbolInfos = this.getAllSymbolInfos(symbolInfo.slice(2));
6513565186
const paint = this.getExpression("paint", symbolInfos, symbolInfo);
6513665187
const layout = this.getExpression("layout", symbolInfos, symbolInfo);
65137-
this.setSimpleSymbol(layerId, {paint, layout});
65188+
this.setSimpleSymbol(layerId, { paint, layout });
6513865189
}
6513965190
},
6514065191

@@ -65510,7 +65561,7 @@ var MapExtend = (function () {
6551065561
message: 'this symbol.image is not found.'
6551165562
}
6551265563
} else {
65513-
updateImageProperty(this, symbol, imageId);
65564+
updateImageProperty(this, symbolInfo, imageId);
6551465565
}
6551565566
}
6551665567
// 这里需不需要创建对应的符号类?

dist/mapboxgl/iclient-mapboxgl-es6.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/mapboxgl/iclient-mapboxgl.js

Lines changed: 48 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57262,6 +57262,9 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5726257262
var expressionRest = _this.getStyleExpression(style, symbolInfos, type, k);
5726357263
if (expressionRest.length > 0) {
5726457264
result[k] = [].concat(expression, _toConsumableArray(expressionRest));
57265+
if (expressionRest.length % 2 === 0) {
57266+
result[k].push(result[k][result[k].length - 1]);
57267+
}
5726557268
}
5726657269
});
5726757270
return result;
@@ -57303,6 +57306,47 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5730357306
layout: layout
5730457307
}), before);
5730557308
},
57309+
/**
57310+
* 将symbol为表达式的线图层拆分为多图层
57311+
* @param {*} layer
57312+
* @param {*} symbol
57313+
* @returns
57314+
*/
57315+
getExpresionLineLayers: function getExpresionLineLayers(layer, symbol) {
57316+
var layers = [];
57317+
var filter = ["all"];
57318+
if (layer.filter) {
57319+
filter.push(layer.filter);
57320+
}
57321+
var expression = symbol.slice(2);
57322+
expression.forEach(function (r, index) {
57323+
if (index % 2 === 1) {
57324+
layers.push(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
57325+
"filter": [].concat(filter, [["==", symbol[1][1], expression[index - 1]]]),
57326+
symbol: r
57327+
}));
57328+
} else if (index === expression.length - 1) {
57329+
layers.unshift(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
57330+
symbol: r
57331+
}));
57332+
}
57333+
});
57334+
return layers;
57335+
},
57336+
/**
57337+
* 添加symbol为表达式的线图层
57338+
* @param {*} layer
57339+
* @param {*} symbol
57340+
* @param {*} before
57341+
*/
57342+
addExpressionLineLayer: function addExpressionLineLayer(layer, symbol, before) {
57343+
var layers = this.getExpresionLineLayers(layer, symbol);
57344+
layers.forEach(function (l, index) {
57345+
l.id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
57346+
map.addLayer(l, before);
57347+
map.compositeLayersManager.addLayer(layer.id, l.id);
57348+
});
57349+
},
5730657350
/**
5730757351
* 符号转换成图层
5730857352
* @param {*} layer
@@ -57325,6 +57369,8 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5732557369
}
5732657370
this.addSimpleSymbol(layer, symbolInfo, before);
5732757371
}
57372+
} else if (layer.type === 'line') {
57373+
this.addExpressionLineLayer(layer, symbol, before);
5732857374
} else {
5732957375
this.addExpressionSymbolLayer(layer, symbol, before);
5733057376
}
@@ -57384,8 +57430,7 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5738457430
*/
5738557431
addMultiSymbol: function addMultiSymbol(layer, symbol, before) {
5738657432
var _this2 = this;
57387-
var styles = symbol.styles;
57388-
styles.forEach(function (style, index) {
57433+
symbol.forEach(function (style, index) {
5738957434
var id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
5739057435
_this2.addSimpleSymbol(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
5739157436
id: id
@@ -57844,7 +57889,7 @@ var MapExtend = function () {
5784457889
message: 'this symbol.image is not found.'
5784557890
};
5784657891
} else {
57847-
updateImageProperty(this, symbol, imageId);
57892+
updateImageProperty(this, symbolInfo, imageId);
5784857893
}
5784957894
case 18:
5785057895
// 这里需不需要创建对应的符号类?

dist/mapboxgl/iclient-mapboxgl.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/mapboxgl-v2/libs/mapboxgl/iclient-mapboxgl.js

Lines changed: 48 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57262,6 +57262,9 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5726257262
var expressionRest = _this.getStyleExpression(style, symbolInfos, type, k);
5726357263
if (expressionRest.length > 0) {
5726457264
result[k] = [].concat(expression, _toConsumableArray(expressionRest));
57265+
if (expressionRest.length % 2 === 0) {
57266+
result[k].push(result[k][result[k].length - 1]);
57267+
}
5726557268
}
5726657269
});
5726757270
return result;
@@ -57303,6 +57306,47 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5730357306
layout: layout
5730457307
}), before);
5730557308
},
57309+
/**
57310+
* 将symbol为表达式的线图层拆分为多图层
57311+
* @param {*} layer
57312+
* @param {*} symbol
57313+
* @returns
57314+
*/
57315+
getExpresionLineLayers: function getExpresionLineLayers(layer, symbol) {
57316+
var layers = [];
57317+
var filter = ["all"];
57318+
if (layer.filter) {
57319+
filter.push(layer.filter);
57320+
}
57321+
var expression = symbol.slice(2);
57322+
expression.forEach(function (r, index) {
57323+
if (index % 2 === 1) {
57324+
layers.push(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
57325+
"filter": [].concat(filter, [["==", symbol[1][1], expression[index - 1]]]),
57326+
symbol: r
57327+
}));
57328+
} else if (index === expression.length - 1) {
57329+
layers.unshift(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
57330+
symbol: r
57331+
}));
57332+
}
57333+
});
57334+
return layers;
57335+
},
57336+
/**
57337+
* 添加symbol为表达式的线图层
57338+
* @param {*} layer
57339+
* @param {*} symbol
57340+
* @param {*} before
57341+
*/
57342+
addExpressionLineLayer: function addExpressionLineLayer(layer, symbol, before) {
57343+
var layers = this.getExpresionLineLayers(layer, symbol);
57344+
layers.forEach(function (l, index) {
57345+
l.id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
57346+
map.addLayer(l, before);
57347+
map.compositeLayersManager.addLayer(layer.id, l.id);
57348+
});
57349+
},
5730657350
/**
5730757351
* 符号转换成图层
5730857352
* @param {*} layer
@@ -57325,6 +57369,8 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5732557369
}
5732657370
this.addSimpleSymbol(layer, symbolInfo, before);
5732757371
}
57372+
} else if (layer.type === 'line') {
57373+
this.addExpressionLineLayer(layer, symbol, before);
5732857374
} else {
5732957375
this.addExpressionSymbolLayer(layer, symbol, before);
5733057376
}
@@ -57384,8 +57430,7 @@ var MapboxSymbolLayerManager = function MapboxSymbolLayerManager(m) {
5738457430
*/
5738557431
addMultiSymbol: function addMultiSymbol(layer, symbol, before) {
5738657432
var _this2 = this;
57387-
var styles = symbol.styles;
57388-
styles.forEach(function (style, index) {
57433+
symbol.forEach(function (style, index) {
5738957434
var id = index === 0 ? layer.id : Util_Util.createUniqueID('SuperMap.Symbol_');
5739057435
_this2.addSimpleSymbol(MapboxSymbolLayerManager_objectSpread(MapboxSymbolLayerManager_objectSpread({}, layer), {}, {
5739157436
id: id
@@ -57844,7 +57889,7 @@ var MapExtend = function () {
5784457889
message: 'this symbol.image is not found.'
5784557890
};
5784657891
} else {
57847-
updateImageProperty(this, symbol, imageId);
57892+
updateImageProperty(this, symbolInfo, imageId);
5784857893
}
5784957894
case 18:
5785057895
// 这里需不需要创建对应的符号类?

src/mapboxgl/core/MapExtend.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ export var MapExtend = (function () {
196196
message: 'this symbol.image is not found.'
197197
}
198198
} else {
199-
updateImageProperty(this, symbol, imageId);
199+
updateImageProperty(this, symbolInfo, imageId);
200200
}
201201
}
202202
// 这里需不需要创建对应的符号类?

src/symbol/MapboxSymbolLayerManager.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -239,8 +239,7 @@ const MapboxSymbolLayerManager = (m) => {
239239
* @param {*} symbol
240240
*/
241241
addMultiSymbol(layer, symbol, before) {
242-
const { styles } = symbol;
243-
styles.forEach((style, index) => {
242+
symbol.forEach((style, index) => {
244243
const id = index === 0 ? layer.id : Util.createUniqueID('SuperMap.Symbol_');
245244
this.addSimpleSymbol({ ...layer, id }, style, before);
246245
map.compositeLayersManager.addLayer(layer.id, id);

0 commit comments

Comments
 (0)