Python Turtle:是否可以在fill命令中使用图层

时间:2019-01-27 09:31:02

标签: python recursion turtle-graphics fractals

我最近一直在开发一个用于创建分形图像的软件。但是我意识到,要填充形状,必须将其分层放置,否则它将覆盖部分。这是我当前的代码:

import turtle
def CreatePolygon (turt, Side, Size):
    if Size <= 1:
        return
    else:
        #This will create a polygon of a certain size.
        #And iterate smaller polygons inside each polygon thus creating a fractal.
        for i in range (0, Side):
            turt.forward(Size)
            turt.left(360/Side)
            CreatePolygon(turt, Side, Size/(Side-1))

Size = 250
t = turtle.Turtle()
t.hideturtle()
t.speed(0)
#Calling The Function
CreatePolygon (t, 5, Size)

我的主要目的是用各种颜色填充多边形,我知道该怎么做。问题在于,一旦填充了较大的多边形,填充的多边形就会被覆盖。我不确定如何解决此问题,因为要求是:

  • 较小的项目首先被填充(在较大的项目内部)。
  • 较大的项目被填充,而较小的项目被填充的位置未被填充。

1 个答案:

答案 0 :(得分:2)

Python乌龟中没有图层,但是通过一些重复的代码和重新排列,我们仍然可以达到您想要的效果:

tf.cond

我们必须先绘制较大的多边形,填充它,然后递归绘制较小的多边形。

enter image description here