ol 9.0.0-dev.1708371033297 → 9.0.0-dev.1708376390748
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 +2 -2
- package/dist/ol.js.map +1 -1
- package/package.json +1 -1
- package/render/canvas/ZIndexContext.d.ts +0 -3
- package/render/canvas/ZIndexContext.d.ts.map +1 -1
- package/render/canvas/ZIndexContext.js +6 -1
- package/renderer/canvas/TileLayer.d.ts +5 -0
- package/renderer/canvas/TileLayer.d.ts.map +1 -1
- package/renderer/canvas/TileLayer.js +32 -8
- package/renderer/canvas/VectorTileLayer.d.ts +0 -1
- package/renderer/canvas/VectorTileLayer.d.ts.map +1 -1
- package/renderer/canvas/VectorTileLayer.js +5 -1
- package/source.d.ts +1 -0
- package/source.d.ts.map +1 -1
- package/source.js +1 -0
- package/util.js +1 -1
package/package.json
CHANGED
|
@@ -2,9 +2,6 @@ export default ZIndexContext;
|
|
|
2
2
|
export type ZIndexContextProxy = CanvasRenderingContext2D & {
|
|
3
3
|
globalAlpha: any;
|
|
4
4
|
};
|
|
5
|
-
/**
|
|
6
|
-
* @module ol/render/canvas/ZIndexContext
|
|
7
|
-
*/
|
|
8
5
|
/** @typedef {CanvasRenderingContext2D & {globalAlpha: any}} ZIndexContextProxy */
|
|
9
6
|
/**
|
|
10
7
|
* @extends {CanvasRenderingContext2D}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ZIndexContext.d.ts","sourceRoot":"","sources":["ZIndexContext.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"ZIndexContext.d.ts","sourceRoot":"","sources":["ZIndexContext.js"],"names":[],"mappings":";iCAMc,wBAAwB,GAAG;IAAC,WAAW,EAAE,GAAG,CAAA;CAAC;AAA3D,kFAAkF;AAElF;;GAEG;AACH;IAEI;;;OAGG;IACH,sBAAuB;IACvB;;OAEG;IACH,QAFU,MAAM,CAED;IACf;;;OAGG;IACH,gBAAgB;IAEhB;;OAEG;IACH,UAFU,kBAAkB,CA0B3B;IAGH;;;;OAIG;IACH,wBAGE;IAEF;;;;;;OAMG;IACH,cAFY,kBAAkB,CAI7B;IAED;;OAEG;IACH,cAFW,wBAAwB,QAkBlC;IAED,cAIC;IAED;;;OAGG;IACH,eAGC;CACF"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
* @module ol/render/canvas/ZIndexContext
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
+
import {getSharedCanvasContext2D} from '../../dom.js';
|
|
6
|
+
|
|
5
7
|
/** @typedef {CanvasRenderingContext2D & {globalAlpha: any}} ZIndexContextProxy */
|
|
6
8
|
|
|
7
9
|
/**
|
|
@@ -30,7 +32,10 @@ class ZIndexContext {
|
|
|
30
32
|
this.context_ = /** @type {ZIndexContextProxy} */ (
|
|
31
33
|
new Proxy(CanvasRenderingContext2D.prototype, {
|
|
32
34
|
get: (target, property) => {
|
|
33
|
-
if (
|
|
35
|
+
if (
|
|
36
|
+
typeof (/** @type {*} */ (getSharedCanvasContext2D())[property]) !==
|
|
37
|
+
'function'
|
|
38
|
+
) {
|
|
34
39
|
// we only accept calling functions on the proxy, not accessing properties
|
|
35
40
|
return undefined;
|
|
36
41
|
}
|
|
@@ -56,6 +56,10 @@ declare class CanvasTileLayerRenderer<LayerType extends import("../../layer/Tile
|
|
|
56
56
|
* @type {import("../../TileRange.js").default}
|
|
57
57
|
*/
|
|
58
58
|
private tmpTileRange_;
|
|
59
|
+
/**
|
|
60
|
+
* @type {ZIndexContext}
|
|
61
|
+
*/
|
|
62
|
+
deferredContext_: ZIndexContext;
|
|
59
63
|
/**
|
|
60
64
|
* @protected
|
|
61
65
|
* @param {import("../../Tile.js").default} tile Tile.
|
|
@@ -142,4 +146,5 @@ declare class CanvasTileLayerRenderer<LayerType extends import("../../layer/Tile
|
|
|
142
146
|
protected manageTilePyramid(frameState: import("../../Map.js").FrameState, tileSource: import("../../source/Tile.js").default, tileGrid: import("../../tilegrid/TileGrid.js").default, pixelRatio: number, projection: import("../../proj/Projection.js").default, extent: import("../../extent.js").Extent, currentZ: number, preload: number, tileCallback?: ((arg0: import("../../Tile.js").default) => void) | undefined): void;
|
|
143
147
|
}
|
|
144
148
|
import CanvasLayerRenderer from './Layer.js';
|
|
149
|
+
import ZIndexContext from '../../render/canvas/ZIndexContext.js';
|
|
145
150
|
//# sourceMappingURL=TileLayer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TileLayer.d.ts","sourceRoot":"","sources":["TileLayer.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"TileLayer.d.ts","sourceRoot":"","sources":["TileLayer.js"],"names":[],"mappings":";AA+BA;;;;;;GAMG;AACH;IACE;;OAEG;IACH,uBAFW,SAAS,EAiEnB;IA5DC;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;OAGG;IACH,wBAA2B;IAE3B;;;OAGG;IACH,8BAFU,MAAM,CAEO;IAEvB;;;OAGG;IACH,8BAFU,OAAO,0BAA0B,EAAE,OAAO,CAEtB;IAE9B;;;OAGG;IACH,4BAFU,MAAM,CAEK;IAErB;;;OAGG;IACH,yBAFW,MAAM,OAAO,eAAe,EAAE,OAAO,CAAC,CAE1B;IAEvB;;;OAGG;IACH,kBAAsB;IAEtB;;;OAGG;IACH,qBAFU,OAAO,iBAAiB,EAAE,MAAM,CAEZ;IAE9B;;;OAGG;IACH,sBAA8C;IAE9C;;OAEG;IACH,kBAFU,aAAa,CAIf;IAGV;;;;OAIG;IACH,+BAHW,OAAO,eAAe,EAAE,OAAO,GAC9B,OAAO,CAWlB;IAED;;;;;;OAMG;IACH,WANW,MAAM,KACN,MAAM,KACN,MAAM,cACN,OAAO,cAAc,EAAE,UAAU,GAC/B,OAAO,eAAe,EAAE,OAAO,CAkB3C;IAED;;;OAGG;IACH,eAHW,OAAO,gBAAgB,EAAE,KAAK,GAC7B,iBAAiB,CA4E5B;IAwBD;;;;;OAKG;IACH,wBAJW,OAAO,cAAc,EAAE,UAAU,UACjC,WAAW,GACV,WAAW,CAwUtB;IAYD;;;;;;;;;OASG;IACH,oBATW,OAAO,oBAAoB,EAAE,OAAO,cACpC,OAAO,cAAc,EAAE,UAAU,KACjC,MAAM,KACN,MAAM,KACN,MAAM,KACN,MAAM,UACN,MAAM,cACN,OAAO,QAyCjB;IAED;;OAEG;IACH,YAFY,iBAAiB,CAK5B;IAED;;;;;OAKG;IACH,6BAJW,OAAO,oBAAoB,EAAE,OAAO,GACnC,iBAAiB,GAAC,gBAAgB,GAAC,gBAAgB,CAK9D;IAED;;;;OAIG;IACH,0CAJW,OAAO,cAAc,EAAE,UAAU,cACjC,OAAO,sBAAsB,EAAE,OAAO,QA0BhD;IAED;;;;;OAKG;IACH;YALmB,MAAM;gBAAU,MAAM,GAAE,OAAO;;mBACvC,OAAO,sBAAsB,EAAE,OAAO,QACtC,OAAO,eAAe,EAAE,OAAO,QAUzC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,wCAXW,OAAO,cAAc,EAAE,UAAU,cACjC,OAAO,sBAAsB,EAAE,OAAO,YACtC,OAAO,4BAA4B,EAAE,OAAO,cAC5C,MAAM,cACN,OAAO,0BAA0B,EAAE,OAAO,UAC1C,OAAO,iBAAiB,EAAE,MAAM,YAChC,MAAM,WACN,MAAM,yBACG,OAAO,eAAe,EAAE,OAAO,KAAE,IAAI,qBAmExD;CACF;gCApxB+B,YAAY;0BAKlB,sCAAsC"}
|
|
@@ -6,6 +6,7 @@ import ImageTile from '../../ImageTile.js';
|
|
|
6
6
|
import ReprojTile from '../../reproj/Tile.js';
|
|
7
7
|
import TileRange from '../../TileRange.js';
|
|
8
8
|
import TileState from '../../TileState.js';
|
|
9
|
+
import ZIndexContext from '../../render/canvas/ZIndexContext.js';
|
|
9
10
|
import {
|
|
10
11
|
apply as applyTransform,
|
|
11
12
|
compose as composeTransform,
|
|
@@ -95,6 +96,13 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
95
96
|
* @type {import("../../TileRange.js").default}
|
|
96
97
|
*/
|
|
97
98
|
this.tmpTileRange_ = new TileRange(0, 0, 0, 0);
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* @type {ZIndexContext}
|
|
102
|
+
*/
|
|
103
|
+
this.deferredContext_ = tileLayer.getDeclutter()
|
|
104
|
+
? new ZIndexContext()
|
|
105
|
+
: null;
|
|
98
106
|
}
|
|
99
107
|
|
|
100
108
|
/**
|
|
@@ -383,8 +391,10 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
383
391
|
const canvasTransform = toTransformString(this.pixelTransform);
|
|
384
392
|
|
|
385
393
|
this.useContainer(target, canvasTransform, this.getBackground(frameState));
|
|
386
|
-
const context = this.
|
|
387
|
-
|
|
394
|
+
const context = this.deferredContext_
|
|
395
|
+
? this.deferredContext_.getContext()
|
|
396
|
+
: this.context;
|
|
397
|
+
const canvas = this.context.canvas;
|
|
388
398
|
|
|
389
399
|
makeInverse(this.inversePixelTransform, this.pixelTransform);
|
|
390
400
|
|
|
@@ -558,7 +568,7 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
558
568
|
);
|
|
559
569
|
this.scheduleExpireCache(frameState, tileSource);
|
|
560
570
|
|
|
561
|
-
this.postRender(context, frameState);
|
|
571
|
+
this.postRender(this.context, frameState);
|
|
562
572
|
|
|
563
573
|
if (layerState.extent) {
|
|
564
574
|
context.restore();
|
|
@@ -572,6 +582,16 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
572
582
|
return this.container;
|
|
573
583
|
}
|
|
574
584
|
|
|
585
|
+
/**
|
|
586
|
+
* @param {import("../../Map.js").FrameState} frameState Frame state.
|
|
587
|
+
*/
|
|
588
|
+
renderDeferredInternal(frameState) {
|
|
589
|
+
if (this.deferredContext_) {
|
|
590
|
+
this.deferredContext_.draw(this.context);
|
|
591
|
+
this.deferredContext_.clear();
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
|
|
575
595
|
/**
|
|
576
596
|
* @param {import("../../ImageTile.js").default} tile Tile.
|
|
577
597
|
* @param {import("../../Map.js").FrameState} frameState Frame state.
|
|
@@ -587,17 +607,21 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
587
607
|
if (!image) {
|
|
588
608
|
return;
|
|
589
609
|
}
|
|
610
|
+
/** @type {import('../../render/canvas/ZIndexContext.js').ZIndexContextProxy} */
|
|
611
|
+
const context = this.deferredContext_
|
|
612
|
+
? this.deferredContext_.getContext()
|
|
613
|
+
: this.context;
|
|
590
614
|
const uid = getUid(this);
|
|
591
615
|
const layerState = frameState.layerStatesArray[frameState.layerIndex];
|
|
592
616
|
const alpha =
|
|
593
617
|
layerState.opacity *
|
|
594
618
|
(transition ? tile.getAlpha(uid, frameState.time) : 1);
|
|
595
|
-
const alphaChanged = alpha !==
|
|
619
|
+
const alphaChanged = alpha !== context.globalAlpha;
|
|
596
620
|
if (alphaChanged) {
|
|
597
|
-
|
|
598
|
-
|
|
621
|
+
context.save();
|
|
622
|
+
context.globalAlpha = alpha;
|
|
599
623
|
}
|
|
600
|
-
|
|
624
|
+
context.drawImage(
|
|
601
625
|
image,
|
|
602
626
|
gutter,
|
|
603
627
|
gutter,
|
|
@@ -610,7 +634,7 @@ class CanvasTileLayerRenderer extends CanvasLayerRenderer {
|
|
|
610
634
|
);
|
|
611
635
|
|
|
612
636
|
if (alphaChanged) {
|
|
613
|
-
|
|
637
|
+
context.restore();
|
|
614
638
|
}
|
|
615
639
|
if (alpha !== layerState.opacity) {
|
|
616
640
|
frameState.animate = true;
|
|
@@ -77,7 +77,6 @@ declare class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer<impo
|
|
|
77
77
|
* @param {import("../../layer/Layer.js").State} layerState Layer state.
|
|
78
78
|
*/
|
|
79
79
|
renderDeclutter(frameState: import("../../Map.js").FrameState, layerState: import("../../layer/Layer.js").State): void;
|
|
80
|
-
renderDeferredInternal(): void;
|
|
81
80
|
getTileRenderTransform(tile: any, frameState: any): number[];
|
|
82
81
|
/**
|
|
83
82
|
* @param {import("../../Feature.js").FeatureLike} feature Feature.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VectorTileLayer.d.ts","sourceRoot":"","sources":["VectorTileLayer.js"],"names":[],"mappings":";AA4DA;;;;;GAKG;AACH;IACE;;OAEG;IACH,mBAFW,OAAO,2BAA2B,EAAE,OAAO,EA2CrD;IAtCC,eAAe;IACf,qCAA2E;IAE3E;;;OAGG;IACH,+BAA2B;IAE3B;;;OAGG;IACH,4CAA+C;IAE/C;;;OAGG;IACH,0BAAsB;IAEtB;;;OAGG;IACH,yBAAyB;IAEzB;;;OAGG;IACH,sBAAsC;IAEtC;;;OAGG;IACH,0BAA6B;IAG/B;;;;;OAKG;IACH,kBALW,OAAO,2BAA2B,EAAE,OAAO,cAC3C,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,GAAC,SAAS,CAY5B;IAkCD;;;OAGG;IACH,qBAHW,OAAO,2BAA2B,EAAE,OAAO,GAC1C,OAAO,CAUlB;IAED;;OAEG;IACH,6BAEC;IAgBD;;;;;OAKG;IACH,6BAqHC;IAyND;;;;OAIG;IACH,gCAEC;IAED;;;;OAIG;IACH,4BAHW,OAAO,cAAc,EAAE,UAAU,cACjC,OAAO,sBAAsB,EAAE,KAAK,QAiC9C;
|
|
1
|
+
{"version":3,"file":"VectorTileLayer.d.ts","sourceRoot":"","sources":["VectorTileLayer.js"],"names":[],"mappings":";AA4DA;;;;;GAKG;AACH;IACE;;OAEG;IACH,mBAFW,OAAO,2BAA2B,EAAE,OAAO,EA2CrD;IAtCC,eAAe;IACf,qCAA2E;IAE3E;;;OAGG;IACH,+BAA2B;IAE3B;;;OAGG;IACH,4CAA+C;IAE/C;;;OAGG;IACH,0BAAsB;IAEtB;;;OAGG;IACH,yBAAyB;IAEzB;;;OAGG;IACH,sBAAsC;IAEtC;;;OAGG;IACH,0BAA6B;IAG/B;;;;;OAKG;IACH,kBALW,OAAO,2BAA2B,EAAE,OAAO,cAC3C,MAAM,cACN,OAAO,uBAAuB,EAAE,OAAO,GACtC,OAAO,GAAC,SAAS,CAY5B;IAkCD;;;OAGG;IACH,qBAHW,OAAO,2BAA2B,EAAE,OAAO,GAC1C,OAAO,CAUlB;IAED;;OAEG;IACH,6BAEC;IAgBD;;;;;OAKG;IACH,6BAqHC;IAyND;;;;OAIG;IACH,gCAEC;IAED;;;;OAIG;IACH,4BAHW,OAAO,cAAc,EAAE,UAAU,cACjC,OAAO,sBAAsB,EAAE,KAAK,QAiC9C;IAqDD,6DA+BC;IAgID;;;;;;;;OAQG;IACH,uBARW,OAAO,kBAAkB,EAAE,WAAW,oBACtC,MAAM,UACN,OAAO,sBAAsB,EAAE,OAAO,GAAC,MAAM,OAAO,sBAAsB,EAAE,OAAO,CAAC,gBACpF,OAAO,qCAAqC,EAAE,OAAO,gEAGpD,OAAO,CAyClB;IAED;;;;OAIG;IACH,8BAcC;IAED;;;;OAIG;IACH,yBAwDC;CACF;oCAz5BmC,gBAAgB"}
|
|
@@ -583,7 +583,11 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
|
|
|
583
583
|
context.globalAlpha = alpha;
|
|
584
584
|
}
|
|
585
585
|
|
|
586
|
-
|
|
586
|
+
/**
|
|
587
|
+
* @param {import("../../Map.js").FrameState} frameState Frame state.
|
|
588
|
+
*/
|
|
589
|
+
renderDeferredInternal(frameState) {
|
|
590
|
+
super.renderDeferredInternal(frameState);
|
|
587
591
|
const tiles =
|
|
588
592
|
/** @type {Array<import("../../VectorRenderTile.js").default>} */ (
|
|
589
593
|
this.renderedTiles
|
package/source.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ export { default as CartoDB } from "./source/CartoDB.js";
|
|
|
16
16
|
export { default as Cluster } from "./source/Cluster.js";
|
|
17
17
|
export { default as DataTile } from "./source/DataTile.js";
|
|
18
18
|
export { default as GeoTIFF } from "./source/GeoTIFF.js";
|
|
19
|
+
export { default as Google } from "./source/Google.js";
|
|
19
20
|
export { default as IIIF } from "./source/IIIF.js";
|
|
20
21
|
export { default as Image } from "./source/Image.js";
|
|
21
22
|
export { default as ImageArcGISRest } from "./source/ImageArcGISRest.js";
|
package/source.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["source.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"source.d.ts","sourceRoot":"","sources":["source.js"],"names":[],"mappings":"AA4CA;;;;;;;;;;;GAWG;AACH,8CATW,OAAO,wBAAwB,EAAE,OAAO,kBAC/B,OAAO,gBAAgB,EAAE,SAAS,KAAG,OAAO,oBAAoB,EAAE,OAAO,UAKxE,OAAO,aAAa,EAAE,MAAM,QAAE,MAAM,KAAG,MAAM,OAAO,oBAAoB,EAAE,OAAO,CAAC,CAuBtG"}
|
package/source.js
CHANGED
|
@@ -10,6 +10,7 @@ export {default as CartoDB} from './source/CartoDB.js';
|
|
|
10
10
|
export {default as Cluster} from './source/Cluster.js';
|
|
11
11
|
export {default as DataTile} from './source/DataTile.js';
|
|
12
12
|
export {default as GeoTIFF} from './source/GeoTIFF.js';
|
|
13
|
+
export {default as Google} from './source/Google.js';
|
|
13
14
|
export {default as IIIF} from './source/IIIF.js';
|
|
14
15
|
export {default as Image} from './source/Image.js';
|
|
15
16
|
export {default as ImageArcGISRest} from './source/ImageArcGISRest.js';
|
package/util.js
CHANGED