Add wrapX option to olx.source.BingMapsOptions

This commit is contained in:
Éric Lemoine
2015-01-16 17:15:59 +01:00
parent d13a5dfb9f
commit 11eeb6617c
2 changed files with 18 additions and 2 deletions

View File

@@ -3393,7 +3393,8 @@ olx.source;
* key: string,
* imagerySet: string,
* maxZoom: (number|undefined),
* tileLoadFunction: (ol.TileLoadFunctionType|undefined)}}
* tileLoadFunction: (ol.TileLoadFunctionType|undefined),
* wrapX: (boolean|undefined)}}
* @api
*/
olx.source.BingMapsOptions;
@@ -3439,6 +3440,15 @@ olx.source.BingMapsOptions.prototype.maxZoom;
*/
olx.source.BingMapsOptions.prototype.tileLoadFunction;
/**
* Whether to wrap the world horizontally. Default is `true`.
* @type {boolean|undefined}
* @api
*/
olx.source.BingMapsOptions.prototype.wrapX;
/**
* @typedef {{attributions: (Array.<ol.Attribution>|undefined),
* distance: (number|undefined),

View File

@@ -48,6 +48,12 @@ ol.source.BingMaps = function(options) {
*/
this.maxZoom_ = goog.isDef(options.maxZoom) ? options.maxZoom : -1;
/**
* @private
* @type {boolean}
*/
this.wrapX_ = goog.isDef(options.wrapX) ? options.wrapX : true;
var protocol = ol.IS_HTTPS ? 'https:' : 'http:';
var uri = new goog.Uri(
protocol + '//dev.virtualearth.net/REST/v1/Imagery/Metadata/' +
@@ -108,7 +114,7 @@ ol.source.BingMaps.prototype.handleImageryMetadataResponse =
var culture = this.culture_;
this.tileUrlFunction = ol.TileUrlFunction.withTileCoordTransform(
tileGrid.createTileCoordTransform(),
tileGrid.createTileCoordTransform({wrapX: this.wrapX_}),
ol.TileUrlFunction.createFromTileUrlFunctions(
goog.array.map(
resource.imageUrlSubdomains,