Tirsvad be82070c04 Draw the Hirst painting: pen, dot positions, dots, click wait and speed
MIL-002 tasks 1 to 6.

- Add create_pen, which hides the turtle, lifts the pen and switches the screen
  to 0 to 255 colours.
- Add dot_positions: 100 dot centres in 10 rows of 10, 50 apart, centred on the
  origin so the painting fits the default window.
- Add draw_dots, which draws a size-20 dot at every position in a colour chosen
  from the palette, and raises ValueError for an empty palette.
- Add main: draw with the palette of the reference image, then wait for a click
  with exitonclick. Animation is off while drawing and the screen updates once,
  which takes the drawing from 21.1 to 0.35 seconds (SC6 allows 30).
- Add 22 tests: pen setup, positions and spacing, dots on a recording fake pen
  and on a real turtle, no trail, and the order of main's steps. All tests share
  one hidden Tk window, because starting Tk per test fails now and then on
  Windows.

Closes #7
Closes #8
Closes #9
Closes #10
Closes #11
Closes #12

Task: MIL-002#1
Task: MIL-002#2
Task: MIL-002#3
Task: MIL-002#4
Task: MIL-002#5
Task: MIL-002#6
2026-10-08 00:20:48 +08:00
2026-10-07 23:49:56 +08:00
2026-10-07 16:35:56 +02:00
2026-10-07 16:35:56 +02:00
S
Description
Day 18 of Udemy 100 Days of Code: a Hirst-style spot painting drawn with Python turtle, a 10 by 10 grid of dots coloured at random from a palette extracted from an image with colorgram.
Readme AGPL-3.0
386 KiB
Languages
Python 100%