Schets met 8 rechthoeken rond 2 pijl in p5.js.                                               terug naar de inleiding
met de "s" toets stoppen de rotaties met de overige toetsen starten de rotaties weer

                                                                    roterende rechthoeken in fullscreen

 

De schets maakt gebruik van de p5.js classes  RechthoekVlieger  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.
 
 

vorm = [];
function setup(){
buttonR1 = createButton('reset');
buttonR1.position(20,40);buttonR1.style('width','50px');
buttonR1.mouseClicked(buttonR1Action);
buttonD = createButton('download');
buttonD.position(20,80);buttonD.style('width','70px');
buttonD.mouseClicked(buttonDAction);
 
createCanvas(windowWidth,windowHeight);
let x = width/2;  let y = height/2;
let n = height/8; let b = sqrt(5*n*n);
let a = sqrt(2*n*n); let alfa = 100; let sw = n/100; let sc = color(0);
 
vorm[0] = new Rechthoek(a,b,   7, x-n, y, 0, color(255,255,0,  alfa),sw,sc);
vorm[1] = new Rechthoek(a,b,   1, x+n, y, 0, color(255,0,0,    alfa),sw,sc);
vorm[2] = new Rechthoek(a,b,   5, x-n, y, 0, color(0,0,255,    alfa),sw,sc);
vorm[3] = new Rechthoek(a,b,   3, x+n, y, 0, color(122,200,100,alfa),sw,sc);
vorm[4] = new Rechthoek(n,2*n, 7, x,   y, 0, color(0,255,0,    alfa),sw,sc);
vorm[5] = new Rechthoek(n,2*n, 1, x,   y, 0, color(255,255,00, alfa),sw,sc);
vorm[6] = new Rechthoek(n,n*2, 5, x,   y, 0, color(255,0,0,    alfa),sw,sc);
vorm[7] = new Rechthoek(n,n*2, 3, x,   y, 0, color(0,255,255,  alfa),sw,sc);
vorm[8] = new Vlieger(2*n,-n,2*n,0, x, y, 0, color(0,255,0,    alfa),sw,sc);
vorm[9] = new Vlieger(2*n,-n,2*n,0, x, y,180,color(0,255,0,    alfa),sw,sc);
 }
function draw() {
 clear()
 background('rgba(255,255,255, 0)');
  for (let i = 0; i < 10; i++){vorm[i].display();}
  if (key == 's' || key == 'S') { }
  else
 {
 vorm[0].dpRotLi(vorm[0]); vorm[1].dpRotRe(vorm[1]);
 vorm[2].dpRotRe(vorm[2]); vorm[3].dpRotLi(vorm[3]);
 vorm[4].dpRotRe(vorm[4]); vorm[5].dpRotLi(vorm[5]);
 vorm[6].dpRotLi(vorm[6]); vorm[7].dpRotRe(vorm[7]);
 }
}
 
function buttonR1Action(){setup();}
function buttonDAction() {save('rechthoeken_en_pijlen.png');}