Improve type checking in ol.renderer.canvas.Map
This commit is contained in:
@@ -15,6 +15,7 @@ goog.require('ol.render.EventType');
|
|||||||
goog.require('ol.render.canvas.Immediate');
|
goog.require('ol.render.canvas.Immediate');
|
||||||
goog.require('ol.renderer.Map');
|
goog.require('ol.renderer.Map');
|
||||||
goog.require('ol.renderer.canvas.ImageLayer');
|
goog.require('ol.renderer.canvas.ImageLayer');
|
||||||
|
goog.require('ol.renderer.canvas.Layer');
|
||||||
goog.require('ol.renderer.canvas.TileLayer');
|
goog.require('ol.renderer.canvas.TileLayer');
|
||||||
goog.require('ol.renderer.canvas.VectorLayer');
|
goog.require('ol.renderer.canvas.VectorLayer');
|
||||||
goog.require('ol.source.State');
|
goog.require('ol.source.State');
|
||||||
@@ -95,6 +96,17 @@ ol.renderer.canvas.Map.prototype.dispatchComposeEvent_ =
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param {ol.layer.Layer} layer Layer.
|
||||||
|
* @return {ol.renderer.canvas.Layer} Canvas layer renderer.
|
||||||
|
*/
|
||||||
|
ol.renderer.canvas.Map.prototype.getCanvasLayerRenderer = function(layer) {
|
||||||
|
var layerRenderer = this.getLayerRenderer(layer);
|
||||||
|
goog.asserts.assertInstanceof(layerRenderer, ol.renderer.canvas.Layer);
|
||||||
|
return /** @type {ol.renderer.canvas.Layer} */ (layerRenderer);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @inheritDoc
|
* @inheritDoc
|
||||||
*/
|
*/
|
||||||
@@ -125,11 +137,10 @@ ol.renderer.canvas.Map.prototype.renderFrame = function(frameState) {
|
|||||||
var layerStates = frameState.layerStates;
|
var layerStates = frameState.layerStates;
|
||||||
var layersArray = frameState.layersArray;
|
var layersArray = frameState.layersArray;
|
||||||
var viewResolution = frameState.view2DState.resolution;
|
var viewResolution = frameState.view2DState.resolution;
|
||||||
var i, ii, layer, layerRenderer, layerState;
|
var canvasLayerRenderer, i, ii, layer, layerState;
|
||||||
for (i = 0, ii = layersArray.length; i < ii; ++i) {
|
for (i = 0, ii = layersArray.length; i < ii; ++i) {
|
||||||
layer = layersArray[i];
|
layer = layersArray[i];
|
||||||
layerRenderer =
|
canvasLayerRenderer = this.getCanvasLayerRenderer(layer);
|
||||||
/** @type {ol.renderer.canvas.Layer} */ (this.getLayerRenderer(layer));
|
|
||||||
layerState = layerStates[goog.getUid(layer)];
|
layerState = layerStates[goog.getUid(layer)];
|
||||||
if (!layerState.visible ||
|
if (!layerState.visible ||
|
||||||
layerState.sourceState != ol.source.State.READY ||
|
layerState.sourceState != ol.source.State.READY ||
|
||||||
@@ -137,8 +148,8 @@ ol.renderer.canvas.Map.prototype.renderFrame = function(frameState) {
|
|||||||
viewResolution < layerState.minResolution) {
|
viewResolution < layerState.minResolution) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
layerRenderer.prepareFrame(frameState, layerState);
|
canvasLayerRenderer.prepareFrame(frameState, layerState);
|
||||||
layerRenderer.composeFrame(frameState, layerState, context);
|
canvasLayerRenderer.composeFrame(frameState, layerState, context);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.dispatchComposeEvent_(ol.render.EventType.POSTCOMPOSE, frameState);
|
this.dispatchComposeEvent_(ol.render.EventType.POSTCOMPOSE, frameState);
|
||||||
|
|||||||
Reference in New Issue
Block a user