Mastersign.Expressions

Als Demonstration von Mastersign.Expressions habe ich eine kleine Anwendung geschrieben, die ein Schwarzweißbild erzeugt. Das kompilierte Programm kann von GitHub heruntergeladen werden.

Für jedes Pixel des Bildes wird der eingegebene Ausdruck einmal ausgewertet und der Ergebniswert zwischen 0.0 und 1.0 als Helligkeitswert für das Pixel verwendet. Das Bild wird mehrmals pro Sekunde neu aufgebaut. Es stehen die folgenden Variablen zur Verfügung:

  • W: Die Breite des Bildes in Pixeln
  • H: Die Höhe des Bildes in Pixeln
  • X: Die Position des aktuellen Pixels in X-Richtung (von links nach rechts)
  • Y: Die Position des aktuellen Pixels in Y-Richtung (von oben nach unten)
  • x: Die X-Position des aktuellen Pixels als reelle Zahl zwischen -0.5 und +0.5
  • y: Die Y-Position des aktuellen Pixels als reelle Zahl zwischen -0.5 und +0.5
  • T: Die aktuelle Zeit in Millisekunden
  • t: Eine periodische Zeit zwischen 0.0 und 1.0 (wiederholt sich alle 10 Sekunden)

Mit diesen Variablen lassen sich einfache statische oder bewegte Muster berechnen.

Während der Eingabe wird stetig versucht den Ausdruck zu parsen und zu kompilieren. Auftretende Fehler werden direkt unter dem Eingabefeld angezeigt.

Syntaxfehler

syntax error

Semantischer Fehler

semantic error

Korrekte Eingabe

correct formular

Bewegtes Muster

Das folgende Muster bewegt sich nach links unten (in diesem Screenshot natürlich nicht zu erkennen).

moving pattern

Joomla templates by a4joomla