-
Notifications
You must be signed in to change notification settings - Fork 0
/
startJump.py
75 lines (58 loc) · 1.77 KB
/
startJump.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
__author__ = 'bison'
import sys
import random
def copyfile(source, dest):
open(dest, 'wb').write(open(source, 'rb').read())
inputFile = 'walk-dark-light-5.jpg' # 'source/house.jpg' #'walk-dark-light-5.jpg' #'house.jpg' #grumpyrainbow.jpeg
outputFile = 'createdImages/tmp_jump.jpg'
switchColors = 'jump'
jumpX = 1
jumpY = 0
for arg in sys.argv:
if arg == '--help' or arg == '-h':
# TODO: OWN README!
print('DEFAULT VALUES')
print('python startRotate.py if=walk-dark-light-5.jpg of=createdImages/tmp_coloring.jpg jumpX=1 jumpY=0')
sys.exit()
elif arg.startswith('if='):
inputFile = arg.replace('if=', '')
elif arg.startswith('of='):
outputFile = arg.replace('of=', '')
elif arg.startswith('jumpX='):
switchColors = int(arg.replace('jumpX=', ''))
elif arg.startswith('jumpY='):
switchColors = int(arg.replace('jumpY=', ''))
copyfile(inputFile, outputFile)
from PIL import Image
im = Image.open(outputFile) #Can be many different formats.
pix = im.load()
width, height = im.size
if jumpX == 1:
rowCount = 0
for x in range(width):
rowCount+=1
for y in range(height):
if x < width-31:
pixIndex = [0, 1, 2]
#random.shuffle(pixIndex)
if rowCount >= 30:
rowCount = 0
if rowCount > 0 and rowCount < 30:
oldPix = pix[x + rowCount, y]
newPix = (oldPix[pixIndex[0]], oldPix[pixIndex[1]], oldPix[pixIndex[2]])
pix[x, y] = newPix
if jumpY == 1:
rowCount = 0
for y in range(width):
for x in range(height):
rowCount += 1
if x < height-31:
pixIndex = [0, 1, 2]
#random.shuffle(pixIndex)
if rowCount >= 30:
rowCount = 0
if rowCount > 0 and rowCount < 30:
oldPix = pix[y , x + rowCount]
newPix = ( oldPix[pixIndex[0]], oldPix[pixIndex[1]], oldPix[pixIndex[2]] )
pix[y, x] = newPix
im.save(outputFile)