Animatie met pentomino "T" en drieh_nh

 

animatie met pentomino "T" en drieh_nh

 

 

 

 

 

 

 

animatie met pentomino "W" , tetromino "St"
en parallellogrammen
 
 
 

 

p5.js classes van de pentomino's  "T" , "W" , "X" en "U".        terug naar de inleiding

                                                                                                                                                 draaipunten "d" pentomino T

classe pentomino   "T"   zie de rubriek  "Pentomino's en Tetromino"s"

zie ook de processing animatie 3 pentomino's "T" en 8  "Drieh_nh"

constructor argumenten

1) n = de grootte,  2) d = draaipunt ,  3) en 4) x en y positie,  5) = hoek,  6) c = kleur, 7) sw = lijndikte,  8) sc = lijnkleur

 

class T extends Vormen {
//constructor 1  2  3  4    5   6  7   8
  constructor(n, d, x, y, hoek, c, sw, sc) {
    super(x, y, hoek);
    this.n = n; this.x = x; this.y = y; this.hoek = hoek;
    this.c = c; this.d = d; this.sw = sw; this.sc = sc;
 }
 display() {
 fill(this.c);
 let n = this.n; let d = this.d;
 strokeWeight(this.sw)
 stroke(this.sc);
 push();
 translate(this.x, this.y);
 rotate(radians(this.hoek));
 beginShape();
  if (d == 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(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) {vertex(0,0);     vertex(0,-2*n);  vertex(-n,-2*n);vertex(-n,-3*n);
               vertex(2*n,-3*n);vertex(2*n,-2*n);vertex(n,-2*n); vertex(n,0);}
  if (d == 2) {vertex(0,2*n);   vertex(0,0);     vertex(-n,0);   vertex(-n,-n);
               vertex(2*n,-n);  vertex(2*n,0);   vertex(n,0);    vertex(n,2*n);}
  if (d == 3) {vertex(n,2*n);   vertex(n,0);     vertex(0,0);    vertex(0,-n);
               vertex(3*n,-n);  vertex(3*n,0);   vertex(2*n,0);  vertex(2*n,2*n);}
  if (d == 4) {vertex(n,3*n);   vertex(n,n);     vertex(0,n);    vertex(0,0);
               vertex(3*n,0);   vertex(3*n,n);   vertex(2*n,n);  vertex(2*n,3*n);}
  if (d == 5) {vertex(-2*n,3*n);vertex(-2*n,n);  vertex(-3*n,n); vertex(-3*n,0);
               vertex(0,0);     vertex(0,n);     vertex(-n,n);   vertex(-n,3*n);}
  if (d == 6) {vertex(-2*n,2*n);vertex(-2*n,0);  vertex(-3*n,0); vertex(-3*n,-n);
               vertex(0,-n);    vertex(0,0);     vertex(-n,0);   vertex(-n,2*n);}
  if (d == 7) {vertex(-n,2*n);  vertex(-n,0);    vertex(-2*n,0); vertex(-2*n,-n);
               vertex(n,-n);    vertex(n,0);     vertex(0,0);    vertex(0,2*n);}
  if (d == 8) {vertex(-n,0);    vertex(-n,-2*n); vertex(-2*n,-2*n);vertex(-2*n,-3*n);
               vertex(n,-3*n);  vertex(n,-2*n);  vertex(0,-2*n); vertex(0,0);}
  endShape(CLOSE);
  pop();
  }
 }

 

class pentomino "W"  

header w

                                                                                                                          draaipunten pentomino "W" 

Zie de processing animatie: animatie met pentomino "W" , tetromino "St" en parallellogrammen

constructor argumenten

1) n = de grootte, 2) lr = links of rechts,  3) d = draaipunt ,  4) en 5) x en y positie,  6) hoek,  7) lijndikte,  8) sc = lijnkleur

 
 class W extends Vormen {
//constructor 1   2  3  4  5   6    7   8   9
  constructor(n, lr, d, x, y, hoek, c, sw, sc) {
    super(x, y, hoek);
    this.x  = x; this.y  = y;  this.hoek = hoek; this.c = c;
    this.sw = sw; this.sc = sc;
    this.n  = n; this.lr = lr; this.d = d;
}
display() {
  let n = this.n; let lr = this.lr; let d = this.d;
  strokeWeight(this.sw);
  stroke(this.sc)
  fill(this.c);
  push();
  translate(this.x, this.y);
  rotate(radians(this.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);
pop();
}
}

 

class pentomino "X"

Header X

 

constructor argumenten

1) n = de grootte,  2) d = draaipunt ,  3) en 4) x en y positie,  5) = hoek,  6) c = kleur, 7) sw = lijndikte,  8) sc = lijnkleur 

 
 class X extends Vormen {
//constructor1  2  3  4    5   6   7   8
 constructor(n, d, x, y, hoek, c, sw, sc) {
   super(x, y, hoek);
   this.nc = n; this.x = x; this.y = y; this.hoek = hoek;
   this = c; this.d = d; this.sw = sw; this.sc = sc;
}
 
display() {
fill(this.c);
let n = this.n; let d = this.dc
strokeWeight(this.sw);
stroke(this.sc);
push();
translate(this.x, this.y);
rotate(radians(this.hoek));
beginShape();
if (d == 0) {vertex(-n/2,1.5*n); vertex(-n/2,n/2);    vertex(-1.5*n,n/2);vertex(-1.5*n,-n/2);
             vertex(-n/2,-n/2);  vertex(-n/2,-1.5*n); vertex(n/2,-1.5*n);vertex(n/2,-n/2);
             vertex(1.5*n,-n/2); vertex(1.5*n,n/2);   vertex(n/2,n/2);   vertex(n/2,1.5*n);}
if (d == 1) {vertex(0,0);     vertex(0,-n);  vertex(-n,-n);   vertex(-n,-2*n);
             vertex(0,-2*n);  vertex(0,-3*n);vertex(n,-3*n);  vertex(n,-2*n);
             vertex(2*n,-2*n);vertex(2*n,-n);vertex(n,-n);    vertex(n,0);}
if (d == 2) {vertex(0,n);     vertex(0,0);   vertex(-n,0);    vertex(-n,-n);
             vertex(0,-n);    vertex(0,-2*n);vertex(n,-2*n);  vertex(n,-n);
             vertex(2*n,-n);  vertex(2*n,0); vertex(n,0);     vertex(n,n);}
if (d == 3) {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,-n);
             vertex(3*n,-n);  vertex(3*n,0); vertex(2*n,0);   vertex(2*n,n);}
if (d == 4) {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,0);
             vertex(3*n,0);   vertex(3*n,n); vertex(2*n,n);   vertex(2*n,2*n);}
