header w

 

 

 

 

 

 

 

 pentomino "W"       bekijk de roterende pentomino's "W"          terug naar de inleiding 

 

 

 class W extends Vormen { 
W(float n_, int lr_, int d_, float x_, float y_, float hoek_, color c1_) {  
 super();  
 n = n_;  
 lr = lr_; 
 x = x_;   
 y = y_;   
 hoek = hoek_;  
 c1 = c1_;  
 d = d_;  
 } 
void display() {  
 fill(c1);  
 // noStroke();  
 pushMatrix();  
 translate(x, y);  
 rotate(radians(hoek));   
 beginShape();  
 if (d == 0 && lr == 0) {vertex(-n/2,1.5*n);  vertex(-n/2,n/2);    vertex(-1.5*n,n/2);vertex(-1.5*n,-1.5*n);vertex(-n/2,-1.5*n);  
                         vertex(-n/2,-n/2);   vertex(n/2,-n/2);    vertex(n/2,n/2);   vertex(1.5*n,n/2);    vertex(1.5*n,1.5*n);} 
 if (d == 0 && lr == 1) {vertex(-1.5*n,1.5*n);vertex(-1.5*n,n/2);  vertex(-n/2,n/2);  vertex(-n/2,-n/2);    vertex(n/2,-n/2);  
                         vertex(n/2,-1.5*n);  vertex(1.5*n,-1.5*n);vertex(1.5*n,n/2); vertex(n/2,n/2);      vertex(n/2,1.5*n);} 
 if (d == 1 && lr == 0) {vertex(0,0);     vertex(0,-n);    vertex(-n,-n); vertex(-n,-3*n);vertex(0,-3*n);  
                         vertex(0,-2*n);  vertex(n,-2*n);  vertex(n,-n);  vertex(2*n,-n); vertex(2*n,0);} 
 if (d == 1 && lr == 1) {vertex(0,0);     vertex(0,-n);    vertex(n,-n);  vertex(n,-2*n); vertex(2*n,-2*n);  
                         vertex(2*n,-3*n);vertex(3*n,-3*n);vertex(3*n,-n);vertex(2*n,-n); vertex(2*n,0);} 
 if (d == 2 && lr == 0) {vertex(0,n);     vertex(0,0);     vertex(-n,0);  vertex(-n,-2*n);vertex(0,-2*n);  
                         vertex(0,-n);    vertex(n,-n);    vertex(n,0);   vertex(2*n,0);  vertex(2*n,n);} 
 if (d == 2 && lr == 1) {vertex(0,n);     vertex(0,0);     vertex(n,0);   vertex(n,-n);   vertex(2*n,-n);  
                         vertex(2*n,-2*n);vertex(3*n,-2*n);vertex(3*n,0); vertex(2*n,0);  vertex(2*n,n);} 
 if (d == 3 && lr == 0) {vertex(n,n);     vertex(n,0);     vertex(0,0);   vertex(0,-2*n); vertex(n,-2*n);  
                         vertex(n,-n);    vertex(2*n,-n);  vertex(2*n,0); vertex(3*n,0);  vertex(3*n,n);} 
 if (d == 3 && lr == 1) {vertex(-n,n);    vertex(-n,0);    vertex(0,0);   vertex(0,-n);   vertex(n,-n);  
                         vertex(n,-2*n);  vertex(2*n,-2*n);vertex(2*n,0); vertex(n,0);    vertex(n,n);}   
 if (d == 4 && lr == 0) {vertex(n,3*n);   vertex(n,2*n);   vertex(0,2*n); vertex(0,0);    vertex(n,0);  
                         vertex(n,n);     vertex(2*n,n);  vertex(2*n,2*n);vertex(3*n,2*n);vertex(3*n,3*n);} 
 if (d == 4 && lr == 1) {vertex(-n,2*n);  vertex(-n,n);    vertex(0,n);   vertex(0,0);    vertex(n,0);  
                         vertex(n,-n);    vertex(2*n,-n);  vertex(2*n,n); vertex(n,n);    vertex(n,2*n);}  
 if (d == 5 && lr == 0) {vertex(0,3*n);   vertex(0,2*n);   vertex(-n,2*n);vertex(-n,0);   vertex(0,0);  
                         vertex(0,n);     vertex(n,n);     vertex(n,2*n); vertex(2*n,2*n);vertex(2*n,3*n);}  
 if (d == 5 && lr == 1) {vertex(-2*n,2*n);vertex(-2*n,n);  vertex(-n,n);  vertex(-n,0);   vertex(0,0);  
                         vertex(0,-n);    vertex(n,-n);    vertex(n,n);   vertex(0,n);    vertex(0,2*n);} 
 if (d == 6 && lr == 0) {vertex(0,2*n);   vertex(0,n);     vertex(-n,n);  vertex(-n,-n);  vertex(0,-n);  
                         vertex(0,0);     vertex(n,0);     vertex(n,n);   vertex(2*n,n);  vertex(2*n,2*n);} 
 if (d == 6 && lr == 1) {vertex(-2*n,3*n);vertex(-2*n,2*n);vertex(-n,2*n);vertex(-n,n);   vertex(0,n); 
                         vertex(0,0);     vertex(n,0);     vertex(n,2*n); vertex(0,2*n);  vertex(0,3*n);} 
 if (d == 7 && lr == 0) {vertex(-n,2*n);  vertex(-n,n);    vertex(-2*n,n);vertex(-2*n,-n);vertex(-n,-n);  
                         vertex(-n,0);    vertex(0,0);     vertex(0,n);   vertex(n,n);    vertex(n,2*n);} 
 if (d == 7 && lr == 1) {vertex(-3*n,3*n);vertex(-3*n,2*n);vertex(-2*n,2*n);vertex(-2*n,n);vertex(-n,n);  
                         vertex(-n,0);    vertex(0,0);     vertex(0,2*n); vertex(-n,2*n); vertex(-n,3*n);} 
 if (d == 8 && lr == 0) {vertex(-n,n);    vertex(-n,0);    vertex(-2*n,0);vertex(-2*n,-2*n);vertex(-n,-2*n);  
                         vertex(-n,-n);   vertex(0,-n);    vertex(0,0);   vertex(n,0);    vertex(n,n);}  
 if (d == 8 && lr == 1) {vertex(-3*n,n);  vertex(-3*n,0);  vertex(-2*n,0);vertex(-2*n,-n);vertex(-n,-n);  
                         vertex(-n,-2*n); vertex(0,-2*n);  vertex(0,0);   vertex(-n,0);   vertex(-n,n);}  
 if (d == 9 && lr == 0) {vertex(-2*n,n);  vertex(-2*n,0);  vertex(-3*n,0);vertex(-3*n,-2*n);vertex(-2*n,-2*n);  
                         vertex(-2*n,-n); vertex(-n,-n);   vertex(-n,0);  vertex(0,0);    vertex(0,n);}  
 if (d == 9 && lr == 1) {vertex(-2*n,n);  vertex(-2*n,0);  vertex(-n,0);  vertex(-n,-n);  vertex(0,-n);  
                         vertex(0,-2*n);  vertex(n,-2*n);  vertex(n,0);   vertex(0,0);    vertex(0,n);}   
 if (d == 10 && lr == 0){vertex(-2*n,0);  vertex(-2*n,-n); vertex(-3*n,-n);vertex(-3*n,-3*n);vertex(-2*n,-3*n);  
                         vertex(-2*n,-2*n);vertex(-n,-2*n);vertex(-n,-n); vertex(0,-n);   vertex(0,0);}  
 if (d == 10 && lr == 1){vertex(-2*n,0);  vertex(-2*n,-n); vertex(-n,-n);  vertex(-n,-2*n);vertex(0,-2*n);  
                         vertex(0,-3*n);  vertex(n,-3*n);  vertex(n,-n);   vertex(0,-n);   vertex(0,0);} 
    
 endShape(CLOSE);  
 popMatrix();  
 }  
}
 
