schets van 8 parallellogram bekijk de roterende parallellogrammen terug naar de inleiding
Met de "s" toets stoppen, en met de overige toetsen starten de rotaties
Met toetsen 1 t/m 5 veranderen de draaipunten en posities van de parallellogrammen
Vormen [] vorm;
int dp1 = 0;
int p1 = 2;
void setup() {
// fullScreen();
// size(780, 560);
size(980, 760);
float x = width/2;
float y = height/2;
float n = height/10;
float h = n;
float l = 2*n;
vorm = new Vormen[8];
vorm[0] = new Paral(h, l, 0, 4+dp1, x-p1*n, y-n, 0, color(255, 255, 0, 100));
vorm[1] = new Paral(h, l, 1, 4+dp1, x+p1*n, y-n, 0, color(255, 255, 0, 100));
vorm[2] = new Paral(h, l, 1, 8-dp1, x-p1*n, y+n, 0, color(255, 0, 0, 100));
vorm[3] = new Paral(h, l, 0, 8-dp1, x+p1*n, y+n, 0, color(255, 0, 0, 100));
vorm[4] = new Paral(h, l, 1, 1+dp1, x-p1*n, y-n,-90, color(0, 255, 0, 100));
vorm[5] = new Paral(h, l, 0, 7-dp1, x+p1*n, y-n, 90, color(0, 255, 0, 100));
vorm[6] = new Paral(h, l, 0, 3+dp1, x-p1*n, y+n, 90, color(255, 0, 200, 100));
vorm[7] = new Paral(h, l, 1, 1+dp1, x+p1*n, y+n, 90, color(255, 0, 200, 100));
}
void draw() {
background(#E6FBFF);
for (int i = 0; i < 8; i++)
{
vorm[i].display();
}
if (key == 's') {
}
else
{
vorm[0].dpRotLi(vorm[0]);
vorm[4].dpRotRe(vorm[4]);
vorm[1].dpRotRe(vorm[1]);
vorm[5].dpRotLi(vorm[5]);
vorm[6].dpRotLi(vorm[6]);
vorm[2].dpRotRe(vorm[2]);
vorm[3].dpRotLi(vorm[3]);
vorm[7].dpRotRe(vorm[7]);
}
}
void keyPressed() {
if (key == '1') {
dp1 = 0; p1 = 1;
setup();
}
if (key == '2') {
dp1 = 1; p1 = 2;
setup();
}
if (key == '3') {
dp1 = 2; p1 = 3;
setup();
}
if (key == '4') {
dp1 = 3; p1 = -2;
setup();
}
if (key == '5') {
dp1 = 4; p1 = -3;
setup();
}
}