Beispiel Source

Filed under cc1, input
PFont schrift;
float textX, textY, linienDicke, altesTextX, altesTextY;
String wort = "";
color farbe = color(50, 200, 0);

void setup() {
  size(640, 480);
  schrift = loadFont("ArnoPro-Smbd-48.vlw");
  textFont(schrift, 24);
  background(255);
  smooth();
  textX = 320;
  altesTextX = 320;
  textY = 50;
  altesTextY = 50;
}

void draw() {
  noStroke();

  // das wort zeichnen
  fill(255);
  rect(0, 430, width, 480);
  fill(0);
  textFont(schrift, 16);
  text(wort, 10, 450);
}

void keyPressed() {
  // den gedrücken buchstaben an das vorhandenene wort setzen
  wort = wort + key;

  // die linieneigenschaften ändern
  if(key == 'a') {
    textX = textX + 30;
    textY = textY + 12;
  }
  else if ( key == 'r') {
    textX = textX + 15;
    textY = textY - 14;
  }
  else if ( key == 'c') {
    linienDicke = linienDicke + 5;
  }
  else if ( key == 'e') {
    if(linienDicke > 2) linienDicke = linienDicke - 2;
    textX = textX + 5;
    textY = textY + 10;
  }
  else if ( key == 't') {
    farbe = color(200, 0, 0);
  }
  else if ( key == 'i') {
    textX = textX - 28;
    textY = textY + 28;
  }
  else if ( key == 'v') {
    farbe = color(50, 200, 0);
     textX = textX - 9;
    textY = textY - 18;
  }
 else if ( key == 'o') {
    farbe = color(200, 200, 120);
    textX = textX - 9;
    textY = textY + 18;
  }
  else if ( key == 'm') {
    linienDicke = linienDicke + 10;
    textX = textX - 19;
    textY = textY - 18;
  }
  else if ( key == 'n') {
    if(linienDicke > 10) linienDicke = linienDicke - 10;
    textX = textX + 29;
    textY = textY - 18;
    ellipse(textX, textY, linienDicke*3, linienDicke*3);
  }
  else {
    textX = textX + random(-15, 15);
    textY = textY + random(-15, 15);
  }

  // die linie zeichnen
  stroke(farbe);
  strokeWeight(linienDicke);
  line(altesTextX, altesTextY, textX, textY);
  altesTextX = textX;
  altesTextY = textY;

  strokeWeight(.5);
  line(0, textY, textX, textY);

  textFont(schrift, 24);
  text(key, textX, textY);
}

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*