首页 » 与孩子一起学编程 » 与孩子一起学编程全文在线阅读

《与孩子一起学编程》16.8 更流畅的动画

关灯直达底部

目前为止,我们已经让球移动了一次!下面来看能不能用一种更逼真的方式让它移动。在屏幕上完成动画时,最好按小步移动,这样运动看起来是流畅的。下面试试用更小的步移动沙滩球。

我们并不只是让每一步更小,还要增加一个循环来移动沙滩球(因为我们希望建立很多小步)。在代码清单 16-13 的基础上编辑代码,改为代码清单 16-14 所示的程序。

如果运行这个程序,应该能看到沙滩球从原先的位置一直移动到窗口的右边。

代码清单 16-14 流畅地移动沙滩球图像

让球一直移动

在前面的程序中,球一直移动到窗口右边,然后停下来。现在我们来让球一直移动下去。

如果只是增加 x 会发生什么?随着 x 值的增加,沙滩球会一直右移。不过我们的窗口(显示表面)在 x = 640 时就到头了。所以球会消失。试着把代码清单 16-14 第 10 行中的 for 循环改为:

for looper in range (1, 200):

现在循环运行次数是原先的两倍,球会从边界消失!如果希望继续看到球,有两个选择。

 
  • 让球从窗口边界反弹。

  • 让球重新翻转到窗口的另一边。

下面来看如何实现这两种做法。