de parallellogrammen met draaipunt rotatie
 
 Parallellogrammen met achthoek
 
de parallellogrammen met draaipunt rotatie
 
 
 
De parallellogrammen zonder draaipunt rotatie
Zie de schets voor de code
 
 
de parallellogrammen met draaipunt rotatie
 
                                                                        

 

Acht parallellogrammen met hoogte en lengte n                 bekijk de roterende parallellogrammen                      terug naar de inleiding

De schets maakt gebruik van de superclass:  "Vormen"  en de subclass  "Paral"
De roterenden parallellogrammen met achthoek Vhoek_n8  in het nulpunt,  n*1.08,  hoek = 22.5   

De achthoek wordt, na indrukken van toets "1", als eerste getekend, zo is de achthoek de achtergrond van de parallellogrammen.

Het achthoek object zit in cel 0 van de array en wordt niet getekend mbv de for lus (line 40), daarom int i = 1.

Met toetsen "1"  schakel je de achthoek in en met toetst "2" uit

 

//animatie met 8 parallellogrammen hoogte = n en lengte = n lr = 1 
Vormen [] vorm;  
boolean aan = false;  
 
void setup() {    
 // fullScreen();    
  size(780, 560);    
  float x = width/2;    
  float y = height/2;    
  float n = height/6; 
  float h = n;   
  float l = n;   
  float a = sqrt(2*n*n);    
  int lr = 1;  
  vorm = new Vormen[9];  
  vorm[0] = new Vhoek_n8(n*1.08, 0, x, y,  22.5, color(242, 148, 46, 100));  
  vorm[1] = new Paral(h,l, lr, 7, x-a, y,    45, color(255, 255, 0, 100));    
  vorm[2] = new Paral(h,l, lr, 7, x,   y-a, 135, color(255, 255, 0, 100));    
  vorm[3] = new Paral(h,l, lr, 7, x+a, y,  -135, color(255, 0, 0, 100));    
  vorm[4] = new Paral(h,l, lr, 7, x,   y+a, -45, color(100, 0, 255, 100));    
  vorm[5] = new Paral(h,l, lr, 5, x-a, y,   -45, color(0, 255, 0, 100));    
  vorm[6] = new Paral(h,l, lr, 5, x,   y-a,  45, color(0, 100, 255, 100));    
  vorm[7] = new Paral(h,l, lr, 1, x+a, y,   -45, color(255, 0, 200, 100));    
  vorm[8] = new Paral(h,l, lr, 1, x,   y+a,  45, color(255, 0, 200, 100));   
}    
   
void draw() {    
  background(#E6FBFF); 
   
   if (key == '1'|| aan) {  
    vorm[0].display();  
    aan = true; 
  }   
   
   if (key == '2' && aan) {  
     aan = false;    
  }   
   
  for (int i = 1; i < 9; i++)  
  {  
     vorm[i].display();    
  }  
   
  vorm[1].dpRotRe(vorm[1]);    
  vorm[5].dpRotLi(vorm[5]);    
   
  vorm[2].dpRotRe(vorm[2]);    
  vorm[6].dpRotLi(vorm[6]);    
   
  vorm[7].dpRotLi(vorm[7]);    
  vorm[3].dpRotRe(vorm[3]);    
   
  vorm[4].dpRotRe(vorm[4]);    
  vorm[8].dpRotLi(vorm[8]);   
}   
   
void keyPressed() {      
  if (key == 's') {     
    noLoop();   
  }      
  if (key == 'r') {        
    loop();   
  }   
}