QCanvasRadialGradient Class

QCanvasRadialGradient is a brush for radial gradient painting. More...

Header: #include <QCanvasRadialGradient>
CMake: find_package(Qt6 REQUIRED COMPONENTS CanvasPainter)
target_link_libraries(mytarget PRIVATE Qt6::CanvasPainter)
Since: Qt 6.11
Inherits: QCanvasGradient

Public Functions

QCanvasRadialGradient(int centerPosition, int innerRadius, int outerRadius)
(since 6.12) QCanvasRadialGradient(int innerCenterPosition, int innerRadius, int outerCenterPosition, int outerRadius)
(since 6.12) QCanvasRadialGradient(int innerCenterX, int innerCenterY, int innerRadius, int outerCenterX, int outerCenterY, int outerRadius)
QCanvasRadialGradient(const QCanvasRadialGradient &)
QCanvasRadialGradient(QCanvasRadialGradient &&)
~QCanvasRadialGradient()
int centerPosition() const
(since 6.12) int innerCenterPosition() const
int innerRadius() const
(since 6.12) int outerCenterPosition() const
int outerRadius() const
void setCenterPosition(int x, int y)
void setCenterPosition(int center)
(since 6.12) void setInnerCenterPosition(int x, int y)
(since 6.12) void setInnerCenterPosition(int center)
void setInnerRadius(int radius)
(since 6.12) void setOuterCenterPosition(int x, int y)
(since 6.12) void setOuterCenterPosition(int center)
void setOuterRadius(int radius)
void swap(QCanvasRadialGradient &other)
QCanvasRadialGradient &operator=(QCanvasRadialGradient &&)
QCanvasRadialGradient &operator=(const QCanvasRadialGradient &)

Detailed Description

Radial gradient interpolate colors between start and end points, creating a circle shaped gradient. The gradient is controlled with centerPosition(), outerRadius() and innerRadius().

Four squares with radial gradients radiating from a center point, varying in color and center offset

Here is a simple example:

Square with a radial gradient from a yellow center through red to a blue edge
 QRectF rect1(0, 0, 200, 200);
 QCanvasRadialGradient rg(rect1.center(), 0, 100);
 rg.setColorAt(0.0, "#fdbb2d");
 rg.setColorAt(0.6, "#b21f1f");
 rg.setColorAt(1.0, "#1a2a6c");
 p->setFillStyle(rg);
 p->fillRect(rect1);

Member Function Documentation

QCanvasRadialGradient::QCanvasRadialGradient(int centerPosition, int innerRadius, int outerRadius)

Constructs a radial gradient. Gradient center position is centerPosition. Gradient inner radius is innerRadius and outer radius is outerRadius.

[since 6.12] QCanvasRadialGradient::QCanvasRadialGradient(int innerCenterPosition, int innerRadius, int outerCenterPosition, int outerRadius)

Constructs a radial gradient. Gradient inner center position is innerCenterPosition. Gradient outer center position is outerCenterPosition. Gradient inner radius is innerRadius and outer radius is outerRadius.

This function was introduced in Qt 6.12.

[since 6.12] QCanvasRadialGradient::QCanvasRadialGradient(int innerCenterX, int innerCenterY, int innerRadius, int outerCenterX, int outerCenterY, int outerRadius)

Constructs a radial gradient. Gradient inner center position is (innerCenterX, innerCenterY). Gradient outer center position is ( outerCenterX, outerCenterY). Gradient inner radius is innerRadius and outer radius is outerRadius.

This function was introduced in Qt 6.12.

[constexpr noexcept default] QCanvasRadialGradient::QCanvasRadialGradient(const QCanvasRadialGradient &)

Copy-constructs an instance of QCanvasRadialGradient.

[constexpr noexcept default] QCanvasRadialGradient::QCanvasRadialGradient(QCanvasRadialGradient &&)

Move-constructs an instance of QCanvasRadialGradient.

[constexpr noexcept default] QCanvasRadialGradient::~QCanvasRadialGradient()

Destroys the instance of QCanvasRadialGradient.

int QCanvasRadialGradient::centerPosition() const

Returns the center point of radial gradient. This is the same as outerCenterPosition().

See also setCenterPosition().

[since 6.12] int QCanvasRadialGradient::innerCenterPosition() const

Returns the inner center point of radial gradient.

This function was introduced in Qt 6.12.

See also setInnerCenterPosition().

int QCanvasRadialGradient::innerRadius() const

Returns the inner radius of radial gradient.

See also setInnerRadius().

[since 6.12] int QCanvasRadialGradient::outerCenterPosition() const

Returns the outer center point of radial gradient.

This function was introduced in Qt 6.12.

See also setOuterCenterPosition().

int QCanvasRadialGradient::outerRadius() const

Returns the outer radius of radial gradient.

See also setOuterRadius().

void QCanvasRadialGradient::setCenterPosition(int x, int y)

Sets the both center points of radial gradient to ( x, y). So after calling this, the gradient is symmetric (inner and outer positions are the same).

See also centerPosition().

void QCanvasRadialGradient::setCenterPosition(int center)

Sets the both center points of radial gradient to center. So after calling this, the gradient is symmetric (inner and outer positions are the same).

This is an overloaded function.

[since 6.12] void QCanvasRadialGradient::setInnerCenterPosition(int x, int y)

Sets the inner center point of radial gradient to ( x, y).

This function was introduced in Qt 6.12.

See also innerCenterPosition().

[since 6.12] void QCanvasRadialGradient::setInnerCenterPosition(int center)

Sets the inner center point of radial gradient to center.

This is an overloaded function.

This function was introduced in Qt 6.12.

void QCanvasRadialGradient::setInnerRadius(int radius)

Sets the inner radius of radial gradient to radius. Start color will be drawn at this radius from inner center position. The default inner radius is 0.0 meaning that gradient starts directly from inner center position.

See also innerRadius().

[since 6.12] void QCanvasRadialGradient::setOuterCenterPosition(int x, int y)

Sets the outer center point of radial gradient to ( x, y).

This function was introduced in Qt 6.12.

See also outerCenterPosition().

[since 6.12] void QCanvasRadialGradient::setOuterCenterPosition(int center)

Sets the outer center point of radial gradient to center.

This is an overloaded function.

This function was introduced in Qt 6.12.

void QCanvasRadialGradient::setOuterRadius(int radius)

Sets the outer radius of radial gradient to radius. End color will be drawn at this radius from outer center position.

See also outerRadius().

[noexcept] void QCanvasRadialGradient::swap(QCanvasRadialGradient &other)

Swaps this gradient with other. This operation is very fast and never fails.

[noexcept default] QCanvasRadialGradient &QCanvasRadialGradient::operator=(QCanvasRadialGradient &&)

Move-assigns other to this QCanvasRadialGradient instance.

[noexcept default] QCanvasRadialGradient &QCanvasRadialGradient::operator=(const QCanvasRadialGradient &)

Copy-assigns other to this QCanvasRadialGradient instance.