Skip to content

U0202 Position eines Punktes

Aufgabenstellung

Positionieren Sie einen Punkt so, dass folgende Anmutungen entstehen (die Größe des Punktes bleibt gleich): leicht schwer schwebend lastend froh traurig bewegt statisch unruhig ruhig nah fern Dokumentieren sie ihr Ergebnis in MKDocs.

Umsetzung

text

text

text

text

text

text

text

text

text

text

text

text

Kommentare

Die Aufgabe war für mich super zur visuellen Wahrnehmung und semantischen Gestaltung mit Minimalmitteln. Mich hat überrascht zu sehen, wie die Position allein eine starke emotionale Wirkung erzeugen kann.
Position = Bedeutung: Schon ein einziger Punkt kann durch seine Positionierung sehr unterschiedliche Wirkungen erzielen – von statisch bis dynamisch, von leicht bis schwer.
Beziehung zur Fläche: Die Wirkung entsteht vor allem im Verhältnis zur gesamten Bildfläche – der „Raum“ um den Punkt ist entscheidend.
Assoziationen: Die gewählten Positionen rufen beim Betrachter intuitive Assoziationen hervor, die oft auch mit physikalischen oder alltäglichen Erfahrungen zusammenhängen (z.B. „oben = leicht“, „unten = schwer“).
Minimalismus mit Wirkung: Diese Übung zeigt, wie bereits kleinste gestalterische Entscheidungen eine große Wirkung auf die Gesamtkomposition und die emotionale Wahrnehmung haben.

Leicht: Oben, nahe am Himmel

Schwer: Ganz unten – wirkt erdverbunden, „fällt runter“

Schwebend: Oberes Drittel, ohne Randberührung – „in der Luft“

Lastend: Direkt am unteren Rand – „drückt“ nach unten

Froh: Leicht oben links – hell, beschwingt, offen

Traurig: Unten rechts – schwer, zurückgezogen

Bewegt: Außerhalb des Gleichgewichts – wirkt im Übergang

Statisch: Zentrum – maximaler Gleichgewichtspunkt

Unruhig: Eckke - hohe Spannung

Ruhig: Wieder zentriert – Stabilität und Ruhe

Nah: Unten – wirkt näher am Betrachter

Fern: Oben – wirkt weiter entfernt, fast „himmlisch“

Code

String[] anmutungen = {
  "leicht", "schwer", "schwebend", "lastend",
  "froh", "traurig", "bewegt", "statisch",
  "unruhig", "ruhig", "nah", "fern"
};
int index = 0;
boolean saved = false;
void setup() {
  size(800, 800);
  frameRate(1); // Langsam zeichnen, 1 Bild pro Sekunde
}
void draw() {
  if (index >= anmutungen.length) {
    println("Alle Bilder gespeichert.");
    noLoop();
    return;
  }

  background(255);
  fill(0);
  noStroke();

  String anmutung = anmutungen[index];
  drawPoint(anmutung);

  if (!saved) {
    saveFrame("output/" + nf(index + 1, 2) + "-" + anmutung + ".png");
    saved = true;
  } else {
    index++;
    saved = false;
  }
}
void drawPoint(String anmutung) {
  float x = width / 2;
  float y = height / 2;

  switch (anmutung) {
    case "leicht":
      y = height * 0.2;
      break;
    case "schwer":
      y = height * 0.85;
      break;
    case "schwebend":
      y = height * 0.1;
      break;
    case "lastend":
      y = height * 0.9;
      break;
    case "froh":
      x = width * 0.3;
      y = height * 0.3;
      break;
    case "traurig":
      x = width * 0.3;
      y = height * 0.7;
      break;
    case "bewegt":
      x = width * 0.8;
      y = height * 0.2;
      break;
    case "statisch":
      x = width / 2;
      y = height / 2;
      break;
    case "unruhig":
      x = width * 0.77;
      y = height * 0.23;
      break;
    case "ruhig":
      x = width * 0.5;
      y = height * 0.5;
      break;
    case "nah":
      y = height * 0.8;
      break;
    case "fern":
      y = height * 0.2;
      break;
  }

  ellipse(x, y, 10, 10);

  // Optional: Titel anzeigen
  fill(0);
  textAlign(CENTER);
  textSize(24);
  text(anmutung.toUpperCase(), width / 2, height - 40);
}