ol 10.7.1-dev.1764841052662 → 10.7.1-dev.1765425839121

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ol",
3
- "version": "10.7.1-dev.1764841052662",
3
+ "version": "10.7.1-dev.1765425839121",
4
4
  "description": "OpenLayers mapping library",
5
5
  "keywords": [
6
6
  "map",
@@ -90,6 +90,10 @@ declare class IconImage extends EventTarget {
90
90
  * @return {HTMLImageElement|HTMLCanvasElement|OffscreenCanvas|ImageBitmap} Image or Canvas element or image bitmap.
91
91
  */
92
92
  getImage(pixelRatio: number): HTMLImageElement | HTMLCanvasElement | OffscreenCanvas | ImageBitmap;
93
+ /**
94
+ * @param {HTMLImageElement|HTMLCanvasElement|OffscreenCanvas|ImageBitmap} image Image.
95
+ */
96
+ setImage(image: HTMLImageElement | HTMLCanvasElement | OffscreenCanvas | ImageBitmap): void;
93
97
  /**
94
98
  * @param {number} pixelRatio Pixel ratio.
95
99
  * @return {number} Image or Canvas element.
@@ -1 +1 @@
1
- {"version":3,"file":"IconImage.d.ts","sourceRoot":"","sources":["IconImage.js"],"names":[],"mappings":"AA6SA;;;;;;;;GAQG;AACH,2BARW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,GAAC,IAAI,YACnE,MAAM,GAAC,SAAS,eACf,MAAM,OAAA,cACP,GAAkC,GAAC,SAAS,SAC5C,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GAAC,IAAI,YACvC,OAAO,GACN,SAAS,CAyBpB;;AA5TD;IACE;;;;;;OAMG;IACH,mBANW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,GAAC,IAAI,OACnE,MAAM,GAAC,SAAS,eACf,MAAM,OAAA,cACP,GAAkC,GAAC,SAAS,SAC5C,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GAAC,IAAI,EAgEjD;IA3DC;;;OAGG;IACH,2BAA8B;IAE9B;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,qBAA+B;IAE/B;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,oBAA0E;IAE1E;;;OAGG;IACH,cAC2E;IAE3E;;;OAGG;IACH,aAAe;IAOf;;;OAGG;IACH,eAAkB;IAGpB;;OAEG;IACH,yBAKC;IAED;;;OAGG;IACH,mBAiBC;IAPK,8BAAqB;IAS3B;;OAEG;IACH,6BAEC;IAED;;OAEG;IACH,0BAGC;IAED;;OAEG;IACH,yBAIC;IAED;;;OAGG;IACH,qBAHW,MAAM,GACL,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,CAQzE;IAED;;;OAGG;IACH,0BAHW,MAAM,GACL,MAAM,CAKjB;IAED;;OAEG;IACH,qBAEC;IAED;;OAEG;IACH,wBAFY,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,CAkBzE;IAED;;;OAGG;IACH,WAFY,OAAO,YAAY,EAAE,IAAI,CAIpC;IAED;;OAEG;IACH,UAFY,MAAM,GAAC,SAAS,CAI3B;IAED;;OAEG;IACH,aAwBC;IAED;;;OAGG;IACH,sBA2BC;IAED;;OAEG;IACH,SAFY,OAAO,CAAC,IAAI,CAAC,CAyBxB;CACF;wBAlSuB,qBAAqB"}
1
+ {"version":3,"file":"IconImage.d.ts","sourceRoot":"","sources":["IconImage.js"],"names":[],"mappings":"AAoTA;;;;;;;;GAQG;AACH,2BARW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,GAAC,IAAI,YACnE,MAAM,GAAC,SAAS,eACf,MAAM,OAAA,cACP,GAAkC,GAAC,SAAS,SAC5C,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GAAC,IAAI,YACvC,OAAO,GACN,SAAS,CAyBpB;;AAnUD;IACE;;;;;;OAMG;IACH,mBANW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,GAAC,IAAI,OACnE,MAAM,GAAC,SAAS,eACf,MAAM,OAAA,cACP,GAAkC,GAAC,SAAS,SAC5C,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GAAC,IAAI,EAgEjD;IA3DC;;;OAGG;IACH,2BAA8B;IAE9B;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,qBAA+B;IAE/B;;;OAGG;IACH,gBAAiB;IAEjB;;;OAGG;IACH,eAAmB;IAEnB;;;OAGG;IACH,oBAA0E;IAE1E;;;OAGG;IACH,cAC2E;IAE3E;;;OAGG;IACH,aAAe;IAOf;;;OAGG;IACH,eAAkB;IAGpB;;OAEG;IACH,yBAKC;IAED;;;OAGG;IACH,mBAiBC;IAPK,8BAAqB;IAS3B;;OAEG;IACH,6BAEC;IAED;;OAEG;IACH,0BAGC;IAED;;OAEG;IACH,yBAIC;IAED;;;OAGG;IACH,qBAHW,MAAM,GACL,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,CAQzE;IAED;;OAEG;IACH,gBAFW,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,QAIxE;IAED;;;OAGG;IACH,0BAHW,MAAM,GACL,MAAM,CAKjB;IAED;;OAEG;IACH,qBAEC;IAED;;OAEG;IACH,wBAFY,gBAAgB,GAAC,iBAAiB,GAAC,eAAe,GAAC,WAAW,CAkBzE;IAED;;;OAGG;IACH,WAFY,OAAO,YAAY,EAAE,IAAI,CAIpC;IAED;;OAEG;IACH,UAFY,MAAM,GAAC,SAAS,CAI3B;IAED;;OAEG;IACH,aAwBC;IAED;;;OAGG;IACH,sBA2BC;IAED;;OAEG;IACH,SAFY,OAAO,CAAC,IAAI,CAAC,CAyBxB;CACF;wBAzSuB,qBAAqB"}
@@ -156,6 +156,13 @@ class IconImage extends EventTarget {
156
156
  return this.canvas_[pixelRatio] ? this.canvas_[pixelRatio] : this.image_;
157
157
  }
158
158
 
159
+ /**
160
+ * @param {HTMLImageElement|HTMLCanvasElement|OffscreenCanvas|ImageBitmap} image Image.
161
+ */
162
+ setImage(image) {
163
+ this.image_ = image;
164
+ }
165
+
159
166
  /**
160
167
  * @param {number} pixelRatio Pixel ratio.
161
168
  * @return {number} Image or Canvas element.
@@ -1 +1 @@
1
- {"version":3,"file":"RegularShape.d.ts","sourceRoot":"","sources":["RegularShape.js"],"names":[],"mappings":";;;;;;;;;;;;;YAwBc,MAAM;;;;YAEN,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAeN,OAAO,iBAAiB,EAAE,SAAS,GAAC,SAAS;;;;iBAC7C,MAAM;;;;UACN,MAAM;;;;aACN,aAAa;;;;cACb,KAAK,CAAC,MAAM,CAAC,GAAC,IAAI;;;;oBAClB,MAAM;;;;cACN,cAAc;;;;gBACd,MAAM;;AA5BpB;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;GAMG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EAqFjB;IAvEC;;;OAGG;IACH,4BAA+B;IAE/B;;;OAGG;IACH,cAA6D;IAE7D;;;OAGG;IACH,gBAAqB;IAErB;;;OAGG;IACH,gBAA6B;IAE7B;;;OAGG;IACH,kBAFU,MAAM,CAEY;IAE5B;;;OAGG;IACH,iBAA+B;IAE/B;;;OAGG;IACH,eAA6D;IAE7D;;;OAGG;IACH,gBAAmE;IAEnE;;;OAGG;IACH,cAAU;IAEV;;;OAGG;IACH,uBAAmB;IAEnB;;OAEG;IACH,oBAGuB;IAOzB;;;;;OAKG;IACH,kBAJY,YAAY,CAqBvB;IAqBD;;;;OAIG;IACH,YAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,WAHY,OAAO,WAAW,EAAE,OAAO,GAAC,IAAI,CAK3C;IAED;;;;OAIG;IACH,cAHW,OAAO,WAAW,EAAE,OAAO,GAAC,IAAI,QAM1C;IAED;;;OAGG;IACH,iCAHY,iBAAiB,GAAC,eAAe,CAU5C;IAED;;;;;;OAMG;IACH,8BALW,MAAM,GACL,iBAAiB,GAAC,eAAe,CA2B5C;IAsCD;;;;OAIG;IACH,aAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,aAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,kBAHW,MAAM,QAShB;IAED;;;;OAIG;IACH,cAHY,MAAM,GAAC,SAAS,CAK3B;IAED;;;;OAIG;IACH,oBAHW,MAAM,GAAC,SAAS,QAS1B;IAYD;;;;OAIG;IACH,aAHY,OAAO,aAAa,EAAE,OAAO,GAAC,IAAI,CAK7C;IAED;;;;OAIG;IACH,kBAHW,OAAO,aAAa,EAAE,OAAO,GAAC,IAAI,QAM5C;IAoBD;;;;;;;OAOG;IACH,+BAgFC;IAED;;;OAGG;IACH,iCAHY,aAAa,CAoCxB;IAED;;OAEG;IACH,yBAKC;IAED;;;;;OAKG;IACH,cA2BC;IAED;;;;OAIG;IACH,kCAuBC;IAED;;;OAGG;IACH,oBAmBC;IAED;;;;OAIG;IACH,gCAmBC;CAQF;uBAnoBsB,YAAY"}
1
+ {"version":3,"file":"RegularShape.d.ts","sourceRoot":"","sources":["RegularShape.js"],"names":[],"mappings":";;;;;;;;;;;;;YAwBc,MAAM;;;;YAEN,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAeN,OAAO,iBAAiB,EAAE,SAAS,GAAC,SAAS;;;;iBAC7C,MAAM;;;;UACN,MAAM;;;;aACN,aAAa;;;;cACb,KAAK,CAAC,MAAM,CAAC,GAAC,IAAI;;;;oBAClB,MAAM;;;;cACN,cAAc;;;;gBACd,MAAM;;AA5BpB;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;GAMG;AACH;IACE;;OAEG;IACH,qBAFW,OAAO,EAqFjB;IAvEC;;;OAGG;IACH,4BAA+B;IAE/B;;;OAGG;IACH,cAA6D;IAE7D;;;OAGG;IACH,gBAAqB;IAErB;;;OAGG;IACH,gBAA6B;IAE7B;;;OAGG;IACH,kBAFU,MAAM,CAEY;IAE5B;;;OAGG;IACH,iBAA+B;IAE/B;;;OAGG;IACH,eAA6D;IAE7D;;;OAGG;IACH,gBAAmE;IAEnE;;;OAGG;IACH,cAAU;IAEV;;;OAGG;IACH,uBAAmB;IAEnB;;OAEG;IACH,oBAGuB;IAOzB;;;;;OAKG;IACH,kBAJY,YAAY,CAqBvB;IAqBD;;;;OAIG;IACH,YAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,WAHY,OAAO,WAAW,EAAE,OAAO,GAAC,IAAI,CAK3C;IAED;;;;OAIG;IACH,cAHW,OAAO,WAAW,EAAE,OAAO,GAAC,IAAI,QAM1C;IAED;;;OAGG;IACH,iCAHY,iBAAiB,GAAC,eAAe,CAU5C;IAED;;;;;;OAMG;IACH,8BALW,MAAM,GACL,iBAAiB,GAAC,eAAe,CAoC5C;IAsCD;;;;OAIG;IACH,aAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,aAHY,MAAM,CAKjB;IAED;;;;OAIG;IACH,kBAHW,MAAM,QAShB;IAED;;;;OAIG;IACH,cAHY,MAAM,GAAC,SAAS,CAK3B;IAED;;;;OAIG;IACH,oBAHW,MAAM,GAAC,SAAS,QAS1B;IAYD;;;;OAIG;IACH,aAHY,OAAO,aAAa,EAAE,OAAO,GAAC,IAAI,CAK7C;IAED;;;;OAIG;IACH,kBAHW,OAAO,aAAa,EAAE,OAAO,GAAC,IAAI,QAM5C;IAoBD;;;;;;;OAOG;IACH,+BAgFC;IAED;;;OAGG;IACH,iCAHY,aAAa,CAoCxB;IAED;;OAEG;IACH,yBAKC;IAED;;;;;OAKG;IACH,cA2BC;IAED;;;;OAIG;IACH,kCAuBC;IAED;;;OAGG;IACH,oBAmBC;IAED;;;;OAIG;IACH,gCAmBC;CAQF;uBA5oBsB,YAAY"}
@@ -5,7 +5,7 @@
5
5
  import ImageState from '../ImageState.js';
6
6
  import {asArray} from '../color.js';
7
7
  import {asColorLike} from '../colorlike.js';
8
- import {createCanvasContext2D} from '../dom.js';
8
+ import {createCanvasContext2D, releaseCanvas} from '../dom.js';
9
9
  import {
10
10
  defaultFillStyle,
11
11
  defaultLineCap,
@@ -252,12 +252,21 @@ class RegularShape extends ImageStyle {
252
252
  this.draw_(renderOptions, context, pixelRatio);
253
253
 
254
254
  image = context.canvas;
255
- iconImageCache.set(
256
- cacheKey,
255
+ const iconImage = new IconImage(
256
+ image,
257
+ undefined,
257
258
  null,
259
+ ImageState.LOADED,
258
260
  null,
259
- new IconImage(image, undefined, null, ImageState.LOADED, null),
260
261
  );
262
+ iconImageCache.set(cacheKey, null, null, iconImage);
263
+ // Update the image in place to an ImageBitmap for better performance and lower memory usage
264
+ createImageBitmap(image).then((imageBitmap) => {
265
+ iconImage.setImage(imageBitmap);
266
+ if (this.hitDetectionCanvas_ !== image) {
267
+ releaseCanvas(context);
268
+ }
269
+ });
261
270
  }
262
271
  return image;
263
272
  }
package/util.js CHANGED
@@ -33,4 +33,4 @@ export function getUid(obj) {
33
33
  * OpenLayers version.
34
34
  * @type {string}
35
35
  */
36
- export const VERSION = '10.7.1-dev.1764841052662';
36
+ export const VERSION = '10.7.1-dev.1765425839121';