Compartir a través de


Función gluTessNormal

La función gluTessNormal especifica un valor normal para un polígono.

Sintaxis

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

Parámetros

Tess

Objeto de teselación (creado con gluNewTess).

x

Componente de coordenada x de un normal.

y

Componente de coordenada y de un valor normal.

z

Componente de coordenada z de un normal.

Valor devuelto

Esta función no devuelve ningún valor.

Observaciones

La función gluTessNormal describe un normal para un polígono que defina. Todos los datos de entrada se proyectan en un plano perpendicular a uno de los tres ejes de coordenadas antes de la teselación, y todos los triángulos de salida se orientan en sentido contrario a las agujas del reloj con respecto a la normal. (Para obtener la orientación en el sentido de las agujas del reloj, invierte el signo de la normal proporcionada). Por ejemplo, si sabe que todos los polígonos se encuentran en el plano x-y, llame a gluTessNormal(tess, 0.0, 0.0, 1.0) antes de representar cualquier polígono.

Si el valor normal proporcionado es (0,0, 0,0, 0,0) (el valor predeterminado), el valor normal se determina de la siguiente manera:

  1. La dirección de la normal, hasta su signo, se encuentra ajustando un plano a los vértices, sin tener en cuenta cómo se conectan los vértices. Se espera que los datos de entrada se encuentran aproximadamente en el plano; de lo contrario, la proyección perpendicular a uno de los tres ejes de coordenadas puede cambiar sustancialmente la geometría.
  2. El signo de la normal se elige para que la suma de las áreas firmadas de todos los contornos de entrada no sea negativo (donde un contorno en sentido contrario a las agujas del reloj tiene un área positiva).

El normal proporcionado persiste hasta que otra llamada a gluTessNormal lo cambia.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Glu.h
Biblioteca
Glu32.lib
Archivo DLL
Glu32.dll

Consulte también

gluNewTess

gluTessBeginPolygon

gluTessEndPolygon