Я использую OpenLayers Heatmap, и я хочу обновить KML-вектор каждые 2 секунды. Поэтому я подумал, что можно просто удалить слой, обновить слой, а затем снова добавить слой на карте. Но пока ничего не получилось.Обновить ol.layer.heatmap KML каждые 2 секунды и уровень обновления
Вот мой сценарий:
var vector = new ol.layer.Heatmap({
source: new ol.source.Vector({
url: 'tweets.php',
format: new ol.format.KML({
extractStyles: false
})
}),
blur: parseInt(6, 10),
radius: parseInt(4, 10)
});
var raster = new ol.layer.Tile({
source: new ol.source.Stamen({
minZoom: 3,
maxZoom: 8,
layer: 'toner'
})
});
var koordinate = 5.9;
var map = new ol.Map({
target: 'map',
controls: [] ,
interactions: ol.interaction.defaults({
dragging: false,
dragPan: false
}),
view: new ol.View({
center: ol.proj.transform([10.5 , 51.0], 'EPSG:4326', 'EPSG:3857'),
minZoom: koordinate,
maxZoom: koordinate,
zoom: koordinate
})
});
map.addLayer(raster);
map.addLayer(vector);
blur.addEventListener('input', function() {
vector.setBlur(parseInt(blur.value, 10));
});
radius.addEventListener('input', function() {
vector.setRadius(parseInt(radius.value, 10));
});
Edit: Это было моим лучшим решением для этой проблемы, но я не работал.
setInterval(function() {
vector.loaded = false;
vector.setVisibility(true);
vector.redraw({ force: true });
}, 2000);
Я также попробовал все с SetInterval
, но каждый раз это было не правильно или это было неправильно.
Я думаю, что ol.layer.heatmap
затрудняет решение проблемы.
«* Но ничего не работало до сих пор *», «* это было неправильно или это было неправильно *» - вам нужно быть более конкретным, чем это. По крайней мере, вам нужно будет включить код, о котором вы говорите. – kryger
Хорошо, я добавил некоторые из моего кода. Может, теперь кто-то может мне помочь. – mark96
Я никогда не использовал OpenLayers3 специально, но я не мог найти упоминания о методе 'redraw' на' ol.layer.Heatmap' - возможно ли, что оно составило или использовало OL2-документацию вместо OL3? В любом случае, похоже, ваш вопрос уже ответил [здесь, на gis.stackexchange] (http://gis.stackexchange.com/a/121439/6990). Часто лучше задавать вопросы, связанные с ГИС. – kryger