header ruit trap
 
Schetst met vier ruiten en zes trapeziums                                          terug naar de inleiding
 
De schets maakt gebruik van objectmethodes van de superclass  "Vormen" en objecten van de subclasses  "Ruit" en "Paral_2nn"
Bekijk de roterende ruiten en trapeziums
 
 

Vormen[] vorm = new Vormen[10];   
void setup() {   
  //fullScreen();   
  size(960, 540);   
  float x = width/2;   
  float y = height/2;   
  float n = height/6;     
  vorm[0] = new Ruit(n, 1, x-n, y-n/2, 0, color(0, 255, 100, 100));   
  vorm[1] = new Ruit(n, 1, x+n, y-n/2, 0, color(255, 0, 0, 100));   
  vorm[2] = new Ruit(n, 1, x-n, y+n/2, 180, color(0, 0, 255, 100));   
  vorm[3] = new Ruit(n, 1, x+n, y+n/2, 180, color(0, 255, 0, 100)); 
  vorm[4] = new Trap_2nn(n, 7, x-n, y-n/2, 0, color(200, 255, 0, 100));  
  vorm[5] = new Trap_2nn(n, 1, x-n, y-n/2, 0, color(255, 0, 200, 100));  
  vorm[6] = new Trap_2nn(n, 1, x+n, y-n/2, 0, color(0, 100, 255, 100));  
  vorm[7] = new Trap_2nn(n, 1, x-n, y+n/2, 180, color(0, 255, 0, 100));  
  vorm[8] = new Trap_2nn(n, 7, x-n, y+n/2, 180, color(0, 255, 255, 100));  
  vorm[9] = new Trap_2nn(n, 7, x+n, y+n/2, 180, color(100, 0, 200, 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 < 10; i++)   
  {   
    vorm[i].display(); 
  }   
 
  if (frameCount < 800) 
  { 
    vorm[0].dpRotLi(vorm[0]);   
    vorm[1].dpRotRe(vorm[1]);     
    vorm[4].dpRotRe(vorm[4]);   
    vorm[6].dpRotLi(vorm[6]); 
  } 
  if (frameCount > 600 && frameCount < 1800 ) 
  {  
    vorm[0].dpRotRe(vorm[0]);   
    vorm[1].dpRotLi(vorm[1]);   
    vorm[4].dpRotLi(vorm[4]);   
    vorm[6].dpRotRe(vorm[6]); 
  }   
  if (frameCount > 1800) 
  { 
    frameCount = 0; 
  } 
  vorm[2].dpRotRe(vorm[2]);  
  vorm[7].dpRotLi(vorm[7]); 
  vorm[3].dpRotLi(vorm[3]); 
  vorm[9].dpRotRe(vorm[9]); 
} 
 
void keyPressed() {      
  if (key == 's') {     
    noLoop(); 
  }    
 
  if (key == 'r') {        
    loop(); 
  } 
}