ID3DX10Mesh::Intersect-Methode
Bestimmt, ob sich ein Strahl mit diesem Gitter überschneidet.
Syntax
HRESULT Intersect(
[in] D3DXVECTOR3 *pRayPos,
[in] D3DXVECTOR3 *pRayDir,
[in] UINT *pHitCount,
[in] UINT *pFaceIndex,
[in] float *pU,
[in] float *pV,
[in] float *pDist,
[out] ID3D10Blob **ppAllHits
);
Parameter
-
pRayPos [in]
-
Typ: D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , wobei der Punkt angegeben wird, an dem der Strahl beginnt.
-
pRayDir [in]
-
Typ: D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , die die Richtung des Strahls angibt.
-
pHitCount [in]
-
Typ: UINT*
Die Anzahl der Überschneiden des Strahls mit dem Gitter.
-
pFaceIndex [in]
-
Typ: UINT*
Zeiger auf einen Indexwert des Gesichts, der dem Strahlenursprung am nächsten ist, wenn pHit TRUE ist.
-
pU [in]
-
Typ: float*
Zeiger auf eine baryzentrische Trefferkoordinate, U.
-
pV [in]
-
Typ: float*
Zeiger auf eine baryzentrische Trefferkoordinate, V.
-
pDist [in]
-
Typ: float*
Zeiger auf den Abstand eines Strahlschnittparameters.
-
ppAllHits [out]
-
Typ: ID3D10Blob**
Zeiger auf eine ID3D10Blob-Schnittstelle, die ein Array von D3DX10_INTERSECT_INFO-Strukturen enthält. Dies ist eine Liste aller Treffer, die im Schnittpunkttest aufgetreten sind.
Rückgabewert
Typ: HRESULT
Der Rückgabewert ist einer der In Direct3D 10-Rückgabecodes aufgeführten Werte.
Bemerkungen
Diese API bietet eine Möglichkeit, Punkte in und um ein Dreieck zu verstehen, unabhängig davon, wo sich das Dreieck tatsächlich befindet. Diese Funktion gibt den resultierenden Punkt mithilfe der folgenden Gleichung zurück: V1 + U(V2 - V1) + V(V3 - V1).
Jeder Punkt auf der Ebene V1V2V3 kann durch die baryzentrische Koordinate (U,V) dargestellt werden. Der Parameter U steuert, wie viel V2 in das Ergebnis gewichtet wird, und der Parameter V steuert, wie viel V3 in das Ergebnis gewichtet wird. Schließlich steuert der Wert von [1 - (U + V)] die Gewichtung von V1 in das Ergebnis.
Baryzentrische Koordinaten sind eine Form allgemeiner Koordinaten. In diesem Kontext stellt die Verwendung baryzentrischer Koordinaten eine Änderung der Koordinatensysteme dar. Was für kartesische Koordinaten gilt, gilt für baryzentrische Koordinaten.
Baryzentrische Koordinaten definieren einen Punkt innerhalb eines Dreiecks in Bezug auf die Scheitelpunkte des Dreiecks. Eine ausführlichere Beschreibung baryzentrischer Koordinaten finden Sie unter Mathworlds Baryzentrische Koordinatenbeschreibung.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|
Siehe auch