展开地图忙于循环绘制()

时间:2016-11-27 17:06:56

标签: java eclipse processing unfoldingmap

经过一些初步的麻烦,我现在已经UnfoldingMap从Eclipse工作,如the tutorial中所述。这看起来效果很好,但draw()方法会以高频重复调用,导致CPU达到100%。即使在绘制完整个地图之后,这也会无限期地持续下去。以下是非常简单的测试应用程序的代码:

public class SimpleMapApp extends PApplet {

    UnfoldingMap map;

    public void setup() {
        size(800, 600);
        map = new UnfoldingMap(this, new Microsoft.AerialProvider());
    }

    public void draw() {
        map.draw();
    }

    public static void main(String[] args) {
        PApplet.main("SimpleMapApp");
    }
}

通过在绘制方法中放置sleep(),我可以看到它与平铺绘图有关,每次调用draw()时都会绘制几个平铺。我认为它还会继续以高速率从服务器加载地图图块;在我开始使用他们的服务器之后,至少谷歌地图似乎已经禁止了我的IP地址。

如何在绘制完所有内容后停止对draw()的重复调用?

1 个答案:

答案 0 :(得分:1)

有几个选项可以控制如何打开draw方法:

  1. 使用frameRate()
  2. 使用noLoop()手动暂停执行,然后使用loop()
  3. 继续执行