Named exports from ol/transform

This commit is contained in:
Marc Jansen
2018-02-14 19:37:29 +01:00
parent a01b38bc36
commit 183b8e29c4
28 changed files with 247 additions and 208 deletions
+2 -2
View File
@@ -2,7 +2,7 @@ import {equals} from '../../../src/ol/array.js';
import {DEVICE_PIXEL_RATIO} from '../../../src/ol/has.js';
import {toContext} from '../../../src/ol/render.js';
import CanvasImmediateRenderer from '../../../src/ol/render/canvas/Immediate.js';
import _ol_transform_ from '../../../src/ol/transform.js';
import {scale as scaleTransform, create as createTransform} from '../../../src/ol/transform.js';
describe('ol.render', function() {
@@ -27,7 +27,7 @@ describe('ol.render', function() {
[0, 0, size[0] * pixelRatio, size[1] * pixelRatio]);
expect(canvas.style.width).to.be(size[0] + 'px');
expect(canvas.style.height).to.be(size[1] + 'px');
const transform = _ol_transform_.scale(_ol_transform_.create(),
const transform = scaleTransform(createTransform(),
pixelRatio, pixelRatio);
expect(equals(render.transform_, transform)).to.be.ok();
});
@@ -1,4 +1,4 @@
import _ol_transform_ from '../../../../../src/ol/transform.js';
import {create as createTransform} from '../../../../../src/ol/transform.js';
import ImageLayer from '../../../../../src/ol/layer/Image.js';
import MapRenderer from '../../../../../src/ol/renderer/Map.js';
import IntermediateCanvasRenderer from '../../../../../src/ol/renderer/canvas/IntermediateCanvas.js';
@@ -27,11 +27,11 @@ describe('ol.renderer.canvas.IntermediateCanvas', function() {
},
size: [10, 10],
pixelRatio: 1,
coordinateToPixelTransform: _ol_transform_.create(),
pixelToCoordinateTransform: _ol_transform_.create()
coordinateToPixelTransform: createTransform(),
pixelToCoordinateTransform: createTransform()
};
renderer.getImageTransform = function() {
return _ol_transform_.create();
return createTransform();
};
MapRenderer.prototype.calculateMatrices2D(frameState);
layerState = layer.getLayerState();
+4 -4
View File
@@ -15,7 +15,7 @@ import {renderFeature} from '../../../../../src/ol/renderer/vector.js';
import Fill from '../../../../../src/ol/style/Fill.js';
import Stroke from '../../../../../src/ol/style/Stroke.js';
import Style from '../../../../../src/ol/style/Style.js';
import _ol_transform_ from '../../../../../src/ol/transform.js';
import {create as createTransform, scale as scaleTransform} from '../../../../../src/ol/transform.js';
describe('ol.render.canvas.ReplayGroup', function() {
@@ -27,7 +27,7 @@ describe('ol.render.canvas.ReplayGroup', function() {
let fill0, fill1, style1, style2;
beforeEach(function() {
transform = _ol_transform_.create();
transform = createTransform();
replay = new CanvasReplayGroup(1, [-180, -90, 180, 90], 1, 1, false);
feature0 = new Feature(new Polygon(
[[[-90, 0], [-45, 45], [0, 0], [1, 1], [0, -45], [-90, 0]]]));
@@ -92,7 +92,7 @@ describe('ol.render.canvas.ReplayGroup', function() {
replay.replay(context, transform, 0, {});
expect(lineToCount).to.be(4);
lineToCount = 0;
_ol_transform_.scale(transform, 0.25, 0.25);
scaleTransform(transform, 0.25, 0.25);
replay.replay(context, transform, 0, {});
expect(lineToCount).to.be(3);
});
@@ -249,7 +249,7 @@ describe('ol.render.canvas.ReplayGroup', function() {
renderFeature(replay, polygon, style, 1);
renderFeature(replay, multipolygon, style, 1);
renderFeature(replay, geometrycollection, style, 1);
_ol_transform_.scale(transform, 0.1, 0.1);
scaleTransform(transform, 0.1, 0.1);
replay.replay(context, transform, 0, {});
expect(calls.length).to.be(9);
expect(calls[0].geometry).to.be(point.getGeometry());
@@ -6,7 +6,7 @@ import MapRenderer from '../../../../../src/ol/renderer/Map.js';
import CanvasTileLayerRenderer from '../../../../../src/ol/renderer/canvas/TileLayer.js';
import TileWMS from '../../../../../src/ol/source/TileWMS.js';
import XYZ from '../../../../../src/ol/source/XYZ.js';
import _ol_transform_ from '../../../../../src/ol/transform.js';
import {create as createTransform} from '../../../../../src/ol/transform.js';
describe('ol.renderer.canvas.TileLayer', function() {
@@ -89,13 +89,13 @@ describe('ol.renderer.canvas.TileLayer', function() {
extent: [0, 0, 20, 10],
size: [20, 10],
pixelRatio: 2,
coordinateToPixelTransform: _ol_transform_.create(),
pixelToCoordinateTransform: _ol_transform_.create(),
coordinateToPixelTransform: createTransform(),
pixelToCoordinateTransform: createTransform(),
usedTiles: {},
wantedTiles: {}
};
renderer.getImageTransform = function() {
return _ol_transform_.create();
return createTransform();
};
MapRenderer.prototype.calculateMatrices2D(frameState);
const layerState = layer.getLayerState();
@@ -1,4 +1,4 @@
import _ol_transform_ from '../../../../../src/ol/transform.js';
import {apply as applyTransform} from '../../../../../src/ol/transform.js';
import Map from '../../../../../src/ol/Map.js';
import ImageLayer from '../../../../../src/ol/layer/Image.js';
import ImageSource from '../../../../../src/ol/source/Image.js';
@@ -52,23 +52,23 @@ describe('ol.renderer.webgl.ImageLayer', function() {
pixelRatio, viewCenter, viewResolution, viewRotation, imageExtent);
const matrix = renderer.getProjectionMatrix();
let output = _ol_transform_.apply(matrix, [-1, -1]);
let output = applyTransform(matrix, [-1, -1]);
expect(output[0]).to.eql(-6);
expect(output[1]).to.eql(-6);
output = _ol_transform_.apply(matrix, [1, -1]);
output = applyTransform(matrix, [1, -1]);
expect(output[0]).to.eql(2);
expect(output[1]).to.eql(-6);
output = _ol_transform_.apply(matrix, [-1, 1]);
output = applyTransform(matrix, [-1, 1]);
expect(output[0]).to.eql(-6);
expect(output[1]).to.eql(6);
output = _ol_transform_.apply(matrix, [1, 1]);
output = applyTransform(matrix, [1, 1]);
expect(output[0]).to.eql(2);
expect(output[1]).to.eql(6);
output = _ol_transform_.apply(matrix, [0, 0]);
output = applyTransform(matrix, [0, 0]);
expect(output[0]).to.eql(-2);
expect(output[1]).to.eql(0);
});
+48 -36
View File
@@ -1,4 +1,16 @@
import _ol_transform_ from '../../../src/ol/transform.js';
import {
create,
reset,
set,
setFromArray,
translate,
scale,
rotate,
multiply,
compose,
invert,
apply
} from '../../../src/ol/transform.js';
describe('ol.transform', function() {
@@ -9,71 +21,71 @@ describe('ol.transform', function() {
});
}
describe('ol.transform.create()', function() {
describe('create()', function() {
it('creates an identity transform', function() {
expect(_ol_transform_.create()).to.eql([1, 0, 0, 1, 0, 0]);
expect(create()).to.eql([1, 0, 0, 1, 0, 0]);
});
});
describe('ol.transform.reset()', function() {
describe('reset()', function() {
it('resets tansform to an identity transform', function() {
const transform = [1, 2, 3, 4, 5, 6];
expect(_ol_transform_.reset(transform)).to.eql([1, 0, 0, 1, 0, 0]);
expect(reset(transform)).to.eql([1, 0, 0, 1, 0, 0]);
expect(transform).to.eql([1, 0, 0, 1, 0, 0]);
});
});
describe('ol.transform.set()', function() {
describe('set()', function() {
it('sets the given values', function() {
const transform = _ol_transform_.create();
expect(_ol_transform_.set(transform, 1, 2, 3, 4, 5, 6)).to.eql([1, 2, 3, 4, 5, 6]);
const transform = create();
expect(set(transform, 1, 2, 3, 4, 5, 6)).to.eql([1, 2, 3, 4, 5, 6]);
expect(transform).to.eql([1, 2, 3, 4, 5, 6]);
});
});
describe('ol.transform.setFromArray()', function() {
describe('setFromArray()', function() {
it('sets values of 2nd transform on 1st transform', function() {
const transform1 = _ol_transform_.create();
const transform1 = create();
const transform2 = [1, 2, 3, 4, 5, 6];
expect(_ol_transform_.setFromArray(transform1, transform2)).to.eql(transform2);
expect(setFromArray(transform1, transform2)).to.eql(transform2);
expect(transform1).to.eql(transform2);
});
});
describe('ol.transform.translate()', function() {
describe('translate()', function() {
it('applies translation to a transform', function() {
const transform = _ol_transform_.create();
expect(_ol_transform_.translate(transform, 3, 4)).to.eql([1, 0, 0, 1, 3, 4]);
const transform = create();
expect(translate(transform, 3, 4)).to.eql([1, 0, 0, 1, 3, 4]);
expect(transform).to.eql([1, 0, 0, 1, 3, 4]);
});
});
describe('ol.transform.scale()', function() {
describe('scale()', function() {
it('applies scaling to a transform', function() {
const transform = _ol_transform_.create();
expect(_ol_transform_.scale(transform, 3, 4)).to.eql([3, 0, 0, 4, 0, 0]);
const transform = create();
expect(scale(transform, 3, 4)).to.eql([3, 0, 0, 4, 0, 0]);
expect(transform).to.eql([3, 0, 0, 4, 0, 0]);
});
});
describe('ol.transform.rotate()', function() {
describe('rotate()', function() {
it('applies rotation to a transform', function() {
const transform = _ol_transform_.create();
assertRoughlyEqual(_ol_transform_.rotate(transform, Math.PI / 2), [0, 1, -1, 0, 0, 0]);
const transform = create();
assertRoughlyEqual(rotate(transform, Math.PI / 2), [0, 1, -1, 0, 0, 0]);
assertRoughlyEqual(transform, [0, 1, -1, 0, 0, 0]);
});
});
describe('ol.transform.multiply()', function() {
describe('multiply()', function() {
it('multiplies two transforms', function() {
const transform1 = [1, 2, 1, 2, 1, 2];
const transform2 = [1, 2, 1, 2, 1, 2];
expect(_ol_transform_.multiply(transform1, transform2)).to.eql([3, 6, 3, 6, 4, 8]);
expect(multiply(transform1, transform2)).to.eql([3, 6, 3, 6, 4, 8]);
expect(transform1).to.eql([3, 6, 3, 6, 4, 8]);
});
});
describe('ol.transform.compose()', function() {
describe('compose()', function() {
it('composes a translate, scale, rotate, translate transform', function() {
const dx1 = 3;
const dy1 = 4;
@@ -83,36 +95,36 @@ describe('ol.transform', function() {
const dx2 = -dx1 / 2;
const dy2 = -dy1 / 2;
const expected = _ol_transform_.create();
_ol_transform_.translate(expected, dx1, dy1);
_ol_transform_.scale(expected, sx, sy);
_ol_transform_.rotate(expected, angle);
_ol_transform_.translate(expected, dx2, dy2);
const expected = create();
translate(expected, dx1, dy1);
scale(expected, sx, sy);
rotate(expected, angle);
translate(expected, dx2, dy2);
const composed = _ol_transform_.create();
const composedReturn = _ol_transform_.compose(composed, dx1, dy1, sx, sy, angle, dx2, dy2);
const composed = create();
const composedReturn = compose(composed, dx1, dy1, sx, sy, angle, dx2, dy2);
expect(composed).to.equal(composedReturn);
expect(composed).to.eql(expected);
});
});
describe('ol.transform.invert()', function() {
describe('invert()', function() {
it('inverts a transform', function() {
let transform = [1, 0, 1, 0, 1, 0];
expect(function() {
_ol_transform_.invert(transform);
invert(transform);
}).to.throwException();
transform = [1, 1, 1, 2, 2, 0];
expect(_ol_transform_.invert(transform)).to.eql([2, -1, -1, 1, -4, 2]);
expect(invert(transform)).to.eql([2, -1, -1, 1, -4, 2]);
expect(transform).to.eql([2, -1, -1, 1, -4, 2]);
});
});
describe('ol.transform.apply()', function() {
describe('apply()', function() {
it('applies a transform to a 2d vector', function() {
const transform = _ol_transform_.translate(_ol_transform_.create(), 2, 3);
const transform = translate(create(), 2, 3);
const point = [1, 2];
expect(_ol_transform_.apply(transform, point)).to.eql([3, 5]);
expect(apply(transform, point)).to.eql([3, 5]);
expect(point).to.eql([3, 5]);
});
});