D2D1_MATRIX_3X2_F

表示 3 乘 2 矩阵。

typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F;

备注

D2D1_MATRIX_3X2D2D_MATRIX_3X2_F 结构的新名称。 有关矩阵提供的字段列表,请参阅 D2D_MATRIX_3X2_F

为了简化常见的矩阵操作,Direct2D 提供了派生自 D2D1_MATRIX_3X2 结构的 D2D1::Matrix3x2F 类。 Matrix3x2F 类提供了一组用于执行常见任务的帮助程序方法,例如创建转换或倾斜矩阵。

示例

以下示例使用 D2D1::Matrix3x2F::Rotation 方法创建一个旋转矩阵,该旋转矩阵将正方形中心顺时针旋转 45 度,并将该矩阵传递到呈现目标的 SetTransform 方法 (m_pRenderTarget) 。

下图显示了将上述旋转转换应用于正方形的效果。 原始正方形是虚线轮廓,旋转的正方形是实心轮廓。

在原始正方形的中心方向旋转 45 度的正方形图示

    // 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);

此示例中已省略代码。 有关转换的详细信息,请参阅转换概述

要求

要求
最低受支持的客户端
Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器
Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用]
最低支持电话
Windows Phone 8.1 [Windows Phone Silverlight 8.1 和 Windows 运行时 应用]
标头
D2d1.h

请参阅

D2D1::Matrix3x2F

转换概述

如何旋转对象

如何缩放对象

如何倾斜对象

如何翻译对象

D2D_MATRIX_3X2_F