Computergrafik

Skalierung 2D

Skaliert die X-Komponente eines 2D-Punkts mit dem Faktor Sx: NeuX = X · Sx. Für die Y-Komponente gilt analog NeuY = Y · Sy.

Skalierung 2D
01 · Eingabe

Skalierung 2D berechnen

Skaliert die X-Komponente eines 2D-Punkts mit dem Faktor Sx: NeuX = X · Sx. Für die Y-Komponente gilt analog NeuY = Y · Sy.

Lösen für
NeuX = X · Sx

Worum geht es?

Die 2D-Skalierung streckt oder staucht einen Punkt relativ zum Ursprung. Pro Achse wird die Koordinate mit einem eigenen Skalierungsfaktor multipliziert. Sind Sx und Sy gleich, spricht man von uniformer Skalierung, sind sie verschieden, von anisotroper Skalierung.

Faktoren > 1 vergrößern, Faktoren zwischen 0 und 1 verkleinern, negative Faktoren spiegeln zusätzlich.

Die Formel

Formel Skalierung 2D
NeuX = X · Sx     (analog: NeuY = Y · Sy)

Umstellungen:
    X  = NeuX / Sx
    Sx = NeuX / X

Die Variablen

SymbolBedeutungEinheitErklärung
XX-Koordinate—Ursprüngliche X-Position.
SxSkalierungsfaktor X—Streckungsfaktor in X-Richtung.
NeuXNeue X-Koordinate—Skalierte X-Position.

Minimal-Beispiel

Punkt X = 4 mit Sx = 2,5:

Rechnung Skalierung
NeuX = 4 · 2,5
     = 10

Praxis-Beispiele

Beispiel 1 — Sprite verdoppeln

Ein Spiel-Sprite mit Eckpunkt X = 32 wird auf doppelte Breite skaliert (Sx = 2):

Rechnung Sprite-Breite
NeuX = 32 · 2
     = 64

Beispiel 2 — Anisotrop verzerren

Ein UI-Element wird in X gestreckt (Sx = 1,5), in Y gestaucht. Der Punkt X = 100 landet bei:

Rechnung Streckung
NeuX = 100 · 1,5
     = 150

Beispiel 3 — Faktor rekonstruieren

Aus X = 20 und NeuX = 5 ergibt sich der Skalierungsfaktor:

Rechnung Faktor
Sx = NeuX / X
   = 5 / 20
   = 0,25