Ported Joulii's disco program to the app #2
 Merged
	
	
		
		
			
		
		
		
		
			
		
		
			
			
				pvx
				merged 1 commits from psannus/litsimaja:master  into master 5 years ago
			
		
	
	
				 1 changed files with 36 additions and 0 deletions
			
			
		@ -0,0 +1,36 @@ | 
				
			|||||||
 | 
					#!/usr/bin/env python3 | 
				
			||||||
 | 
					# Ported by Peter | 
				
			||||||
 | 
					# Palun! | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from lib.Program import Program | 
				
			||||||
 | 
					import time | 
				
			||||||
 | 
					import random | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def name(): | 
				
			||||||
 | 
					    return 'DiskoPidu' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class DiskoPidu(Program): | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def disco(self, segmentLength, wait_ms=50): | 
				
			||||||
 | 
					        color = random.randint(0, 0xffffff) | 
				
			||||||
 | 
					        totalLength = self._lm.count_pixels() | 
				
			||||||
 | 
					        for p in range(totalLength): | 
				
			||||||
 | 
					            if p % segmentLength == 0: | 
				
			||||||
 | 
					                color = random.randint(0, 0xffffff) | 
				
			||||||
 | 
					            self._lm.set_pixel_color(p, color) | 
				
			||||||
 | 
					        self._lm.show() | 
				
			||||||
 | 
					        time.sleep(wait_ms / 1000.0) | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Main program logic follows: | 
				
			||||||
 | 
					    def run(self, args=None): | 
				
			||||||
 | 
					        loop = False | 
				
			||||||
 | 
					        if 'loop' in args and args['loop']: | 
				
			||||||
 | 
					            loop = args['loop'] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        while self.get_loop().status(): | 
				
			||||||
 | 
					            self.disco(10) | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            if not loop: | 
				
			||||||
 | 
					                break | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue