glNormal: Unterschied zwischen den Versionen
Aus DGL Wiki
K (Trennlinien entfernt) |
Flash (Diskussion | Beiträge) K (→Delphi-Spezifikation) |
||
Zeile 6: | Zeile 6: | ||
<br> | <br> | ||
== Delphi-Spezifikation == | == Delphi-Spezifikation == | ||
− | procedure '''glNormal3b'''(''nx'': TGLbyte; ''ny'': TGLbyte; ''nz'': TGLbyte);<br> | + | procedure '''glNormal3b'''(''nx'': TGLbyte; ''ny'': TGLbyte; ''nz'': TGLbyte);<br> |
− | procedure '''glNormal3d'''(''nx'': TGLdouble; ''ny'': TGLdouble; ''nz'': TGLdouble);<br> | + | procedure '''glNormal3d'''(''nx'': TGLdouble; ''ny'': TGLdouble; ''nz'': TGLdouble);<br> |
− | procedure '''glNormal3f'''(''nx'': TGLfloat; ''ny'': TGLfloat; ''nz'': TGLfloat);<br> | + | procedure '''glNormal3f'''(''nx'': TGLfloat; ''ny'': TGLfloat; ''nz'': TGLfloat);<br> |
− | procedure '''glNormal3i'''(''nx'': TGLint; ''ny'': TGLint; ''nz'': TGLint);<br> | + | procedure '''glNormal3i'''(''nx'': TGLint; ''ny'': TGLint; ''nz'': TGLint);<br> |
− | procedure '''glNormal3s'''(''nx'': TGLshort; ''ny'': TGLshort; ''nz'': TGLshort);<br> | + | procedure '''glNormal3s'''(''nx'': TGLshort; ''ny'': TGLshort; ''nz'': TGLshort);<br> |
+ | |||
+ | procedure '''glNormal3bv'''(const ''v'': PGLbyte);<br> | ||
+ | procedure '''glNormal3dv'''(const ''v'': PGLdouble);<br> | ||
+ | procedure '''glNormal3fv'''(const ''v'': PGLfloat);<br> | ||
+ | procedure '''glNormal3iv'''(const ''v'': PGLint);<br> | ||
+ | procedure '''glNormal3sv'''(const ''v'': PGLshort);<br> | ||
− | + | <br> | |
− | |||
− | |||
− | |||
− | |||
− | |||
== Parameter == | == Parameter == | ||
Version mit 3 Einzelparametern (glNormal3*) : | Version mit 3 Einzelparametern (glNormal3*) : |
Version vom 16. August 2004, 14:54 Uhr
Inhaltsverzeichnis
glNormal
Name
glNormal - setzt die aktuell gültige Normale.
Delphi-Spezifikation
procedure glNormal3b(nx: TGLbyte; ny: TGLbyte; nz: TGLbyte);
procedure glNormal3d(nx: TGLdouble; ny: TGLdouble; nz: TGLdouble);
procedure glNormal3f(nx: TGLfloat; ny: TGLfloat; nz: TGLfloat);
procedure glNormal3i(nx: TGLint; ny: TGLint; nz: TGLint);
procedure glNormal3s(nx: TGLshort; ny: TGLshort; nz: TGLshort);
procedure glNormal3bv(const v: PGLbyte);
procedure glNormal3dv(const v: PGLdouble);
procedure glNormal3fv(const v: PGLfloat);
procedure glNormal3iv(const v: PGLint);
procedure glNormal3sv(const v: PGLshort);
Parameter
Version mit 3 Einzelparametern (glNormal3*) :
nx, ny, nz | Geben die x, y und z Koordinaten der neuen Normale an. |
Version mit Parameterfeld (glNormal3*v) :
v | v ist ein Zeiger auf ein Feld welches 3 Werte enthält. Diese 3 Werte stellen die x, y und z-Koordinaten der neuen Normale dar. |
Initialisiert ist die Normale mit den Werten (0,0,1).
Beschreibung
Die aktuelle Normale wird immer dann auf die Übergebenen Koordinaten ausgerichtet, wenn glNormal aufgerufen wird.
Parameter in Byte-, Short- oder Integer-Typen werden so in Fließkommazahlen umgerechnet, dass die kleinstmögliche Zahl des Paramtertyps zu -1.0 und die größtmögliche Zahl zu 1.0 wird.
Hinweise
- Normalisierte Normalen
- Normale, die mit glNormal gesetzt werden, müssen keine Einheitslänge haben. (||n|| <> 1) - Wenn Normalisierung aktiviert wurde, wird die Normale nach der Transformation normalisiert. - Normalisierung kann mittels glEnable/glDisable und dem Argument GL_NORMALIZE kontrolliert werden. - Standardmäßig ist Normalisierung deaktiviert.
- Die Normale kann zu jeder Zeit neu gesetzt werden. So kann glNormal auch innerhalb von glBegin-glEnd Blöcken aufgerufen werden.
Fehlermeldungen
keine
Zugehörige Wertrückgaben
glGet mit Token GL_CURRENT_NORMAL
glIsEnabled mit GL_NORMALIZE
Siehe auch
glBegin, glColor, glIndex, glTexCoord, glVertex
Hintergrundwissen: Normalen