Rename getTransform to getImageTransform
This commit is contained in:
@@ -32,7 +32,7 @@ ol.renderer.canvas.ImageLayer = function(mapRenderer, imageLayer) {
|
||||
* @private
|
||||
* @type {!goog.vec.Mat4.Number}
|
||||
*/
|
||||
this.transform_ = goog.vec.Mat4.createNumber();
|
||||
this.imageTransform_ = goog.vec.Mat4.createNumber();
|
||||
|
||||
};
|
||||
goog.inherits(ol.renderer.canvas.ImageLayer, ol.renderer.canvas.Layer);
|
||||
@@ -59,8 +59,8 @@ ol.renderer.canvas.ImageLayer.prototype.getImageLayer = function() {
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
ol.renderer.canvas.ImageLayer.prototype.getTransform = function() {
|
||||
return this.transform_;
|
||||
ol.renderer.canvas.ImageLayer.prototype.getImageTransform = function() {
|
||||
return this.imageTransform_;
|
||||
};
|
||||
|
||||
|
||||
@@ -101,18 +101,18 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
|
||||
|
||||
var imageExtent = image.getExtent();
|
||||
var imageResolution = image.getResolution();
|
||||
var transform = this.transform_;
|
||||
goog.vec.Mat4.makeIdentity(transform);
|
||||
goog.vec.Mat4.translate(transform,
|
||||
var imageTransform = this.imageTransform_;
|
||||
goog.vec.Mat4.makeIdentity(imageTransform);
|
||||
goog.vec.Mat4.translate(imageTransform,
|
||||
frameState.size[0] / 2, frameState.size[1] / 2, 0);
|
||||
goog.vec.Mat4.rotateZ(transform, viewRotation);
|
||||
goog.vec.Mat4.rotateZ(imageTransform, viewRotation);
|
||||
goog.vec.Mat4.scale(
|
||||
transform,
|
||||
imageTransform,
|
||||
imageResolution / viewResolution,
|
||||
imageResolution / viewResolution,
|
||||
1);
|
||||
goog.vec.Mat4.translate(
|
||||
transform,
|
||||
imageTransform,
|
||||
(imageExtent[0] - viewCenter[0]) / imageResolution,
|
||||
(viewCenter[1] - imageExtent[3]) / imageResolution,
|
||||
0);
|
||||
|
||||
@@ -31,26 +31,26 @@ ol.renderer.canvas.Layer.prototype.composeFrame =
|
||||
|
||||
var image = this.getImage();
|
||||
if (!goog.isNull(image)) {
|
||||
var transform = this.getTransform();
|
||||
var imageTransform = this.getImageTransform();
|
||||
context.globalAlpha = layerState.opacity;
|
||||
|
||||
// for performance reasons, context.setTransform is only used
|
||||
// when the view is rotated. see http://jsperf.com/canvas-transform
|
||||
if (frameState.view2DState.rotation === 0) {
|
||||
var dx = goog.vec.Mat4.getElement(transform, 0, 3);
|
||||
var dy = goog.vec.Mat4.getElement(transform, 1, 3);
|
||||
var dw = image.width * goog.vec.Mat4.getElement(transform, 0, 0);
|
||||
var dh = image.height * goog.vec.Mat4.getElement(transform, 1, 1);
|
||||
var dx = goog.vec.Mat4.getElement(imageTransform, 0, 3);
|
||||
var dy = goog.vec.Mat4.getElement(imageTransform, 1, 3);
|
||||
var dw = image.width * goog.vec.Mat4.getElement(imageTransform, 0, 0);
|
||||
var dh = image.height * goog.vec.Mat4.getElement(imageTransform, 1, 1);
|
||||
context.drawImage(image, 0, 0, +image.width, +image.height,
|
||||
Math.round(dx), Math.round(dy), Math.round(dw), Math.round(dh));
|
||||
} else {
|
||||
context.setTransform(
|
||||
goog.vec.Mat4.getElement(transform, 0, 0),
|
||||
goog.vec.Mat4.getElement(transform, 1, 0),
|
||||
goog.vec.Mat4.getElement(transform, 0, 1),
|
||||
goog.vec.Mat4.getElement(transform, 1, 1),
|
||||
goog.vec.Mat4.getElement(transform, 0, 3),
|
||||
goog.vec.Mat4.getElement(transform, 1, 3));
|
||||
goog.vec.Mat4.getElement(imageTransform, 0, 0),
|
||||
goog.vec.Mat4.getElement(imageTransform, 1, 0),
|
||||
goog.vec.Mat4.getElement(imageTransform, 0, 1),
|
||||
goog.vec.Mat4.getElement(imageTransform, 1, 1),
|
||||
goog.vec.Mat4.getElement(imageTransform, 0, 3),
|
||||
goog.vec.Mat4.getElement(imageTransform, 1, 3));
|
||||
context.drawImage(image, 0, 0);
|
||||
context.setTransform(1, 0, 0, 1, 0, 0);
|
||||
}
|
||||
@@ -84,6 +84,6 @@ ol.renderer.canvas.Layer.prototype.getImage = goog.abstractMethod;
|
||||
|
||||
|
||||
/**
|
||||
* @return {!goog.vec.Mat4.Number} Transform.
|
||||
* @return {!goog.vec.Mat4.Number} Image transform.
|
||||
*/
|
||||
ol.renderer.canvas.Layer.prototype.getTransform = goog.abstractMethod;
|
||||
ol.renderer.canvas.Layer.prototype.getImageTransform = goog.abstractMethod;
|
||||
|
||||
@@ -53,7 +53,7 @@ ol.renderer.canvas.TileLayer = function(mapRenderer, tileLayer) {
|
||||
* @private
|
||||
* @type {!goog.vec.Mat4.Number}
|
||||
*/
|
||||
this.transform_ = goog.vec.Mat4.createNumber();
|
||||
this.imageTransform_ = goog.vec.Mat4.createNumber();
|
||||
|
||||
/**
|
||||
* @private
|
||||
@@ -97,8 +97,8 @@ ol.renderer.canvas.TileLayer.prototype.getTileLayer = function() {
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
ol.renderer.canvas.TileLayer.prototype.getTransform = function() {
|
||||
return this.transform_;
|
||||
ol.renderer.canvas.TileLayer.prototype.getImageTransform = function() {
|
||||
return this.imageTransform_;
|
||||
};
|
||||
|
||||
|
||||
@@ -166,9 +166,9 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
|
||||
// etc.). manageTilePyramid is what enqueue tiles in the tile
|
||||
// queue for loading.
|
||||
//
|
||||
// - The last step involves updating the transform matrix, which
|
||||
// will be used by the map renderer for the final composition
|
||||
// and positioning.
|
||||
// - The last step involves updating the image transform matrix,
|
||||
// which will be used by the map renderer for the final
|
||||
// composition and positioning.
|
||||
//
|
||||
|
||||
var view2DState = frameState.view2DState;
|
||||
@@ -382,18 +382,18 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
|
||||
this.scheduleExpireCache(frameState, tileSource);
|
||||
this.updateLogos(frameState, tileSource);
|
||||
|
||||
var transform = this.transform_;
|
||||
goog.vec.Mat4.makeIdentity(transform);
|
||||
goog.vec.Mat4.translate(transform,
|
||||
var imageTransform = this.imageTransform_;
|
||||
goog.vec.Mat4.makeIdentity(imageTransform);
|
||||
goog.vec.Mat4.translate(imageTransform,
|
||||
frameState.size[0] / 2, frameState.size[1] / 2, 0);
|
||||
goog.vec.Mat4.rotateZ(transform, view2DState.rotation);
|
||||
goog.vec.Mat4.rotateZ(imageTransform, view2DState.rotation);
|
||||
goog.vec.Mat4.scale(
|
||||
transform,
|
||||
imageTransform,
|
||||
tileResolution / view2DState.resolution,
|
||||
tileResolution / view2DState.resolution,
|
||||
1);
|
||||
goog.vec.Mat4.translate(
|
||||
transform,
|
||||
imageTransform,
|
||||
(origin[0] - center[0]) / tileResolution,
|
||||
(center[1] - origin[1]) / tileResolution,
|
||||
0);
|
||||
|
||||
Reference in New Issue
Block a user