diff --git a/src/ol/view.js b/src/ol/view.js index 8e5180a312..0f3b050e61 100644 --- a/src/ol/view.js +++ b/src/ol/view.js @@ -134,6 +134,12 @@ ol.View = function(opt_options) { */ this.minResolution_ = resolutionConstraintInfo.minResolution; + /** + * @private + * @type {Array.|undefined} + */ + this.resolutions_ = options.resolutions; + /** * @private * @type {number} @@ -313,6 +319,17 @@ ol.View.prototype.getResolution = function() { }; +/** + * Get the resolutions for the view. This returns the array of resolutions + * passed to the constructor of the {ol.View}, or undefined if none were given. + * @return {Array.|undefined} The resolutions of the view. + * @api stable + */ +ol.View.prototype.getResolutions = function() { + return this.resolutions_; +}; + + /** * Get the resolution for a provided extent (in map units) and size (in pixels). * @param {ol.Extent} extent Extent. diff --git a/test/spec/ol/view.test.js b/test/spec/ol/view.test.js index c9f21c7fb2..b891b293aa 100644 --- a/test/spec/ol/view.test.js +++ b/test/spec/ol/view.test.js @@ -268,6 +268,23 @@ describe('ol.View', function() { }); + describe('#getResolutions', function() { + var view; + var resolutions = [512, 256, 128, 64, 32, 16]; + + it('returns correct resolutions', function() { + view = new ol.View({ + resolutions: resolutions + }); + expect(view.getResolutions()).to.be(resolutions); + }); + + it('returns resolutions as undefined', function() { + view = new ol.View(); + expect(view.getResolutions()).to.be(undefined); + }); + }); + describe('#getZoom', function() { var view; beforeEach(function() {