欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Turtle(7)制作简单动画

发布时间:2023/12/31 编程问答 54 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Turtle(7)制作简单动画 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Turtle(7)制作简单动画

前言

我们已经学会了绘制简单的图, 本期开始,我们将学习如何用turtle库制作动画.

学习目标

  • 初步了解动画制作的原理
  • 做一个简单的落雪效果

代码学习

画一片雪花

# 画三分之一的雪 def koch_1(size, n):if n == 0:turtle.fd(size)else:for angle in [0, 60, -120, 60]:turtle.left(angle)koch_1(size / 3, n - 1)# 画整朵的雪 def koch(pos, size, n):turtle.pen()turtle.goto(pos)turtle.pendown()koch_1(size,n)turtle.right(120)koch_1(size, n)turtle.right(120)koch_1(size, n)turtle.right(120)

动画初始化

turtle.tracer(0)turtle.hideturtle()FPS = 30 # 每秒帧数t = 1 / FPS # 更新时间,一秒30帧turtle.setup(800, 800)x, y = 20, 400 # 雪花初始位置

动画逻辑

while y>-380:turtle.clear()y -= 5koch((x,y), 30, 3)turtle.update()time.sleep(t) turtle.done()

代码分析:

  • 每次都要清一下屏:
  • turtle.clear()

    2.将雪花的坐标往下移5个像素,造成一种雪花在下掉的过程

    y -= 5 # y = y -5
  • 在新的位置重新画一个雪花
  • koch((x,y), 30, 3)
  • 绘制完后刷新
  • turtle.update()
  • 等待下次重新绘制与更新
  • time.sleep(t)

    第五点的效果是让系统睡t秒.等待下次更新.

    后记:

    动画的效果本质上是一连串的静态图片的快速,连续的变化造成的视觉效果.
    因此,当我们将各个时间点的图片绘制出来,就会给人一种动画的效果.
    来看一下不飘逸的雪花效果

    总结

    以上是生活随笔为你收集整理的Turtle(7)制作简单动画的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。