/ 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-KoordinateUrsprüngliche X-Position.
SxSkalierungsfaktor XStreckungsfaktor in X-Richtung.
NeuXNeue X-KoordinateSkalierte 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