Compartir a través de


Función D3DXIntersectTri (D3DX9Mesh.h)

Calcula la intersección de un rayo y un triángulo.

Sintaxis

BOOL D3DXIntersectTri(
  _In_  const D3DXVECTOR3 *p0,
  _In_  const D3DXVECTOR3 *p1,
  _In_  const D3DXVECTOR3 *p2,
  _In_  const D3DXVECTOR3 *pRayPos,
  _In_  const D3DXVECTOR3 *pRayDir,
  _Out_       FLOAT       *pU,
  _Out_       FLOAT       *pV,
  _Out_       FLOAT       *pDist
);

Parámetros

p0 [in]

Tipo: const D3DXVECTOR3*

Puntero a una estructura D3DXVECTOR3 , que describe la primera posición del vértice de triángulo.

p1 [in]

Tipo: const D3DXVECTOR3*

Puntero a una estructura D3DXVECTOR3 , que describe la segunda posición del vértice de triángulo.

p2 [in]

Tipo: const D3DXVECTOR3*

Puntero a una estructura D3DXVECTOR3 , que describe la tercera posición del vértice de triángulo.

pRayPos [in]

Tipo: const D3DXVECTOR3*

Puntero a una estructura D3DXVECTOR3 , especificando el punto donde comienza el rayo.

pRayDir [in]

Tipo: const D3DXVECTOR3*

Puntero a una estructura D3DXVECTOR3 , especificando la dirección del rayo.

pU [out]

Tipo: FLOAT*

Coordenadas de aciertos Barycéntricos, U.

pV [out]

Tipo: FLOAT*

Coordenadas de posicionamiento barycéntricas, V.

pDist [out]

Tipo: FLOAT*

Distancia del parámetro de intersección de ray.

Valor devuelto

Tipo: BOOL

Devuelve TRUE si el rayo interseca el área del triángulo. De lo contrario, devuelve FALSE.

Comentarios

La función D3DXIntersect proporciona una manera de comprender los puntos de un triángulo, independientemente de dónde se encuentra realmente el triángulo. Esta función devuelve el punto resultante mediante la siguiente ecuación: V1 + U(V2 - V1) + V(V3 - V1).

Cualquier punto del plano V1V2V3 se puede representar mediante la coordenada barycéntrica (U,V). El parámetro U controla cuánto V2 se pondera en el resultado y el parámetro V controla cuánto se pondera en el resultado. Por último, el valor de [1 - (U + V)] controla cuánto V1 se pondera en el resultado.

Las coordenadas barycéntricas son una forma de coordenadas generales. En este contexto, el uso de coordenadas barycéntricas representa un cambio en los sistemas de coordenadas. Lo que es cierto para las coordenadas cartesianas es true para las coordenadas barycéntricas.

Las coordenadas Barycéntricas definen un punto dentro de un triángulo en términos de vértices del triángulo. Para obtener una descripción más detallada de las coordenadas barycéntricas, consulte descripción de coordenadas barycéntricas de Mathworld.

Requisitos

Requisito Value
Encabezado
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Consulte también

Funciones de malla