Bezeichnung
gl.EvalCoord -- wertet aktivierte ein- und zweidimensionalen Karten aus
Übersicht
gl.EvalCoord(u[, v])
Beschreibung
gl.EvalCoord() wertet aktivierte ein- oder zweidimensionale Karten bei den Argument u oder u und v aus. Um eine Karte zu definieren, rufen Sie gl.Map() auf; um sie zu aktivieren und zu deaktivieren, rufen Sie gl.Enable() und gl.Disable() auf.

Wenn der Befehl gl.EvalCoord() ausgegeben wird, werden alle aktuell aktivierten Karten der angegebenen Dimension ausgewertet. Dann ist es für jede aktivierte Karte so, als ob der entsprechende GL-Befehl mit dem berechneten Wert ausgegeben worden wäre. Das heißt, wenn #GL_MAP1_INDEX oder #GL_MAP2_INDEX aktiviert ist, wird ein gl.Index() simuliert. Wenn #GL_MAP1_COLOR_4 oder #GL_MAP2_COLOR_4 aktiviert ist, wird ein gl.Color() simuliert. Wenn #GL_MAP1_NORMAL oder #GL_MAP2_NORMAL aktiviert ist, wird ein normaler Vektor erzeugt, und wenn eine der Konstanten #GL_MAP1_TEXTURE_COORD_1, #GL_MAP1_TEXTURE_COORD_2, #GL_MAP1_TEXTURE_COORD_3, #GL_MAP1_TEXTURE_COORD_4 oder auch die Konstanten #GL_MAP2_TEXTURE_COORD_1, #GL_MAP2_TEXTURE_COORD_2, #GL_MAP2_TEXTURE_COORD_3 oder #GL_MAP2_TEXTURE_COORD_4 aktiviert ist, dann simuliert GL ein entsprechender Befehl gl.TexCoord().

Die Farb-, Farbindex-, Normale- und Texturkoordinatenwerte werden jedes mal errechnet, wenn die Berechunung für diese aktiviert wurde (ansonsten werden die aktuellen Werte benutzt). Diese berechneten Werte überschreiben allerdings nicht die aktuellen Farb-, Farbindex-, Normale- oder Texturkoordiantenwerte. Also, wenn gl.Vertex()-Befehle mit gl.EvalCoord()-Befehlen durchsetzt sind, wobei die Farb-, Normal- und Texturkoordinatenwerte den gl.Vertex()-Befehle zugeordnet sind, nicht von den Werten der gl.EvalCoord()-Befehle beeinflusst, sondern nur von den letzten gl.Color(), gl.Index(), gl.Normal() und gl.TexCoord() Befehlen.

Für Karten, die nicht aktiviert sind, werden keine Befehle ausgegeben. Wenn für eine bestimmte Dimension mehr als eine Texturauswertung aktiviert ist (z.B. #GL_MAP2_TEXTURE_COORD_1 und #GL_MAP2_TEXTURE_COORD_2), dann wird nur die Auswertung der Karte durchgeführt, die die größere Anzahl von Koordinaten ergibt (in diesem Fall #GL_MAP2_TEXTURE_COORD_2). #GL_MAP1_VERTEX_4 überschreibt #GL_MAP1_VERTEX_3 und #GL_MAP2_VERTEX_4 überschreibt #GL_MAP2_VERTEX_3 auf die gleiche Weise. Wenn für die angegebene Dimension weder eine Drei- noch eine Vierkomponenten-Scheitelkarte aktiviert ist, wird die Option beim gl.EvalCoord()-Befehl ignoriert.

Wenn Sie die automatische Normalen-Generierung aktiviert haben, indem Sie gl.Enable() mit dem Argument #GL_AUTO_NORMAL aufrufen, erzeugt gl.EvalCoord() Oberflächennormale analytisch, unabhängig vom Inhalt oder der Aktivierung der #GL_MAP2_NORMAL-Karte. Wenn die automatische Normalen-Generierung deaktiviert ist, wird die entsprechende Normalen-Karte #GL_MAP2_NORMAL, falls aktiviert, verwendet, um eine Normale zu erzeugen. Wenn weder die automatische Normalen-Generierung noch eine Normalen-Karte aktiviert ist, wird für den gl.EvalCoord()-Befehl keine Normalen generiert.

Alternativ können Sie auch eine Tabelle mit einer oder zwei Domänenkoordinaten an gl.EvalCoord() übergeben.

Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.

Eingaben
u
gibt einen Wert an, der die Domänekoordinate u zur Basisfunktion ist, die in einem vorherigen Befehl gl.Map() definiert wurde
v
optional: Gibt einen Wert an, der die Domänekoordinate v zur Basisfunktion ist, die in einem vorherigen Befehl gl.Map() definiert wurde
Verbundene get-operationen
gl.IsEnabled() mit dem Argument #GL_MAP1_VERTEX_3

gl.IsEnabled() mit dem Argument #GL_MAP1_VERTEX_4

gl.IsEnabled() mit dem Argument #GL_MAP1_INDEX

gl.IsEnabled() mit dem Argument #GL_MAP1_COLOR_4

gl.IsEnabled() mit dem Argument #GL_MAP1_NORMAL

gl.IsEnabled() mit dem Argument #GL_MAP1_TEXTURE_COORD_1

gl.IsEnabled() mit dem Argument #GL_MAP1_TEXTURE_COORD_2

gl.IsEnabled() mit dem Argument #GL_MAP1_TEXTURE_COORD_3

gl.IsEnabled() mit dem Argument #GL_MAP1_TEXTURE_COORD_4

gl.IsEnabled() mit dem Argument #GL_MAP2_VERTEX_3

gl.IsEnabled() mit dem Argument #GL_MAP2_VERTEX_4

gl.IsEnabled() mit dem Argument #GL_MAP2_INDEX

gl.IsEnabled() mit dem Argument #GL_MAP2_COLOR_4

gl.IsEnabled() mit dem Argument #GL_MAP2_NORMAL

gl.IsEnabled() mit dem Argument #GL_MAP2_TEXTURE_COORD_1

gl.IsEnabled() mit dem Argument #GL_MAP2_TEXTURE_COORD_2

gl.IsEnabled() mit dem Argument #GL_MAP2_TEXTURE_COORD_3

gl.IsEnabled() mit dem Argument #GL_MAP2_TEXTURE_COORD_4

gl.IsEnabled() mit dem Argument #GL_AUTO_NORMAL

gl.GetMap()


Navigation zeigen