Add a WMTS tilegrid

This commit is contained in:
Bruno Binet
2013-03-07 14:54:34 +01:00
parent 5afd61cce6
commit 6d78a8340a
3 changed files with 62 additions and 0 deletions

View File

@@ -157,6 +157,14 @@
@exportObjectLiteralProperty ol.tilegrid.TileGridOptions.tileSize ol.Size|undefined
@exportObjectLiteralProperty ol.tilegrid.TileGridOptions.tileSizes Array.<ol.Size>|undefined
@exportObjectLiteral ol.tilegrid.WMTSOptions
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.origin ol.Coordinate|undefined
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.origins Array.<ol.Coordinate>|undefined
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.resolutions !Array.<number>
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.matrixIds !Array.<string>
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.tileSize ol.Size|undefined
@exportObjectLiteralProperty ol.tilegrid.WMTSOptions.tileSizes Array.<ol.Size>|undefined
@exportObjectLiteral ol.tilegrid.XYZOptions
@exportObjectLiteralProperty ol.tilegrid.XYZOptions.maxZoom number

View File

@@ -0,0 +1 @@
@exportClass ol.tilegrid.WMTS ol.tilegrid.WMTSOptions

View File

@@ -0,0 +1,53 @@
goog.provide('ol.tilegrid.WMTS');
goog.require('ol.Size');
goog.require('ol.projection');
goog.require('ol.tilegrid.TileGrid');
/**
* @constructor
* @extends {ol.tilegrid.TileGrid}
* @param {ol.tilegrid.WMTSOptions} wmtsOptions WMTS options.
*/
ol.tilegrid.WMTS = function(wmtsOptions) {
goog.asserts.assert(
wmtsOptions.resolutions.length == wmtsOptions.matrixIds.length);
/**
* @private
* @type {!Array.<string>}
*/
this.matrixIds_ = wmtsOptions.matrixIds;
// FIXME: should the matrixIds become optionnal?
goog.base(this, {
origin: wmtsOptions.origin,
origins: wmtsOptions.origins,
resolutions: wmtsOptions.resolutions,
tileSize: wmtsOptions.tileSize,
tileSizes: wmtsOptions.tileSizes
});
};
goog.inherits(ol.tilegrid.WMTS, ol.tilegrid.TileGrid);
/**
* @param {number} z Z.
* @return {string} MatrixId..
*/
ol.tilegrid.WMTS.prototype.getMatrixId = function(z) {
goog.asserts.assert(0 <= z && z < this.matrixIds_.length);
return this.matrixIds_[z];
};
/**
* @return {Array.<string>} MatrixIds.
*/
ol.tilegrid.WMTS.prototype.getMatrixIds = function() {
return this.matrixIds_;
};