Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Die D3DX-Hilfsprogrammbibliothek ist veraltet. Es wird empfohlen, stattdessen DirectXMath zu verwenden.
Erstellt eine Transformationsmatrix. NULL-Argumente werden als Identitätstransformationen behandelt.
Syntax
D3DXMATRIX* D3DXMatrixTransformation(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR3 *pScalingCenter,
_In_ const D3DXQUATERNION *pScalingRotation,
_In_ const D3DXVECTOR3 *pScaling,
_In_ const D3DXVECTOR3 *pRotationCenter,
_In_ const D3DXQUATERNION *pRotation,
_In_ const D3DXVECTOR3 *pTranslation
);
Parameter
-
pOut [ein, aus]
-
Typ: D3DXMATRIX*
Zeiger auf die D3DXMATRIX-Struktur , die das Ergebnis des Vorgangs ist.
-
pScalingCenter [in]
-
Typ: const D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , um den Skalierungsmittelpunkt zu identifizieren. Wenn dieses Argument NULL ist, wird eine Msc-Matrix der Identität auf die Formel in Hinweise angewendet.
-
pScalingRotation [in]
-
Typ: const D3DXQUATERNION*
Zeiger auf eine D3DXQUATERNION-Struktur , die die Skalierungsrotation angibt. Wenn dieses Argument NULL ist, wird eine Msr-Matrix der Identität auf die Formel in Den Hinweisen angewendet.
-
pScaling [in]
-
Typ: const D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , den Skalierungsvektor. Wenn dieses Argument NULL ist, wird eine Ms-Matrix der Identität auf die Formel in Den Hinweisen angewendet.
-
pRotationCenter [in]
-
Typ: const D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , einen Punkt, der den Drehpunkt identifiziert. Wenn dieses Argument NULL ist, wird eine Mrc-Matrix der Identität auf die Formel in Den Hinweisen angewendet.
-
pRotation [in]
-
Typ: const D3DXQUATERNION*
Zeiger auf eine D3DXQUATERNION-Struktur , die die Drehung angibt. Wenn dieses Argument NULL ist, wird eine Mr-Identitätsmatrix auf die Formel in Hinweise angewendet.
-
pTranslation [in]
-
Typ: const D3DXVECTOR3*
Zeiger auf eine D3DXVECTOR3-Struktur , die die Übersetzung darstellt. Wenn dieses Argument NULL ist, wird eine Mt-Matrix der Identität auf die Formel in Anmerkungen angewendet.
Rückgabewert
Typ: D3DXMATRIX*
Zeiger auf eine D3DXMATRIX-Struktur , bei der es sich um die Transformationsmatrix handelt.
Bemerkungen
Diese Funktion berechnet die Transformationsmatrix mit der folgenden Formel, wobei die Matrixverkettung in der reihenfolge links nach rechts ausgewertet wird:
Mout = (Msc)⁻¹ * (Msr)⁻¹* Ms * Msr * Msc * (Mrc)⁻¹* Mr * Mrc * Mt
Dabei gilt Folgendes:
Mout = Ausgabematrix (pOut)
Msc = Skalierungszentrierungsmatrix (pScalingCenter)
Msr = Skalierungsrotation (pScalingRotation)
Ms = Skalierungsmatrix (pScaling)
Mrc = Mittelpunkt der Rotationsmatrix (pRotationCenter)
Mr = Rotationsmatrix (pRotation)
Mt = Übersetzungsmatrix (pTranslation)
Der Rückgabewert für diese Funktion ist derselbe Wert, der im pOut-Parameter zurückgegeben wird. Auf diese Weise kann die D3DXMatrixTransformation-Funktion als Parameter für eine andere Funktion verwendet werden.
Verwenden Sie für 2D-Transformationen D3DXMatrixTransformation2D.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|
Siehe auch