python使用递归实现一个分形图形

Posted byerHu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python使用递归实现一个分形图形相关的知识,希望对你有一定的参考价值。

代码如下:

import turtle
def main():
    t = turtle.Turtle()
    t.hideturtle()
    t.speed(10)
    level = 12
    fract(t,-80,60,80,60,level)
def fract(t,x1,y1,x2,y2,level):
    newX = 0
    newY = 0
    if level == 0:
        drawLine(t,x1,y1,x2,y2)
    else:
        newX = (x1+x2)/2 + (y2-y1)/2
        newY = (y1+y2)/2 - (x2-x1)/2
        fract(t,x1,y1,newX,newY,level-1)
        fract(t,newX,newY,x2,y2,level-1)
def drawLine(t,x1,y1,x2,y2):
    t.up()
    t.goto(x1,y1)
    t.down()
    t.goto(x2,y2)

main()

效果如图:

 

以上是关于python使用递归实现一个分形图形的主要内容,如果未能解决你的问题,请参考以下文章

Python 分形算法__代码里开出来的艺术之花

分形应用:造山

js实现蕨类植物叶子,叶子分形图形

Python 14分形树绘制2.0

递归的逻辑——递归与分形

JavaScript图形实例:Levy曲线及其变形