Use ol.vec.Mat4.makeTransform2D in ol.renderer.webgl.TileLayer

This commit is contained in:
Tom Payne
2013-12-01 21:24:17 +01:00
parent 20bd020c13
commit 2ba5cf6167

View File

@@ -5,7 +5,6 @@ goog.provide('ol.renderer.webgl.TileLayer');
goog.require('goog.array');
goog.require('goog.object');
goog.require('goog.vec.Mat4');
goog.require('goog.vec.Vec4');
goog.require('goog.webgl');
goog.require('ol.Tile');
@@ -17,6 +16,7 @@ goog.require('ol.math');
goog.require('ol.renderer.webgl.Layer');
goog.require('ol.renderer.webgl.tilelayer.shader');
goog.require('ol.structs.Buffer');
goog.require('ol.vec.Mat4');
@@ -297,24 +297,16 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame =
this.scheduleExpireCache(frameState, tileSource);
this.updateLogos(frameState, tileSource);
var texCoordMatrix = this.texCoordMatrix;
goog.vec.Mat4.makeIdentity(texCoordMatrix);
goog.vec.Mat4.translate(texCoordMatrix,
ol.vec.Mat4.makeTransform2D(this.texCoordMatrix,
(center[0] - framebufferExtent[0]) /
(framebufferExtent[2] - framebufferExtent[0]),
(center[1] - framebufferExtent[1]) /
(framebufferExtent[3] - framebufferExtent[1]),
0);
goog.vec.Mat4.rotateZ(texCoordMatrix, view2DState.rotation);
goog.vec.Mat4.scale(texCoordMatrix,
frameState.size[0] * view2DState.resolution /
(framebufferExtent[2] - framebufferExtent[0]),
frameState.size[1] * view2DState.resolution /
(framebufferExtent[3] - framebufferExtent[1]),
1);
goog.vec.Mat4.translate(texCoordMatrix,
-0.5,
-0.5,
0);
view2DState.rotation,
-0.5, -0.5);
};