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


структура D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES (d2d1.h)

Содержит начальную точку и конечную точку оси градиента для ID2D1LinearGradientBrush.

Синтаксис

typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES {
  D2D1_POINT_2F startPoint;
  D2D1_POINT_2F endPoint;
} D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;

Члены

startPoint

Тип: D2D1_POINT_2F

В пространстве координат кисти — начальная точка оси градиента.

endPoint

Тип: D2D1_POINT_2F

В пространстве координат кисти — конечная точка оси градиента.

Комментарии

Используйте этот метод при создании новых объектов ID2D1LinearGradientBrush с помощью метода CreateLinearGradientBrush . Для удобства Direct2D предоставляет вспомогательную функцию D2D1::LinearGradientBrushProperties для создания новых структур D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES .

На следующем рисунке показано, как изменяется линейный градиент при изменении его начальной и конечной точек. Для первого градиента начальная точка имеет значение (0,0), а конечная точка — (150, 50); при этом создается диагональный градиент, который начинается с левого верхнего угла и распространяется на правый нижний угол закрашиваемой области. Если для начальной точки задано значение (0, 25), а для конечной точки задано значение (150, 25), создается горизонтальный градиент. Аналогичным образом при установке начальной точки значения (75, 0) и конечной точки (75, 50) создается вертикальный градиент. При установке начальной точки значения (0, 50) и конечной точки в (150, 0) создается диагональный градиент, который начинается с левого нижнего угла и распространяется на правый верхний угол закрашиваемой области.

Иллюстрация четырех градиентов с разными осями

Примеры

В следующем примере метод CreateLinearGradientBrush используется для создания ID2D1LinearGradientBrush (m_pLinearGradientBrush). Он использует вспомогательный метод D2D1::LinearGradientBrushProperties для создания структуры D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES , содержащей начальную точку (0, 0) и конечную точку (150, 150), и передает ее методу CreateLinearGradientBrush .

// The line that determines the direction of the gradient starts at
// the upper-left corner of the square and ends at the lower-right corner.

if (SUCCEEDED(hr))
{
    hr = m_pRenderTarget->CreateLinearGradientBrush(
        D2D1::LinearGradientBrushProperties(
            D2D1::Point2F(0, 0),
            D2D1::Point2F(150, 150)),
        pGradientStops,
        &m_pLinearGradientBrush
        );
}

Дополнительные сведения о создании и использовании кистей линейного градиента см. в разделах Создание кисти линейного градиента и Обзор кистей.

Требования

Требование Значение
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Верхняя часть d2d1.h

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

Обзор кистей

Создание линейной градиентной кисти