voorbeeld met de class "W"
 
de schets maakt ook gebruik van de superclass  "Vormen"
 
 

 Vormen vorm0; 
Vormen vorm1; 
Vormen vorm2; 
Vormen vorm3; 
Ruitjes ruitjespap; 
 
void setup() { 
  size(780, 560); 
 // fullScreen(); 
  float x = width/2; 
  float y = height/2; 
  float n = height/10; 
  ruitjespap = new Ruitjes(n,x,y); 
  vorm0 = new W(n,0, 8, x-n, y-n, 0, color(200, 255, 0, 100)); 
  vorm1 = new W(n,1, 3, x+n, y-n, 0, color(200, 0, 0, 100)); 
  vorm2 = new W(n,1, 3, x-n, y+n, 180, color(0, 0, 255, 100)); 
  vorm3 = new W(n,0, 8, x+n, y+n, 180, color(0, 100, 0, 100)); 
} 
 
void draw() { 
  background(#E6FBFF); 
  ruitjespap.display(); 
  vorm0.display(); 
  vorm1.display(); 
  vorm2.display(); 
  vorm3.display(); 
  vorm0.dpRotLi(vorm0); 
  vorm1.dpRotRe(vorm1); 
  vorm2.dpRotRe(vorm2); 
  vorm3.dpRotLi(vorm3); 
} 
 void keyPressed() {     
  if (key == 's') {       
    noLoop();   
  }      
  if (key == 'r') {          
    loop();   
  }   
}