检查是否有待重绘的地图

时间:2018-08-09 21:50:03

标签: openlayers openlayers-3

有没有办法检测未决的地图重绘?例如

map.getView.setCenter([x, y])
如果x和y与当前中心相同,则

不会导致地图重绘,但是如果x和y与当前视图中心不同,则会导致重绘。 (至少这似乎是我所看到的,如果我弄错了,请纠正我)。

因此,我想检查地图以查看是否会发生重绘。显然,在这个简单的示例中,我可以为自己测试x,y值,但是我也做了一些类似的事情,因此,如果我最后只检查一次地图,将会更加干净。

1 个答案:

答案 0 :(得分:0)

这就是我想要的。我仍然觉得应该有更好的方法

var pendingRedraw = false;
var movestartHandler = map.on('movestart',  function(evt)  {
    pendingRedraw = true;
});
/*
    code that may, or may not, trigger a map redraw
*/
unByKey(movestartHandler);  // un-register the handler
if (pendingRedraw) {
    // now I know what I want to know! 
}