Schets met 8 rechthoeken rond pijl Bekijk de roterende rechthoeken terug naar de inleiding
De schets maakt gebruik van de classes Rechthoek, Vlieger en de superclass Vormen
float b = sqrt(5*n*n); is de lange schuine zijde van de pijl.
float a = sqrt(2*n*n) ; is de korte schuine zijde van de pijl.
Vormen vorm[];
void setup() {
size(960,540);
float x = width/2;
float y = height/2;
float n = height/8;
float b = sqrt(5*n*n);
float a = sqrt(2*n*n);
vorm = new Vormen[9];
vorm[0] = new Vlieger(2*n,-n,2*n, 0, x, y, 0, color(0,255,0, 100));
vorm[1] = new Rechthoek(a,b, 7, x-n, y, 0, color(255,255,0,100));
vorm[2] = new Rechthoek(a,b, 1, x+n, y, 0, color(255,0,0,100));
vorm[3] = new Rechthoek(a,b, 5, x-n, y, 0, color(0,0,255,100));
vorm[4] = new Rechthoek(a,b, 3, x+n, y, 0, color(122,200,100,100));
vorm[5] = new Rechthoek(n,2*n, 7, x, y, 0, color(0,255,0,100));
vorm[6] = new Rechthoek(n,2*n, 1, x, y, 0, color(255,255,00,100));
vorm[7] = new Rechthoek(n,n*2, 5, x, y, 0, color(255,0,0,100));
vorm[8] = new Rechthoek(n,n*2, 3, x, y, 0, color(0,255,255,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 = i+1)
{
vorm[i].display();
}
vorm[1].dpRotLi(vorm[1]);
vorm[2].dpRotRe(vorm[2]);
vorm[3].dpRotRe(vorm[3]);
vorm[4].dpRotLi(vorm[4]);
vorm[5].dpRotRe(vorm[5]);
vorm[6].dpRotLi(vorm[6]);
vorm[7].dpRotLi(vorm[7]);
vorm[8].dpRotRe(vorm[8]);
}
void keyPressed() {
if (key == 's') {
noLoop();
}
if (key == 'r') {
loop();
}
}