38 lines
878 B
Python
Executable File
38 lines
878 B
Python
Executable File
#!/usr/bin/env python3
|
|
from turtle import Pen
|
|
|
|
|
|
def draw_ornament(pen, scale=150):
|
|
if scale > 1:
|
|
for angle in range(0, 360, 90):
|
|
pen.setheading(angle)
|
|
back = pen.pos()
|
|
if scale <= 10:
|
|
pen.pd()
|
|
pen.forward(scale)
|
|
draw_ornament(pen, scale // 2)
|
|
pen.pu()
|
|
pen.setpos(back)
|
|
|
|
def setup_pen():
|
|
pen = Pen()
|
|
pen.ht()
|
|
pen.pu()
|
|
pen.speed(0)
|
|
pen.screen.setup(1000, 900)
|
|
pen.screen.title("Watch me running")
|
|
pen.screen.bgcolor("white")
|
|
pen.screen.tracer(n=10) # draws only nth frame to speed up drawing
|
|
pen.color("blue")
|
|
pen.setpos(0, 0)
|
|
return pen
|
|
|
|
if __name__ == '__main__':
|
|
pen = setup_pen()
|
|
try:
|
|
draw_ornament(pen)
|
|
except KeyboardInterrupt:
|
|
exit()
|
|
input('All done!\nPress Enter to quit')
|
|
exit()
|