У меня есть слой изображения, в котором используется источник ImageCanvas. Мне нужно динамически изменять вещи на этой поверхности холста и изменять их на слое, но если я не изменю резко экстент, скажем, путем масштабирования, слой игнорирует любые изменения, которые я сделал на холсте.
Есть ли способ заставить данный слой рендериться? Я попробовал map.render(), который работает в одних контекстах, но не работает в других.
MapScholar.prototype.CreateCanvasLayer = function()
{
this.canvasLayer = new ol.layer.Image( {
source: new ol.source.ImageCanvas( {
canvasFunction: function(extent, res, pixelRatio, size, proj) {
if (!this.canvas)
this.canvas=document.createElement('canvas');
this.canvas.setAttribute('width', size[0]);
this.canvas.setAttribute('height', size[1]);
return this.canvas;
}
})
});
map.addLayer(this.canvasLayer);
}