vhoek header

 

 

 

 

 

 

 

 

 

 

vhoek08

 

 

achthoek  "Vhoek_na4".      bekijk de    roterende achthoeken           terug naar de inleiding
 
 

class Vhoek_na4 extends Vormen { 
Vhoek_na4(float n_, int d_, float x_, float y_, float hoek_, color c1_) {  
 super();  
 n = n_;   
 x = x_;   
 y = y_;   
 hoek = hoek_;  
 c1 = c1_;  
 d = d_;  
 } 
void display() {  
 fill(c1);  
 pushMatrix();  
 translate(x, y);  
 rotate(radians(hoek));   
 beginShape(); 
 if (d == 0) {vertex(-n/2,3*n/2); vertex(-3*n/2,n/2); vertex(-3*n/2,-n/2);vertex(-n/2,-3*n/2); 
              vertex(n/2,-3*n/2); vertex(3*n/2,-n/2); vertex(3*n/2,n/2);  vertex(n/2,3*n/2);}              
 if (d == 1) {vertex(0,0);     vertex(-n,-n);   vertex(-n,-2*n);vertex(0,-3*n); 
              vertex(n,-3*n);  vertex(2*n,-2*n);vertex(2*n,-n); vertex(n,0);}                
 if (d == 2) {vertex(n,n);     vertex(0,0);     vertex(0,-n);   vertex(n,-2*n); 
              vertex(2*n,-2*n);vertex(3*n,-n);  vertex(3*n,0);  vertex(2*n,n);}                
 if (d == 3) {vertex(n,2*n);   vertex(0,n);     vertex(0,0);    vertex(n,-n); 
              vertex(2*n,-n);  vertex(3*n,0);   vertex(3*n,n);  vertex(2*n,2*n);}                 
 if (d == 4) {vertex(0,3*n);   vertex(-n,2*n);  vertex(-n,n);   vertex(0,0); 
              vertex(n,0);     vertex(2*n,n);   vertex(2*n,2*n);vertex(n,3*n);}                
 if (d == 5) {vertex(-n,3*n);  vertex(-2*n,2*n);vertex(-2*n,n); vertex(-n,0); 
              vertex(0, 0);    vertex(n, n);    vertex(n,2*n);  vertex(0,3*n);}                
 if (d == 6) {vertex(-2*n,2*n);vertex(-3*n,n);  vertex(-3*n,0); vertex(-2*n,-n); 
              vertex(-n,-n);   vertex(0,0);     vertex(0,n);    vertex(-n,2*n);}                
 if (d == 7) {vertex(-2*n,n);  vertex(-3*n,0);  vertex(-3*n,-n);vertex(-2*n,-2*n); 
              vertex(-n,-2*n); vertex(0,-n);    vertex(0, 0);   vertex(-n,n);}                            
 if (d == 8) {vertex(-n,0);    vertex(-2*n,-n); vertex(-2*n,-2*n);vertex(-n,-3*n); 
              vertex(0,-3*n);  vertex(n,-2*n);  vertex(n,-n);   vertex(0,0);}                   
 if (d == 9) {vertex(-n/2,0);  vertex(-3*n/2,-n); vertex(-3*n/2,-2*n);vertex(-n/2,-3*n); 
              vertex(n/2,-3*n);vertex(3*n/2,-2*n);vertex(3*n/2,-n);   vertex(n/2,0);}               
 if (d == 10){vertex(-n/2,3*n);vertex(-3*n/2,2*n);vertex(-3*n/2,n);   vertex(-n/2,0); 
              vertex(n/2,0);   vertex(3*n/2,n);   vertex(3*n/2,2*n);  vertex(n/2,3*n);}  
 endShape(CLOSE);  
 popMatrix();  
 }  
}
 
schets met 8 roterende achthoeken
 
De schets maakt gebruik van de class "Vhoek_na4" en de superclass  "Vormen"
Met  toetsen 1, 2, 3 en 4 veranderen de draaipunten.

 

Vormen [] vorm; 
int dp1 = 0; 
int dp2 = 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 Vhoek_na4(n, 1+dp1, x-5*n, y, 0, color(200, 255, 0, 100)); 
  vorm[1] = new Vhoek_na4(n, 8-dp1, x-n,   y, 0, color(142, 247, 166, 100)); 
  vorm[2] = new Vhoek_na4(n, 1+dp1, x+n,   y, 0, color(35,204,232, 100)); 
  vorm[3] = new Vhoek_na4(n, 8-dp1, x+5*n, y, 0, color(222,142,247, 100)); 
  vorm[4] = new Vhoek_na4(n, 4+dp2, x-5*n, y, 0, color(222,142,247, 100)); 
  vorm[5] = new Vhoek_na4(n, 5-dp2, x-n,   y, 0, color(35,204,232, 100)); 
  vorm[6] = new Vhoek_na4(n, 4+dp2, x+n,   y, 0, color(142, 247, 166, 100)); 
  vorm[7] = new Vhoek_na4(n, 5-dp2, x+5*n, y, 0, color(200, 255, 0, 100));  
} 
 
void draw() { 
  background(#E6FBFF); 
  strokeWeight(2); 
  for (int i = 0; i< 8; i++)  
  {  
  vorm[i].display();  
  }  
 
  vorm[0].dpRotLi(vorm[0]); 
  vorm[4].dpRotRe(vorm[4]); 
  vorm[1].dpRotRe(vorm[1]); 
  vorm[5].dpRotLi(vorm[5]); 
   
  vorm[2].dpRotLi(vorm[2]); 
  vorm[6].dpRotRe(vorm[6]); 
  vorm[3].dpRotRe(vorm[3]); 
  vorm[7].dpRotLi(vorm[7]); 
} 
 
void keyPressed() {      
  if (key == 's') {     
    noLoop();  
  }    
  
  if (key == 'r') {        
    loop();  
  }  
   
   if (key == '1') {   
     dp1 = 0; 
     dp2 = 0; 
     loop();  
     setup();  
  }  
   
  if (key == '2') {   
     dp1 = 1; 
     dp2 = 1; 
     loop();  
     setup();  
  }  
  if (key == '3') {   
     dp1 = 2; 
     dp2 = 3; 
     loop();  
     setup();  
  }  
   
   if (key == '4') {   
     dp1 = 4; 
     dp2 = 3; 
     loop();  
     setup();  
  }  
}