glScaled-Funktion
Die Funktionen glScaled und glScalef multiplizieren die aktuelle Matrix mit einer allgemeinen Skalierungsmatrix.
void WINAPI glScaled(
GLdouble x,
GLdouble y,
GLdouble z
);
-
x
-
Skalierungsfaktoren entlang der x-Achse .
-
y
-
Skalierungsfaktoren entlang der y-Achse .
-
z
-
Skalierungsfaktoren entlang der z-Achse .
Diese Funktion gibt keinen Wert zurück.
Der folgende Fehlercode kann von der glGetError-Funktion abgerufen werden.
Name | Bedeutung |
---|---|
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen. |
Die glScaled-Funktion erzeugt eine allgemeine Skalierung entlang der x-, y- und z-Achse . Die drei Argumente geben die gewünschten Skalierungsfaktoren entlang jeder der drei Achsen an. Die resultierende Matrix ist
Die aktuelle Matrix (siehe glMatrixMode) wird mit dieser Skalierungsmatrix multipliziert, wobei das Produkt die aktuelle Matrix ersetzt. Das heißt, wenn M die aktuelle Matrix und S die Skalierungsmatrix ist, wird M durch M S ersetzt.
Wenn der Matrixmodus entweder GL_MODELVIEW oder GL_PROJECTION ist, werden alle Objekte skaliert, die nach dem Aufruf von glScaled gezeichnet wurden. Verwenden Sie glPushMatrix und glPopMatrix , um das nicht skalierte Koordinatensystem zu speichern und wiederherzustellen.
Wenn andere Skalierungsfaktoren als 1,0 auf die Modellansichtsmatrix angewendet werden und die Beleuchtung aktiviert ist, sollte wahrscheinlich auch die automatische Normalisierung von Normalwerten aktiviert werden (glEnable und glDisable mit Argument GL_NORMALIZE).
Die folgenden Funktionen rufen Informationen im Zusammenhang mit glScaled ab:
glGet mit Argument GL_MATRIX_MODE
glGet mit argument GL_MODELVIEW_MATRIX
glGet mit Argument GL_PROJECTION_MATRIX
glGet mit Argument GL_TEXTURE_MATRIX
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
Header |
|
Bibliothek |
|
DLL |
|