Farbwirbel //2116

In der Schule mussten wir mit Wasserfarben malen. Vermutlich nahm ich viel zu viel Wasser und hatte ohnehin keine Geduld, so etwas bis ins kleinste Detail auszufertigen. Jedenfalls waren meine Bilder eher Schmiereien als Gemälde.
Was ich aber gelernt habe, war, dass man Mischfarben erhält, wenn man verschiedene Farben miteinander verrührt.
Als ich dann irgendwann (da ging ich noch in die Schule) mit der Darstellung von Farben auf einem Monitor konfrontiert wurde, irritierte mich das. Wenn man Rot mit Grün mischt, erhält man beim Malkasten ein undefinierbares, hässliches Braun. Auf einem Bildschirm dagegen wird aus Rot und Grün plötzlich Gelb. Additive und subtraktive Farbmischung waren damals für mich kein Begriff. Beim Malkasten mischt man im Prinzip Farbpigmente, was einer subtraktiven Mischung entspricht, da bestimmtes Licht ausgefiltert wird. Bei einem Monitor dagegen mischt man additiv Licht verschiedener Wellenlängen, was vom menschlichen Auge dann als eine Zwischenfarbe wahrgenommen wird. Goethe irrte mit seiner Farbenlehre.

Ich erinnere mich, dass ich als Kind eine Art Mandala malte – mit Filzstiften. Die Spektralfarben hatten es mir besonders angetan. Also nutzte ich jeweils einen roten, orangen, gelben, grünen, blauen und violetten Stift.
Ich hatte mit dem Zirkel mehrere konzentrische Kreise gemalt. Ich konstruierte sechs gleichgroße Sektoren, die ich nahe dem Mittelpunkt mit jeweils einer anderen Farbe ausmalte. Beim nächsten Ring versetzte ich das ganze um eine Farbe. Letztendlich kam dann tatsächlich ein schönes Bild heraus, das aber leider längst verloren gegangen ist.

Vergessen habe ich das Bild aber nie. Und da ich inzwischen nicht mehr selbst malen muss, sondern weiß, wie ich dem Computer erkläre, was er machen soll, nutzte ich eine kreative Pause, um mir ein kleines Progrämmchen zu schreiben – auch um nicht ganz aus der Übung zu kommen.
Zunächst konstruierte ich einen stetigen RGB-Farbverlauf aus stückweise definierten, linearen Abschnitten. Ich gebe einen Winkel ein, und erhalte eine zugeordnete Farbe („hue“) raus.
Eine Bitmap ist eine Karte aus verschiedenfarbenen Pixeln. Aus den Positionen (Zeile, Spalte) lässt sich über den Pythagoras der Abstand zum Mittelpunkt berechnen, und über den Arcus Tangens der Winkel bezüglich einer Achse.
Gebe ich also für jeden einzelnen Pixel den berechneten Winkel in meine Farbverlaufsfunktion ein, und stelle die zurückgelieferte Farbe auf der Bitmap dar, erhalte ich einen Farbkreis. Ich wollte den aber in eine (archimedische) Spirale transformieren. Also addiere ich noch den (mit einem Gewichtungsfaktor multiplizierten) Radius dazu. Dadurch entsteht ein wunderbarer Farbwirbel (sh. Beispiele im Mehr-Bereich, damit ja niemand „pics or it didn’t happen“ sagen kann). Ein Exemplar nutze ich derzeit als Avatar-Bildchen.

Mein Progrämmchen hat noch ein paar kleinere Macken. Beispielsweise kann es nicht immer mit negativen Winkeln umgehen. Ich weiß, wo das Problem liegt, und auch wie ich es fixen könnte, habe mir nur bisher nicht die Zeit dafür genommen.
Die Performance ist mies. Ich warte auf ein 400*400-Pixel-Bild ein bis zwei Sekunden. Aber schließlich muss das Programm nicht echtzeitfähig sein. Ich könnte da noch einiges herausholen, wenn ich wollte. Derzeit sind die Berechnungen nicht optimiert. Das heißt, die meiste Zeit wird noch nicht mal in den Berechnungen verbraten, sondern in der Graphikausgabe. Statt direkt das GDI zu benutzen, mache ich das über ein Framework, das einen ziemliche Overhead hat. Mir ist das bewusst, aber ich bin zu faul, auf GDI-API-Funktionen umzustellen. Das Framework ist komfortabler.
In einer weiteren Ausbaustufe könnte man die Helligkeit oder die Sättigung vom Radius abhängig machen. Es gibt so viele faszinierende Möglichkeiten.


