Make ol.extent.buffer return an extent instead of mutating
This commit is contained in:
@@ -51,15 +51,27 @@ ol.extent.boundingExtentXYs_ = function(xs, ys, opt_extent) {
|
||||
|
||||
|
||||
/**
|
||||
* Increase an extent by the provided value.
|
||||
* @param {ol.Extent} extent The extent to buffer.
|
||||
* Return extent increased by the provided value.
|
||||
* @param {ol.Extent} extent Extent.
|
||||
* @param {number} value The amount by wich the extent should be buffered.
|
||||
* @param {ol.Extent=} opt_extent Extent.
|
||||
* @return {ol.Extent} Extent.
|
||||
*/
|
||||
ol.extent.buffer = function(extent, value) {
|
||||
extent[0] -= value;
|
||||
extent[1] -= value;
|
||||
extent[2] += value;
|
||||
extent[3] += value;
|
||||
ol.extent.buffer = function(extent, value, opt_extent) {
|
||||
if (goog.isDef(opt_extent)) {
|
||||
opt_extent[0] = extent[0] - value;
|
||||
opt_extent[1] = extent[1] - value;
|
||||
opt_extent[2] = extent[2] + value;
|
||||
opt_extent[3] = extent[3] + value;
|
||||
return opt_extent;
|
||||
} else {
|
||||
return [
|
||||
extent[0] - value,
|
||||
extent[1] - value,
|
||||
extent[2] + value,
|
||||
extent[3] + value
|
||||
];
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ ol.TileUrlFunction.createFromParamsFunction =
|
||||
tmpSize[0] = tileSize[0] + (2 * gutter);
|
||||
tmpSize[1] = tileSize[1] + (2 * gutter);
|
||||
var extent = tileGrid.getTileCoordExtent(tileCoord, tmpExtent);
|
||||
ol.extent.buffer(extent, tileResolution * gutter);
|
||||
ol.extent.buffer(extent, tileResolution * gutter, extent);
|
||||
return paramsFunction.call(this, baseUrl, params,
|
||||
extent, tmpSize, projection);
|
||||
}
|
||||
|
||||
@@ -7,8 +7,7 @@ describe('ol.extent', function() {
|
||||
|
||||
it('buffers an extent by some value', function() {
|
||||
var extent = [-10, -20, 10, 20];
|
||||
ol.extent.buffer(extent, 15);
|
||||
expect(extent).to.eql([-25, -35, 25, 35]);
|
||||
expect(ol.extent.buffer(extent, 15)).to.eql([-25, -35, 25, 35]);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user