0
經過一些初步的麻煩之後,我現在得到了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()
一切已經繪就之後?
你的意思是恢復它在設計中draw()函數被重複調用?我什麼時候調用noLoop() - 也就是說,我怎麼知道所有東西都被繪製了? – fishinear
是:draw()是Processing每秒鐘調用60次的「無限循環」。我建議先嚐試'''frameRate(1)'''。我沒有用過展開地圖所以不知道什麼行爲是(它加載的瓷磚在後臺線程或者它依賴於加工的動畫線程) –
啊,謝謝,我不熟悉的處理,所以不知道這事。我認爲它是用於動畫,但它仍然是一種特殊的方法。 – fishinear