diff --git a/.gitignore b/.gitignore index 482f8e8..ff0c96f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .dir-locals.el __pycache__ +*.png diff --git a/prim_wallpaper/make_wallpaper.py b/prim_wallpaper/make_wallpaper.py new file mode 100644 index 0000000..78e57d7 --- /dev/null +++ b/prim_wallpaper/make_wallpaper.py @@ -0,0 +1,15 @@ +import itertools + +from PIL import Image + + +def make_wallpaper(a, b, c): + out = Image.new("RGB", (1 << 12, 1 << 12)) + prim_a = (pow(a, 257, i) - 1 for i in range(1, 256 + 1)) + prim_b = (pow(b, 257, i) - 1 for i in range(1, 256 + 1)) + prim_c = (pow(c, 257, i) - 1 for i in range(1, 256 + 1)) + rgb_values = itertools.product(prim_a, prim_b, prim_c) + for i, rgb in enumerate(rgb_values): + y, x = divmod(i, 1 << 12) + out.putpixel((x, y), rgb) + return out