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


Метод Matrix3x2F::Rotation (d2d1helper.h)

Создает преобразование поворота, которое имеет указанный угол и центральную точку.

Синтаксис

Matrix3x2F Rotation(
  FLOAT         angle,
  D2D1_POINT_2F center
);

Параметры

angle

Тип: FLOAT

Угол поворота в градусах. Положительный угол создает поворот по часовой стрелке, а отрицательный угол — поворот против часовой стрелки.

center

Тип: D2D1_POINT_2F

Точка, относительно которой выполняется вращение.

Возвращаемое значение

Тип: Matrix3x2F

Новое преобразование поворота.

Комментарии

При вызове этого метода укажите centerPoint для поворота объекта и угол поворота в градусах. На следующем рисунке показан квадрат, повернутый на 45 градусов относительно его центральной точки.

Иллюстрация квадрата, повернутого по часовой стрелке на 45 градусов относительно центра исходного квадрата

Примеры

В следующем примере метод 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
Header d2d1helper.h
Библиотека D2d1.lib
DLL D2d1.dll

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

Matrix3x2F