scratch中可以编程的对象有角色和舞台,而可以进行运动编程的只有角色,舞台不可以运动。
角色的运动分为四类:平移、旋转、翻转和反弹。而这四种运动与三维坐标轴有关,下边详细介绍一下相关知识。
一、scratch坐标系
1、二维坐标系
用来研究平面运动的坐标系是二维平面直角坐标系,用x轴和y轴表示。x轴表示左右方向,y轴表示上下方向,如图1所示。x轴和y轴相交的点叫原点,用O表示,原点也是x轴和y轴的0点。x轴在原点向右为正半轴,表示的x坐标为正,x轴原点向左为负半轴,表示x坐标为负。y轴在原点向上为正半轴,表示的y坐标为正,y轴原点向下为负半轴,表示y坐标为负。

2、scratch坐标系
scratch的舞台就是二维平面的,所以用到的坐标系也是二维的。其原点在舞台的中心,x轴的坐标范围为-240到240,y轴的坐标范围为-180到180。scratch坐标的单位是像素,舞台区域大小为360*480像素,如图2所示。

3、角色的中心点
当在角色列表区选中一个角色后,右上角会显示该角色的坐标值,如图3所示。

注意,角色的坐标值是其中心点的坐标值。而角色的中心点,不一定是其几何中心点,而是这个角色的造型在画布里边的中心点。选中一个角色,切换到造型页面,如图4所示。

此时,角色造型把画布的中心点给遮住了,选中造型的头部,向上移动,中心点就显露出来了,如图5所示。

二、平移
1、平移的规律
平移就是指物体在运动的过程中,在每一时刻物体上的所有点运动的方向和速度都是一样的,所有点移动的轨迹都是平行的。如图所示,矩形在一瞬间从ABCD移动到A'B'C'D',点A、B、C、D分别移动到A'、B'、C'、D',轨迹AA'//BB'//CC'//DD',如图6所示。

2、scratch中与平移相关的积木
scratch中与平移相关的积木包括以下11种,如图7所示。注意,角色在平移过程中,其中心点也是移动的。

三、旋转
1、旋转的规律
旋转就是指物体在运动的过程中,在每一时刻物体上的所有点都在围绕一个中心点做圆周运动,每个点与中心点的距离不发生变化,只是相对方向发生了变化。以中心点为圆心,做一簇同心圆,覆盖住物体,那么物体上在同一条半径上的点,运动方向是相同的,在同一圆弧上的点运动大小是相同的。如图所示,矩形以O点为中心,在一瞬间从ABCD转动到A'B'C'D',点A、B、C、D分别移动到A'、B'、C'、D',轨迹AA'、BB'、CC'、DD'都是圆弧,如图8所示。

2、scratch中的方向
scratch中方向的规定为:向上为0°,向右为90°,向下为180°,向左为270°,如图9-1~9-4所示。




3、scratch中与旋转相关的积木
scratch中与平移相关的积木包括以下6种,如图10所示。其中模块“将旋转方式设为”的选项选择“任意旋转”,角色旋转的角度由程序设定的角度值或者方向值来确定。如果程序中不添加设定旋转方式这个模块,默认的旋转方式就是任意旋转。注意,角色在旋转过程中,其中心点是不动的,物体除中心点外都是围绕中心点在做圆周运动。

四、翻转
1、翻转的规律
翻转,也叫镜像。翻转前后的物体,是一对轴对称物体。在二维平面内翻转有左右翻转和上下翻转,如图11所示。翻转的本质也是一种旋转,只不过这种旋转不是围绕一个中心旋转,而是围绕一根轴旋转,物体不是做的二维平面运动,而是做的三维空间运动。左右翻转是物体围绕平行y轴的一根轴线做180°旋转,上下翻转是物体围绕平行x轴的一根轴线做180°旋转。

2、scratch中与翻转相关的积木
scratch中与平移相关的积木包括以下6种,如图12所示。要想实现左右翻转的效果,必须添加“将旋转方式设为”这个模块,而且其选项必须选择“左右翻转”。
注意:(1)左右翻转是以造型的方向为准。如果造型角色面向左或者右时,使用“左右翻转”模块可以实现左右翻转,而角色面向上或下时,使用“左右翻转”模块实现的就是上下翻转。在翻转过程中,其中心点也是不动的。(2)旋转模式选择“左右翻转”后,角色每旋转达到180°时则左右翻转一次。如果旋转的角度不足180°时,则不发生翻转,旋转角度大于180°,小于360°时,则发生一次左右翻转,大于360°,小于540°时发生两次翻转。

3、旋转180°和左右翻转的区别
无论是180°旋转还是左右翻转,角色都需要进行180的旋转,那么二者有什么区别呢?
旋转180°的程序如图13所示,效果如图14所示,旋转前小猫头朝上,面向由,旋转后头朝下,面向左。


左右翻转的程序如图15所示,效果如图16所示,翻转前小猫头朝上,面向右,翻转后头朝上,面向左。


五、反弹
1、反弹的规律
scratch中的反弹,是指角色碰到舞台边缘进行反弹,这个反弹实际就是旋转和翻转的特殊情况,当旋转方式选择的是“任意旋转”,那么碰到边缘反弹后,实际进行的是180°旋转;如果旋转方式选择的是“左右翻转”,那么碰到边缘反弹后,实际进行的是左右翻转;如果如果旋转方式选择的是“不可旋转”,那么碰到边缘反弹后,角色没有进行任何旋转和翻转的动作,只是运动的方向发生了180°翻转。
2、scratch中与反弹相关的积木
与反弹相关的积木包括“碰到边缘就反弹”和“将旋转方式设为”两个,如图17所示,以及平移运动的模块。

3、反弹的三种形式
如果旋转方式为“任意旋转”,程序如图18所示,反弹的效果如图19所示。


如果旋转方式为“左右翻转”,程序如图20所示,反弹的效果如图21所示。


如果旋转方式为“不可旋转”,程序如图所示,反弹的效果如图所示。


(全文结束)