Hier einige Beispiele. Da WordPress Bitmaps „aus Sicherheitsgründen“ nicht akzeptiert hat, musste ich in PNG konvertieren.

Interessante Fehlversuche mit Artefakten und Moiré-Effekten durch Rundung oder Oversampling. Der Radius (in Pixeln) ging hier quadratisch ein.

Und schließlich logarthmische Spiralen:

Mit dem doppelten Winkel:

Fünffacher Winkel mit archimedischer Spirale:

Ach .. ein Farbenrausch!

Effekte durch die Verundung bzw. Veroderung der Farbe mit 0xAAAAAA.

Wenn man mal mit dem Rumspielen anfängt, kann man nicht mehr aufhören.

Also, aber jetzt als allerletztes: Ein Beispiel einer Falschfarbendarstellung:

Über Anne Nühm (breakpoint)

Die Programmierschlampe.
Dieser Beitrag wurde unter Uncategorized abgelegt und mit , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

19 Antworten zu Farbwirbel //2116

  1. keloph schreibt:

    das letzte hat etwas.

    Gefällt 1 Person

  2. ednong schreibt:

    Schööööööön

    Gefällt 1 Person

    • RGB ist auf die visuelle Wahrnehmung des Menschen abgestimmt, dessen Augennetzhaut dreierlei Farbrezeptoren (Zapfen) aufweist.

      Liken

      • Murdoch schreibt:

        Schon klar.
        Das Ding ist, im Nachhinein zeigte sich, das Goethe Newton voll und ganz verstand, nur eben umgekehrt war es nicht der Fall, was von Goethe zu recht geschickt gedisst wurde.

        Wollte man es auf Zäpfchen runterbrechen, dann hat Newton Recht.
        Nimmt man Stäbchen dazu, wohl eher nicht mehr. (Sehr verdreht und vereinfacht.)

        Hue, hue.

        Vue ist da auch ein geiles Stück Software.

        Gefällt 1 Person

  3. Murdoch schreibt:

    Faszinierend, ich hab da vorletzten Sommer recht viel Zeit mit Goethes Farbenlehre und der entsprechenden Psychologie verbracht.
    Breaking Bad beispielsweise ist durch Goethes Farbkreis betrachtet sehr gut lesbar.

    Das Problem war mehr, das die Wissenschaft mal wieder demokratisch/anglozentrisch war und man dementsprechend Newton zum Winner erklärte, in seinem beschwänkten, dunklen Kämmerlein.

    Zum Hände for die Augen werfen.

    Was dann auch später an erstaunlicher Stelle im Film seinen Niederschlag erfuhr.

    Des Xenomorphes erste Form.

    Und bevor man jetzt sagt, wow, weit, weit hergeholt.
    Mit Gastgeschenken setze man sich durchaus auseinander.

    https://en.wikipedia.org/wiki/Xenien

    Interessant find ich, wie oft die deutsche Wikipedia regelrecht darauf getrimmt zu sein scheint, die kollektive Psyche anzugreifen.

    Liken

  4. Leser schreibt:

    Sehr interessant! Bei Spiralen und Mathematik muss ich an den „Goldenen Schnitt“ denken, der überall in der Natur vorkommt (z.B. bei Schneckengehäusen). Der Name Fibonacci ist mir dabei auch noch im Gedächtnis hängen geblieben (aber ich habe mich leider nie genügend dafür interessiert, um mir die Details zu merken). Nun meine Frage: Hat eines der Beispiele diesen „Goldenen Schnitt“ als Spiralradius? Wenn nicht, dürfte ich so eins haben?

    Liken

  5. Plietsche Jung schreibt:

    Spielerin 😂
    Aber interessant ist es auch.
    Ich habe viel Zeit mit Fractint verbracht. Fraktale und Mandelbrot Mengen bieten noch viele Optionen und Ahh-Effekte mehr. Bei den heutigen Prozessoren ein Klacks in Sachen Geschwindigkeit.

    Liken

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.