diff --git a/src/ol/render/webgl/Replay.js b/src/ol/render/webgl/Replay.js index 4cd71cfce5..9a9adc2584 100644 --- a/src/ol/render/webgl/Replay.js +++ b/src/ol/render/webgl/Replay.js @@ -5,7 +5,7 @@ import {inherits} from '../../index.js'; import {getCenter} from '../../extent.js'; import _ol_render_VectorContext_ from '../VectorContext.js'; import _ol_transform_ from '../../transform.js'; -import _ol_vec_Mat4_ from '../../vec/Mat4.js'; +import {create, fromTransform} from '../../vec/Mat4.js'; import _ol_webgl_ from '../../webgl.js'; /** @@ -64,7 +64,7 @@ var _ol_render_webgl_Replay_ = function(tolerance, maxExtent) { * @private * @type {Array.} */ - this.tmpMat4_ = _ol_vec_Mat4_.create(); + this.tmpMat4_ = create(); /** * @protected @@ -308,11 +308,11 @@ _ol_render_webgl_Replay_.prototype.replay = function(context, } gl.uniformMatrix4fv(locations.u_projectionMatrix, false, - _ol_vec_Mat4_.fromTransform(this.tmpMat4_, projectionMatrix)); + fromTransform(this.tmpMat4_, projectionMatrix)); gl.uniformMatrix4fv(locations.u_offsetScaleMatrix, false, - _ol_vec_Mat4_.fromTransform(this.tmpMat4_, offsetScaleMatrix)); + fromTransform(this.tmpMat4_, offsetScaleMatrix)); gl.uniformMatrix4fv(locations.u_offsetRotateMatrix, false, - _ol_vec_Mat4_.fromTransform(this.tmpMat4_, offsetRotateMatrix)); + fromTransform(this.tmpMat4_, offsetRotateMatrix)); gl.uniform1f(locations.u_opacity, opacity); // draw! diff --git a/src/ol/renderer/webgl/Layer.js b/src/ol/renderer/webgl/Layer.js index e92d04c9a4..2546e212fa 100644 --- a/src/ol/renderer/webgl/Layer.js +++ b/src/ol/renderer/webgl/Layer.js @@ -9,7 +9,7 @@ import _ol_renderer_Layer_ from '../Layer.js'; import _ol_renderer_webgl_defaultmapshader_ from '../webgl/defaultmapshader.js'; import _ol_renderer_webgl_defaultmapshader_Locations_ from '../webgl/defaultmapshader/Locations.js'; import _ol_transform_ from '../../transform.js'; -import _ol_vec_Mat4_ from '../../vec/Mat4.js'; +import {create, fromTransform} from '../../vec/Mat4.js'; import _ol_webgl_ from '../../webgl.js'; import _ol_webgl_Buffer_ from '../../webgl/Buffer.js'; import _ol_webgl_Context_ from '../../webgl/Context.js'; @@ -76,7 +76,7 @@ var _ol_renderer_webgl_Layer_ = function(mapRenderer, layer) { * @type {Array.} * @private */ - this.tmpMat4_ = _ol_vec_Mat4_.create(); + this.tmpMat4_ = create(); /** * @private @@ -173,9 +173,9 @@ _ol_renderer_webgl_Layer_.prototype.composeFrame = function(frameState, layerSta } gl.uniformMatrix4fv(locations.u_texCoordMatrix, false, - _ol_vec_Mat4_.fromTransform(this.tmpMat4_, this.getTexCoordMatrix())); + fromTransform(this.tmpMat4_, this.getTexCoordMatrix())); gl.uniformMatrix4fv(locations.u_projectionMatrix, false, - _ol_vec_Mat4_.fromTransform(this.tmpMat4_, this.getProjectionMatrix())); + fromTransform(this.tmpMat4_, this.getProjectionMatrix())); gl.uniform1f(locations.u_opacity, layerState.opacity); gl.bindTexture(_ol_webgl_.TEXTURE_2D, this.getTexture()); gl.drawArrays(_ol_webgl_.TRIANGLE_STRIP, 0, 4); diff --git a/src/ol/vec/Mat4.js b/src/ol/vec/Mat4.js index dd662b3528..b3305bc0be 100644 --- a/src/ol/vec/Mat4.js +++ b/src/ol/vec/Mat4.js @@ -1,15 +1,14 @@ /** * @module ol/vec/Mat4 */ -var _ol_vec_Mat4_ = {}; /** * @return {Array.} 4x4 matrix representing a 3D identity transform. */ -_ol_vec_Mat4_.create = function() { +export function create() { return [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]; -}; +} /** @@ -17,7 +16,7 @@ _ol_vec_Mat4_.create = function() { * @param {ol.Transform} transform Transformation matrix. * @return {Array.} 2D transformation matrix as flattened 4x4 matrix. */ -_ol_vec_Mat4_.fromTransform = function(mat4, transform) { +export function fromTransform(mat4, transform) { mat4[0] = transform[0]; mat4[1] = transform[1]; mat4[4] = transform[2]; @@ -25,5 +24,4 @@ _ol_vec_Mat4_.fromTransform = function(mat4, transform) { mat4[12] = transform[4]; mat4[13] = transform[5]; return mat4; -}; -export default _ol_vec_Mat4_; +} diff --git a/test/spec/ol/vec/mat4.test.js b/test/spec/ol/vec/mat4.test.js index 7109131c5b..52b063d4e5 100644 --- a/test/spec/ol/vec/mat4.test.js +++ b/test/spec/ol/vec/mat4.test.js @@ -1,11 +1,11 @@ -import _ol_vec_Mat4_ from '../../../../src/ol/vec/Mat4.js'; +import {create, fromTransform} from '../../../../src/ol/vec/Mat4.js'; describe('ol.vec.Mat4', function() { describe('ol.vec.Mat4.create()', function() { it('returns the expected matrix', function() { - expect(_ol_vec_Mat4_.create()).to.eql( + expect(create()).to.eql( [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]); }); }); @@ -13,8 +13,8 @@ describe('ol.vec.Mat4', function() { describe('ol.vec.Mat4.fromTransform()', function() { it('sets the expected transform on the matrix', function() { var transform = [1, 2, 3, 4, 5, 6]; - var result = _ol_vec_Mat4_.create(); - expect(_ol_vec_Mat4_.fromTransform(result, transform)).to.eql( + var result = create(); + expect(fromTransform(result, transform)).to.eql( [1, 2, 0, 0, 3, 4, 0, 0, 0, 0, 1, 0, 5, 6, 0, 1]); expect(result).to.eql( [1, 2, 0, 0, 3, 4, 0, 0, 0, 0, 1, 0, 5, 6, 0, 1]);