|  |  | @ -7,16 +7,28 @@ import string | 
			
		
	
		
			
				
					|  |  |  | import numpy as np | 
			
		
	
		
			
				
					|  |  |  | from PIL import Image | 
			
		
	
		
			
				
					|  |  |  | from cat import cat | 
			
		
	
		
			
				
					|  |  |  | import argparse | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # parser stuff | 
			
		
	
		
			
				
					|  |  |  | parser = argparse.ArgumentParser( | 
			
		
	
		
			
				
					|  |  |  |                     prog='FluffyPixelfluter', | 
			
		
	
		
			
				
					|  |  |  |                     description='used to paint Pixelflut canvas',) | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('hostname') | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('port') | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('-i','--image') | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('-r','--random', action='store_true') | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('-c','--cat', action='store_true') | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('-wd','--width', default=0) | 
			
		
	
		
			
				
					|  |  |  | parser.add_argument('-ht','--height', default=0) | 
			
		
	
		
			
				
					|  |  |  | args = parser.parse_args() | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | HOST, PORT = "px.oeinf.de", 1234 | 
			
		
	
		
			
				
					|  |  |  | HOST, PORT = args.hostname, int(args.port) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # change start point if requested | 
			
		
	
		
			
				
					|  |  |  | starth, startw = 0, 0 | 
			
		
	
		
			
				
					|  |  |  | if len(sys.argv) > 2: starth = int(sys.argv[2]) | 
			
		
	
		
			
				
					|  |  |  | if len(sys.argv) > 3: startw = int(sys.argv[3]) | 
			
		
	
		
			
				
					|  |  |  | rnd = False | 
			
		
	
		
			
				
					|  |  |  | if len(sys.argv) > 4: rnd = sys.argv[4] == "rnd" | 
			
		
	
		
			
				
					|  |  |  | starth = int(args.height) | 
			
		
	
		
			
				
					|  |  |  | startw = int(args.width) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | rnd = args.random | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # Create a socket (SOCK_STREAM means a TCP socket) | 
			
		
	
		
			
				
					|  |  |  |     # Connect to server and send data | 
			
		
	
	
		
			
				
					|  |  | @ -31,11 +43,8 @@ with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: | 
			
		
	
		
			
				
					|  |  |  |     sizeh = int(received.split(" ")[2]) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     # open image to be sent or query a cat image | 
			
		
	
		
			
				
					|  |  |  |     if sys.argv[1] == 'cat': | 
			
		
	
		
			
				
					|  |  |  |         im = cat(sizew,sizeh)  | 
			
		
	
		
			
				
					|  |  |  |     else: | 
			
		
	
		
			
				
					|  |  |  |         image = sys.argv[1] | 
			
		
	
		
			
				
					|  |  |  |         im = Image.open(image) | 
			
		
	
		
			
				
					|  |  |  |     if  args.cat: im = cat(sizew,sizeh)  | 
			
		
	
		
			
				
					|  |  |  |     elif image in args: im = Image.open(args.image) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     pixels = list(im.getdata()) | 
			
		
	
		
			
				
					|  |  |  |     width, height = im.size | 
			
		
	
	
		
			
				
					|  |  | 
 |