📜  在Python中使用 Turtle 打印星形分形

📅  最后修改于: 2022-05-13 01:54:20.819000             🧑  作者: Mango

在Python中使用 Turtle 打印星形分形

先决条件:海龟编程基础

分形是倾向于具有重复有限次数的自相似结构的对象。本文的目标是绘制一个星形分形,其中在星形的每个角上绘制星形结构,并重复此过程,直到输入大小减小到值10 。为了实现这种星形分形图案,使用了海龟模块。

使用的方法

  • forward(value):它向前移动海龟。
  • speed(value):它改变乌龟的速度。
  • penup():停止绘图。
  • pendown():开始绘图。
  • left(value):将海龟向左移动。

方法

  1. 进口龟。
  2. 初始化乌龟。
  3. 更改背景颜色。
  4. 制作一个绘制星星的函数。
  5. 在 for 循环内递归调用上述函数以制作整个开始模式。

下面是上述方法的实现。

Python3
# import turtle
import turtle
  
# initialise turtle instance
stars = turtle.Turtle()
  
# increases the speed of turtle
stars.speed(10)
  
# to change the background color
stars.getscreen().bgcolor("black")
stars.color("red")
  
# stop drawing
stars.penup()
  
# move the turtle
stars.goto((-200, 50))
  
# start drawing
stars.pendown()
  
# function to draw stars
def star(turtle, size):
    if size <= 10:
        return
    else:
        for i in range(5):
            
            # moving turtle forward
            turtle.forward(size)
            star(turtle, size/3)
  
            # moving turtle left
            turtle.left(216)
  
  
# calling the star function
star(stars, 360)
turtle.done()


输出: