Created from curves with the parametric form:
x(t) = (1-k)cos(t) + lk.cos((1-k)t/k)
y(t) = (1-k)sin(t) – lk.sin((1-k)t/k)
Each curve chooses random values for l and k and then traces the curve, filling only untouched pixels with colours sorted by hue and luminance. This process is repeated until all pixels are filled.