D2D1_MATRIX_3X2_F

表示 3 by-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 度,并将矩阵传递给呈现目标 (m_pRenderTarget) SetTransform 方法。

下图显示了将前面的旋转转换应用到正方形的效果。 原始正方形是一个虚线轮廓,旋转的正方形是实心轮廓。

illustration of a square rotated clockwise 45 degrees about the center of the original square

    // 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,Windows Vista sp2 和 Platform Update for Windows Vista [桌面应用|UWP 应用]
最低受支持的服务器
Windows Server 2008 R2、Windows Server 2008 sp2 和 Platform Update for Windows Server 2008 [桌面应用|UWP 应用]
支持的最低电话
Windows Phone 8.1 [Windows Phone Silverlight 8.1 和 Windows 运行时 应用]
标头
D2d1.h

另请参阅

D2D1::Matrix3x2F

转换概述

如何旋转对象

如何缩放对象

如何倾斜对象

如何翻译对象

D2D_MATRIX_3X2_F