D3DXVec2BaryCentric-Funktion (D3dx9math.h)

Hinweis

Die D3DX-Hilfsbibliothek ist veraltet. Es wird empfohlen, directXMath stattdessen zu verwenden.

Gibt einen Punkt in BaryzenterKoordinaten zurück, wobei die angegebenen 2D-Vektoren verwendet werden.

Syntax

D3DXVECTOR2* D3DXVec2BaryCentric(
  _Out_       D3DXVECTOR2 *pOut,
  _In_  const D3DXVECTOR2 *pV1,
  _In_  const D3DXVECTOR2 *pV2,
  _In_  const D3DXVECTOR2 *pV3,
  _In_        FLOAT       f,
  _In_        FLOAT       g
);

Parameter

pOut [out]

Typ: D3DXVECTOR2*

Zeiger auf die D3DXVECTOR2-Struktur , die das Ergebnis des Vorgangs ist.

pV1 [in]

Typ: const D3DXVECTOR2*

Zeiger auf eine Quelle D3DXVECTOR2-Struktur .

pV2 [in]

Typ: const D3DXVECTOR2*

Zeiger auf eine Quelle D3DXVECTOR2-Struktur .

pV3 [in]

Typ: const D3DXVECTOR2*

Zeiger auf eine Quelle D3DXVECTOR2-Struktur .

f [in]

Typ: FLOAT

Gewichtungsfaktor. Siehe Hinweise.

g [in]

Typ: FLOAT

Gewichtungsfaktor. Siehe Hinweise.

Rückgabewert

Typ: D3DXVECTOR2*

Zeiger auf eine D3DXVECTOR2-Struktur in BaryzenterKoordinaten.

Hinweise

Die D3DXVec2BaryCentric-Funktion 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 Formel zurück: V1 + f(V2-V1) + g(V3-V1).

Jeder Punkt in der Ebene V1V2V3 kann durch die Barycentric-Koordinate (f,g) dargestellt werden. Der Parameter f steuert, wie viel V2 in das Ergebnis gewichtet wird, und der Parameter g steuert, wie viel V3 in das Ergebnis gewichtet wird. Schließlich steuert 1-f-g, wie viel V1 in das Ergebnis gewichtet wird.

Beachten Sie die folgenden Beziehungen.

  • Wenn (f>=0, g>=0&, && 1-f-g>=0&) liegt der Punkt innerhalb des Dreiecks V1V2V3.
  • Wenn (f ==0 , g>=0 &&, && 1-f-g>=0) liegt der Punkt in der Zeile V1V3.
  • Wenn (f>=0, g==0 &, && 1-f-g>=0&) liegt der Punkt in der Zeile V1V2.
  • Wenn (f>=0, g>=0&&, && 1-f-g==0) liegt der Punkt in der Zeile V2V3.

Baryzente Koordinaten sind eine Form allgemeiner Koordinaten. In diesem Zusammenhang stellt die Verwendung von BaryzenterKoordinaten eine Änderung in Koordinatensystemen dar. Was für Cartesian-Koordinaten gilt, gilt für BaryzenterKoordinaten.

Der Rückgabewert für diese Funktion ist der gleiche Wert, der im pOut-Parameter zurückgegeben wird. Auf diese Weise kann die D3DXVec2BaryCentric-Funktion als Parameter für eine andere Funktion verwendet werden.

Baryzente Koordinaten definieren einen Punkt innerhalb eines Dreiecks in Bezug auf die Vertices des Dreiecks. Eine ausführlichere Beschreibung der baryzenten Koordinaten finden Sie in der Beschreibung der baryzenten Koordinaten von Mathworld. (Diese Ressource ist möglicherweise in einigen Sprachen und Ländern nicht verfügbar.)

Requirements (Anforderungen)

Anforderung Wert
Header
D3dx9math.h
Bibliothek
D3dx9.lib

Weitere Informationen

Mathematische Funktionen