gluTessNormal-Funktion

Die gluTessNormal-Funktion gibt eine Normale für ein Polygon an.

Syntax

void WINAPI gluTessNormal(
   GLUtesselator *tess,
   GLdouble      x,
   GLdouble      y,
   GLdouble      z
);

Parameter

Tess

Das Mosaikobjekt (erstellt mit gluNewTess).

x

Die x-Koordinatenkomponente einer Normalen.

y

Die y-Koordinatenkomponente einer Normalen.

z

Die Z-Koordinatenkomponente einer Normalen.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Bemerkungen

Die funktion gluTessNormal beschreibt eine normale für ein von Ihnen definiertes Polygon. Alle Eingabedaten werden auf eine Ebene projiziert, die einer der drei Koordinatenachsen vor dem Mosaik entspricht, und alle Ausgabedreiecke sind im Hinblick auf die Normalität gegen den Uhrzeigersinn ausgerichtet. (Um die Ausrichtung im Uhrzeigersinn zu erhalten, kehren Sie das Vorzeichen der angegebenen Normalen um.) Wenn Sie beispielsweise wissen, dass sich alle Polygone in der x-y-Ebene befinden, rufen Sie gluTessNormal(tess, 0,0, 0.0, 1.0) auf, bevor Sie Polygone rendern.

Wenn die angegebene Normaleinstellung (0,0, 0,0, 0,0) (Standardwert) ist, wird die Normalität wie folgt bestimmt:

  1. Die Richtung der Normalität bis zu ihrem Vorzeichen wird gefunden, indem eine Ebene an die Scheitelpunkte ausgerichtet wird, ohne zu berücksichtigen, wie die Scheitelpunkte verbunden sind. Es wird erwartet, dass die Eingabedaten ungefähr auf der Ebene liegen. Andernfalls kann die Projektion auf eine der drei Koordinatenachsen die Geometrie erheblich ändern.
  2. Das Vorzeichen des Normalwerts wird ausgewählt, sodass die Summe der signierten Bereiche aller Eingabekonturen nicht negativer Art ist (wobei eine Kontur gegen den Uhrzeigersinn über einen positiven Bereich verfügt).

Die angegebene Normalität wird beibehalten, bis sie durch einen anderen Aufruf von gluTessNormal geändert wird.

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Glu.h
Bibliothek
Glu32.lib
DLL
Glu32.dll

Weitere Informationen

gluNewTess

gluTessBeginPolygon

gluTessEndPolygon