上次用turtle做了一个爱心,这次我们来做一个旋转的风车,先放下图,看一下完成后的效果

现在我们开始代码的编写

设计叶子

一片叶子我们用一深一浅两个三角形就可以实现了,下面以0度方向的叶子为例,我们写出的代码如下

用循环改为生成4个叶子

有了一个叶子,生成4个叶子也比较容易了,我们只要写一个循环,然后循环里用90的倍数去指定下方向角,剩下的绘制代码就一样了

加一个棒子

给风车的下面加一个稍稍粗一些的棒子,我们只要设置下画笔的粗细画一跟直线就可以了

风车的旋转

风车已经画完了,但是下面我们怎么才能让它转起来呢? 看到我们用循环出4个叶子的代码,在那里我们是指定了角度是90的倍数,把叶子的方向写成固定的了,如果我们把那个角度变成一个变化的变量,就可以让叶子往不同的角度转了。为方便使用,我们先定一个draw函数,让它可以接收自己指定的角度。

修改下大概是下面的代码

import turtle as t
t.speed(0)
def draw(r):# 画一个风车的棒子t.pensize(4)  # 棒子4像素粗t.penup()t.goto(0,0)t.pendown()t.goto(0,-150)t.pensize(1)for i in range(4):t.setheading(i * 90 + r)t.penup()t.goto(0,0)t.pendown()# 浅蓝色三角形t.fillcolor('#50B2F8')t.begin_fill()t.forward(100)t.left(150)t.forward(70)t.end_fill()# 靠近中心的深蓝色三角形t.fillcolor('#063EC5')t.begin_fill()t.left(30)t.forward(40)t.left(90)t.forward(35)t.end_fill()draw(30)  # 尝试不同的角度,叶子已经可以转到我们想要的角度了t.done()

角度可以变了,但是转动的动画还没有,这个要怎么做呢? 我们可以写一个循环去调用这个draw函数

for r in range(0,360*100,3):  # 这里是旋转100圈,也可以用while循环,让它不停转,步长3对应的是转速,也可以改为1、2看看效果t.tracer(False)t.clear()draw(r)time.sleep(0.01)t.hideturtle()t.tracer(True)

好了,现在风车终于可以转起来了,最后我们贴下完成的代码

import turtle as t
import time
def draw(r):# 画一个风车的棒子t.pensize(4)  # 棒子4像素粗t.penup()t.goto(0,0)t.pendown()t.goto(0,-150)t.pensize(1)for i in range(4):t.setheading(i * 90 + r)t.penup()t.goto(0,0)t.pendown()# 浅蓝色三角形t.fillcolor('#50B2F8')t.begin_fill()t.forward(100)t.left(150)t.forward(70)t.end_fill()# 靠近中心的深蓝色三角形t.fillcolor('#063EC5')t.begin_fill()t.left(30)t.forward(40)t.left(90)t.forward(35)t.end_fill()# 用速度1播放一次绘制过程
t.speed(1)
draw(0)for r in range(0,360*100,3):  # 这里是旋转100圈,也可以用while循环,让它不停转,步长3对应的是转速,也可以改为1、2看看效果t.tracer(False)t.clear()draw(r)time.sleep(0.01)t.hideturtle()t.tracer(True)t.done()

