BTK-FH Logo

processing, programming, text-vis, typo

TextVis : Materialien und Sourcen

Nachfolgend einige kleine Snippets und Hinweise zum TextVis Project. Diese hatten einige Studenten angefragt. Bei weiteren Fragen schreibt einen Kommentar.

Texte einlesen

Texte können schnell und einfach aus Textdateien eingelesen werden. Seht dazu nochmal Übung C1. Man kann aber auch aus anderen Quellen Texte lesen. Wie man etwa Nachrichten aus dem Internet einliest, beschreibt das RSS-Feeds-Tutorial.

Buchstaben codieren

Ein Grundgerüst, um Buchstaben graphisch zu codieren, findet ihr in den Creative Coding 2 Kurs Unterlagen Woche 6.

Wörter zählen

Um bestimmte Wörter in einer Zeile zu zählen, kann die Funktion getNumberOfWord() verwendet werden:

void draw() {
  int a = getNumberOfWord("my sample text with samples", "sample");
  println("sample in a=" + a);
  int b = getNumberOfWord("some words don't exist in here", "sample");
  println("sample in b=" + b);
}

int getNumberOfWord(String testText, String word) {
  return testText.split(word).length - 1;
}

Um lediglich zu prüfen, ob ein Wort in einer Zeile vorkommt, kann auch txt.indexOf("wort") >= 0 benutzt werden.

Wörter aus Zeile lesen

Wenn nicht nur die Länge einer Zeile, oder die Buchstaben verwendet werden sollen, sondern auch die einzelnen Worte einer Zeile kann folgendes verwendet werden:

void draw() {
  String txt = "eins zwei drei ganz viele Wörter sind in diesem Satz";
  String[] words = getWords(txt);
  // for - Schleife um auf die einzelnen Wörter zuzugreifen
}

String[] getWords(String source) {
  return source.split("[^w|ä|Ä|ö|Ö|ü|Ü|ß]+");
}

Wort in Wortgruppe

Zum Prüfen, ob ein Wort zu einer bestimmten Gruppe gehört muss ein Array mit den Begriffen erstellt, und die Funktion isInWordGroup() wie im Beispiel aufgerufen werden.

String goodWords[] = {"smile", "sun", "nice", "love"};
void setup() {
  println("found sun: " + isInWordGroup("sun", goodWords));
  println("found bad: " + isInWordGroup("bad", goodWords));
}

Die Funktion gibt es in den Sourcen der folgenden beiden Processing-Beispielen:

Sketch (einfach): IsInWordArray.zip
Sketch (mit mehreren Begriff-Arrays): IsInWordArray-2.zip

Kreis-Typo

Einfacher Sketch, der Text kreisförmig darstellt und abhängig von der Maus rotieren lässt.

circle-typo-784.png circle-typo-1267.png

Sketch: CircleTypo

.

speak up

Add your comment below, or trackback from your own site.

Subscribe to these comments.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*Required Fields