animatie met  "T"  en "Y"          de animate met     "T" en "Y" pentomino's         terug naar de inleiding

de schets maakt gebruik van objecten van de class "T" en "Y"  en de superclass "Vormen"

enkele toetsfuncties

Met toetsen 1 t/m 5  verander je de x,y positie van de draaipunten.
Met toetsen 6 t/m 9 verander je de draaipunten van de pentomino's.
Met toets 0 start de oorspronkelijke animatie.
Met toets s stopt, en met toets r start de animatie.

 

 

Vormen [] vorm;  
float xp = 3; float yp = 2; int dp = 0; 
  
void setup() {  
  size(780, 560);  
 // fullScreen();  
  float x = width/2;  
  float y = height/2;  
  float n = height/12;  
  vorm = new Vormen[8]; 
  vorm[0] = new T(n,    8-dp, x-xp*n, y-yp*n,   0, color(255, 255, 0, 50));  
  vorm[1] = new T(n,    1+dp, x+xp*n, y-yp*n,   0, color(0, 0, 255, 50));  
  vorm[2] = new Y(n, 1, 5-dp, x-xp*n, y-yp*n, 180, color(255, 0, 0, 50));  
  vorm[3] = new Y(n, 0, 4+dp, x+xp*n, y-yp*n, 180, color(0, 255, 0, 50)); 
  vorm[4] = new T(n,    1+dp, x-xp*n, y+yp*n, 180, color(0, 0, 255, 50));  
  vorm[5] = new T(n,    8-dp, x+xp*n, y+yp*n, 180, color(255, 255, 0, 50));  
  vorm[6] = new Y(n, 0, 4+dp, x-xp*n, y+yp*n,   0, color(0, 255, 0, 50));  
  vorm[7] = new Y(n, 1, 5-dp, x+xp*n, y+yp*n,   0, color(255, 0, 0, 50));  
}  
  
void draw() {  
  background(#E6FBFF);  
 for (int i = 0; i < 8; i++)  
  {  
  vorm[i].display();    
  }  
   
  vorm[0].dpRotLi(vorm[0]);  
  vorm[1].dpRotRe(vorm[1]);    
  vorm[2].dpRotRe(vorm[2]);  
  vorm[3].dpRotLi(vorm[3]);   
  vorm[4].dpRotRe(vorm[4]);  
  vorm[5].dpRotLi(vorm[5]);    
  vorm[6].dpRotLi(vorm[6]);  
  vorm[7].dpRotRe(vorm[7]);   
}  
  
void keyPressed() {          
   if (key == 's') {         
    noLoop();         
  }                
   if (key == 'r') {            
    loop();         
  }        
  if (key == '1') {          
     xp = 3; yp = 3; 
     setup();      
  }        
  if (key == '2') {   
     xp = 2; yp = 3;  
    setup();       
}  
  if (key == '3') {          
     xp = 2; yp = 2;  
    setup();       
}  
  if (key == '4') {          
     xp = 2; yp = 1;     
    setup();  
} 
  if (key == '5') {          
     xp = 1; yp = 1;   
     setup();  
}      
  if (key == '6') {          
     dp = 1; 
     setup();  
}      
  if (key == '7') {          
     dp = 2; 
     setup();  
}  
 if (key == '8') {          
     dp = 3; 
     setup();  
}  
 if (key == '9') {          
     dp = 4; 
     setup();  
}  
if (key == '0') {          
     dp = 0; xp = 3; yp = 2; 
     setup();  
}  
}