Merge pull request #6082 from ahocevar/unified-canvas-rendering

Unified canvas rendering
This commit is contained in:
Andreas Hocevar
2016-12-06 08:59:40 +01:00
committed by GitHub
19 changed files with 400 additions and 514 deletions

View File

@@ -32,15 +32,18 @@ describe('ol.renderer.canvas.TileLayer', function() {
renderer.renderedTiles = [];
var frameState = {
viewState: {
center: [2, 3],
center: [10, 5],
projection: ol.proj.get('EPSG:3857'),
resolution: 1,
rotation: Math.PI
},
size: [10, 10],
extent: [0, 0, 20, 10],
size: [20, 10],
pixelRatio: 2,
coordinateToPixelTransform: ol.transform.create(),
pixelToCoordinateTransform: ol.transform.create()
pixelToCoordinateTransform: ol.transform.create(),
usedTiles: {},
wantedTiles: {}
};
renderer.getImageTransform = function() {
return ol.transform.create();
@@ -62,8 +65,9 @@ describe('ol.renderer.canvas.TileLayer', function() {
return img;
}
}];
renderer.prepareFrame(frameState, layerState);
renderer.composeFrame(frameState, layerState, context);
expect(context.drawImage.firstCall.args[0].width).to.be(112);
expect(context.drawImage.firstCall.args[0].width).to.be(17);
});
});

View File

@@ -89,7 +89,7 @@ describe('ol.renderer.canvas.VectorTileLayer', function() {
it('does not render images for pure vector rendering', function() {
layer.renderMode_ = 'vector';
var spy = sinon.spy(ol.renderer.canvas.VectorTileLayer.prototype,
'renderTileImages');
'renderTileImage_');
map.renderSync();
expect(spy.callCount).to.be(0);
spy.restore();
@@ -98,7 +98,7 @@ describe('ol.renderer.canvas.VectorTileLayer', function() {
it('does not render replays for pure image rendering', function() {
layer.renderMode_ = 'image';
var spy = sinon.spy(ol.renderer.canvas.VectorTileLayer.prototype,
'renderTileReplays_');
'getReplayTransform_');
map.renderSync();
expect(spy.callCount).to.be(0);
spy.restore();
@@ -106,9 +106,9 @@ describe('ol.renderer.canvas.VectorTileLayer', function() {
it('renders both replays and images for hybrid rendering', function() {
var spy1 = sinon.spy(ol.renderer.canvas.VectorTileLayer.prototype,
'renderTileReplays_');
'getReplayTransform_');
var spy2 = sinon.spy(ol.renderer.canvas.VectorTileLayer.prototype,
'renderTileImages');
'renderTileImage_');
map.renderSync();
expect(spy1.callCount).to.be(1);
expect(spy2.callCount).to.be(1);