"""
turtle_recursive_curve.py
"""
import turtle
scale = 0.95 # next line segment is shorter by this factor
turn = 5 # next line segment turns by this factor
min_length= 1 # shortest line length
start_length = 20
def init_turtle():
turtle.width(5) # in pixels
turtle.color('#00ccff') # CSS (r,g,b) hex color
turtle.hideturtle() # don't show the turtle itself
def curve(length):
""" Recursively draw a curve. """
# Draw a line with given length, then rest of curve, then reset """
turtle.forward(length) # draw
turtle.right(turn) # turn
if length > min_length: # recursively draw the rest
curve(length * scale)
turtle.right(-turn) # undo - return to starting spot
turtle.forward(-length)
def main():
init_turtle()
curve(start_length)
input("Hit return to quit.")
main()