Funzione D3DXIntersectTri (D3DX9Mesh.h)
Calcola l'intersezione di un raggio e un triangolo.
Sintassi
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
);
Parametri
-
p0 [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , che descrive la prima posizione del vertice triangolo.
-
p1 [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , che descrive la seconda posizione del vertice triangolo.
-
p2 [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , che descrive la terza posizione del vertice triangolo.
-
pRayPos [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , specificando il punto in cui inizia il raggio.
-
pRayDir [in]
-
Tipo: const D3DXVECTOR3*
Puntatore a una struttura D3DXVECTOR3 , specificando la direzione del raggio.
-
pU [out]
-
Tipo: FLOAT*
Coordinate di hit barycentriche, U.
-
pV [out]
-
Tipo: FLOAT*
Coordinate di hit barycentriche, V.
-
pDist [out]
-
Tipo: FLOAT*
Distanza del parametro ray-intersezione.
Valore restituito
Tipo: BOOL
Restituisce TRUE se il raggio interseca l'area del triangolo. In caso contrario, restituisce FALSE.
Commenti
La funzione D3DXIntersect consente di comprendere i punti in e intorno a un triangolo, indipendentemente dalla posizione in cui si trova effettivamente il triangolo. Questa funzione restituisce il punto risultante usando l'equazione seguente: V1 + U(V2 - V1) + V(V3 - V1).
Qualsiasi punto nel piano V1V2V3 può essere rappresentato dalla coordinata barycentrica (U,V). Il parametro U controlla la quantità di V2 ponderata nel risultato e il parametro V controlla la quantità di V3 ponderata nel risultato. Infine, il valore di [1 - (U + V)] controlla la quantità di V1 ponderata nel risultato.
Le coordinate barycentriche sono una forma di coordinate generali. In questo contesto, l'uso di coordinate barycentriche rappresenta una modifica nei sistemi di coordinate. Ciò che contiene true per le coordinate cartesiane contiene true per le coordinate barycentriche.
Le coordinate barycentriche definiscono un punto all'interno di un triangolo in termini di vertici del triangolo. Per una descrizione più approfondita delle coordinate barycentriche, vedere Descrizione coordinate barycentriche di Mathworld.
Requisiti
Requisito | Valore |
---|---|
Intestazione |
|
Libreria |
|
Vedi anche