
schets met vier trapeziums en vier 3d hoeken. terug naar de inleiding
de schets maakt gebruik van de objectmethodes van de superclass: "Vormen" en objecten van de subclasses: "Hoek3d_na2n" , "Trap_2nn" , "Rechthoek" en "Ruitjes"
bekijk de draaiende hoeken en trapeziums Met toets "1" wordt het ruitjespatroon ingeschakeld, met toets "2" wordt dit weer uitgeschakeld.
Vormen [] vorm;
boolean aan = false;
Ruitjes ruitjespap;
void setup() {
// fullScreen();
size(780, 560);
float x = width/2;
float y = height/2;
float n = height/10;
float hn = sqrt(3*n*n/4);
int ch1 = color(255,0,0,50);
int ch2 = color(0,255,0,100);
int ch3 = color(0,0,255,100);
int ch4 = color(255,255,0,100);
int ch5 = color(255,0,255,100);
vorm = new Vormen[10];
ruitjespap = new Ruitjes(n,x,y);
vorm[0] = new Trap_2nn(n, 1, x, y-(n/2+hn), 180, color(255, 255, 0, 100));
vorm[1] = new Trap_2nn(n, 7, x, y-(n/2+hn), 180, color(255, 0, 0, 100));
vorm[2] = new Trap_2nn(n, 7, x, y+n/2+hn, 0, color(0, 0, 255, 100));
vorm[3] = new Trap_2nn(n, 1, x, y+n/2+hn, 0, color(0, 255, 0, 100));
vorm[4] = new Rechthoek(n,n, 0, x-n, y, 0, color(0,255,0, 100));
vorm[5] = new Rechthoek(n,n, 0, x+n, y, 0, color(255,255,0,100));
vorm[6] = new Hoek3d_na2n(n, 6, x-2*n, y-(n/2+hn), 135, ch1,ch2,ch3,ch4,ch5);
vorm[7] = new Hoek3d_na2n(n, 2, x+2*n, y-(n/2+hn),-135, ch1,ch2,ch3,ch4,ch5);
vorm[8] = new Hoek3d_na2n(n, 2, x-2*n, y+n/2+hn, 45, ch1,ch2,ch3,ch4,ch5);
vorm[9] = new Hoek3d_na2n(n, 6, x+2*n, y+n/2+hn, -45, ch1,ch2,ch3,ch4,ch5);
}
void draw() {
background(#E6FBFF);
for (int i = 0; i< 10; i++)
{
vorm[i].display();
}
vorm[6].dpRotLi(vorm[6]);
vorm[7].dpRotRe(vorm[7]);
vorm[8].dpRotRe(vorm[8]);
vorm[9].dpRotLi(vorm[9]);
vorm[0].dpRotRe(vorm[0]);
vorm[1].dpRotLi(vorm[1]);
vorm[2].dpRotLi(vorm[2]);
vorm[3].dpRotRe(vorm[3]);
if (key == '1' || aan ) {
ruitjespap.display();
for (int i = 0; i < 10; i++)
{
vorm[i].dpAan();
}
aan = true;
}
if (key == '2' && aan ) {
aan = false;
}
}
void keyPressed() {
if (key == 's') {
noLoop();
}
if (key == 'r') {
loop();
}
}