diff --git a/src/ol/format/geojsonformat.js b/src/ol/format/geojsonformat.js index 30925927af..efb286b967 100644 --- a/src/ol/format/geojsonformat.js +++ b/src/ol/format/geojsonformat.js @@ -3,7 +3,6 @@ goog.provide('ol.format.GeoJSON'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('goog.object'); goog.require('ol.Feature'); @@ -90,7 +89,7 @@ ol.format.GeoJSON.readGeometryCollectionGeometry_ = function( object, opt_options) { goog.asserts.assert(object.type == 'GeometryCollection', 'object.type should be GeometryCollection'); - var geometries = goog.array.map(object.geometries, + var geometries = object.geometries.map( /** * @param {GeoJSONGeometry} geometry Geometry. * @return {ol.geom.Geometry} geometry Geometry. @@ -212,10 +211,9 @@ ol.format.GeoJSON.writeGeometryCollectionGeometry_ = function( geometry, opt_options) { goog.asserts.assertInstanceof(geometry, ol.geom.GeometryCollection, 'geometry should be an ol.geom.GeometryCollection'); - var geometries = goog.array.map( - geometry.getGeometriesArray(), function(geometry) { - return ol.format.GeoJSON.writeGeometry_(geometry, opt_options); - }); + var geometries = geometry.getGeometriesArray().map(function(geometry) { + return ol.format.GeoJSON.writeGeometry_(geometry, opt_options); + }); return /** @type {GeoJSONGeometryCollection} */ ({ type: 'GeometryCollection', geometries: geometries diff --git a/src/ol/proj/epsg3857projection.js b/src/ol/proj/epsg3857projection.js index ef2ea19df5..e98fb48d34 100644 --- a/src/ol/proj/epsg3857projection.js +++ b/src/ol/proj/epsg3857projection.js @@ -1,6 +1,5 @@ goog.provide('ol.proj.EPSG3857'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('ol.math'); goog.require('ol.proj'); @@ -91,11 +90,9 @@ ol.proj.EPSG3857.CODES = [ * @const * @type {Array.} */ -ol.proj.EPSG3857.PROJECTIONS = goog.array.map( - ol.proj.EPSG3857.CODES, - function(code) { - return new ol.proj.EPSG3857_(code); - }); +ol.proj.EPSG3857.PROJECTIONS = ol.proj.EPSG3857.CODES.map(function(code) { + return new ol.proj.EPSG3857_(code); +}); /** diff --git a/src/ol/render/box.js b/src/ol/render/box.js index 4aebaa3617..13b2ac4044 100644 --- a/src/ol/render/box.js +++ b/src/ol/render/box.js @@ -3,7 +3,6 @@ goog.provide('ol.render.Box'); goog.require('goog.Disposable'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('goog.events'); goog.require('ol.geom.Polygon'); @@ -76,8 +75,7 @@ ol.render.Box.prototype.createGeometry_ = function() { endPixel, [endPixel[0], startPixel[1]] ]; - var coordinates = goog.array.map(pixels, - this.map_.getCoordinateFromPixel, this.map_); + var coordinates = pixels.map(this.map_.getCoordinateFromPixel, this.map_); // close the polygon coordinates[4] = coordinates[0].slice(); return new ol.geom.Polygon([coordinates]); diff --git a/src/ol/render/canvas/canvasimmediate.js b/src/ol/render/canvas/canvasimmediate.js index 85e5f65673..6f30e5820f 100644 --- a/src/ol/render/canvas/canvasimmediate.js +++ b/src/ol/render/canvas/canvasimmediate.js @@ -725,7 +725,7 @@ ol.render.canvas.Immediate.prototype.drawText = goog.abstractMethod; */ ol.render.canvas.Immediate.prototype.flush = function() { /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(this.callbacksByZIndex_), Number); + var zs = goog.object.getKeys(this.callbacksByZIndex_).map(Number); goog.array.sort(zs); var i, ii, callbacks, j, jj; for (i = 0, ii = zs.length; i < ii; ++i) { diff --git a/src/ol/render/canvas/canvasreplay.js b/src/ol/render/canvas/canvasreplay.js index f5805b5f25..fede3fe1aa 100644 --- a/src/ol/render/canvas/canvasreplay.js +++ b/src/ol/render/canvas/canvasreplay.js @@ -1960,7 +1960,7 @@ ol.render.canvas.ReplayGroup.prototype.replay = function( context, pixelRatio, transform, viewRotation, skippedFeaturesHash) { /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(this.replaysByZIndex_), Number); + var zs = goog.object.getKeys(this.replaysByZIndex_).map(Number); goog.array.sort(zs); // setup clipping so that the parts of over-simplified geometries are not @@ -2015,7 +2015,7 @@ ol.render.canvas.ReplayGroup.prototype.replayHitDetection_ = function( context, transform, viewRotation, skippedFeaturesHash, featureCallback, opt_hitExtent) { /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(this.replaysByZIndex_), Number); + var zs = goog.object.getKeys(this.replaysByZIndex_).map(Number); goog.array.sort(zs, function(a, b) { return b - a; }); var i, ii, j, replays, replay, result; diff --git a/src/ol/render/webgl/webglimmediate.js b/src/ol/render/webgl/webglimmediate.js index 0a311aff89..ae38988c94 100644 --- a/src/ol/render/webgl/webglimmediate.js +++ b/src/ol/render/webgl/webglimmediate.js @@ -80,7 +80,7 @@ goog.inherits(ol.render.webgl.Immediate, ol.render.VectorContext); */ ol.render.webgl.Immediate.prototype.flush = function() { /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(this.callbacksByZIndex_), Number); + var zs = goog.object.getKeys(this.callbacksByZIndex_).map(Number); goog.array.sort(zs); var i, ii, callbacks, j, jj; for (i = 0, ii = zs.length; i < ii; ++i) { diff --git a/src/ol/renderer/canvas/canvastilelayerrenderer.js b/src/ol/renderer/canvas/canvastilelayerrenderer.js index ef44893aeb..5c3e442c0b 100644 --- a/src/ol/renderer/canvas/canvastilelayerrenderer.js +++ b/src/ol/renderer/canvas/canvastilelayerrenderer.js @@ -354,7 +354,7 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame = } /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(tilesToDrawByZ), Number); + var zs = goog.object.getKeys(tilesToDrawByZ).map(Number); goog.array.sort(zs); var opaque = tileSource.getOpaque(); var origin = ol.extent.getTopLeft(tileGrid.getTileCoordExtent( diff --git a/src/ol/renderer/dom/domtilelayerrenderer.js b/src/ol/renderer/dom/domtilelayerrenderer.js index 2cfa051a2e..48dcf70876 100644 --- a/src/ol/renderer/dom/domtilelayerrenderer.js +++ b/src/ol/renderer/dom/domtilelayerrenderer.js @@ -172,7 +172,7 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame = } /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(tilesToDrawByZ), Number); + var zs = goog.object.getKeys(tilesToDrawByZ).map(Number); goog.array.sort(zs); /** @type {Object.} */ @@ -198,8 +198,7 @@ ol.renderer.dom.TileLayer.prototype.prepareFrame = } /** @type {Array.} */ - var tileLayerZKeys = - goog.array.map(goog.object.getKeys(this.tileLayerZs_), Number); + var tileLayerZKeys = goog.object.getKeys(this.tileLayerZs_).map(Number); goog.array.sort(tileLayerZKeys); var i, ii, j, origin, resolution; diff --git a/src/ol/renderer/webgl/webgltilelayerrenderer.js b/src/ol/renderer/webgl/webgltilelayerrenderer.js index b068f71dd6..6a7e2c0900 100644 --- a/src/ol/renderer/webgl/webgltilelayerrenderer.js +++ b/src/ol/renderer/webgl/webgltilelayerrenderer.js @@ -286,7 +286,7 @@ ol.renderer.webgl.TileLayer.prototype.prepareFrame = } /** @type {Array.} */ - var zs = goog.array.map(goog.object.getKeys(tilesToDrawByZ), Number); + var zs = goog.object.getKeys(tilesToDrawByZ).map(Number); goog.array.sort(zs); var u_tileOffset = goog.vec.Vec4.createFloat32(); var i, ii, sx, sy, tileKey, tilesToDraw, tx, ty; diff --git a/src/ol/source/bingmapssource.js b/src/ol/source/bingmapssource.js index 490bd7e2a2..70f27aad8e 100644 --- a/src/ol/source/bingmapssource.js +++ b/src/ol/source/bingmapssource.js @@ -115,67 +115,63 @@ ol.source.BingMaps.prototype.handleImageryMetadataResponse = var culture = this.culture_; this.tileUrlFunction = ol.TileUrlFunction.createFromTileUrlFunctions( - goog.array.map( - resource.imageUrlSubdomains, - function(subdomain) { - var quadKeyTileCoord = [0, 0, 0]; - var imageUrl = resource.imageUrl - .replace('{subdomain}', subdomain) - .replace('{culture}', culture); - return ( - /** - * @param {ol.TileCoord} tileCoord Tile coordinate. - * @param {number} pixelRatio Pixel ratio. - * @param {ol.proj.Projection} projection Projection. - * @return {string|undefined} Tile URL. - */ - function(tileCoord, pixelRatio, projection) { - goog.asserts.assert(ol.proj.equivalent( - projection, sourceProjection), - 'projections are equivalent'); - if (goog.isNull(tileCoord)) { - return undefined; - } else { - ol.tilecoord.createOrUpdate(tileCoord[0], tileCoord[1], - -tileCoord[2] - 1, quadKeyTileCoord); - return imageUrl.replace('{quadkey}', ol.tilecoord.quadKey( - quadKeyTileCoord)); - } - }); - })); + resource.imageUrlSubdomains.map(function(subdomain) { + var quadKeyTileCoord = [0, 0, 0]; + var imageUrl = resource.imageUrl + .replace('{subdomain}', subdomain) + .replace('{culture}', culture); + return ( + /** + * @param {ol.TileCoord} tileCoord Tile coordinate. + * @param {number} pixelRatio Pixel ratio. + * @param {ol.proj.Projection} projection Projection. + * @return {string|undefined} Tile URL. + */ + function(tileCoord, pixelRatio, projection) { + goog.asserts.assert(ol.proj.equivalent( + projection, sourceProjection), + 'projections are equivalent'); + if (goog.isNull(tileCoord)) { + return undefined; + } else { + ol.tilecoord.createOrUpdate(tileCoord[0], tileCoord[1], + -tileCoord[2] - 1, quadKeyTileCoord); + return imageUrl.replace('{quadkey}', ol.tilecoord.quadKey( + quadKeyTileCoord)); + } + }); + })); if (resource.imageryProviders) { var transform = ol.proj.getTransformFromProjections( ol.proj.get('EPSG:4326'), this.getProjection()); - var attributions = goog.array.map( - resource.imageryProviders, - function(imageryProvider) { - var html = imageryProvider.attribution; - /** @type {Object.>} */ - var tileRanges = {}; - goog.array.forEach( - imageryProvider.coverageAreas, - function(coverageArea) { - var minZ = coverageArea.zoomMin; - var maxZ = Math.min(coverageArea.zoomMax, maxZoom); - var bbox = coverageArea.bbox; - var epsg4326Extent = [bbox[1], bbox[0], bbox[3], bbox[2]]; - var extent = ol.extent.applyTransform( - epsg4326Extent, transform); - var tileRange, z, zKey; - for (z = minZ; z <= maxZ; ++z) { - zKey = z.toString(); - tileRange = tileGrid.getTileRangeForExtentAndZ(extent, z); - if (zKey in tileRanges) { - tileRanges[zKey].push(tileRange); - } else { - tileRanges[zKey] = [tileRange]; - } - } - }); - return new ol.Attribution({html: html, tileRanges: tileRanges}); - }); + var attributions = resource.imageryProviders.map(function(imageryProvider) { + var html = imageryProvider.attribution; + /** @type {Object.>} */ + var tileRanges = {}; + goog.array.forEach( + imageryProvider.coverageAreas, + function(coverageArea) { + var minZ = coverageArea.zoomMin; + var maxZ = Math.min(coverageArea.zoomMax, maxZoom); + var bbox = coverageArea.bbox; + var epsg4326Extent = [bbox[1], bbox[0], bbox[3], bbox[2]]; + var extent = ol.extent.applyTransform( + epsg4326Extent, transform); + var tileRange, z, zKey; + for (z = minZ; z <= maxZ; ++z) { + zKey = z.toString(); + tileRange = tileGrid.getTileRangeForExtentAndZ(extent, z); + if (zKey in tileRanges) { + tileRanges[zKey].push(tileRange); + } else { + tileRanges[zKey] = [tileRange]; + } + } + }); + return new ol.Attribution({html: html, tileRanges: tileRanges}); + }); attributions.push(ol.source.BingMaps.TOS_ATTRIBUTION); this.setAttributions(attributions); } diff --git a/src/ol/source/wmtssource.js b/src/ol/source/wmtssource.js index d4317d8fe6..617a6ded2a 100644 --- a/src/ol/source/wmtssource.js +++ b/src/ol/source/wmtssource.js @@ -178,7 +178,7 @@ ol.source.WMTS = function(options) { var tileUrlFunction = this.urls_.length > 0 ? ol.TileUrlFunction.createFromTileUrlFunctions( - goog.array.map(this.urls_, createFromWMTSTemplate)) : + this.urls_.map(createFromWMTSTemplate)) : ol.TileUrlFunction.nullTileUrlFunction; goog.base(this, { diff --git a/src/ol/structs/rbush.js b/src/ol/structs/rbush.js index 9754e159dd..deef53d687 100644 --- a/src/ol/structs/rbush.js +++ b/src/ol/structs/rbush.js @@ -1,6 +1,5 @@ goog.provide('ol.structs.RBush'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('goog.object'); goog.require('ol.ext.rbush'); @@ -150,7 +149,7 @@ ol.structs.RBush.prototype.update = function(extent, value) { */ ol.structs.RBush.prototype.getAll = function() { var items = this.rbush_.all(); - return goog.array.map(items, function(item) { + return items.map(function(item) { return item[4]; }); }; @@ -163,7 +162,7 @@ ol.structs.RBush.prototype.getAll = function() { */ ol.structs.RBush.prototype.getInExtent = function(extent) { var items = this.rbush_.search(extent); - return goog.array.map(items, function(item) { + return items.map(function(item) { return item[4]; }); }; diff --git a/src/ol/tilecoord.js b/src/ol/tilecoord.js index 99481d48fc..ca0db11bfc 100644 --- a/src/ol/tilecoord.js +++ b/src/ol/tilecoord.js @@ -1,7 +1,6 @@ goog.provide('ol.TileCoord'); goog.provide('ol.tilecoord'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('ol.extent'); @@ -35,10 +34,9 @@ ol.tilecoord.createFromString = function(str) { var v = str.split('/'); goog.asserts.assert(v.length === 3, 'must provide a string in "z/x/y" format, got "%s"', str); - v = goog.array.map(v, function(e, i, a) { + return v.map(function(e) { return parseInt(e, 10); }); - return v; }; diff --git a/src/ol/tilegrid/tilegrid.js b/src/ol/tilegrid/tilegrid.js index 08b03610c7..ca41fdc315 100644 --- a/src/ol/tilegrid/tilegrid.js +++ b/src/ol/tilegrid/tilegrid.js @@ -121,7 +121,7 @@ ol.tilegrid.TileGrid = function(options) { if (options.sizes !== undefined) { goog.asserts.assert(options.sizes.length == this.resolutions_.length, 'number of sizes and resolutions must be equal'); - this.fullTileRanges_ = goog.array.map(options.sizes, function(size, z) { + this.fullTileRanges_ = options.sizes.map(function(size, z) { goog.asserts.assert(size[0] !== 0, 'width must not be 0'); goog.asserts.assert(size[1] !== 0, 'height must not be 0'); var tileRange = new ol.TileRange( diff --git a/src/ol/tileurlfunction.js b/src/ol/tileurlfunction.js index cf70c2bf78..0c1c98a196 100644 --- a/src/ol/tileurlfunction.js +++ b/src/ol/tileurlfunction.js @@ -1,7 +1,6 @@ goog.provide('ol.TileUrlFunction'); goog.provide('ol.TileUrlFunctionType'); -goog.require('goog.array'); goog.require('goog.asserts'); goog.require('goog.math'); goog.require('ol.TileCoord'); @@ -73,7 +72,7 @@ ol.TileUrlFunction.createFromTemplate = function(template) { */ ol.TileUrlFunction.createFromTemplates = function(templates) { return ol.TileUrlFunction.createFromTileUrlFunctions( - goog.array.map(templates, ol.TileUrlFunction.createFromTemplate)); + templates.map(ol.TileUrlFunction.createFromTemplate)); }; diff --git a/test/spec/ol/proj/proj.test.js b/test/spec/ol/proj/proj.test.js index f9cad11ba1..f18bc0719d 100644 --- a/test/spec/ol/proj/proj.test.js +++ b/test/spec/ol/proj/proj.test.js @@ -10,7 +10,7 @@ describe('ol.proj', function() { describe('projection equivalence', function() { function _testAllEquivalent(codes) { - var projections = goog.array.map(codes, ol.proj.get); + var projections = codes.map(ol.proj.get); goog.array.forEach(projections, function(source) { goog.array.forEach(projections, function(destination) { expect(ol.proj.equivalent(source, destination)).to.be.ok();