Calculating rowSign only once
This commit is contained in:
@@ -276,6 +276,13 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
|
||||
* startrow
|
||||
*/
|
||||
gridLayout: null,
|
||||
|
||||
/**
|
||||
* Property: rowSign
|
||||
* {Number} 1 for grids starting at the top, -1 for grids starting at the
|
||||
* bottom. This is used for several grid index and offset calculations.
|
||||
*/
|
||||
rowSign: null,
|
||||
|
||||
/**
|
||||
* Constructor: OpenLayers.Layer.Grid
|
||||
@@ -308,6 +315,8 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
|
||||
this.moveTimerId = null;
|
||||
}, this);
|
||||
}
|
||||
|
||||
this.rowSign = this.tileOriginCorner.substr(0, 1) === "t" ? 1 : -1;
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -884,7 +893,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
|
||||
var offsetlon = bounds.left - origin.lon;
|
||||
var tilecol = Math.floor(offsetlon/tilelon) - this.buffer;
|
||||
|
||||
var rowSign = this.tileOriginCorner.substr(0, 1) === "t" ? 1 : -1;
|
||||
var rowSign = this.rowSign;
|
||||
|
||||
var offsetlat = rowSign * (origin.lat - bounds.top + tilelat);
|
||||
var tilerow = Math[~rowSign ? 'floor' : 'ceil'](offsetlat/tilelat) - this.buffer * rowSign;
|
||||
@@ -939,7 +948,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
|
||||
var tilelat = tileLayout.tilelat;
|
||||
var startcol = tileLayout.startcol;
|
||||
var startrow = tileLayout.startrow;
|
||||
var rowSign = this.tileOriginCorner.substr(0, 1) === "t" ? 1 : -1;
|
||||
var rowSign = this.rowSign;
|
||||
return new OpenLayers.Bounds(
|
||||
origin.lon + (startcol + col) * tilelon,
|
||||
origin.lat - (startrow + row * rowSign) * tilelat * rowSign,
|
||||
@@ -1207,7 +1216,7 @@ OpenLayers.Layer.Grid = OpenLayers.Class(OpenLayers.Layer.HTTPRequest, {
|
||||
var grid = this.grid;
|
||||
var rowIndex = prepend ? 0 : (grid.length - 1);
|
||||
var sign = prepend ? -1 : 1;
|
||||
var rowSign = this.tileOriginCorner.substr(0, 1) === "t" ? 1 : -1;
|
||||
var rowSign = this.rowSign;
|
||||
var tileLayout = this.gridLayout;
|
||||
tileLayout.startrow += sign * rowSign;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user