import random
from PIL import Image
from collections import defaultdict
img = Image.open("allthecolors.png").convert("RGB")
pixels = img.load()
def fillsquare(xcord, ycord, orient, zval):
for x in range(256):
for y in range(256):
if orient == 0:
pixels[xcord*256+x, ycord*256+255-y] = (x, y, zval)
if orient == 1:
pixels[xcord*256+x, ycord*256+255-y] = (x, y, zval)
if orient == 2:
pixels[xcord*256+255-x, ycord*256+255-y] = (x, y, zval)
if orient == 3:
pixels[xcord*256+255-x, ycord*256+y] = (x, y, zval)
if orient == 4:
pixels[xcord*256+x, ycord*256+y] = (x, y, zval)
which=defaultdict(int)
which[(2,2)]=1
which[(3,2)]=2
which[(4,2)]=1
which[(5,2)]=2
which[(5,3)]=3
which[(5,4)]=2
which[(5,5)]=3
which[(4,5)]=4
which[(3,5)]=3
which[(2,5)]=4
which[(2,4)]=1
which[(2,3)]=4
which[(3,3)]=3
which[(4,3)]=4
which[(3,4)]=2
which[(4,4)]=1
which[(15-2,2)]=1
which[(15-3,2)]=2
which[(15-4,2)]=1
which[(15-5,2)]=2
which[(15-5,3)]=3
which[(15-5,4)]=2
which[(15-5,5)]=3
which[(15-4,5)]=4
which[(15-3,5)]=3
which[(15-2,5)]=4
which[(15-2,4)]=1
which[(15-2,3)]=4
which[(15-3,3)]=3
which[(15-4,3)]=4
which[(15-3,4)]=2
which[(15-4,4)]=1
for j in range(1,7):
which[(2*j,8)]=1
which[(2*j+1,8)]=2
which[(2*j,9)]=4
which[(2*j+1,9)]=3
for j in range(2,6):
which[(2*j,10)]=1
which[(2*j+1,10)]=2
which[(2*j,11)]=4
which[(2*j+1,11)]=3
for j in range(3,5):
which[(2*j,12)]=1
which[(2*j+1,12)]=2
which[(2*j,13)]=4
which[(2*j+1,13)]=3
for x in range(16):
for y in range(16):
fillsquare(x,y,which[(x,y)],16*x+y);
img.save("allthecolors.png")