python用turtle画一个旋转的风车相关推荐

  1. 使用Python的turtle画一个足球

    import turtle# 创建一个新的 turtle t = turtle.Turtle()# 画一个圆形来作为足球的轮廓 t.circle(114) t.circle(114,15) t.lef ...

  2. python使用turtle画一个三角形、正方形(矩形或四边形)

    今天我们用python使用turtle库画一个三角形.一个正方形. 1.画一个三角形. 实现方法是先画一个直线,然后旋转120度,然后继续画直线.这样反复画三条直线后,就形成一个等边三角形.先看效果: ...

  3. Python——用turtle画一个月饼

    今天是中秋节,首先在这里祝大家中秋快乐!那么提到中秋,我们首先想到的当然是香甜的月饼,所以我今天就在这里画一个月饼送给大家. 那么 要用Python画图,我们必须掌握并运用Turtle库,这个可以自己 ...

  4. 利用Python的turtle画一个奥运五环

    奥运五环图如下 ♥实现思路 项目需求 实现思路 需要画5个交叉的⚪ 利用turtle.circle()方法实现 五种颜色 turtle.color()方法改变颜色 画完一个⚪前往下一个点画⚪时不能有轨 ...

  5. 《Turtle绘图》用Python的Turtle画一个雪红灯笼

    声明 本文仅在CSDN发布! 本文代码仅供学习参考使用.若转载与引用请标注出处申明. 本文链接: https://blog.csdn.net/meenr/article/details/1231664 ...

  6. 用python画出小人发射爱心_用python代码turtle画一个坐地铁

    运行效果:知乎视频​www.zhihu.com 代码: import time, math import turtle as t class Human(object): def __init__(s ...

  7. 用Python的turtle画出beautiful四扇风车图

    一.简单了解turtle 1.turtle是什么? 这里引用Python官方文档的片段: 海龟绘图 海龟绘图很适合用来引导孩子学习编程. 最初来自于 Wally Feurzeig, Seymour P ...

  8. python turtle 画老鼠,python用turtle制作一个猫捉老鼠游戏

    CSDN网友写的猫捉老鼠游戏代码 看着不错 大家借鉴一下 import turtle import time import random def up(): jerry.setheading(90) ...

  9. 利用Python海龟绘图画一个世界杯的足球

    利用Python海龟绘图画一个世界杯的足球 花有重开日 人无再少年 四年一次的世界杯快要结束,为了纪念此次世界杯,特意用Python画了一个足球. 1.设计思路以及实现效果 世界杯足球实现思路: 首先 ...

最新文章

  1. 1.Spring Cloud Alibaba教程:简介
  2. Python 生成器与列表解析
  3. 开始我的blog之旅
  4. iOS开发证件要点详解
  5. Java基础(三)--final关键字
  6. 【三维路径规划】基于matlab多种算法无人机三维路径规划【含Matlab源码 300期】
  7. 企业数字化转型:数字化成熟度评估模型
  8. 华为p20如何连接计算机,华为P20 USB调试和开发人员选项的打开方法(EMUI8.1)
  9. 什么样的作品才能上抖音热门?
  10. 8.敏捷软件开发框架 - 规模化敏捷框架SAFe
  11. HTML5七夕情人节表白网页(爱心雨-满屏爱心飘落)HTML+CSS+JavaScript
  12. Python3之多线程
  13. 读书笔记之 大型网站技术架构(核心原理与案例分析)
  14. 痞子衡嵌入式:实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形(有预取)...
  15. matlab练习(11.7)
  16. 关于最新笔记本机型预装win8如何更换为win7的解决办法
  17. 某互联网金融公司“产品经理”培训圆满结束!
  18. JVM-01-JVM知识
  19. 解决Photoshop无法完成请求,因为找到不知名的或无效的JPEG标识符类型问题
  20. 计算机与科学论文3000,计算机科学技术应用论文3000字(2)

热门文章

  1. (java)判断a是奇数还是偶数
  2. spring切入点函数
  3. C++ enum前置声明
  4. 微信群、朋友圈和订阅号的流量到底有什么差异?
  5. 在自己电脑上用excel重新绘制荧光定量溶解曲线
  6. Gartner年度趋势预测汇总整理(2006年-2023年)
  7. matlab kmo检验,RPCL(Rival Penalized Competitive Learning)在matlab下的实现
  8. 扇贝python_【扇贝批量添加单词到词库】利用python调用扇贝API (oauth2)
  9. 20145212罗天晨 注入shellcode实验及Retuen-to-libc实验
  10. 在线php后门查找,一款猥琐的PHP后门分析