Use ol.vec.Mat4.makeTransform2D in ol.renderer.canvas.ImageLayer

This commit is contained in:
Tom Payne
2013-12-01 21:21:22 +01:00
parent 1cb56d02ac
commit 36fee8013a

View File

@@ -9,6 +9,7 @@ goog.require('ol.ViewHint');
goog.require('ol.layer.Image'); goog.require('ol.layer.Image');
goog.require('ol.renderer.Map'); goog.require('ol.renderer.Map');
goog.require('ol.renderer.canvas.Layer'); goog.require('ol.renderer.canvas.Layer');
goog.require('ol.vec.Mat4');
@@ -98,26 +99,16 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
if (!goog.isNull(this.image_)) { if (!goog.isNull(this.image_)) {
image = this.image_; image = this.image_;
var imageExtent = image.getExtent(); var imageExtent = image.getExtent();
var imageResolution = image.getResolution(); var imageResolution = image.getResolution();
var imageTransform = this.imageTransform_; ol.vec.Mat4.makeTransform2D(this.imageTransform_,
goog.vec.Mat4.makeIdentity(imageTransform); frameState.size[0] / 2, frameState.size[1] / 2,
goog.vec.Mat4.translate(imageTransform, imageResolution / viewResolution, imageResolution / viewResolution,
frameState.size[0] / 2, frameState.size[1] / 2, 0); viewRotation,
goog.vec.Mat4.rotateZ(imageTransform, viewRotation);
goog.vec.Mat4.scale(
imageTransform,
imageResolution / viewResolution,
imageResolution / viewResolution,
1);
goog.vec.Mat4.translate(
imageTransform,
(imageExtent[0] - viewCenter[0]) / imageResolution, (imageExtent[0] - viewCenter[0]) / imageResolution,
(viewCenter[1] - imageExtent[3]) / imageResolution, (viewCenter[1] - imageExtent[3]) / imageResolution);
0);
this.updateAttributions(frameState.attributions, image.getAttributions()); this.updateAttributions(frameState.attributions, image.getAttributions());
this.updateLogos(frameState, imageSource); this.updateLogos(frameState, imageSource);
} }
}; };