mod.VerticalWave

v1.00 21.04.18


Ergebnis von VerticalWave
"VerticalWave". Am linken Rand der Sinusverlauf.

VerticalWave hat keinen eigenen Requester.

Lange Zeit war dieser Modifier im Experimentierstadium steckengeblieben. Auch jetzt ist VerticalWave nicht weiterentwickelt worden, nur denken wir, dass das Modul nicht ganz und gar in der Versenkung verschwinden soll. Es dient dazu, ein Bild nach einem bestimmten Algorithmus zu verzerren. Im Moment ist es fest darauf eingestellt, die Bildvorlage von oben nach unten nach der

Rechenvorschrift: n = int( sin( 1/20 × m ) × 10 + 0.5 ) + 10

zu bearbeiten. Es entsteht dadurch eine im Ganzen sinusförmige Einrückung für jede einzelne Rasterzeile, für jede anders. Dabei läuft also m von 0 bis 199, wodurch der Sinus eigentlich zwischen -10 und +10 pendelt, was aber durch das konstante Glied im Term ("+ 10") aufgefangen wird. Das bearbeitete Bild wird dabei im Mittel um 10 Pixel nach rechts verlagert (0..20 Pixel). Wenn es auf eine zentrierte Positionierung des Bildes auch nach der Anwendung des Modifiers ankommt, so muss man es nach jedem Durchgang mit Scroll um 10 Pixel wieder nach links bewegen. Außerdem füllt VerticalWave die Verzerrung am linken Rand mit der Farbe schwarz auf (siehe Bild rechts), was man in der vorherrschenden Umgebungsfarbe löschen sollte, wenn man keinen Wert darauf legt (ClipWorks/ClrClp und PixelEdit oder gleich Wave anwenden).

Korrespondierende Module: Wave


Eigenschaften:
kumulativ, nicht vollständig umkehrbar, wirkt auf Farben und Graustufen gleichermaßen


Beispiel:

Als Beispiel eine Alphakanalverknüpfung, bei der VerticalWave zum guten Ergebnis beiträgt. Hier zuerst die beiden Bilder, die miteinander verknüpft werden sollen, darunter der Alphakanal in mehreren Bearbeitungsstufen. Immer im Kopf behalten: Eine Alphakanalverknüpfung ist eine Graustufenaktion, auf Farben muss man besonders achten und eingehen!

Vorgabebild 1
Bild 1 für die Alphakanalverknüpfung (ein GoDot-Scan).
Vorgabebild 2
Bild 2 (ein ehemaliges Windows-Bild).
Alphakanal
verändert mit VerticalWave
noch einmal verändert mit ApplyDither
Das erste kleine Bild ist ein diagonaler Alphakanal. Links oben (weiß) ist er undurchlässig, rechts unten (schwarz) ist er transparent. Dazwischen die 14 GoDot-Graustufen (repräsentiert durch Farben). Im
zweiten Bild sieht man den Effekt von VerticalWave. Am linken Rand erkennt man den sinusförmigen Versatz der einzelnen Zeilen, der immer mit schwarz aufgefüllt wird. Im dritten Bild wurde ein weiteres Mal
VerticalWave angewendet und der Versatz mit weiß gelöscht. Außerdem wurden die Farben auf die fünf Hardware-Graus reduziert, damit wir im Ergebnisbild weniger Aufwand bei der Farbanpassung haben.
(Mit Wave kann man von vornherein die benötigte Auffüllfarbe vorgeben.)

Jetzt kommt die Arbeit mit dem Alphakanal: Das dritte kleine Bild oben (unseren endgültigen Alphakanal) haben wir auf Disk (oder besser als Undo 4Bit, wenn eine REU angeschlossen ist) gesichert. Wir brauchen ihn noch zweimal. Jetzt laden wir Bild 1 (Option Replace) und shiften es 48 Pixel nach links (dann kommt das Gesicht der Weltenschöpferin besser zur Geltung). Sofort danach tragen wir in 4Bit&Map zum ersten Mal den Alphakanal auf (bei einer REU Source: Undo, mit Modify Data, AlphaCh pos) und speichern das Zwischenergebnis ab (bei einer REU als Temp, Undo ist ja schon belegt). Nun laden wir das zweite Bild und tragen diesmal den Alphakanal mit der Option neg auf. Im letzten Schritt verknüpfen wir die beiden Bilder (das im Speicher und das Zwischenergebnis von eben) mit Addition 100%. Fertig!

Zwischenergebnis 1
Zwischenergebnis 1 ("pos"), die hier sichtbaren Farben enstehen durch den Alphakanal.
Zwischenergebnis 2
Zwischenergebnis 2 ("neg"), hier ist der Alphakanal durch die Färbung deutlicher zu sehen.
Endergebnis
Endergebnis. Die Farben haben wir mit Histogram/Join den Hardwaregraus des C64 zugeordnet (geht am besten, wenn die Teilbilder oder eins davon schwarz-weiß sind wie hier).

zurück - zum Standardmodifier-Menü

Arndt Dettke
support@godot64.de