Add imageRatio option for VectorImage layers
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
import VectorImageLayer from '../../../../../src/ol/layer/VectorImage.js';
|
||||
import VectorSource from '../../../../../src/ol/source/Vector.js';
|
||||
import CanvasVectorImageLayerRenderer from '../../../../../src/ol/renderer/canvas/VectorImageLayer.js';
|
||||
import {get as getProjection} from '../../../../../src/ol/proj.js';
|
||||
import {scaleFromCenter} from '../../../../../src/ol/extent.js';
|
||||
|
||||
|
||||
describe('ol/renderer/canvas/VectorImageLayer', function() {
|
||||
|
||||
@@ -18,4 +21,36 @@ describe('ol/renderer/canvas/VectorImageLayer', function() {
|
||||
|
||||
});
|
||||
|
||||
describe('#prepareFrame', function() {
|
||||
|
||||
it('sets correct extent with imageRatio = 2', function() {
|
||||
const layer = new VectorImageLayer({
|
||||
imageRatio: 2,
|
||||
source: new VectorSource()
|
||||
});
|
||||
const renderer = new CanvasVectorImageLayerRenderer(layer);
|
||||
const projection = getProjection('EPSG:3857');
|
||||
const projExtent = projection.getExtent();
|
||||
const extent = [
|
||||
projExtent[0] - 10000, -10000, projExtent[0] + 10000, 10000
|
||||
];
|
||||
const frameState = {
|
||||
extent: extent,
|
||||
skippedFeatureUids: {},
|
||||
viewHints: [],
|
||||
viewState: {
|
||||
projection: projection,
|
||||
resolution: 1,
|
||||
rotation: 0
|
||||
}
|
||||
};
|
||||
renderer.prepareFrame(frameState, {});
|
||||
const expected = renderer.image_.getExtent();
|
||||
|
||||
scaleFromCenter(extent, 2);
|
||||
|
||||
expect(expected).to.eql(extent);
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user