Zie de schets voor de code
 
 
 
 

acht roterende parallellogrammen hoogte = n en lengte is 2n                  bekijk de roterende parallellogramen           terug naar de inleiding

De schets maakt gebruik van de subclass ,  "Paral"  en de superclass  "Vormen"

 

 

 //animatie met 8 parallellogrammen met hoogten = n en  lengte = 2n 
Vormen[] vorm = new Vormen[8];     
void setup() {     
 size(780, 560);     
 float x = width/2;     
 float y = height/2;     
 float n = height/10;  
 float h = n; 
 float l = 2*n; 
 vorm[0] = new Paral(h, l, 1, 3, x-2*n, y-n, 0, color(255, 255, 0, 100));     
 vorm[1] = new Paral(h, l, 0, 5, x+2*n, y-n, 0, color(255, 255, 0, 100));     
 vorm[2] = new Paral(h, l, 0, 1, x-2*n, y+n, 0, color(255, 0, 0, 100));     
 vorm[3] = new Paral(h, l, 1, 7, x+2*n, y+n, 0, color(100, 0, 255, 100));     
 vorm[4] = new Paral(h, l, 0, 7, x-n,   y-n, 0, color(0, 255, 0, 100));     
 vorm[5] = new Paral(h, l, 1, 1, x+n,   y-n, 0, color(0, 100, 255, 100));     
 vorm[6] = new Paral(h, l, 1, 5, x-n,   y+n, 0, color(255, 0, 200, 100));     
 vorm[7] = new Paral(h, l, 0, 3, x+n,   y+n, 0, color(255, 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 < 8; i++)     
 vorm[i].display();     
     
 vorm[0].dpRotLi(vorm[0]);    
 vorm[1].dpRotRe(vorm[1]);     
     
 vorm[4].dpRotRe(vorm[4]);     
 vorm[5].dpRotLi(vorm[5]);     
     
 vorm[2].dpRotRe(vorm[2]);     
 vorm[3].dpRotLi(vorm[3]);     
     
 vorm[6].dpRotLi(vorm[6]);     
 vorm[7].dpRotRe(vorm[7]);     
}     
     
void keyPressed() {     
 if (key == 's') {     
 noLoop();     
 }     
 if (key == 'r') {     
 loop();     
 }     
}