我们继续用Python的海龟库来画图吧!
上图是画一朵花的程序,重点是6-12行,使用了函数来定义drawleaf:每一掰叶子由两条弧线组成,每一条弧线重复画15次,每次前进5步,右转6度。
看图形化代码就很清楚了,这朵花由4部分组成,一个向上长50步的直线,一片叶子,长150步的直线和6片叶子组成的花。
上图是最终的效果图,大家可以想一想,为什么花儿的直线部分比较粗呢?(后面有答案)
上图依然是花儿的程序,做了三方面的拓展:
第12行代码增加了画笔的粗细;
第6-10行代码,改变了叶子的函数,这里叶子由两个圆弧组成;
第18-20行代码,给这朵花增加了一片叶子。
图形化代码可以更清楚的看到变化。
具体效果如上图,感觉这朵花儿除了增加了叶子,变粗了线条,叶子从细长变的粗短了一些,整体变化不大!
上图的程序依然是那朵花儿,同样做了三个方面的拓展:
第5行代码,加快了画笔的速度,将速度设为了100;
第6行代码,将画笔初始状态设为抬笔,在第17行代码才设定为落笔状态。为什么第一幅花朵的直线部分比较粗呢?因为画了往返两次,从(0,0)先画到(0,-150),再累计往上移动150步,又画了回去。海龟画笔的默认起始位置是(0,0)。
第20-23行代码,第26-29行代码,是给叶子填充颜色;第32-37行代码,是给花朵填充颜色。
图形化代码较长,如上面两图。注意:不论是代码编程还是图形化编程,顺序非常重要。即使在图形化代码中移动了函数的位置,程序可能就不能正常执行了。
这次的花朵变化感觉挺大!填充了颜色,加快了画笔速度,更改了落笔位置。
本文内容除了函数部分,其余内容皆为之前知识的复习。
转自公众号:
临汾南城教辅中心