header ruitDrieh
 
schets met 3 ruiten en 4 gelijkzijdige driehoeken                            terug naar de inleiding
 
De gelijkzijdige driehoeken zijn samengesteld mbv objecten van de class "Drieh_nh"
De schets maakt ook gebruik van objectmetnodes van de superclass  ''vormen''   en objecten van de class  ''Ruit''
het tweede argument in de constructor is de hoogte hn = sqrt(3*n*n/4); van de driehoek
 
 
 

Vormen [] vorm;  
void setup() {   
  // fullScreen();   
  size(960, 540);   
  float x = width/2;   
  float y = height/2;   
  float n = height/4;  
  float hn = sqrt(3*n*n/4);   
  vorm    = new Vormen[7];  
  vorm[0] = new Ruit(n, 0, x, y, 0, color(100, 100, 200, 100));  
  vorm[1] = new Ruit(n, 5, x-n/2, y, 0, color(100, 200, 200, 100));   
  vorm[2] = new Ruit(n, 5, x+n/2, y, 0, color(155, 255, 0, 100));    
  vorm[3] = new Drieh_nh(n, hn, 3, x-n/4, y-hn/2, 180, color(255, 100, 0, 100));  
  vorm[4] = new Drieh_nh(n, hn, 3, x+n/4, y-hn/2, 180, color(200, 50, 100, 100));     
  vorm[5] = new Drieh_nh(n, hn, 3, x-n/4, y+hn/2, 0, color(20, 200, 0, 100));  
  vorm[6] = new Drieh_nh(n, hn, 3, x+n/4, y+hn/2, 0, color(20, 200, 0, 100));  
}  
void draw() {   
  background(#E6FBFF);   
  //assenstelsel   
  stroke(255, 0, 0);   
  line (width/2, 0, width/2, height);   
  line(0, height/2, width, height/2);   
  stroke(0);    
  for (int i = 0; i < 7; i++)  
  {      
    vorm[i].display();  
  }    
  vorm[1].dpRotLi(vorm[1]);  
  vorm[2].dpRotRe(vorm[2]);  
  
  vorm[3].dpRotRe(vorm[3]);  
  vorm[4].dpRotLi(vorm[4]);   
  
  vorm[5].dpRotRe(vorm[5]);  
  vorm[6].dpRotLi(vorm[6]);  
}  
void keyPressed() {       
  if (key == 's') {      
    noLoop();  
  }         
  if (key == 'r') {         
    loop();  
  }  
}
 
schets met 2 ruiten en 4 gelijkzijdige driehoeken
 
De gelijkzijdige driehoeken zijn samengesteld met de class "Drieh_nh"
De schets maakt ook gebruik van de superclass  ''vormen''   en de class  ''Ruit''
het tweede argument in de constructor is de hoogte hn = sqrt(3*n*n/4); van de driehoek
 
de roterende ruiten en driehoeken
 
 

Vormen [] vorm; 
void setup() {  
 // fullScreen();  
  size(780, 560);  
  float x = width/2;  
  float y = height/2;  
  float n = height/3; 
  float hn = sqrt(3*n*n/4);  
  vorm = new Vormen[6]; 
  vorm[0] = new Ruit(n, 0,x, y, 0, color(100, 100, 200, 50)); 
  vorm[1] = new Ruit(n, 0,x, y, 0, color(100, 100, 200, 50));  
  vorm[2] = new Drieh_nh(n,hn, 3, x-hn/2, y, 180, color(255, 255, 0, 100)); 
  vorm[3] = new Drieh_nh(n,hn, 3, x+hn/2, y, 180, color(255,100, 0, 100)); 
  vorm[4] = new Drieh_nh(n,hn, 3, x-hn/2, y, 0,   color(200,50, 100, 100));  
  vorm[5] = new Drieh_nh(n,hn, 3, x+hn/2, y, 0,   color(20,200, 0, 100)); 
} 
 
void draw() {  
  background(#E6FBFF);  
  //assenstelsel  
  stroke(255, 0, 0);  
  line (width/2, 0, width/2, height);  
  line(0, height/2, width, height/2);  
  stroke(0);   
  for (int i = 0; i< 6; i++) 
  { 
  vorm[i].display();  
  } 
   
  vorm[0].dpRotLi(vorm[0]); 
  vorm[1].dpRotRe(vorm[1]); 
   
  vorm[2].dpRotLi(vorm[2]); 
  vorm[3].dpRotRe(vorm[3]);  
   
  vorm[4].dpRotRe(vorm[4]); 
  vorm[5].dpRotLi(vorm[5]);   
} 
 
    
void keyPressed() {      
   if (key == 's') {     
    noLoop();     
  }        
   if (key == 'r') {        
    loop();     
  }     
}