stelling van pythagoras. terug naar de inleiding
met de s toets stoppen de rotaties met iedere andere toets starten de rotaties
naar de animatie in fullscreen
3² + 4² = 5²
Het 3 x 3 vierkant maakt een hoek van 53 graden met het 5 x 5 vierkant
Het 4 x 4 vierkant maakt een hoek van 37 graden met het 5 x 5 vierkant
zo ontstaan de rechthoekige driehoeken met zijden 3 x 4 x 5
De schets maakt gebruik van objecten van de class "Rechthoek" en de superclass "Vormen"
let vorm = []; let zwartwit = false;
function setup() {
buttonR = createButton('reset');
buttonR.position(20,40);buttonR.style('width','70px');
buttonR.mouseClicked(buttonRAction);
button1 = createButton('dp 1');
button1.position(20,80);button1.style('width','70px');
button1.mouseClicked(button1Action);
button2 = createButton('dp 2');
button2.position(20,120);button2.style('width','70px');
button2.mouseClicked(button2Action);
button3 = createButton('dp 3');
button3.position(20,160);button3.style('width','70px');
button3.mouseClicked(button3Action);
button4 = createButton('dp 4');
button4.position(20,200);button4.style('width','70px');
button4.mouseClicked(button4Action);
buttonZW = createButton('zwart/wit');
buttonZW.position(20,240);buttonZW.style('width','100px');
buttonZW.mouseClicked(buttonZWAction);
buttonD = createButton('downloaden');
buttonD.position(20,280);buttonD.style('width','110px');
buttonD.mouseClicked(buttonDAction);
createCanvas(windowWidth, windowHeight);
const x = width/2; const y = height/2; const n = height/20;
const sw = n/25;
const alfa = 125; scw = color(255); scz= color(0);
vorm[0] = new Rechthoek(n*5,n*5, 0, x, y, 0,color(255, 102, 102,alfa),sw, scz);
vorm[1] = new Rechthoek(n*3,n*3, 3,x-2.5*n, y+2.5*n, 53,color(51, 153, 255,alfa),sw,scw);
vorm[2] = new Rechthoek(n*4,n*4, 5,x+2.5*n, y+2.5*n,-37,color(0,255,0,alfa), sw,scz);
vorm[3] = new Rechthoek(n*3,n*3, 1,x+2.5*n, y+2.5*n, 53,color(255,255,0,alfa), sw,scw);
vorm[4] = new Rechthoek(n*4,n*4, 3,x+2.5*n, y-2.5*n,-37,color(255,255,0,alfa), sw,scz);
vorm[5] = new Rechthoek(n*3,n*3, 7,x+2.5*n, y-2.5*n, 53,color(0,255,0,alfa), sw,scw);
vorm[6] = new Rechthoek(n*4,n*4, 1,x-2.5*n, y-2.5*n,-37,color(51, 153, 255,alfa),sw,scz);
vorm[7] = new Rechthoek(n*3,n*3, 5,x-2.5*n, y-2.5*n, 53,color(210, 227, 89,alfa),sw,scw);
vorm[8] = new Rechthoek(n*4,n*4, 7,x-2.5*n, y+2.5*n,-37,color(204, 255, 51,alfa),sw,scz);
}
function draw(){
if (zwartwit) {background(0)}
else{clear(); background('rgba(255,255,255, 0)');}
for (let i = 0; i < 9; i +=1) {vorm[i].display();}
if (key == 's' || key == 'S') { }
else {
//rechth[0].dpRotLi(rechth[0]);
vorm[1].dpRotRe(vorm[1]); vorm[2].dpRotLi(vorm[2]);
vorm[3].dpRotRe(vorm[3]); vorm[4].dpRotLi(vorm[4]);
vorm[5].dpRotRe(vorm[5]); vorm[6].dpRotLi(vorm[6]);
vorm[7].dpRotRe(vorm[7]); vorm[8].dpRotLi(vorm[8]);
}
}
function windowResize() {
resizeCanvas(windowWidth, windowHeight);
}
function buttonRAction(){setup();}
function button0Action()
{vorm[0].d=0; vorm[1].d=3;vorm[2].d=5;vorm[3].d=1;vorm[4].d=3;
vorm[5].d=7; vorm[6].d=1;vorm[7].d=5; vorm[8].d=7; }
function button1Action()
{vorm[0].d=0; vorm[1].d=4;vorm[2].d=4;vorm[3].d=4;vorm[4].d=2;
vorm[5].d=6; vorm[6].d=2;vorm[7].d=4;vorm[8].d=6;}
function button2Action()
{vorm[0].d=0; vorm[1].d=6;vorm[2].d=2;vorm[3].d=4;vorm[4].d=1;
vorm[5].d=4; vorm[6].d=4;vorm[7].d=2;vorm[8].d=4;}
function button3Action()
{vorm[0].d=0; vorm[1].d=5;vorm[2].d=5;vorm[3].d=4;vorm[4].d=6;
vorm[5].d=2; vorm[6].d=0;vorm[7].d=7;vorm[8].d=5;}
function button4Action()
{vorm[0].d=0; vorm[1].d=2;vorm[2].d=4;vorm[3].d=6;vorm[4].d=8;
vorm[5].d=2; vorm[6].d=4;vorm[7].d=6;vorm[8].d=8;}
function buttonZWAction()
{if(zwartwit){zwartwit=false;vorm[1].sc=color(255);vorm[3].sc=color(255);
vorm[5].sc=color(255);vorm[7].sc=color(255);}
else{zwartwit=true;vorm[1].sc=color(255,0,0);vorm[3].sc=color(255,0,0);
vorm[5].sc=color(255,0,0);vorm[7].sc=color(255,0,0)}}
function buttonDAction(){save('pythagoras.png');}