Classe Matrix3x2F (d2d1helper.h)
La classe Matrix3x2F représente une matrice 3 par 2 et fournit des méthodes pratiques pour créer des matrices.
Héritage
La classe Matrix3x2F hérite de D2D1_MATRIX_3X2_F.
Méthodes
La classe Matrix3x2F possède ces méthodes.
Matrix3x2F ::D eterminant Calcule le déterminant de la matrice. (Matrix3x2F.Determinant) |
Matrix3x2F ::Identity Crée une matrice d’identité. (Matrix3x2F.Identity) |
Matrix3x2F ::Invert Inverse la matrice, si elle est inversible. |
Matrix3x2F ::IsIdentity Indique si cette matrice est la matrice d’identité. (Matrix3x2F.IsIdentity) |
Matrix3x2F ::IsInvertible Indique si la matrice est inversible. |
Matrix3x2F ::Matrix3x2F Instancie une nouvelle instance de la classe Matrix3x2F qui contient les valeurs spécifiées. |
Matrix3x2F ::Matrix3x2F Instancie une nouvelle instance de la classe Matrix3x2F sans initialiser les valeurs de matrice. |
Matrix3x2F ::operator* La méthode Matrix3x2F ::operator-mult (d2d1helper.h) multiplie cette matrice par la matrice spécifiée et retourne le résultat. |
Matrix3x2F ::ReinterpretBaseType Convertit la matrice de D2D1_MATRIX_3X2_F spécifiée en matrice Matrix3x2F sans effectuer de copie. (surcharge 1/2) |
Matrix3x2F ::ReinterpretBaseType Convertit la matrice de D2D1_MATRIX_3X2_F spécifiée en matrice Matrix3x2F sans effectuer de copie. (surcharge 2/2) |
Matrix3x2F::Rotation Crée une transformation de rotation qui a l’angle et le point central spécifiés. |
Matrix3x2F::Scale Crée une transformation de mise à l’échelle qui a les facteurs d’échelle et le point central spécifiés. (surcharge 2/2) |
Matrix3x2F::Scale Crée une transformation de mise à l’échelle qui a les facteurs d’échelle et le point central spécifiés. (surcharge 1/2) |
Matrix3x2F ::SetProduct Multiplie les deux matrices et stocke le résultat dans cette matrice. (Matrix3x2F.SetProduct) |
Matrix3x2F::Skew Crée une transformation d’asymétrie qui a les valeurs de l’axe x et de l’axe y et le point central spécifiés. |
Matrix3x2F ::TransformPoint Utilise cette matrice pour transformer le point spécifié et retourne le résultat. |
Matrix3x2F::Translation Crée une transformation de traduction qui a les déplacements x et y spécifiés. (surcharge 1/2) |
Matrix3x2F::Translation Crée une transformation de traduction qui a les déplacements x et y spécifiés. (surcharge 2/2) |
Remarques
La classe Matrix3x2F fournit de nombreuses méthodes statiques pour créer des matrices de transformation. Le tableau suivant fournit les méthodes fréquemment utilisées et les rubriques de procédure qui leur sont associées.
Méthode | Procédure |
---|---|
Fausser | Guide pratique pour biaiser un objet |
Rotation | Comment faire pivoter un objet |
Mettre à l'échelle | Mise à l’échelle d’un objet |
Traduction | Comment traduire un objet |
Les transformations peuvent être appliquées à des objets ou à une surface de dessin entière. Pour appliquer des transformations à une surface de dessin entière, appelez la méthode ID2D1RenderTarget ::SetTransform . Pour des objets individuels, tels que des pinceaux ou des géométries, appelez la méthode ID2D1Brush ::SetTransform ou les méthodes ID2D1Geometry .
Exemples
L’exemple suivant utilise la méthode D2D1 ::Matrix3x2F ::Rotation pour créer une matrice de rotation qui fait pivoter un carré dans le sens des aiguilles d’une montre de 45 degrés autour du centre du carré et passe la matrice à la méthode SetTransform de la cible de rendu (m_pRenderTarget).
L’illustration suivante montre l’effet de l’application de la transformation de rotation précédente au carré. Le carré d’origine est un contour en pointillés, et le carré pivoté est un contour uni.
// 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);
Le code a été omis dans cet exemple. Pour plus d’informations sur les transformations, consultez Vue d’ensemble des transformations.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | d2d1helper.h (inclure D2d1helper.h) |