diff --git a/examples/wmts.js b/examples/wmts.js index b5e6dc4f68..f5b50304e0 100644 --- a/examples/wmts.js +++ b/examples/wmts.js @@ -1,3 +1,4 @@ +goog.require('ol.Attribution'); goog.require('ol.Map'); goog.require('ol.View2D'); goog.require('ol.extent'); @@ -8,17 +9,23 @@ goog.require('ol.source.WMTS'); goog.require('ol.tilegrid.WMTS'); -var projection = ol.proj.get('EPSG:900913'); +var projection = ol.proj.get('EPSG:3857'); var projectionExtent = projection.getExtent(); var size = ol.extent.getWidth(projectionExtent) / 256; -var resolutions = new Array(18); -var matrixIds = new Array(18); -for (var z = 0; z < 18; ++z) { +var resolutions = new Array(14); +var matrixIds = new Array(14); +for (var z = 0; z < 14; ++z) { // generate resolutions and matrixIds arrays for this WMTS resolutions[z] = size / Math.pow(2, z); matrixIds[z] = z; } +var attribution = new ol.Attribution({ + html: 'Tiles © ArcGIS' +}); + + var map = new ol.Map({ layers: [ new ol.layer.Tile({ @@ -28,25 +35,26 @@ var map = new ol.Map({ new ol.layer.Tile({ opacity: 0.7, source: new ol.source.WMTS({ - url: 'http://demo-apollo.geospatial.intergraph.com/erdas-iws/ogc/wmts/', - layer: 'sampleiws_images_geodetic_worldgeodemo.ecw', - matrixSet: 'ogc:1.0:googlemapscompatible', - format: 'image/jpeg', + attributions: [attribution], + url: 'http://services.arcgisonline.com/arcgis/rest/' + + 'services/Demographics/USA_Population_Density/MapServer/WMTS/', + layer: '0', + matrixSet: 'EPSG:3857', + format: 'image/png', projection: projection, tileGrid: new ol.tilegrid.WMTS({ origin: ol.extent.getTopLeft(projectionExtent), resolutions: resolutions, matrixIds: matrixIds }), - extent: [-20037508.34, -20037508.34, 20037508.34, 20037508.34], + extent: projectionExtent, style: 'default' }) }) ], target: 'map', view: new ol.View2D({ - center: [0, 0], - zoom: 0, - maxResolution: resolutions[1] + center: [-11158582, 4813697], + zoom: 4 }) }); diff --git a/src/ol/source/wmtssource.js b/src/ol/source/wmtssource.js index 445f65de80..19a2db4796 100644 --- a/src/ol/source/wmtssource.js +++ b/src/ol/source/wmtssource.js @@ -76,6 +76,8 @@ ol.source.WMTS = function(options) { }); } + var dimensions = this.dimensions_; + /** * @param {string} template Template. * @return {ol.TileUrlFunctionType} Tile URL function. @@ -94,7 +96,6 @@ ol.source.WMTS = function(options) { return ( /** - * @this {ol.source.WMTS} * @param {ol.TileCoord} tileCoord Tile coordinate. * @param {number} pixelRatio Pixel ratio. * @param {ol.proj.Projection} projection Projection. @@ -109,7 +110,7 @@ ol.source.WMTS = function(options) { 'TileCol': tileCoord.x, 'TileRow': tileCoord.y }; - goog.object.extend(localContext, this.dimensions_); + goog.object.extend(localContext, dimensions); var url = template; if (requestEncoding == ol.source.WMTSRequestEncoding.KVP) { url = goog.uri.utils.appendParamsFromMap(url, localContext); @@ -143,7 +144,6 @@ ol.source.WMTS = function(options) { * @return {ol.TileCoord} Tile coordinate. */ function(tileCoord, projection, opt_tileCoord) { - var tileGrid = this.getTileGrid(); goog.asserts.assert(!goog.isNull(tileGrid)); if (tileGrid.getResolutions().length <= tileCoord.z) { return null;