[英]How to do animation using swing and clojure?
我试图在棋盘上制作棋子。 首先,我创建了一个java.util.Timer对象,“scheduleAtFixedRate”是一个实现为代理函数的TimerTask。 所以我保留了要移动的片段(片段移动记录)以及何时适当(当用户使用鼠标移动片段时)的记录,如果记录不是nil并执行片段,则应测试TimerTask代理函数 - 移动功能。 片段移动功能仅根据预先计算的矢量更新片段的x和y坐标。 我在片段移动记录上添加了一个添加手表,所以当它改变时它应该重新绘制板(画布)。 paint方法测试这件棋子的动作记录是否为零。
问题是动画没有出现。 这件作品只是跳到命运,没有两者之间的运动。 动画方案有一些问题,你有更好的方法吗?
Swing不会自动执行动画,如果你有一个计时器也没关系。 如果你想要为动画制作动画,你需要一次移动一段距离并用每一个动作重新绘制画布,这样就可以说出运动的错觉。
你可以使用Trident库: 这里
JDK中有一个Animator演示。 它使用awt但它应该给你一些想法。
jdk1.6.0_20 \\演示\\小程序\\动画
另一个想法可能是从processing.org查看Processing可视化框架。 它是一种简单但功能强大且文档齐全的动画和可视化编程语言。 API非常简单,并且具有一个名为Rosado的非常透明的Clojure包装器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.