View2D option "numZoomLevels" changed to "maxZoom"

This is to be consistent with ol.source.XYZ and ol.tilegrid.XYZ.
This commit is contained in:
Éric Lemoine
2013-04-14 22:00:09 +02:00
parent aa69b4bae8
commit 778aec45d8
3 changed files with 11 additions and 11 deletions

View File

@@ -49,14 +49,14 @@
* @property {ol.Coordinate|undefined} center The view center in map projection. * @property {ol.Coordinate|undefined} center The view center in map projection.
* @property {number|undefined} maxResolution The maximum resolution in map * @property {number|undefined} maxResolution The maximum resolution in map
* units per pixel. * units per pixel.
* @property {number|undefined} numZoomLevels The number of zoom levels for this * @property {number|undefined} maxZoom The maximum zoom level for this view.
* view. Zoom level 0 uses the `maxResolution`; subsequent zoom levels are * Zoom level 0 uses the `maxResolution`; subsequent zoom levels are
* calculated by dividing the previous resolution by `zoomFactor`. * calculated by dividing the previous resolution by `zoomFactor`.
* @property {ol.ProjectionLike} projection The map projection. * @property {ol.ProjectionLike} projection The map projection.
* @property {number|undefined} resolution The initial resolution for the view. * @property {number|undefined} resolution The initial resolution for the view.
* @property {Array.<number>|undefined} resolutions The resolutions for this * @property {Array.<number>|undefined} resolutions The resolutions for this
* view. If configured, this is equivalent to specifying `maxResolution` and * view. If configured, this is equivalent to specifying `maxResolution` and
* `numZoomLevels`. * `maxZoom`.
* @property {number|undefined} rotation Initial rotation of the view. * @property {number|undefined} rotation Initial rotation of the view.
* @property {number|undefined} zoom Initial zoom level of the view. * @property {number|undefined} zoom Initial zoom level of the view.
* @property {number|undefined} zoomFactor Factor to calculate resolutions for * @property {number|undefined} zoomFactor Factor to calculate resolutions for

View File

@@ -391,12 +391,12 @@ ol.View2D.createResolutionConstraint_ = function(options) {
resolutionConstraint = ol.ResolutionConstraint.createSnapToResolutions( resolutionConstraint = ol.ResolutionConstraint.createSnapToResolutions(
resolutions); resolutions);
} else { } else {
var numZoomLevels, zoomFactor; var maxZoom, zoomFactor;
if (goog.isDef(options.maxResolution) && if (goog.isDef(options.maxResolution) &&
goog.isDef(options.numZoomLevels) && goog.isDef(options.maxZoom) &&
goog.isDef(options.zoomFactor)) { goog.isDef(options.zoomFactor)) {
maxResolution = options.maxResolution; maxResolution = options.maxResolution;
numZoomLevels = options.numZoomLevels; maxZoom = options.maxZoom;
zoomFactor = options.zoomFactor; zoomFactor = options.zoomFactor;
} else { } else {
var projectionExtent = ol.projection.createProjection( var projectionExtent = ol.projection.createProjection(
@@ -404,12 +404,12 @@ ol.View2D.createResolutionConstraint_ = function(options) {
maxResolution = Math.max( maxResolution = Math.max(
projectionExtent.maxX - projectionExtent.minX, projectionExtent.maxX - projectionExtent.minX,
projectionExtent.maxY - projectionExtent.minY) / ol.DEFAULT_TILE_SIZE; projectionExtent.maxY - projectionExtent.minY) / ol.DEFAULT_TILE_SIZE;
numZoomLevels = 29; maxZoom = 28;
zoomFactor = 2; zoomFactor = 2;
} }
minResolution = maxResolution / Math.pow(zoomFactor, numZoomLevels - 1); minResolution = maxResolution / Math.pow(zoomFactor, maxZoom);
resolutionConstraint = ol.ResolutionConstraint.createSnapToPower( resolutionConstraint = ol.ResolutionConstraint.createSnapToPower(
zoomFactor, maxResolution, numZoomLevels - 1); zoomFactor, maxResolution, maxZoom);
} }
return [resolutionConstraint, maxResolution, minResolution]; return [resolutionConstraint, maxResolution, minResolution];
}; };

View File

@@ -16,12 +16,12 @@ describe('ol.View2D', function() {
}); });
}); });
describe('with maxResolution, numZoomLevels, and zoomFactor options', describe('with maxResolution, maxZoom, and zoomFactor options',
function() { function() {
it('gives a correct resolution constraint function', function() { it('gives a correct resolution constraint function', function() {
var options = { var options = {
maxResolution: 81, maxResolution: 81,
numZoomLevels: 4, maxZoom: 3,
zoomFactor: 3 zoomFactor: 3
}; };
var parts = ol.View2D.createResolutionConstraint_(options); var parts = ol.View2D.createResolutionConstraint_(options);