mod.Stretch (Scale Up)

v1.02 23.11.20


Stretch
Stretch nach Drücken von ↔Hgt, wodurch die Höhe
stark angepasst werden musste (Y jetzt 125), aber:
200:125=1.6, also korrekter Aspekt.
Stretch
Squeeze:
Clipmaße: 25×7, entsprechend 200×56 Pixel.

Stretch vergrößert den von ClipWorks eingestellten Clip auf die Größe des ganzen Bildschirms und kann so eingestellt werden, dass der Bildschirmaspekt beibehalten wird (der Aspekt ist das Verhältnis der Breite des Bildschirms zu seiner Höhe, beim C64 lautet er 8:5 oder dezimal 1.6, s. auch Skalieren).

Die beiden wichtigsten Schaltflächen sind ↔Wid und ↔Hgt im unteren Teil des Requesters. Mit ihnen ermittelt man die korrekten Werte für eine aspektgetreue Skalierung des Bildes. ↔Wid passt die Breite des Ausgangsclips an und ↔Hgt entsprechend die Höhe. Es kommt immer ein Ergebnis nach der Formel X geteilt durch Y von genau 1.6 (oder zumindest ganz nahe daran) heraus. Dies wird bestätigt, indem Stretch dann die Meldung "Results are not distorted" ausgibt. Wenn nicht, handelt es sich um Rundungsfehler, die getrost vernachlässigt werden können, da sie nur Auswirkungen im Wertebereich um 1 Pixel haben. (Stretch arbeitet intern mit Fließkomma-Arithmetik, Genaueres bei Squeeze.)

Sollte ein Ausgangsclip nach einer Anpassung nicht mehr auf den Bildschirm passen (zu breit oder zu hoch für die angegebene Startposition hinter Row und Col), dann kann man mit den Clipparameter-Gadgets (Row, Col, Wid und Hgt) versuchen, eine funktionsfähige Einstellung zu finden. Der Rand des Bildschirms blinkt kurz rot, solange eine Anpassung zu Problemen führt.

Execute startet den Skalierungsvorgang. Dabei läuft der Tätigkeitsbalken im Previewfenster zweimal nach unten. Nach getaner Arbeit landet Squeeze im GoDot-Hauptbildschirm.

Leave beendet den Modifier. Eventuell vorgenommene Veränderungen bleiben dabei erhalten.

Tipp: Der Modifier verwendet die ClipWorks/Last-Einstellung. Das heißt, dass der ursprünglich in ClipWorks eingestellte Clip ohne nachzudenken einfach durch Aufruf von ClipWorks (mit Exec Area: Clip) für einen neuen Versuch wieder rekonstruiert werden kann, solange nicht neu gerendert wurde.

Das Preview-Gadget ist in Stretch aktiv.


Korrespondierende Module: StretchClip, Squeeze, Squeeze2Clip, ClipWorks


Eigenschaften:
nicht umkehrbar, bezieht sich auf Farben


Beispiel:

Vorlage für Stretch mit Clip
In diesem Bild soll der Bereich des markierten Clips (0,7,25,7) vergrößert werden, dabei soll die ganze
Breite des Clips Berücksichtigung finden, das Ergebnis soll aber im richtigen Aspekt erscheinen.
Stretch-Ergebnis
Nach ↔Hgt hat der Clip die korrekten Maße 0,7,25,16 und Stretch skaliert diesen Bereich auf
Bildschirmgröße, eine Vergrößerung um 160%.
Vorlage für Stretch mit Clip
Ein weiteres NuFLI-Bild (also ein flimmerfreies Hiresbild mit vielen Farben pro Kachel), hier gerendert
in Multicolor. Ursprünglich war das Bild in Interlaced Multicolor. Der markierte Clip hat die Maße
18,27,11,7, geplant ist eine Detailvergrößerung, an der wir sehen können, wie Duce bestimmte
Schattierungen pixelt.
Stretch-Ergebnis
↔Hgt verändert nicht die Clipdaten, nur die pixelexakte Höhe wird um eins reduziert. Damit ist das
Ergebnis verzerrungsfrei. Dennoch sind die Pixel nicht immer quadratisch, was am kumulativ
arbeitenden Algorithmus liegt, der auch beliebige Verzerrungen handhaben muss. Jedenfalls können
wir gut Duces Arbeitweise erkennen. Eine Vergrößerung um etwa 360%.

zurück - zum Standardmodifier-Menü

Arndt Dettke
support@godot64.de