【发布时间】:2018-06-16 00:58:46
【问题描述】:
我需要编写一个程序,该程序的行为类似于某个过程的动画模拟。没有详细说明,会有蜗牛(讲师的想法)在棋盘状的表面上移动,其中每个矩形(我称之为单元格)都有 (x, y) 坐标。
我在将此模拟的逻辑与图形分开时遇到问题。例如:
我有一个Snail 课程。它存储蜗牛的坐标并计算其行为。当它确定蜗牛应该从(x,y)移动到(a,b)时,我需要为该移动设置动画,因此我还必须以像素为单位计算蜗牛的位置,并且我需要在一段时间内重复执行此操作以使蜗牛能够流畅地移动,而不是跳跃。如果不是因为我不想在 Snail 类中这样做,这不会是一个问题,因为它是严格的图形相关的,与逻辑没有任何关系。
我不能只根据Snails 在棋盘上的坐标绘制一个循环,因为它不反映它的流畅运动,只是当前位置。
我目前最好的想法是将Snail 扩展为GraphicSnail,这将额外计算和存储诸如蜗牛位置(以像素为单位)之类的属性,但这对我来说似乎不够独立。
提前感谢您的帮助。
【问题讨论】:
标签: java animation graphics simulation