少儿编程

系列

和 Vicky 一起学习 Scratch 系列之十八 | 月球漫步

前言

上一期,我们学习了 Scratch 中透视的概念和基本原理,并创作了一个简单的动画。

今天,我们从月球漫步的话题谈起,然后介绍一下抛物线这个数学概念,最后实现一个月球漫步的小作品。

开始吧~

漫步月球

1969年7月20日,人类历史性的实现了登陆月球的伟大梦想,美国宇航员阿姆斯特朗迈出了 “人类的一大步”,踏上了月球的土地。

两位宇航员很快就发现,跟在地球上不一样,在月球行走更便捷的方式是 “跨步跑”。

因为月球的重力只有地球的六分之一,这种跳跃的方式更适合在月面移动:

在月球跳跃前进 | NASA

抛物线

当我们踢足球或打篮球时都有这样的体验,球飞起来时,在空中划过的轨迹是一条弯弯的曲线,这就是 “抛物线 parabola”:

抛物线

抛物线是数学上的一个概念,属于圆锥曲线的一种。每一条抛物线都有对应的曲线方程,上面这条抛物线的方程是:

抛物线方程式

抛物线形成的曲面成为抛物面,在现实生活中,我们也随时可以看到它的身影,比如卫星天线,雷达,反射式天文望远镜的镜面等等,都是抛物面:

牛顿反射式天文望远镜 GMT 的主镜 | Space.com

画一条抛物线

了解了抛物线的概念之后,我们在 Scratch 中画一条抛物线吧!

首先,我们设置一下舞台,背景和角色:

舞台 / 背景 / 角色

现在,我们让这只篮球按照刚才的抛物线公式运动:

公式

关键的运算语句块是这样的:

对应于公式的语句块

不难发现,这个语句块其实就是公式本身,把这条语句放在循环里,脚本是这样的:

篮球抛物线脚本

点击开始,篮球开始沿一条抛物线运动:

沿抛物线运动

作品的立意

篮球的运动轨迹是一条抛物线,宇航员在月球的 “跨步跑” 的轨迹也是抛物线。

现在,我们就来设计一个小的作品,实现宇航员在月球漫步的情景。

作品的实现

这次,我们请出小猫来担任我们的宇航员,场景是这样的:

月球漫步的场景

注意,与画一条抛物线不同的是,宇航员的运动是一系列连续的抛物线,我们需要添加几个变量实现连续的运动:

连续运动的抛物线计算公式

是不是感觉有点复杂?其实原理是一样的,只是每次更改了抛物线的起始坐标。

最终的脚本是这样的:

月球漫步的脚本

红色箭头处,我们还切换了小猫跳起时的动作造型,蓝色箭头处,我们使用键盘的空格键控制小猫的运动。

娃爸还给小猫画了一个太空帽:

太空帽

最终的效果是这样的:

最终的作品

今天我们还知道了以下单词的含义:

parabola 抛物线