ol 6.9.1-dev.1635970886313 → 6.9.1-dev.1636032670873
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
|
@@ -48,6 +48,11 @@ declare class CanvasLayerRenderer<LayerType extends import("../../layer/Layer.js
|
|
|
48
48
|
* @type {boolean}
|
|
49
49
|
*/
|
|
50
50
|
containerReused: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* @private
|
|
53
|
+
* @type {CanvasRenderingContext2D}
|
|
54
|
+
*/
|
|
55
|
+
private pixelContext_;
|
|
51
56
|
/**
|
|
52
57
|
* Get a rendering container from an existing target, if compatible.
|
|
53
58
|
* @param {HTMLElement} target Potential render target.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../../src/renderer/canvas/Layer.js"],"names":[],"mappings":";AAqBA;;;;GAIG;AACH;IACE;;OAEG;IACH,
|
|
1
|
+
{"version":3,"file":"Layer.d.ts","sourceRoot":"","sources":["../../src/renderer/canvas/Layer.js"],"names":[],"mappings":";AAqBA;;;;GAIG;AACH;IACE;;OAEG;IACH,8BAsDC;IAnDC;;;OAGG;IACH,qBAFU,WAAW,CAEA;IAErB;;;OAGG;IACH,8BAFU,MAAM,CAEO;IAEvB;;;;;OAKG;IACH,yBAFU,OAAO,oBAAoB,EAAE,SAAS,CAEV;IAEtC;;;;;OAKG;IACH,0BAFU,OAAO,oBAAoB,EAAE,SAAS,CAET;IAEvC;;;;;OAKG;IACH,iCAFU,OAAO,oBAAoB,EAAE,SAAS,CAEF;IAE9C;;OAEG;IACH,SAFU,wBAAwB,CAEf;IAEnB;;OAEG;IACH,iBAFU,OAAO,CAEW;IAE5B;;;OAGG;IACH,sBAAyB;IAG3B;;;;;OAKG;IACH,4EAyCC;IAED;;;;;OAKG;IACH,2IAwBC;IAED;;;;;OAKG;IACH,6BAWC;IAED;;;;OAIG;IACH,qHAEC;IAED;;;;OAIG;IACH,sHAEC;IAED;;;;;;;;;;;OAWG;IACH,mKAyBC;CA4DF"}
|
package/renderer/canvas/Layer.js
CHANGED
|
@@ -74,6 +74,11 @@ var CanvasLayerRenderer = /** @class */ (function (_super) {
|
|
|
74
74
|
* @type {boolean}
|
|
75
75
|
*/
|
|
76
76
|
_this.containerReused = false;
|
|
77
|
+
/**
|
|
78
|
+
* @private
|
|
79
|
+
* @type {CanvasRenderingContext2D}
|
|
80
|
+
*/
|
|
81
|
+
_this.pixelContext_ = null;
|
|
77
82
|
return _this;
|
|
78
83
|
}
|
|
79
84
|
/**
|
|
@@ -221,21 +226,26 @@ var CanvasLayerRenderer = /** @class */ (function (_super) {
|
|
|
221
226
|
return null;
|
|
222
227
|
}
|
|
223
228
|
}
|
|
229
|
+
var x = Math.round(renderPixel[0]);
|
|
230
|
+
var y = Math.round(renderPixel[1]);
|
|
231
|
+
var pixelContext = this.pixelContext_;
|
|
232
|
+
if (!pixelContext) {
|
|
233
|
+
var pixelCanvas = document.createElement('canvas');
|
|
234
|
+
pixelCanvas.width = 1;
|
|
235
|
+
pixelCanvas.height = 1;
|
|
236
|
+
pixelContext = pixelCanvas.getContext('2d');
|
|
237
|
+
this.pixelContext_ = pixelContext;
|
|
238
|
+
}
|
|
239
|
+
pixelContext.clearRect(0, 0, 1, 1);
|
|
224
240
|
var data;
|
|
225
241
|
try {
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
var newCanvas = document.createElement('canvas');
|
|
229
|
-
var newContext = newCanvas.getContext('2d');
|
|
230
|
-
newCanvas.width = 1;
|
|
231
|
-
newCanvas.height = 1;
|
|
232
|
-
newContext.clearRect(0, 0, 1, 1);
|
|
233
|
-
newContext.drawImage(context.canvas, x, y, 1, 1, 0, 0, 1, 1);
|
|
234
|
-
data = newContext.getImageData(0, 0, 1, 1).data;
|
|
242
|
+
pixelContext.drawImage(context.canvas, x, y, 1, 1, 0, 0, 1, 1);
|
|
243
|
+
data = pixelContext.getImageData(0, 0, 1, 1).data;
|
|
235
244
|
}
|
|
236
245
|
catch (err) {
|
|
237
246
|
if (err.name === 'SecurityError') {
|
|
238
247
|
// tainted canvas, we assume there is data at the given pixel (although there might not be)
|
|
248
|
+
this.pixelContext_ = null;
|
|
239
249
|
return new Uint8Array();
|
|
240
250
|
}
|
|
241
251
|
return data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layer.js","sourceRoot":"","sources":["../../src/renderer/canvas/Layer.js"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;GAEG;AACH,OAAO,aAAa,MAAM,aAAa,CAAC;AACxC,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,EACL,KAAK,IAAI,cAAc,EACvB,OAAO,IAAI,gBAAgB,EAC3B,MAAM,IAAI,eAAe,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,UAAU,EACV,WAAW,GACZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAC,qBAAqB,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC;;;;GAIG;AACH;IAAkC,uCAAa;IAC7C;;OAEG;IACH,6BAAY,KAAK;QAAjB,YACE,kBAAM,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"Layer.js","sourceRoot":"","sources":["../../src/renderer/canvas/Layer.js"],"names":[],"mappings":"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"}
|
|
@@ -76,6 +76,12 @@ class CanvasLayerRenderer extends LayerRenderer {
|
|
|
76
76
|
* @type {boolean}
|
|
77
77
|
*/
|
|
78
78
|
this.containerReused = false;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* @private
|
|
82
|
+
* @type {CanvasRenderingContext2D}
|
|
83
|
+
*/
|
|
84
|
+
this.pixelContext_ = null;
|
|
79
85
|
}
|
|
80
86
|
|
|
81
87
|
/**
|
|
@@ -264,20 +270,25 @@ class CanvasLayerRenderer extends LayerRenderer {
|
|
|
264
270
|
}
|
|
265
271
|
}
|
|
266
272
|
|
|
273
|
+
const x = Math.round(renderPixel[0]);
|
|
274
|
+
const y = Math.round(renderPixel[1]);
|
|
275
|
+
let pixelContext = this.pixelContext_;
|
|
276
|
+
if (!pixelContext) {
|
|
277
|
+
const pixelCanvas = document.createElement('canvas');
|
|
278
|
+
pixelCanvas.width = 1;
|
|
279
|
+
pixelCanvas.height = 1;
|
|
280
|
+
pixelContext = pixelCanvas.getContext('2d');
|
|
281
|
+
this.pixelContext_ = pixelContext;
|
|
282
|
+
}
|
|
283
|
+
pixelContext.clearRect(0, 0, 1, 1);
|
|
267
284
|
let data;
|
|
268
285
|
try {
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
const newCanvas = document.createElement('canvas');
|
|
272
|
-
const newContext = newCanvas.getContext('2d');
|
|
273
|
-
newCanvas.width = 1;
|
|
274
|
-
newCanvas.height = 1;
|
|
275
|
-
newContext.clearRect(0, 0, 1, 1);
|
|
276
|
-
newContext.drawImage(context.canvas, x, y, 1, 1, 0, 0, 1, 1);
|
|
277
|
-
data = newContext.getImageData(0, 0, 1, 1).data;
|
|
286
|
+
pixelContext.drawImage(context.canvas, x, y, 1, 1, 0, 0, 1, 1);
|
|
287
|
+
data = pixelContext.getImageData(0, 0, 1, 1).data;
|
|
278
288
|
} catch (err) {
|
|
279
289
|
if (err.name === 'SecurityError') {
|
|
280
290
|
// tainted canvas, we assume there is data at the given pixel (although there might not be)
|
|
291
|
+
this.pixelContext_ = null;
|
|
281
292
|
return new Uint8Array();
|
|
282
293
|
}
|
|
283
294
|
return data;
|
package/util.js
CHANGED