首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java图形重绘方法的实际工作原理

java图形重绘方法的实际工作原理
EN

Stack Overflow用户
提问于 2013-07-19 11:17:31
回答 1查看 2.2K关注 0票数 1

我刚刚开始使用java2d图形应用程序,在我的研究中,重绘正在重新绘制我们的图形,浪费了很多资源。但我想知道什么是重绘,以及如何高效、安全和快速地在画布上使用它来处理许多可移动的动态对象?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-19 11:28:41

我会先通读一下Performing Custom PaintingPainting in AWT and Swing

repaintRepaintManager发出请求以绘制部分或全部组件。RepaintManager将决定绘制什么以及绘制多少,可能会将重新绘制请求合并到尽可能少的更新中(因此重复调用repaint实际上可能会减慢绘制进程)。

然后,RepaintManagerpaint事件推送到事件分派线程上。这确保了在EDT上下文中处理paint事件。

在Swing中进行绘制时,有许多可能的解决方案可以提高速度和资源管理。

您可以考虑实现您自己的双缓冲策略,将您的更新绘制到离屏缓冲区,并在准备好后切换到活动缓冲区,该缓冲区将被绘制。

这意味着绘制很快,因为所有的工作都已经完成了(假设是在后台线程中)。

举个例子。

你也可以看看Passive vs. Active Rendering,但我很确定你知道自己在做什么……

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17737555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档