在上一节麦咭编程课程中,我们学会了如何绘制一辆小汽车,懂得了如何用fillcolor()指令给图案填充自己喜欢的颜色,学习了如何用circle()指令绘制一个圆形。今天,麦咭将带领大家学习如何绘制出精美可爱的小猪佩奇,大家快来和麦咭一起学习吧!
一、学习目标
1.学会顺序结构。
2.学会模块化编程。
二、实践操作
(一)设置画笔角度
在开始绘制小猪佩奇之前,大家首先跟麦咭一起来学一些新的知识吧!在这里我们首先要学习使用setheading()来设置画笔角度。
dOEOeCo7017074030-1
要注意了,它的角度与当前的方向无关,坐标方向分为东西南北四个方向,其余方向角度均如上图所示。它的用法与right()和left()相似,均是以角度作为参数。但也是有区别的,我们来编写一小段程序看看它们的区别吧。
首先,我们看看使用setheading()的绘制效果。
然后,我们再一起来看看使用left()的绘制效果。
大家肯定已经看出了这两个不同的语句绘制出来的效果有何不同了,使用setheading()所绘制出来的是一条画笔角度为120,步长为300的直线,而使用left()所绘制出来的是一个边长为100的等边三角形。正是因为setheading()的角度与当前方向无关,所以它绘制出来的是一条直线。而left()与right()都会以当前的角度为原点3次旋转120°,所以绘制出来的是一个等边三角形。
在这里麦咭将会告诉大家一个编程的小诀窍哦!就是大家在编写程序时,可以使用“#”来代表写一条注释,这样可以方便大家查看程序,对加深自己对程序的理解以及排错都会方便很多哦。
在开始绘制小猪佩奇之前,我们首先来思考一下小猪佩奇应该如何绘制。
我们可以使用和小汽车一样的绘制方法,来逐步绘制小猪佩奇。小猪佩奇是由头、身体和四肢组成的,在绘制的时候我们可以将小猪佩奇分为这三个部分来逐一编写程序。
二)绘制小猪佩奇的头
小猪佩奇的头由鼻子、脸、耳朵、眼睛、腮和嘴组成,因此我们要分别绘制出这些部分的图形,然后按照一定的顺序写出程序就好了。
如果程序的执行是自上而下的,我们把这种执行方式叫作顺序执行,结构称为顺序结构。我们在编写程序时可以根据不同的部位写成不同的模块,在编写程序的时候按照顺序写好,让绘制不同部位的模块可以独立绘制。这样即便其中某一个模块出现问题也不会影响到整体的绘图,在出现问题的时候也能方便我们排查修改。例如下图:
大家不难发现小猪佩奇的嘴巴绘制得有些过长了,模块化编程之后,我们就可以打开程序,直接找到绘制嘴巴的那个模块进行修改。
现在我们来看看小猪佩奇头部的绘制程序吧!
这里我们使用for循环与if结构语句,设置步长为0.4,每次增加0.08或者减少0.08,这样就能绘制出一个椭圆形的鼻子了。我们一起运行一下程序看看绘制效果吧!
小猪佩奇的鼻子是不是被我们绘制出来了呢?我们接下来看看小猪佩奇头部整个的绘制程序吧。
这里的t.circle()跟我们之前所学的有些不一样,麦咭来跟大家讲解一下。当circle()里面的参数只有一个时,这个参数代表的就是圆的半径,当有两个参数时,例如circle(r,a),r代表的是圆的半径,而a代表的是角度,其中r如果为负数则半径在画笔右侧,否则半径在画笔左侧。我们来看一下t.circle(100)与t.circle(100,100)的区别吧!
大家是否看出不一样了呢?t.circle(100)是直接绘制出一个以100为半径的圆,而t.circle(100,100)是绘制出一个半径为100,度数为100的圆弧。
我们一起来看看以上小猪佩奇头部程序的绘制效果吧!
(三)绘制小猪佩奇的身体与四肢
前面小猪佩奇头部的绘图我们已经完成了,现在我们来开始绘制小猪佩奇的身体部分。麦咭给出以下程序,同学们自己动手绘制吧!
相信大家已经完成小猪佩奇的所有绘制程序了,那么么运行一下自己的程序,看看和麦咭绘制出来的是不是一样的吧!
麦咭在这里再次提醒大家,要是有哪一段程序出现了错误,可以找到具体的模块来進行修改哦!
三、课程小结
这节课大家一起跟随麦咭学习了怎么绘制小猪佩奇,懂得了setheading()的用法与circle()的不同用法,了解了程序的顺序结构与模块化编程。大家是否觉得今天收获满满呢?
(编辑Seven)