Register layer renderers with the map renderer

This commit is contained in:
Tim Schaub
2018-04-14 10:31:10 -06:00
parent 91f2101cab
commit c5f81d8bbe
11 changed files with 53 additions and 134 deletions

View File

@@ -3,24 +3,15 @@
*/
import {inherits} from './index.js';
import PluggableMap from './PluggableMap.js';
import PluginType from './PluginType.js';
import {defaults as defaultControls} from './control.js';
import {defaults as defaultInteractions} from './interaction.js';
import {assign} from './obj.js';
import {registerMultiple} from './plugins.js';
import CanvasImageLayerRenderer from './renderer/canvas/ImageLayer.js';
import CanvasMapRenderer from './renderer/canvas/Map.js';
import CanvasTileLayerRenderer from './renderer/canvas/TileLayer.js';
import CanvasVectorLayerRenderer from './renderer/canvas/VectorLayer.js';
import CanvasVectorTileLayerRenderer from './renderer/canvas/VectorTileLayer.js';
registerMultiple(PluginType.LAYER_RENDERER, [
CanvasImageLayerRenderer,
CanvasTileLayerRenderer,
CanvasVectorLayerRenderer,
CanvasVectorTileLayerRenderer
]);
/**
* @classdesc
* The map is the core component of OpenLayers. For a map to render, a view,
@@ -90,7 +81,14 @@ const Map = function(options) {
inherits(Map, PluggableMap);
Map.prototype.createRenderer = function() {
return new CanvasMapRenderer(this);
const renderer = new CanvasMapRenderer(this);
renderer.registerLayerRenderers([
CanvasImageLayerRenderer,
CanvasTileLayerRenderer,
CanvasVectorLayerRenderer,
CanvasVectorTileLayerRenderer
]);
return renderer;
};
export default Map;