poster met random dingbats van Manfred Klein.          terug naar de inleiding       naar de poster in fullscreen

Toetsfuncties

toetsen "1" veranderen van de dingbats

toets "d" of "D" voor het downloaden van de poster

De schets maakt ook gebruik van de class "Text" met fontkeuze mogelijkheid en de superclass "Vormen"

random fonts en karakters kiezen
In de text class worden voor de linker en rechter kolom  8 (0 t/m 8) random fonts gekozen (regel 23 en 29)
In de text class worden voor de bovenste, middelste en onderste regel 13 (0 t/m 13) random fonts gekozen (regel 35, 41, en 48)

Voor ieder font worden random karakters uit het fontarray gekozen (regel 15 t/m 17)

 
 
//argumenten van de constructor: 1) tekst string, 2) lettergrootte, 3) draaipunt, 

  //4) x  positie, 5) y positie, 6) hoek, 7) font 1 t/m 13, 8) letterkleur
  //9) lijn dikte, 10) lijnkleur
  fontL = []; fontR = [];
  fontB = []; fontO = []; fontM = [];
  fontarray = [];
  function setup() {
  createCanvas(windowWidth, windowHeight);
  const x = width/2;
  const y = height/2;
  const n = height/30;
  fontarray = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T",
             "U","V","W","X","Y","Z","[","]","a","b","c","d","e","f","g","h","i","j","k","l",
             "m","n","o","p","q","r","s","t","u","v","w","x","y","z"];
  const ld = n/2 //ld = lijndikte
  const lg = 3*n //lg = lettergrootte
  ruitjespap = new Ruitjes(n, x, y);
  for (let i = 0; i < 8; i++)
{//constructor                 1                   2  3    4        5        6      7
  fontL[i] = new Text(fontarray[int(random(50))], lg, 1, x-23*n,y-10*n+3*n*i,0,int(random(8)),
     color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
  ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
}
  for (let i = 0; i < 8; i++)
{//constructor                 1                   2   3     4      5         6      7
   fontR[i] = new Text(fontarray[int(random(50))], lg, 5, x+23*n,y-10*n+3*n*i,0,int(random(8)),
    color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
  ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
 }
  for (let i = 0; i < 13; i++)
 {//constructor                1                   2  3      4          5    6      7
   fontB[i] = new Text(fontarray[int(random(50))], lg, 1, x-20*n+3*n*i,y-8*n,0,int(random(13)),
    color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
  ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
}
  for (let i = 0; i < 13; i++)
 {//constructor                1                   2  3    4            5   6      7
  fontO[i] = new Text(fontarray[int(random(50))], lg, 2, x-20*n+3*n*i,y+7*n,0,int(random(13)),
    color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
  ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
 }
 
 for (let i = 0; i < 13; i++)
{//constructor                1                   2  3    4          5   6          7
 fontM[i] = new Text(fontarray[int(random(50))], lg, 2, x-20*n+3*n*i,y-n,0,int(random(13)),
   color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
 ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
}
 //constructor                1                            2  3 4   5   6  7
 font1 = new Text('poster met dingbats van Manfred Klein',2*n,0,x,y-5*n,0,13,
 color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
 ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
 
 font2 = new Text('toets "1" voor andere dingbats',2*n,0,x,y+4*n,0,13,
 color(random(0, 225), random(0, 100), random(0, 100),250),  //letterkleur
 ld,color(random(0, 100), random(0, 250), random(0, 100),100)); //lijnkleur
}
 
function draw() {
  background(230,251,255);
//  ruitjespap.display();
 for(let i = 0; i < 8; i++)
 {
    fontL[i].display();
  }
  for(let i = 0; i < 8; i++)
  {
    fontR[i].display();
  }
  for(let i = 0; i < 13; i++)
  {
    fontB[i].display();
  }
  for (let i = 0; i < 13; i++)
  {
    fontO[i].display();
  }
  for (let i = 0; i < 13; i++)
  {
    fontM[i].display();
  }
  font1.display();
  font2.display();
}
 
function windowResized() {
  resizeCanvas(windowWidth, windowHeight);
}
 
 function keyPressed() {
  if (key == 'd' || key == 'D') {
   save('dingbat_poster.png');
  }
  if (key == '1') {
     setup();
  }
}