太厉害了!用Python做一个大风车, 继续吱呦呦地转!

网站建设3年前发布
19 0 0

大风车,吱呀吱呦呦地转,,这里的风景呀真好看!天好看,地好看……,一首熟悉的歌曲,是否已经把你拉回了童年?,这首歌,估计是每个80后、90后的童年记忆!,小时候守着家里的电视,只要听到这个主题曲,就代表马上会有各种好看的动画片播出。,又是一年6·1儿童节,作为一个Python号,当然又要想想能用python做点什么啦——,第一步,先观察风车的重要组成部分,四个扇叶和一个支撑杆。,其中扇叶可以通过构建一个函数,重复绘制4次获得。,以下是绘制风车扇叶的代码部分。,而我们只需要循环四次,即可获得风车的最核心部分。,具体绘制过程如下图所示,turtle.Screen().colormode(255),这样最核心的部分已经画完,那支撑杆就更简单了。,只需要设置合适的宽度和颜色,画一条线段即可。,最终呈现效果,这样我们就画好了一个可以手持的风车,但故事才刚刚开始。,如何让大风车,吱呀吱呦地转起来,才是今天文章的重中之重。,这里我采用的方法是:,上述这几步,都可以用python实现自动处理,那就简单多了。,首先,海龟绘图(Turtle Graphics)库是一个非常好用的矢量绘图工具。,但想将其绘图结果保存为本地图片还需要好几步。,上面两行代码只能将Turtle绘图保存为eps矢量格式。,eps格式图片可以用PS打开,再手动另存为png、jpg等。但太麻烦了,学会了python肯定优先考虑python批量转换。,通过查找,发现可以用PIL来进行图片格式转换。,但是大家如果直接运行我代码的话,会有报错:OSError: Unable to locate Ghostscript on paths,意思是没有在环境变量中找到 Ghostscript,这就需要下载安装软件[1],官网下载地址:https://www.ghostscript.com/download/gsdnld.html,安装跟自己电脑匹配的版本,然后再配置环境变量。,比如我自己是直接安装到C盘上了,就要将C:\Program Files\gs\gs9.54.0\bin加到path上,来配置好环境变量。,最后,再重启下IDE或命令行,就可以正常用了(因为修改path后,当前运行环境下需重启才能生效)。,经过以上步骤的设置,我们以后就可以直接下载turtle的绘图结果了,而不再需要去截图。,绘制不同角度的图片,其实有很多办法,这里我只讲一种方案。,圆周长 = 圆周率 × 半径 × 2,用字母公式就是C = 2πr。,我的方案就是:海龟箭头先绕着半径30的圆,每次前进不同的周长,然后再正常绘图。这样,就相当于绕着这个中心不停旋转地作图。,再搭配上前面学到的保存Turtle为保存jpg,这样就能生成360°不同角度的风车图片了。,批量绘制+另存为,这样我们生成了大概100多张图片。,如何将图片合成 gif 动图?,我直接参考了黄同学之前的文章[2]代码来用,关键的步骤都有注释。,这样就可以用python合成图片为gif动图了,设置好间隔时间,执行一下,看看效果,旋转的手持大风车 ,池塘边的榕树上,知了在声声叫着夏天......,希望我画的这个大风车,能带给大家关于童年的回忆。,如果有小伙伴对本文代码感兴趣,    在公众号后台回复“小助手” ,找他获取,暗号61,即可获取全部代码!

© 版权声明

相关文章