if (d == 5) {vertex(0,2*n);   vertex(0,n);   vertex(-n,n);    vertex(-n,0);
             vertex(0,0);     vertex(0,-n);  vertex(n,-n);    vertex(n,0);
             vertex(2*n,0);   vertex(2*n,n); vertex(n,n);     vertex(n,2*n);}
if (d == 6) {vertex(0,3*n);   vertex(0,2*n); 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,2*n);vertex(n,2*n);  vertex(n,3*n);}
if (d == 7) {vertex(-n,3*n);  vertex(-n,2*n);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,2*n); vertex(0,2*n);   vertex(0,3*n);}
if (d == 8) {vertex(-n,2*n);  vertex(-n,n);  vertex(-2*n,n);  vertex(-2*n,0);
             vertex(-n,0);    vertex(-n,-n); vertex(0,-n);    vertex(0,0);
             vertex(n,0);     vertex(n,n);   vertex(0,n);     vertex(0,2*n);}
if (d == 9) {vertex(-2*n,2*n);vertex(-2*n,n);vertex(-3*n,n);  vertex(-3*n,0);
             vertex(-2*n,0);  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 == 10) {vertex(-2*n,n); vertex(-2*n,0);vertex(-3*n,0);  vertex(-3*n,-n);
             vertex(-2*n,-n); 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 == 11) {vertex(-n,n);   vertex(-n,0);  vertex(-2*n,0);  vertex(-2*n,-n);
             vertex(-n,-n);   vertex(-n,-2*n);vertex(0,-2*n); vertex(0,-n);
             vertex(n,-n);    vertex(n,0);   vertex(0,0);     vertex(0,n);}
if (d == 12) {vertex(-n,0);   vertex(-n,-n); vertex(-2*n,-n); vertex(-2*n,-2*n);
             vertex(-n,-2*n); vertex(-n,-3*n);vertex(0,-3*n); vertex(0,-2*n);
             vertex(n,-2*n);  vertex(n,-n);  vertex(0,-n);    vertex(0,0);}
endShape(CLOSE);
pop();
}
}

class pentomino "U"

Header U

constructor argumenten

1) n = de grootte,  2) d = draaipunt ,  3) en 4) x en y positie,  5) = hoek,  6) c = kleur, 7) sw = lijndikte,  8) sc = lijnkleur

 
 class U extends Vormen {
//constructor 1  2  3  4   5    6    7   8
  constructor(n, d, x, y, hoek, c , sw, sc) {
   super(x, y, hoek);
   this.nc = n; this.x = x; this.y = y; this.hoek = hoek;
   this = c; this.d = d; this.sw = sw; this.sc = sc;
   }
 
display() {
 fill(this.c);
 let n = this.n; let d = this.d;
 strokeWeight(this.sw)
 fill(this.c);
 push();
 translate(this.x,this.y);
 rotate(radians(this.hoek));
 beginShape();
 if (d == 0) {vertex(-1.5*n,n);vertex(-1.5*n,-n);vertex(-n/2,-n); vertex(-n/2,0);
              vertex(n/2,0);   vertex(n/2,-n);   vertex(1.5*n,-n);vertex(1.5*n,n);}
 if (d == 1) {vertex(0,0);     vertex(0,-2*n);   vertex(n,-2*n);  vertex(n,-n);
              vertex(2*n,-n);  vertex(2*n,-2*n); vertex(3*n,-2*n);vertex(3*n,0);}
 if (d == 2) {vertex(0,2*n);   vertex(0,0);      vertex(n,0);     vertex(n,n);
              vertex(2*n,n);   vertex(2*n,0);    vertex(3*n,0);   vertex(3*n,2*n);}
 if (d == 3) {vertex(-n,2*n);  vertex(-n,0);     vertex(0,0);     vertex(0,n);
              vertex(n,n);     vertex(n,0);      vertex(2*n,0);   vertex(2*n,2*n);}
 if (d == 4) {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,n);}
 if (d == 5) {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,n);}
 if (d == 6) {vertex(-2*n,2*n);vertex(-2*n,0);   vertex(-n,0);    vertex(-n,n);
              vertex(0,n);     vertex(0,0);      vertex(n,0);     vertex(n,2*n);}
 if (d == 7) {vertex(-3*n,2*n);vertex(-3*n,0);   vertex(-2*n,0);  vertex(-2*n,n);
              vertex(-n,n);    vertex(-n,0);     vertex(0,0);     vertex(0,2*n);}
 if (d == 8) {vertex(-3*n,0);  vertex(-3*n,-2*n);vertex(-2*n,-2*n);vertex(-2*n,-n);
              vertex(-n,-n);   vertex(-n,-2*n);  vertex(0,-2*n);  vertex(0,0);}
 endShape(CLOSE);
 pop();
 }
}