zestien roterende spiralen vormen een vierkant                    bekijk de  roterende spiralen

Toets functies
Toetsen  "1"  t/m "3" verandert de grootte van het vierkant.

Toetsen  "4"  t/m "7" verandert het aantal bogen van de  spiralen.

Toets  "8" alleen de gele spiralen draaien.

Toets  "9" Maakt dat alle spiralen naar links zijn gericht,  met toets "0" ga je weer terug naar de oorpronkelijke situatie.

Met de "s" toets stoppen, en met elke andere toets starten de rotaties weer.


De schets maakt gebruik van objecten van de class   "Spiraal_8gr_gk"   en de superclass  "Vormen"               terug naar de inleiding

 

 

Vormen [] vorm;   
  float vierk = 3; 
  int r = 8; 
  int lr1 = 0;  
  int lr2 = 1; 
   
  void setup() {   
// size(800, 800);    
  fullScreen();  
  float x = width/2;     
  float y = height/2;     
  float n = height/20;    
  float sw = 10; 
  int c1 = color(255,255,0);   
  int c2 = color(255,0,255);  
  vorm    = new Vormen[16];  
  vorm[0] = new Spiraal_8gr_gk(n*4, sw, lr2,r, x+vierk*n, y-vierk*n,-90, c1);    
  vorm[1] = new Spiraal_8gr_gk(n*4, sw, lr1,r, x-vierk*n, y-vierk*n, 90, c1);    
  vorm[2] = new Spiraal_8gr_gk(n*4, sw, lr2,r, x+vierk*n, y+vierk*n,  0, c1);  
  vorm[3] = new Spiraal_8gr_gk(n*4, sw, lr1,r, x+vierk*n, y-vierk*n,180, c1);  
         
  vorm[4] = new Spiraal_8gr_gk(n*4, sw, lr2,r, x-vierk*n, y+vierk*n, 90, c1);     
  vorm[5] = new Spiraal_8gr_gk(n*4, sw, lr1,r, x+vierk*n, y+vierk*n,270, c1);    
   
  vorm[6] = new Spiraal_8gr_gk(n*4, sw, lr2,r, x-vierk*n, y-vierk*n,-180, c1);    
  vorm[7] = new Spiraal_8gr_gk(n*4, sw, lr1,r, x-vierk*n, y+vierk*n,   0, c1);   
  
  vorm[8] = new Spiraal_8gr_gk(n*4, sw, lr2,r, x+vierk*n, y-vierk*n, -90, c2);    
  vorm[9] = new Spiraal_8gr_gk(n*4, sw, lr1,r, x-vierk*n, y-vierk*n,  90, c2);    
  vorm[10] = new Spiraal_8gr_gk(n*4,sw, lr2,r, x+vierk*n, y+vierk*n,  0, c2);  
  vorm[11] = new Spiraal_8gr_gk(n*4,sw, lr1,r, x+vierk*n, y-vierk*n,180, c2);  
        
  vorm[12] = new Spiraal_8gr_gk(n*4,sw, lr2,r, x-vierk*n, y+vierk*n, 90, c2);     
  vorm[13] = new Spiraal_8gr_gk(n*4,sw, lr1,r, x+vierk*n, y+vierk*n,270, c2);    
   
  vorm[14] = new Spiraal_8gr_gk(n*4,sw, lr2,r, x-vierk*n, y-vierk*n,-180,c2);    
  vorm[15] = new Spiraal_8gr_gk(n*4,sw, lr1,r, x-vierk*n, y+vierk*n,   0,c2);     
 }  
 
void draw() {     
 // background(#E6FBFF); 
  background(0);    
   
 for (int i = 0; i < 16; i++)    
  {    
    vorm[i].display();    
  }  
   
  //door het indrukken van toets s wordt het if statement "true" 
  //zodra een andere toets wordt ingedrukt wordt dit if statement false 
   if (key == 's') {    
     
  }      
   else 
 { 
  vorm[0].dpRotRe(vorm[0]);  
  vorm[1].dpRotLi(vorm[1]);  
  vorm[2].dpRotRe(vorm[2]);  
  vorm[3].dpRotLi(vorm[3]);  
   
  vorm[4].dpRotRe(vorm[4]);  
  vorm[5].dpRotLi(vorm[5]);  
  vorm[6].dpRotRe(vorm[6]);  
  vorm[7].dpRotLi(vorm[7]); 
   
   if (key == '8') {  
  }  
  else  
 {  
   vorm[8].dpRotLi(vorm[8]);  
   vorm[9].dpRotRe(vorm[9]);  
   vorm[10].dpRotLi(vorm[10]);  
   vorm[11].dpRotRe(vorm[11]);  
   
   vorm[12].dpRotLi(vorm[12]);  
   vorm[13].dpRotRe(vorm[13]);  
   vorm[14].dpRotLi(vorm[14]);  
   vorm[15].dpRotRe(vorm[15]);  
  }    
 }  
}    
  
void keyPressed() {        
  if (key == '1') {           
     vierk = 0;   
     setup();  
 }     
  
  if (key == '2') {    
    vierk = 2;   
    setup();   
 }   
  
  if (key == '3') {           
    vierk = 4;   
    setup();  
 }   
  
  if (key == '4') {           
    r = 2;   
    setup();    
 } 
  
  if (key == '5') {           
    r = 4;   
    setup();   
 }   
  
  if (key == '6') {           
    r = 6;   
    setup();   
 }   
   
   if (key == '7') {           
    r = 8;   
    setup();  
 }    
    if (key == '9') {           
    lr1 = 0;  
    lr2 = 0; 
    setup();  
 } 
 
if (key == '0') {    
    lr1 = 0;  
    lr2 = 1;   
    setup();  
  } 
 }