Merge pull request #3145 from elemoine/wrapx
Add wrapX option to source.OSM and source.BingMaps
This commit is contained in:
@@ -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),
|
||||
@@ -4304,7 +4314,8 @@ olx.source.TileDebugOptions.prototype.tileGrid;
|
||||
* crossOrigin: (null|string|undefined),
|
||||
* maxZoom: (number|undefined),
|
||||
* tileLoadFunction: (ol.TileLoadFunctionType|undefined),
|
||||
* url: (string|undefined)}}
|
||||
* url: (string|undefined),
|
||||
* wrapX: (boolean|undefined)}}
|
||||
* @api
|
||||
*/
|
||||
olx.source.OSMOptions;
|
||||
@@ -4357,6 +4368,14 @@ olx.source.OSMOptions.prototype.tileLoadFunction;
|
||||
olx.source.OSMOptions.prototype.url;
|
||||
|
||||
|
||||
/**
|
||||
* Whether to wrap the world horizontally. Default is `true`.
|
||||
* @type {boolean|undefined}
|
||||
* @api
|
||||
*/
|
||||
olx.source.OSMOptions.prototype.wrapX;
|
||||
|
||||
|
||||
/**
|
||||
* @typedef {{attributions: (Array.<ol.Attribution>|undefined),
|
||||
* doc: (Document|undefined),
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -39,7 +39,8 @@ ol.source.OSM = function(opt_options) {
|
||||
opaque: true,
|
||||
maxZoom: goog.isDef(options.maxZoom) ? options.maxZoom : 19,
|
||||
tileLoadFunction: options.tileLoadFunction,
|
||||
url: url
|
||||
url: url,
|
||||
wrapX: options.wrapX
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user