Matrix3x2F-Klasse (d2d1helper.h)
Die Matrix3x2F-Klasse stellt eine 3-by-2-Matrix dar und bietet Komfortmethoden zum Erstellen von Matrizen.
Vererbung
Die Matrix3x2F-Klasse erbt von D2D1_MATRIX_3X2_F.
Methoden
Die Matrix3x2F-Klasse weist diese Methoden auf.
Matrix3x2F::D eterminant Berechnet die Determinante der Matrix. (Matrix3x2F.Determinant) |
Matrix3x2F::Identity Erstellt eine Identitätsmatrix. (Matrix3x2F.Identity) |
Matrix3x2F::Invertieren Invertiert die Matrix, wenn es invertierbar ist. |
Matrix3x2F::IsIdentity Gibt an, ob diese Matrix die Identitätsmatrix ist. (Matrix3x2F.IsIdentity) |
Matrix3x2F::IsInvertible Gibt an, ob die Matrix invertierbar ist. |
Matrix3x2F::Matrix3x2F Instanziiert eine neue Instanz der Matrix3x2F-Klasse, die die angegebenen Werte enthält. |
Matrix3x2F::Matrix3x2F Instanziiert eine neue Instanz der Matrix3x2F-Klasse, ohne die Matrixwerte zu initialisieren. |
Matrix3x2F::operator* Die Matrix3x2F::operator-mult (d2d1helper.h)-Methode multipliziert diese Matrix mit der angegebenen Matrix und gibt das Ergebnis zurück. |
Matrix3x2F::ReinterpretBaseType Wandelt die angegebene D2D1_MATRIX_3X2_F Matrix in eine Matrix3x2F um, ohne eine Kopie zu erstellen. (Überladung 1/2) |
Matrix3x2F::ReinterpretBaseType Wandelt die angegebene D2D1_MATRIX_3X2_F Matrix in eine Matrix3x2F um, ohne eine Kopie zu erstellen. (Überladung 2/2) |
Matrix3x2F::Drehung Erstellt eine Drehungstransformation, die den angegebenen Winkel und den Mittelpunkt aufweist. |
Matrix3x2F::Scale Erstellt eine Skalierungstransformation mit den angegebenen Skalierungsfaktoren und dem Mittelpunkt. (Überladung 2/2) |
Matrix3x2F::Scale Erstellt eine Skalierungstransformation mit den angegebenen Skalierungsfaktoren und dem Mittelpunkt. (Überladung 1/2) |
Matrix3x2F::SetProduct Multipliziert die beiden Matrizen und speichert das Ergebnis in dieser Matrix. (Matrix3x2F.SetProduct) |
Matrix3x2F::Skew Erstellt eine schräge Transformation, die die angegebenen x-Achsen- und y-Achsenwerte und den Mittelpunkt aufweist. |
Matrix3x2F::TransformPoint Verwendet diese Matrix zum Transformieren des angegebenen Punkts und gibt das Ergebnis zurück. |
Matrix3x2F::Übersetzung Erstellt eine Übersetzungstransformation, die die angegebenen x- und y-Verschiebungen aufweist. (Überladung 1/2) |
Matrix3x2F::Übersetzung Erstellt eine Übersetzungstransformation, die die angegebenen x- und y-Verschiebungen aufweist. (Überladung 2/2) |
Hinweise
Die Matrix3x2F-Klasse bietet viele statische Methoden zum Erstellen von Transformationsmatrizen. In der folgenden Tabelle werden häufig verwendete Methoden und die Themen bereitgestellt, die ihnen zugeordnet sind.
Methode | Vorgehensweise |
---|---|
Neigen | So wird's machen, wie ein Objekt gedreht wird |
Drehung | So drehen Sie ein Objekt |
Skalieren | So skalieren Sie ein Objekt |
Übersetzung | So übersetzen Sie ein Objekt |
Transformationen können auf Objekte oder auf eine gesamte Zeichnungsoberfläche angewendet werden. Um Transformationen auf eine gesamte Zeichnungsoberfläche anzuwenden, rufen Sie die ID2D1RenderTarget::SetTransform-Methode auf. Rufen Sie für einzelne Objekte, z. B. Pinsel oder Geometrien, die ID2D1Brush::SetTransform-Methode oder die ID2D1Geometrie-Methoden auf.
Beispiele
Im folgenden Beispiel wird die D2D1::Matrix3x2F::Rotationsmethode verwendet, um eine Drehungsmatrix zu erstellen, die einen quadratischen Uhrzeigersinn um 45 Grad über die Mitte des Quadrats dreht und die Matrix an die SetTransform-Methode des Renderziels (m_pRenderTarget) übergeben wird.
Die folgende Abbildung zeigt den Effekt, die vorherige Drehungstransformation auf das Quadrat anzuwenden. Das ursprüngliche Quadrat ist eine gepunktete Gliederung, und das gedrehte Quadrat ist eine solide Gliederung.

// Create a rectangle.
D2D1_RECT_F rectangle = D2D1::Rect(438.0f, 301.5f, 498.0f, 361.5f);
// Draw the rectangle.
m_pRenderTarget->DrawRectangle(
rectangle,
m_pOriginalShapeBrush,
1.0f,
m_pStrokeStyleDash
);
// Apply the rotation transform to the render target.
m_pRenderTarget->SetTransform(
D2D1::Matrix3x2F::Rotation(
45.0f,
D2D1::Point2F(468.0f, 331.5f))
);
// Fill the rectangle.
m_pRenderTarget->FillRectangle(rectangle, m_pFillBrush);
// Draw the transformed rectangle.
m_pRenderTarget->DrawRectangle(rectangle, m_pTransformedShapeBrush);
Code wurde aus diesem Beispiel weggelassen. Weitere Informationen zu Transformationen finden Sie in der Übersicht über Transformationen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | d2d1helper.h (einschließlich D2d1helper.h) |