Поделиться через


D2D1_MATRIX_3X2_F

Представляет матрицу 3 на 2.

typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F;

Комментарии

D2D1_MATRIX_3X2 — это новое имя структуры D2D_MATRIX_3X2_F . Список полей, предоставляемых матрицей, см. в разделе D2D_MATRIX_3X2_F.

Чтобы упростить распространенные операции с матрицами, Direct2D предоставляет класс D2D1::Matrix3x2F , производный от структуры D2D1_MATRIX_3X2 . Класс 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, Windows Vista с пакетом обновления 2 (SP2) и обновление платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера
Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Минимальный поддерживаемый телефон
Windows Phone 8.1 [Windows Phone Приложения Silverlight 8.1 и среда выполнения Windows]
Заголовок
D2d1.h

См. также раздел

D2D1::Matrix3x2F

Общие сведения о классах Transform

Поворот объекта

Масштабирование объекта

Как выполнить неравномерное распределение объекта

Преобразование объекта

D2D_MATRIX_3X2_F