def draw_dots(turt: RawTurtle) -> None: penstate = turt.pen() turt.penup() for x, y in DIGIT2POS.values(): turt.setheading(turt.towards(x, y)) turt.goto(x, y) turt.dot() turt.pen(pen = penstate)
def draw_pattern(turt: RawTurtle, pattern: str) -> None: penstate = turt.pen() turt.penup() for x, y in map(lambda digit: DIGIT2POS[digit], pattern): turt.setheading(turt.towards(x, y)) turt.goto(x, y) turt.pendown() turt.dot() turt.pen(pen = penstate)
def leftDragon(t, sz, level): if level == 0: t.left(90) t.fd(sz) else: leftDragon(t, sz * .8, level - 1) t.left(90) rightDragon(t, sz * 8, level - 1) def rightDragon(t, sz, level): if level == 0: t.fd(sz) t.right(90) else: leftDragon(t, sz * .8, level - 1) t.right(90) rightDragon(t, sz * .8, level - 1) window = Screen() window.setup(1400, 800, 50, 50) t = RawTurtle(window) t.up() t.home() print(t.pen()) t.down() draw_line(t) window.mainloop()