ol 10.3.2-dev.1737448999971 → 10.3.2-dev.1737622602778
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/dist/ol.js +1 -1
- package/dist/ol.js.map +1 -1
- package/expr/expression.d.ts +5 -0
- package/expr/expression.d.ts.map +1 -1
- package/expr/expression.js +12 -3
- package/package.json +1 -1
- package/render/canvas/Builder.d.ts +12 -0
- package/render/canvas/Builder.d.ts.map +1 -1
- package/render/canvas/Builder.js +31 -5
- package/render/canvas/Executor.d.ts.map +1 -1
- package/render/canvas/Executor.js +13 -16
- package/render/canvas/TextBuilder.d.ts.map +1 -1
- package/render/canvas/TextBuilder.js +15 -26
- package/render/webgl/MixedGeometryBatch.d.ts +9 -1
- package/render/webgl/MixedGeometryBatch.d.ts.map +1 -1
- package/render/webgl/MixedGeometryBatch.js +22 -3
- package/render/webgl/VectorStyleRenderer.d.ts +16 -3
- package/render/webgl/VectorStyleRenderer.d.ts.map +1 -1
- package/render/webgl/VectorStyleRenderer.js +66 -3
- package/renderer/webgl/VectorLayer.d.ts.map +1 -1
- package/renderer/webgl/VectorLayer.js +17 -10
- package/renderer/webgl/VectorTileLayer.d.ts.map +1 -1
- package/renderer/webgl/VectorTileLayer.js +4 -0
- package/util.js +1 -1
- package/webgl/TileGeometry.d.ts +5 -0
- package/webgl/TileGeometry.d.ts.map +1 -1
- package/webgl/TileGeometry.js +36 -0
- package/webgl/styleparser.d.ts.map +1 -1
- package/webgl/styleparser.js +2 -0
|
@@ -249,6 +249,7 @@ class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
|
|
|
249
249
|
this.styleVariables_,
|
|
250
250
|
this.helper,
|
|
251
251
|
this.hitDetectionEnabled_,
|
|
252
|
+
'filter' in style ? style.filter : null,
|
|
252
253
|
),
|
|
253
254
|
);
|
|
254
255
|
}
|
|
@@ -543,20 +544,24 @@ class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
|
|
|
543
544
|
* @param {import('../../render/webgl/VectorStyleRenderer.js').WebGLBuffers} buffers Buffers
|
|
544
545
|
*/
|
|
545
546
|
disposeBuffers(buffers) {
|
|
547
|
+
/**
|
|
548
|
+
* @param {Array<import('../../webgl/Buffer.js').default>} typeBuffers Buffers
|
|
549
|
+
*/
|
|
550
|
+
const disposeBuffersOfType = (typeBuffers) => {
|
|
551
|
+
for (const buffer of typeBuffers) {
|
|
552
|
+
if (buffer) {
|
|
553
|
+
this.helper.deleteBuffer(buffer);
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
};
|
|
546
557
|
if (buffers.pointBuffers) {
|
|
547
|
-
buffers.pointBuffers
|
|
548
|
-
.filter(Boolean)
|
|
549
|
-
.forEach((buffer) => this.helper.deleteBuffer(buffer));
|
|
558
|
+
disposeBuffersOfType(buffers.pointBuffers);
|
|
550
559
|
}
|
|
551
560
|
if (buffers.lineStringBuffers) {
|
|
552
|
-
buffers.lineStringBuffers
|
|
553
|
-
.filter(Boolean)
|
|
554
|
-
.forEach((buffer) => this.helper.deleteBuffer(buffer));
|
|
561
|
+
disposeBuffersOfType(buffers.lineStringBuffers);
|
|
555
562
|
}
|
|
556
563
|
if (buffers.polygonBuffers) {
|
|
557
|
-
buffers.polygonBuffers
|
|
558
|
-
.filter(Boolean)
|
|
559
|
-
.forEach((buffer) => this.helper.deleteBuffer(buffer));
|
|
564
|
+
disposeBuffersOfType(buffers.polygonBuffers);
|
|
560
565
|
}
|
|
561
566
|
}
|
|
562
567
|
|
|
@@ -566,7 +571,9 @@ class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
|
|
|
566
571
|
*/
|
|
567
572
|
disposeInternal() {
|
|
568
573
|
this.buffers_.forEach((buffers) => {
|
|
569
|
-
|
|
574
|
+
if (buffers) {
|
|
575
|
+
this.disposeBuffers(buffers);
|
|
576
|
+
}
|
|
570
577
|
});
|
|
571
578
|
if (this.sourceListenKeys_) {
|
|
572
579
|
this.sourceListenKeys_.forEach(function (key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VectorTileLayer.d.ts","sourceRoot":"","sources":["VectorTileLayer.js"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;;EAIE;;;;;6BAOW,OAAO,2CAA2C,EAAE,SAAS;0BAG7D,OAAO,2CAA2C,EAAE,MAAM;;;;;WAKzD,OAAO,qBAAqB,EAAE,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,cAAc;;;;;;;;;;;;;;;;;;;;AATlG;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;GASG;AAEH;;GAEG;AAEH;;;;GAIG;AACH;IACE;;;OAGG;IACH,uBAHW,SAAS,WACT,OAAO,EAuFjB;IA5EC;;;OAGG;IACH,6BAAwD;IAExD;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,wBAA8C;IAE9C;;;OAGG;IACH,wBAAyB;IAEzB;;;;;;OAMG;IACH,oCAAoD;IAEpD;;OAEG;IACH,sBAAsC;IACtC;;OAEG;IACH,iBAA4B;IAE5B;;;OAGG;IACH,wBAA2B;IAE3B;;OAEG;IACH,yBAGC;IAGD;;;OAGG;IACH,4BAMC;IAED;;;OAGG;IACH,yBAAqB;IAKvB;;;OAGG;IACH,wBAHW,OAAO,QAWjB;IAED;;;OAGG;IACH,sBAEC;IAED;;OAEG;IACH,
|
|
1
|
+
{"version":3,"file":"VectorTileLayer.d.ts","sourceRoot":"","sources":["VectorTileLayer.js"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;;EAIE;;;;;6BAOW,OAAO,2CAA2C,EAAE,SAAS;0BAG7D,OAAO,2CAA2C,EAAE,MAAM;;;;;WAKzD,OAAO,qBAAqB,EAAE,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,cAAc;;;;;;;;;;;;;;;;;;;;AATlG;;GAEG;AACH;;GAEG;AAEH;;;;;;;;;GASG;AAEH;;GAEG;AAEH;;;;GAIG;AACH;IACE;;;OAGG;IACH,uBAHW,SAAS,WACT,OAAO,EAuFjB;IA5EC;;;OAGG;IACH,6BAAwD;IAExD;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,wBAA8C;IAE9C;;;OAGG;IACH,wBAAyB;IAEzB;;;;;;OAMG;IACH,oCAAoD;IAEpD;;OAEG;IACH,sBAAsC;IACtC;;OAEG;IACH,iBAA4B;IAE5B;;;OAGG;IACH,wBAA2B;IAE3B;;OAEG;IACH,yBAGC;IAGD;;;OAGG;IACH,4BAMC;IAED;;;OAGG;IACH,yBAAqB;IAKvB;;;OAGG;IACH,wBAHW,OAAO,QAWjB;IAED;;;OAGG;IACH,sBAEC;IAED;;OAEG;IACH,yBAyCC;IAED;;OAEG;IACH,sBAYC;IAUD;;OAEG;IACH,8DAWC;IAED;;OAEG;IACH,uEAMC;IAED;;OAEG;IACH,yDA0BC;IAED;;OAEG;IACH,4FAeC;IAED;;;;;;;OAOG;IACH,uBAoBC;IAED;;OAEG;IACH,sNA+BC;IAED;;;OAGG;IACH,4BAFW,OAAO,cAAc,EAAE,UAAU,QAEd;CAS/B;uCA7XM,oBAAoB;yBALF,6BAA6B"}
|
|
@@ -218,6 +218,7 @@ class WebGLVectorTileLayerRenderer extends WebGLBaseTileLayerRenderer {
|
|
|
218
218
|
this.styleVariables_,
|
|
219
219
|
this.helper,
|
|
220
220
|
this.hitDetectionEnabled_,
|
|
221
|
+
'filter' in style ? style.filter : null,
|
|
221
222
|
);
|
|
222
223
|
});
|
|
223
224
|
}
|
|
@@ -376,6 +377,9 @@ class WebGLVectorTileLayerRenderer extends WebGLBaseTileLayerRenderer {
|
|
|
376
377
|
for (let i = 0, ii = this.styleRenderers_.length; i < ii; i++) {
|
|
377
378
|
const renderer = this.styleRenderers_[i];
|
|
378
379
|
const buffers = tileRepresentation.buffers[i];
|
|
380
|
+
if (!buffers) {
|
|
381
|
+
continue;
|
|
382
|
+
}
|
|
379
383
|
renderer.render(buffers, frameState, () => {
|
|
380
384
|
this.applyUniforms_(
|
|
381
385
|
alpha,
|
package/util.js
CHANGED
package/webgl/TileGeometry.d.ts
CHANGED
|
@@ -34,6 +34,11 @@ declare class TileGeometry extends BaseTileRepresentation<import("../VectorRende
|
|
|
34
34
|
* @private
|
|
35
35
|
*/
|
|
36
36
|
private generateMaskBuffer_;
|
|
37
|
+
/**
|
|
38
|
+
* Will release a set of Webgl buffers
|
|
39
|
+
* @param {import('../render/webgl/VectorStyleRenderer.js').WebGLBuffers} buffers Buffers
|
|
40
|
+
*/
|
|
41
|
+
disposeBuffers(buffers: import("../render/webgl/VectorStyleRenderer.js").WebGLBuffers): void;
|
|
37
42
|
}
|
|
38
43
|
import BaseTileRepresentation from './BaseTileRepresentation.js';
|
|
39
44
|
import WebGLArrayBuffer from './Buffer.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TileGeometry.d.ts","sourceRoot":"","sources":["TileGeometry.js"],"names":[],"mappings":";uBAca,OAAO,qBAAqB,EAAE,OAAO;AADlD;;GAEG;AAEH;;GAEG;AACH;IACE;;;OAGG;IACH,qBAHW,OAAO,6BAA6B,EAAE,yBAAyB,CAAC,QAAQ,CAAC,kBACzE,KAAK,CAAC,OAAO,wCAAwC,EAAE,OAAO,CAAC,EA4BzE;IAvBC;;OAEG;IACH,eAAsC;IAEtC;;OAEG;IACH,wBAAqC;IAErC;;OAEG;IACH,SAFU,KAAK,CAAC,OAAO,wCAAwC,EAAE,YAAY,CAAC,CAE7D;IAEjB;;;;OAIG;IACH,+BAAmE;IAKrE;;OAEG;IACH,4BAaC;
|
|
1
|
+
{"version":3,"file":"TileGeometry.d.ts","sourceRoot":"","sources":["TileGeometry.js"],"names":[],"mappings":";uBAca,OAAO,qBAAqB,EAAE,OAAO;AADlD;;GAEG;AAEH;;GAEG;AACH;IACE;;;OAGG;IACH,qBAHW,OAAO,6BAA6B,EAAE,yBAAyB,CAAC,QAAQ,CAAC,kBACzE,KAAK,CAAC,OAAO,wCAAwC,EAAE,OAAO,CAAC,EA4BzE;IAvBC;;OAEG;IACH,eAAsC;IAEtC;;OAEG;IACH,wBAAqC;IAErC;;OAEG;IACH,SAFU,KAAK,CAAC,OAAO,wCAAwC,EAAE,YAAY,CAAC,CAE7D;IAEjB;;;;OAIG;IACH,+BAAmE;IAKrE;;OAEG;IACH,4BAaC;IA4CD;;;OAGG;IACH,wBAFW,OAAO,wCAAwC,EAAE,YAAY,QAsBvE;CACF;mCAhIkC,6BAA6B;6BACnC,aAAa"}
|
package/webgl/TileGeometry.js
CHANGED
|
@@ -100,6 +100,42 @@ class TileGeometry extends BaseTileRepresentation {
|
|
|
100
100
|
this.setReady();
|
|
101
101
|
});
|
|
102
102
|
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* @override
|
|
106
|
+
*/
|
|
107
|
+
disposeInternal() {
|
|
108
|
+
this.buffers.forEach((buffers) => {
|
|
109
|
+
this.disposeBuffers(buffers);
|
|
110
|
+
});
|
|
111
|
+
super.disposeInternal();
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Will release a set of Webgl buffers
|
|
116
|
+
* @param {import('../render/webgl/VectorStyleRenderer.js').WebGLBuffers} buffers Buffers
|
|
117
|
+
*/
|
|
118
|
+
disposeBuffers(buffers) {
|
|
119
|
+
/**
|
|
120
|
+
* @param {Array<WebGLArrayBuffer>} typeBuffers Buffers
|
|
121
|
+
*/
|
|
122
|
+
const disposeBuffersOfType = (typeBuffers) => {
|
|
123
|
+
for (const buffer of typeBuffers) {
|
|
124
|
+
if (buffer) {
|
|
125
|
+
this.helper.deleteBuffer(buffer);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
if (buffers.pointBuffers) {
|
|
130
|
+
disposeBuffersOfType(buffers.pointBuffers);
|
|
131
|
+
}
|
|
132
|
+
if (buffers.lineStringBuffers) {
|
|
133
|
+
disposeBuffersOfType(buffers.lineStringBuffers);
|
|
134
|
+
}
|
|
135
|
+
if (buffers.polygonBuffers) {
|
|
136
|
+
disposeBuffersOfType(buffers.polygonBuffers);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
103
139
|
}
|
|
104
140
|
|
|
105
141
|
export default TileGeometry;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styleparser.d.ts","sourceRoot":"","sources":["styleparser.js"],"names":[],"mappings":"AA2BA;;;;;;;GAOG;AACH,qDALW,OAAO,gBAAgB,EAAE,kBAAkB,SAC3C,OAAO,uBAAuB,EAAE,iBAAiB,iBACjD,MAAM,GACL,MAAM,CAUjB;AAED;;;;GAIG;AACH,iCAHW,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GACjC,KAAK,CAAC,MAAM,CAAC,CASxB;AAqCD;;;;GAIG;AACH,mCAHW,MAAO,MAAM,GACZ,MAAM,CAOjB;AAgvBD;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AACH,yCALW,OAAO,kBAAkB,EAAE,SAAS,cACpC,OAAO,kBAAkB,EAAE,cAAc,WACzC,OAAO,uBAAuB,EAAE,iBAAiB,GAChD,gBAAgB,
|
|
1
|
+
{"version":3,"file":"styleparser.d.ts","sourceRoot":"","sources":["styleparser.js"],"names":[],"mappings":"AA2BA;;;;;;;GAOG;AACH,qDALW,OAAO,gBAAgB,EAAE,kBAAkB,SAC3C,OAAO,uBAAuB,EAAE,iBAAiB,iBACjD,MAAM,GACL,MAAM,CAUjB;AAED;;;;GAIG;AACH,iCAHW,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GACjC,KAAK,CAAC,MAAM,CAAC,CASxB;AAqCD;;;;GAIG;AACH,mCAHW,MAAO,MAAM,GACZ,MAAM,CAOjB;AAgvBD;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AACH,yCALW,OAAO,kBAAkB,EAAE,SAAS,cACpC,OAAO,kBAAkB,EAAE,cAAc,WACzC,OAAO,uBAAuB,EAAE,iBAAiB,GAChD,gBAAgB,CAkK3B;;;;;aAlLa,aAAa;;;;cACb,OAAO,wCAAwC,EAAE,kBAAkB;;;;gBACnE,OAAO,wCAAwC,EAAE,oBAAoB;;8BAn0BvD,oBAAoB"}
|
package/webgl/styleparser.js
CHANGED
|
@@ -901,6 +901,8 @@ export function parseLiteralStyle(style, variables, filter) {
|
|
|
901
901
|
parseStrokeProperties(style, builder, uniforms, vertContext, fragContext);
|
|
902
902
|
parseFillProperties(style, builder, uniforms, vertContext, fragContext);
|
|
903
903
|
|
|
904
|
+
// note that the style filter may have already been applied earlier when building the rendering instructions
|
|
905
|
+
// this is still needed in case a filter cannot be evaluated statically beforehand (e.g. depending on time)
|
|
904
906
|
if (filter) {
|
|
905
907
|
const parsedFilter = expressionToGlsl(fragContext, filter, BooleanType);
|
|
906
908
|
builder.setFragmentDiscardExpression(`!${parsedFilter}`);
|