Remove private static members from Raster source

This commit is contained in:
Tim Schaub
2018-02-12 06:37:44 -07:00
parent f91ecab8ed
commit bb530b8ccd
+15 -15
View File
@@ -326,6 +326,14 @@ RasterSource.prototype.onWorkerComplete_ = function(frameState, err, output, dat
}; };
/**
* A reusable canvas context.
* @type {CanvasRenderingContext2D}
* @private
*/
let sharedContext = null;
/** /**
* Get image data from a renderer. * Get image data from a renderer.
* @param {ol.renderer.canvas.Layer} renderer Layer renderer. * @param {ol.renderer.canvas.Layer} renderer Layer renderer.
@@ -339,29 +347,21 @@ function getImageData(renderer, frameState, layerState) {
} }
const width = frameState.size[0]; const width = frameState.size[0];
const height = frameState.size[1]; const height = frameState.size[1];
if (!RasterSource.context_) { if (!sharedContext) {
RasterSource.context_ = createCanvasContext2D(width, height); sharedContext = createCanvasContext2D(width, height);
} else { } else {
const canvas = RasterSource.context_.canvas; const canvas = sharedContext.canvas;
if (canvas.width !== width || canvas.height !== height) { if (canvas.width !== width || canvas.height !== height) {
RasterSource.context_ = createCanvasContext2D(width, height); sharedContext = createCanvasContext2D(width, height);
} else { } else {
RasterSource.context_.clearRect(0, 0, width, height); sharedContext.clearRect(0, 0, width, height);
} }
} }
renderer.composeFrame(frameState, layerState, RasterSource.context_); renderer.composeFrame(frameState, layerState, sharedContext);
return RasterSource.context_.getImageData(0, 0, width, height); return sharedContext.getImageData(0, 0, width, height);
} }
/**
* A reusable canvas context.
* @type {CanvasRenderingContext2D}
* @private
*/
RasterSource.context_ = null;
/** /**
* Get a list of layer states from a list of renderers. * Get a list of layer states from a list of renderers.
* @param {Array.<ol.renderer.canvas.Layer>} renderers Layer renderers. * @param {Array.<ol.renderer.canvas.Layer>} renderers Layer renderers.