我必须为两个图表制作动画。两张图都是相关的。
一张图显示颜色制图,另一张图显示曲线。
我从文件中获取了图表的值。
所以我必须做三件事才能使图表动画化:
- 读取文件中的值,构建一些对象数组来保存值
- 根据读取的值逐步绘制曲线
- 根据读取的值在其他图表中绘制一条线
其中每项任务必须每 x 秒重复一次。 目前我正在使用 Swing 计时器和扩展 SwingWorker 的类来完成此操作。在 doInBackground 方法中,我读取文件,循环遍历值来构建我的对象并填充一个数组。
在process方法中,我使用一些数组来构建曲线,在done方法中,我绘制线条。但结果并不是我想要的。 曲线拉得太快了。例如,如果我每 2 秒执行一次计时器,那么曲线必须花费 2 秒从图表的一端到达另一端。然后我必须在另一张图中画一条线。目前,每两秒绘制一次曲线。
如果可能的话,我怎样才能在不同的线程中组织它?
最佳答案
我建议看看 Trident animation library 。它将为您简化很多工作。
关于java - 动画 Swingworker 线程和计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5913917/