检查挂起的地图重绘



有没有办法检测待处理的地图重绘?例如

map.getView.setCenter([x, y])

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

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

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

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! 
}

相关内容

  • 没有找到相关文章

最新更新