Retour à la documentation
define([
'dojo/_base/declare',
'spw/api/MapService',
'esri/layers/OpenStreetMapLayer'
],
function(declare, MapService, OpenStreetMapLayer) {
/**
* @class spw.api.OsmMapService
* @classdesc Service du viewer correspondant à un OpenStreetMapLayer d'ESRI
* @extends {spw.api.MapService}
*/
var OsmMapService = declare('spw.api.OsmMapService', [MapService], /** @lends spw.api.OsmMapService.prototype */ {
/**
* Crée le layer Esri sur base de la configuration du MapService.
* @memberOf spw.api.MapService
*/
createMapLayer: function() {
this.layer = new OpenStreetMapLayer({
id: this.get('serviceId'),
resampling: this.get('resampling'),
opacity: this.get('alpha') / 100,
displayLevels: this.displayLevels,
tileServers: this.get('tileServers'),
minScale: this.get('minScale'),
maxScale: this.get('maxScale')
});
this.inherited(arguments);
this.baseMapLayerLoaded();
},
/**
* Ajoute le layer à la carte ESRI
* @param {Object} esriMap carte ESRI
* @memberOf spw.api.MapService
*/
addToMap: function(esriMap) {
esriMap.addLayer(this.get('layer'));
}
});
return OsmMapService;
});