Skip to content
This repository has been archived by the owner on Aug 6, 2021. It is now read-only.

Radial Gradient Brush

DarthAffe edited this page Jan 10, 2017 · 3 revisions

The RadialGradientBrush is one of the default brushes provided by CUE.NET.
It's used to draw a gradient as a "circle" inside a rectangle.

You are able to define the center-point of the circle and the gradient which should be drawn by either providing them as constructor-parameters or using the Center- and Gradient-Properties.
If you don't set a gradient the brush will return transparent for every LED.

The Center-Point is given as the percentage from the top left corner.
new PointF(0f, 0f) will be top left, new PointF(0,5f, 0,5f) in the center and new PointF(1f, 1f) in the bottom right.

The radius of the drawn circle is the biggest distance from the center to the farthest point of the rectangle this brush is rendered to.

If you want to create a background on your keyboard looking like this

you could use this code

GradientStop[] gradientStops =
{
    new GradientStop(0f, Color.Cyan),
    new GradientStop(1f, Color.Red)
};
LinearGradient cyanToRedGradient = new LinearGradient(gradientStops); // Gradient from cyan to red
PointF center = new PointF(0.5f, 0.5f); // Center
RadialGradientBrush radialBrush = new RadialGradientBrush(center, cyanToRedGradient);
keyboard.Brush = radialBrush;

Note that the this code won't produce exactly what is seen in the image above, since the gradient in this image isn't fully linear. But this shouldn't matter for this example.