以下是 RadialGradientBrushProperties 结构体的定义:
typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES {
D2D1_POINT_2F center;
D2D1_POINT_2F gradientOriginOffset;
FLOAT radiusX;
FLOAT radiusY;
} D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;
这个结构体有四个成员:
- center:渐变的中心点坐标。
- gradientOriginOffset:渐变起始点相对于中心点的偏移。
- radiusX:渐变的 X 轴半径。
- radiusY:渐变的 Y 轴半径。
你可以使用这个结构体来创建径向渐变刷子,例如:
#include <d2d1.h>
#include <D2d1helper.h>
ID2D1RadialGradientBrush *pRadialGradientBrush = nullptr;
D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES radialGradientProperties;
// 设置径向渐变的属性
radialGradientProperties.center = D2D1::Point2F(100.0f, 100.0f);
radialGradientProperties.gradientOriginOffset = D2D1::Point2F(0.0f, 0.0f);
radialGradientProperties.radiusX = 50.0f;
radialGradientProperties.radiusY = 50.0f;
// 创建径向渐变刷子
pRenderTarget->CreateRadialGradientBrush(
radialGradientProperties,
gradientStops,
gradientStopsCount,
&pRadialGradientBrush
);
请注意,上述代码中的 pRenderTarget 和 gradientStops 都是示例变量,你需要根据你的实际代码中的渲染目标和渐变停止点进行调整。
转载请注明出处:http://www.zyzy.cn/article/detail/25453/Win32 API/D2d1helper.h/RadialGradientBrushProperties