glScale

Aus DGL Wiki
Version vom 8. August 2004, 23:08 Uhr von 145.254.80.110 (Diskussion) (Formatierung angepasst)

Wechseln zu: Navigation, Suche

glScale


Name


glScale - bewirkt eine Verzerrung oder Spiegelung des Koordinatensystems.

Delphi-Spezifikation


procedure glScaled(x, y, z: TGLdouble);
procedure glScalef(x, y, z: TGLfloat);


Parameter


x, y, z Die einzelnen Parameter bestimmen die Verzerrung für die einzelnen Achsen


Beschreibung


Die Funktion glScale bewirkt eine Verzerrung oder Spiegelung des Koordinatensystems. Hierfür wird eine Skalierungsmatrix mit der aktiven Transformationsmatrix multipliziert.
Die Skalierungsmatrix sieht so aus:

  | x  0  0  0 |
  | 0  y  0  0 |
  | 0  0  z  0 |
  | 0  0  0  1 |

wobei x, y, z den übergebenen Parametern entspricht.

Fehlermeldungen


GL_INVALID_OPERATION wird generiert wenn glScale zwischen einem glBegin und dem zugehörigen glEnd aufgerufen wird.

Zugehörige Wertrückgaben


glGet mit Token GL_MATRIX_MODE
glGet mit Token GL_MODELVIEW_MATRIX
glGet mit Token GL_PROJECTION_MATRIX
glGet mit Token GL_TEXTURE_MATRIX

Beispiele


Glscale normal.png Ein ganz normaler Würfel der keinerlei Skalierung erfahren hat.
Entspricht:glScale(1,1,1);
Glscale scaledx.png Der gleiche Würfel, der diesmal entlang der X-Achse gestreckt wurde.
Entspricht:glScale(3,1,1);
Glscale invert.png Der vorrige Würfel, der nun auch entlang der Y-Achse invertiert wurde.
Entspricht:glScale(3,-1,1);


Siehe auch


glLoadMatrix, glMatrixMode, glMultMatrix, glPushMatrix, glRotate, glTranslate