我剛開始用Java 2D圖形應用程序的工作,對我研究的是重繪重繪我們的圖形浪費了大量的資源。 但我想知道重繪是什麼,是否和如何有效地使用它,安全和快速地爲我的畫布上的許多可移動的動態對象?如何Java的圖形重新繪製方法的實際工作
1
A
回答
7
我將由具有讀通過Performing Custom Painting就Painting in AWT and Swing
repaint
使得向RepaintManager
請求以油漆的部分或全部組件的。 RepaintManager
將決定將繪製什麼和多少,可能將重繪請求合併爲儘可能少的更新(因此反覆調用repaint
實際上可能會減慢繪製過程)。
的RepaintManager
然後推送paint
事件到事件調度線程。這確保了繪畫事件在EDT的上下文中處理。
有用於提高速度和資源管理,當涉及到繪畫中搖擺許多可能的解決方案。
你可以考慮實現自己的雙緩衝策略,粉刷更新屏幕外緩衝區,並在準備好時,切換到活動的緩衝區,這將得到畫。
這意味着該漆是快,所有的工作都已經在這樣做(大概在後臺線程)。
爲例子...
- Swing animation running extremely slow
- the images are not loading
- How to make line animation smoother?
- Java Bouncing Ball
你也可以看看Passive vs. Active Rendering,但我非常肯定你知道你在做什麼爲...
相關問題
- 1. 如何繪製(_ rect:CGRect)實際工作?
- 2. 如何重新繪製java applet中的繪畫方法?
- 3. 如何重新繪製D3條形圖
- 4. 作爲視頻重新繪製圖形
- 5. Java - 如何繪製圖形
- 6. Opencv - filter2D()方法如何實際工作?
- 7. 如何在任何方法中重繪iPhone的實際屏幕?
- 8. 如何在一個繪圖中繪製擬合的圖形和伽馬分佈的實際圖形?
- 9. Graphics2D的繪圖方法如何在JAVA中工作?
- 10. Java的圖形繪製庫
- 11. Java實時圖形繪圖
- 12. 無法重新實現UIToolbar類的繪製方法
- 13. 重新繪製窗口的方法?
- 14. 用3D + 2D圖形重新繪製QGLWidget
- 15. 如何在Java中繪製圖形
- 16. Java:如何繪製圖形對象?
- 17. 用繪製圖形方法繪製一個形狀?
- 18. 如何使用java中的新值更新繪製的矩形
- 19. 在Java中繪製「方形」
- 20. Java如何不斷重新繪製
- 21. 繪製圖形直方圖
- 22. 如何製作方形圖?
- 23. 在Java中重繪圖形
- 24. Java圖形重繪問題
- 25. 繪製ER圖的Java圖形2D庫?
- 26. Java中的圖形類如何工作?
- 27. 繪製真實圖形(graphviz?)
- 28. JPA如何實際工作?
- 29. ReadAsMultipartAsync如何實際工作?
- 30. CompilationRelaxations.NoStringInterning如何實際工作?
感謝您的解釋。 – pradeekrathnayaka