Freigeben über


XMPlaneFromPoints-Funktion (directxmath.h)

Berechnet die Gleichung einer Ebene, die aus drei Punkten in der Ebene erstellt wird.

Syntax

XMVECTOR XM_CALLCONV XMPlaneFromPoints(
  [in] FXMVECTOR Point1,
  [in] FXMVECTOR Point2,
  [in] FXMVECTOR Point3
) noexcept;

Parameter

[in] Point1

3D-Vektor, der einen Punkt auf der Ebene beschreibt.

[in] Point2

3D-Vektor, der einen Punkt auf der Ebene beschreibt.

[in] Point3

3D-Vektor, der einen Punkt auf der Ebene beschreibt.

Rückgabewert

Gibt einen Vektor zurück, dessen Komponenten die Koeffizienten der Ebene (A, B, C, D) für die Ebenengleichung sind.

XMVECTOR Result;
XMVECTOR N;
XMVECTOR D;

XMVECTOR V21 = XMVectorSubtract(Point1, Point2);
XMVECTOR V31 = XMVectorSubtract(Point1, Point3);

N = XMVector3Cross(V21, V31);
N = XMVector3Normalize(N);

D = XMPlaneDotNormal(N, Point1);

Result.x = N.x;
Result.y = N.y;
Result.z = N.z;
Result.w = -D.w;

return Result;

.

Hinweise

Der folgende Pseudocode veranschaulicht den Betrieb der Funktion:

Ax+By+Cz+D=0

Plattformanforderungen

Microsoft Visual Studio 2010 oder Microsoft Visual Studio 2012 mit dem Windows SDK für Windows 8. Unterstützt für Win32-Desktop-Apps, Windows Store-Apps und Windows Phone 8-Apps.

Anforderungen

   
Zielplattform Windows
Kopfzeile directxmath.h

Weitere Informationen

Funktionen der DirectXMath-Bibliotheksebene