Fonction D3DXIntersectTri (D3DX9Mesh.h)

Calcule l’intersection d’un rayon et d’un triangle.

Syntaxe

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
);

Paramètres

p0 [in]

Type : const D3DXVECTOR3*

Pointeur vers une structure D3DXVECTOR3 , décrivant la position du premier sommet triangle.

p1 [in]

Type : const D3DXVECTOR3*

Pointeur vers une structure D3DXVECTOR3 , décrivant la position du deuxième sommet triangle.

p2 [in]

Type : const D3DXVECTOR3*

Pointeur vers une structure D3DXVECTOR3 , décrivant la position du troisième sommet triangle.

pRayPos [in]

Type : const D3DXVECTOR3*

Pointeur vers une structure D3DXVECTOR3 , spécifiant le point où commence le rayon.

pRayDir [in]

Type : const D3DXVECTOR3*

Pointeur vers une structure D3DXVECTOR3 , spécifiant la direction du rayon.

pU [out]

Type : FLOAT*

Coordonnées d’accès barycentriques, U.

pV [out]

Type : FLOAT*

Coordonnées d’accès barycentriques, V.

pDist [out]

Type : FLOAT*

Distance du paramètre d’intersection du rayon.

Valeur retournée

Type : BOOL

Retourne TRUE si le rayon croise la zone du triangle. Sinon, retourne FALSE.

Notes

La fonction D3DXIntersect permet de comprendre les points dans et autour d’un triangle, indépendamment de l’emplacement du triangle. Cette fonction retourne le point résultant à l’aide de l’équation suivante : V1 + U(V2 - V1) + V(V3 - V1).

N’importe quel point du plan V1V2V3 peut être représenté par la coordonnée barycentrique (U,V). Le paramètre U contrôle la pondération de V2 dans le résultat, et le paramètre V contrôle la pondération de V3 dans le résultat. Enfin, la valeur de [1 - (U + V)] contrôle la pondération de V1 dans le résultat.

Les coordonnées barycentriques sont une forme de coordonnées générales. Dans ce contexte, l’utilisation de coordonnées barycentriques représente un changement dans les systèmes de coordonnées. Ce qui est vrai pour les coordonnées cartésiennes est vrai pour les coordonnées barycentriques.

Les coordonnées barycentriques définissent un point à l’intérieur d’un triangle en termes de sommets du triangle. Pour obtenir une description plus détaillée des coordonnées barycentriques, consultez Description des coordonnées barycentriques de Mathworld.

Spécifications

Condition requise Valeur
En-tête
D3DX9Mesh.h
Bibliothèque
D3dx9.lib

Voir aussi

Fonctions de maillage