Language/Python

[ Python ] 프랙털 나무 그리기 프로그램

곽수진 2021. 9. 1. 23:38
반응형
순환적으로 나무를 그리는 fractal 프로그램을 작성해보자.

 

import turtle
t=turtle.Turtle()
t.shape('turtle')

def tree(length):
    if length>5:
        t.forward(length)
        t.right(20)
        tree(length-15)
        t.left(40)
        tree(length-15)
        t.right(20)
        t.backward(length)

t.color('green')
t.speed(1)
tree(90)

 

▶️ 나뭇가지 규칙 찾기

→ 직선을 그림

→ 직선의 끝에서 특정 각도로 2개의 가지 그림

→ 충분한 나뭇가지가 생성될 때마다 각 가지의 끝에서 앞 과정을 되풀이함

def tree(length):
    if length>5:
        t.forward(length)
        t.right(20)
        tree(length-15)
        t.left(40)
        tree(length-15)
        t.right(20)
        t.backward(length)

▶️재귀호출은 끝없이 자신을 무한히 호출하기 때문에 종료시키는 부분이 명시되어야 함

 

결과값 출력 모습

반응형