Freigeben über


D3DXVec2BaryCentric-Funktion (D3dx9math.h)

Hinweis

Die D3DX-Hilfsprogrammbibliothek ist veraltet. Es wird empfohlen, stattdessen DirectXMath zu verwenden.

Gibt einen Punkt in baryzentrischen Koordinaten unter Verwendung der angegebenen 2D-Vektoren zurück.

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 D3DXVECTOR2-Quellstruktur .

pV2 [in]

Typ: const D3DXVECTOR2*

Zeiger auf eine D3DXVECTOR2-Quellstruktur .

pV3 [in]

Typ: const D3DXVECTOR2*

Zeiger auf eine D3DXVECTOR2-Quellstruktur .

f [in]

Typ: FLOAT

Gewichtungsfaktor. Siehe Hinweise.

g [in]

Typ: FLOAT

Gewichtungsfaktor. Siehe Hinweise.

Rückgabewert

Typ: D3DXVECTOR2*

Zeiger auf eine D3DXVECTOR2-Struktur in baryzentrischen Koordinaten.

Bemerkungen

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

Jeder Punkt auf der Ebene V1V2V3 kann durch die baryzentrische 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 auf der Zeile V1V3.
  • Wenn (f>=0 &, & g==0 &, & 1-f-g>=0) liegt der Punkt auf der Linie V1V2.
  • Wenn (f>=0 &, & g>=0 &, & 1-f-g==0) liegt der Punkt auf der Zeile V2V3.

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.

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

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. (Diese Ressource ist in einigen Sprachen und Ländern möglicherweise nicht verfügbar.)

Anforderungen

Anforderung Wert
Header
D3dx9math.h
Bibliothek
D3dx9.lib

Siehe auch

Mathematische Funktionen