Struct qt_gui::QRadialGradient
source · #[repr(C)]pub struct QRadialGradient { /* private fields */ }
Expand description
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
C++ class: QRadialGradient
.
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Qt supports both simple and extended radial gradients.
Simple radial gradients interpolate colors between a focal point and end points on a circle surrounding it. Extended radial gradients interpolate colors between a focal circle and a center circle. Points outside the cone defined by the two circles will be transparent. For simple radial gradients the focal point is adjusted to lie inside the center circle, whereas the focal point can have any position in an extended radial gradient.
Outside the end points the gradient is either padded, reflected or repeated depending on the currently set spread method:
PadSpread (default) | ReflectSpread | RepeatSpread |
The colors in a gradient is defined using stop points of the QGradientStop type, i.e. a position and a color. Use the QGradient::setColorAt() or the QGradient::setStops() function to define the stop points. It is the gradient's complete set of stop points that describes how the gradient area should be filled. If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
In addition to the functions inherited from QGradient, the QRadialGradient class provides the center(), focalPoint() and radius() functions returning the gradient's center, focal point and radius respectively.
Implementations§
source§impl QRadialGradient
impl QRadialGradient
sourcepub unsafe fn center(&self) -> CppBox<QPointF>
pub unsafe fn center(&self) -> CppBox<QPointF>
Returns the center of this radial gradient in logical coordinates.
Calls C++ function: QPointF QRadialGradient::center() const
.
Returns the center of this radial gradient in logical coordinates.
See also setCenter() and QGradient::stops().
sourcepub unsafe fn center_radius(&self) -> c_double
pub unsafe fn center_radius(&self) -> c_double
Returns the center radius of this radial gradient in logical coordinates.
Calls C++ function: double QRadialGradient::centerRadius() const
.
Returns the center radius of this radial gradient in logical coordinates.
This function was introduced in Qt 4.8.
See also setCenterRadius() and QGradient::stops().
sourcepub unsafe fn copy_from(
&self,
other: impl CastInto<Ref<QRadialGradient>>
) -> Ref<QRadialGradient>
pub unsafe fn copy_from( &self, other: impl CastInto<Ref<QRadialGradient>> ) -> Ref<QRadialGradient>
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Calls C++ function: QRadialGradient& QRadialGradient::operator=(const QRadialGradient& other)
.
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Qt supports both simple and extended radial gradients.
Simple radial gradients interpolate colors between a focal point and end points on a circle surrounding it. Extended radial gradients interpolate colors between a focal circle and a center circle. Points outside the cone defined by the two circles will be transparent. For simple radial gradients the focal point is adjusted to lie inside the center circle, whereas the focal point can have any position in an extended radial gradient.
Outside the end points the gradient is either padded, reflected or repeated depending on the currently set spread method:
PadSpread (default) | ReflectSpread | RepeatSpread |
The colors in a gradient is defined using stop points of the QGradientStop type, i.e. a position and a color. Use the QGradient::setColorAt() or the QGradient::setStops() function to define the stop points. It is the gradient's complete set of stop points that describes how the gradient area should be filled. If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
In addition to the functions inherited from QGradient, the QRadialGradient class provides the center(), focalPoint() and radius() functions returning the gradient's center, focal point and radius respectively.
sourcepub unsafe fn focal_point(&self) -> CppBox<QPointF>
pub unsafe fn focal_point(&self) -> CppBox<QPointF>
Returns the focal point of this radial gradient in logical coordinates.
Calls C++ function: QPointF QRadialGradient::focalPoint() const
.
Returns the focal point of this radial gradient in logical coordinates.
See also setFocalPoint() and QGradient::stops().
sourcepub unsafe fn focal_radius(&self) -> c_double
pub unsafe fn focal_radius(&self) -> c_double
Returns the focal radius of this radial gradient in logical coordinates.
Calls C++ function: double QRadialGradient::focalRadius() const
.
Returns the focal radius of this radial gradient in logical coordinates.
This function was introduced in Qt 4.8.
See also setFocalRadius() and QGradient::stops().
sourcepub unsafe fn new() -> CppBox<QRadialGradient>
pub unsafe fn new() -> CppBox<QRadialGradient>
Constructs a simple radial gradient with the center and focal point at (0, 0) with a radius of 1.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient()
.
Constructs a simple radial gradient with the center and focal point at (0, 0) with a radius of 1.
sourcepub unsafe fn from_q_point_f_double_q_point_f(
center: impl CastInto<Ref<QPointF>>,
radius: c_double,
focal_point: impl CastInto<Ref<QPointF>>
) -> CppBox<QRadialGradient>
pub unsafe fn from_q_point_f_double_q_point_f( center: impl CastInto<Ref<QPointF>>, radius: c_double, focal_point: impl CastInto<Ref<QPointF>> ) -> CppBox<QRadialGradient>
Constructs a simple radial gradient with the given center, radius and focalPoint.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(const QPointF& center, double radius, const QPointF& focalPoint)
.
Constructs a simple radial gradient with the given center, radius and focalPoint.
Note: If the given focal point is outside the circle defined by the center point and radius, it will be re-adjusted to lie at a point on the circle where it intersects with the line from center to focalPoint.
See also QGradient::setColorAt() and QGradient::setStops().
sourcepub unsafe fn from_5_double(
cx: c_double,
cy: c_double,
radius: c_double,
fx: c_double,
fy: c_double
) -> CppBox<QRadialGradient>
pub unsafe fn from_5_double( cx: c_double, cy: c_double, radius: c_double, fx: c_double, fy: c_double ) -> CppBox<QRadialGradient>
Constructs a simple radial gradient with the given center (cx, cy), radius and focal point (fx, fy).
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(double cx, double cy, double radius, double fx, double fy)
.
Constructs a simple radial gradient with the given center (cx, cy), radius and focal point (fx, fy).
Note: If the given focal point is outside the circle defined by the center (cx, cy) and the radius it will be re-adjusted to the intersection between the line from the center to the focal point and the circle.
See also QGradient::setColorAt() and QGradient::setStops().
sourcepub unsafe fn from_q_point_f_double(
center: impl CastInto<Ref<QPointF>>,
radius: c_double
) -> CppBox<QRadialGradient>
pub unsafe fn from_q_point_f_double( center: impl CastInto<Ref<QPointF>>, radius: c_double ) -> CppBox<QRadialGradient>
Constructs a simple radial gradient with the given center, radius and the focal point in the circle center.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(const QPointF& center, double radius)
.
Constructs a simple radial gradient with the given center, radius and the focal point in the circle center.
See also QGradient::setColorAt() and QGradient::setStops().
sourcepub unsafe fn from_3_double(
cx: c_double,
cy: c_double,
radius: c_double
) -> CppBox<QRadialGradient>
pub unsafe fn from_3_double( cx: c_double, cy: c_double, radius: c_double ) -> CppBox<QRadialGradient>
Constructs a simple radial gradient with the center at (cx, cy) and the specified radius. The focal point lies at the center of the circle.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(double cx, double cy, double radius)
.
Constructs a simple radial gradient with the center at (cx, cy) and the specified radius. The focal point lies at the center of the circle.
See also QGradient::setColorAt() and QGradient::setStops().
sourcepub unsafe fn from_q_point_f_double_q_point_f_double(
center: impl CastInto<Ref<QPointF>>,
center_radius: c_double,
focal_point: impl CastInto<Ref<QPointF>>,
focal_radius: c_double
) -> CppBox<QRadialGradient>
pub unsafe fn from_q_point_f_double_q_point_f_double( center: impl CastInto<Ref<QPointF>>, center_radius: c_double, focal_point: impl CastInto<Ref<QPointF>>, focal_radius: c_double ) -> CppBox<QRadialGradient>
Constructs an extended radial gradient with the given center, centerRadius, focalPoint, and focalRadius.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(const QPointF& center, double centerRadius, const QPointF& focalPoint, double focalRadius)
.
Constructs an extended radial gradient with the given center, centerRadius, focalPoint, and focalRadius.
This function was introduced in Qt 4.8.
sourcepub unsafe fn from_6_double(
cx: c_double,
cy: c_double,
center_radius: c_double,
fx: c_double,
fy: c_double,
focal_radius: c_double
) -> CppBox<QRadialGradient>
pub unsafe fn from_6_double( cx: c_double, cy: c_double, center_radius: c_double, fx: c_double, fy: c_double, focal_radius: c_double ) -> CppBox<QRadialGradient>
Constructs an extended radial gradient with the given center (cx, cy), center radius, centerRadius, focal point, (fx, fy), and focal radius focalRadius.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(double cx, double cy, double centerRadius, double fx, double fy, double focalRadius)
.
Constructs an extended radial gradient with the given center (cx, cy), center radius, centerRadius, focal point, (fx, fy), and focal radius focalRadius.
This function was introduced in Qt 4.8.
sourcepub unsafe fn new_copy(
other: impl CastInto<Ref<QRadialGradient>>
) -> CppBox<QRadialGradient>
pub unsafe fn new_copy( other: impl CastInto<Ref<QRadialGradient>> ) -> CppBox<QRadialGradient>
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Calls C++ function: [constructor] void QRadialGradient::QRadialGradient(const QRadialGradient& other)
.
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Qt supports both simple and extended radial gradients.
Simple radial gradients interpolate colors between a focal point and end points on a circle surrounding it. Extended radial gradients interpolate colors between a focal circle and a center circle. Points outside the cone defined by the two circles will be transparent. For simple radial gradients the focal point is adjusted to lie inside the center circle, whereas the focal point can have any position in an extended radial gradient.
Outside the end points the gradient is either padded, reflected or repeated depending on the currently set spread method:
PadSpread (default) | ReflectSpread | RepeatSpread |
The colors in a gradient is defined using stop points of the QGradientStop type, i.e. a position and a color. Use the QGradient::setColorAt() or the QGradient::setStops() function to define the stop points. It is the gradient's complete set of stop points that describes how the gradient area should be filled. If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
In addition to the functions inherited from QGradient, the QRadialGradient class provides the center(), focalPoint() and radius() functions returning the gradient's center, focal point and radius respectively.
sourcepub unsafe fn radius(&self) -> c_double
pub unsafe fn radius(&self) -> c_double
Returns the radius of this radial gradient in logical coordinates.
Calls C++ function: double QRadialGradient::radius() const
.
Returns the radius of this radial gradient in logical coordinates.
Equivalent to centerRadius()
See also setRadius() and QGradient::stops().
sourcepub unsafe fn set_center_1a(&self, center: impl CastInto<Ref<QPointF>>)
pub unsafe fn set_center_1a(&self, center: impl CastInto<Ref<QPointF>>)
Sets the center of this radial gradient in logical coordinates to center.
Calls C++ function: void QRadialGradient::setCenter(const QPointF& center)
.
Sets the center of this radial gradient in logical coordinates to center.
This function was introduced in Qt 4.2.
See also center().
sourcepub unsafe fn set_center_2a(&self, x: c_double, y: c_double)
pub unsafe fn set_center_2a(&self, x: c_double, y: c_double)
This is an overloaded function.
Calls C++ function: void QRadialGradient::setCenter(double x, double y)
.
This is an overloaded function.
Sets the center of this radial gradient in logical coordinates to (x, y).
This function was introduced in Qt 4.2.
See also center().
sourcepub unsafe fn set_center_radius(&self, radius: c_double)
pub unsafe fn set_center_radius(&self, radius: c_double)
Sets the center radius of this radial gradient in logical coordinates to radius
Calls C++ function: void QRadialGradient::setCenterRadius(double radius)
.
Sets the center radius of this radial gradient in logical coordinates to radius
This function was introduced in Qt 4.8.
See also centerRadius().
sourcepub unsafe fn set_focal_point_1a(
&self,
focal_point: impl CastInto<Ref<QPointF>>
)
pub unsafe fn set_focal_point_1a( &self, focal_point: impl CastInto<Ref<QPointF>> )
Sets the focal point of this radial gradient in logical coordinates to focalPoint.
Calls C++ function: void QRadialGradient::setFocalPoint(const QPointF& focalPoint)
.
Sets the focal point of this radial gradient in logical coordinates to focalPoint.
This function was introduced in Qt 4.2.
See also focalPoint().
sourcepub unsafe fn set_focal_point_2a(&self, x: c_double, y: c_double)
pub unsafe fn set_focal_point_2a(&self, x: c_double, y: c_double)
This is an overloaded function.
Calls C++ function: void QRadialGradient::setFocalPoint(double x, double y)
.
This is an overloaded function.
Sets the focal point of this radial gradient in logical coordinates to (x, y).
This function was introduced in Qt 4.2.
See also focalPoint().
sourcepub unsafe fn set_focal_radius(&self, radius: c_double)
pub unsafe fn set_focal_radius(&self, radius: c_double)
Sets the focal radius of this radial gradient in logical coordinates to radius
Calls C++ function: void QRadialGradient::setFocalRadius(double radius)
.
Sets the focal radius of this radial gradient in logical coordinates to radius
This function was introduced in Qt 4.8.
See also focalRadius().
sourcepub unsafe fn set_radius(&self, radius: c_double)
pub unsafe fn set_radius(&self, radius: c_double)
Sets the radius of this radial gradient in logical coordinates to radius
Calls C++ function: void QRadialGradient::setRadius(double radius)
.
Sets the radius of this radial gradient in logical coordinates to radius
Equivalent to setCenterRadius()
This function was introduced in Qt 4.2.
See also radius().
Methods from Deref<Target = QGradient>§
sourcepub unsafe fn coordinate_mode(&self) -> CoordinateMode
pub unsafe fn coordinate_mode(&self) -> CoordinateMode
Returns the coordinate mode of this gradient. The default mode is LogicalMode.
Calls C++ function: QGradient::CoordinateMode QGradient::coordinateMode() const
.
Returns the coordinate mode of this gradient. The default mode is LogicalMode.
This function was introduced in Qt 4.4.
See also setCoordinateMode().
sourcepub unsafe fn copy_from(
&self,
other: impl CastInto<Ref<QGradient>>
) -> Ref<QGradient>
pub unsafe fn copy_from( &self, other: impl CastInto<Ref<QGradient>> ) -> Ref<QGradient>
The QGradient class is used in combination with QBrush to specify gradient fills.
Calls C++ function: QGradient& QGradient::operator=(const QGradient& other)
.
The QGradient class is used in combination with QBrush to specify gradient fills.
Qt currently supports three types of gradient fills:
- Linear gradients interpolate colors between start and end points.
- Simple radial gradients interpolate colors between a focal point and end points on a circle surrounding it.
- Extended radial gradients interpolate colors between a center and a focal circle.
- Conical gradients interpolate colors around a center point.
A gradient's type can be retrieved using the type() function. Each of the types is represented by a subclass of QGradient:
The colors in a gradient are defined using stop points of the QGradientStop type; i.e., a position and a color. Use the setColorAt() function to define a single stop point. Alternatively, use the setStops() function to define several stop points in one go. Note that the latter function replaces the current set of stop points.
It is the gradient's complete set of stop points (accessible through the stops() function) that describes how the gradient area should be filled. If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
A diagonal linear gradient from black at (100, 100) to white at (200, 200) could be specified like this:
QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200)); linearGrad.setColorAt(0, Qt::black); linearGrad.setColorAt(1, Qt::white);
A gradient can have an arbitrary number of stop points. The following would create a radial gradient starting with red in the center, blue and then green on the edges:
QRadialGradient radialGrad(QPointF(100, 100), 100); radialGrad.setColorAt(0, Qt::red); radialGrad.setColorAt(0.5, Qt::blue); radialGrad.setColorAt(1, Qt::green);
It is possible to repeat or reflect the gradient outside its area by specifiying the spread method using the setSpread() function. The default is to pad the outside area with the color at the closest stop point. The currently set spread method can be retrieved using the spread() function. The QGradient::Spread enum defines three different methods:
Note that the setSpread() function only has effect for linear and radial gradients. The reason is that the conical gradient is closed by definition, i.e. the conical gradient fills the entire circle from 0 - 360 degrees, while the boundary of a radial or a linear gradient can be specified through its radius or final stop points, respectively.
The gradient coordinates can be specified in logical coordinates, relative to device coordinates, or relative to object bounding box coordinates. The coordinate mode can be set using the setCoordinateMode() function. The default is LogicalMode, where the gradient coordinates are specified in the same way as the object coordinates. To retrieve the currently set coordinate mode use coordinateMode().
sourcepub unsafe fn interpolation_mode(&self) -> InterpolationMode
pub unsafe fn interpolation_mode(&self) -> InterpolationMode
Calls C++ function: QGradient::InterpolationMode QGradient::interpolationMode() const
.
sourcepub unsafe fn set_color_at(
&self,
pos: c_double,
color: impl CastInto<Ref<QColor>>
)
pub unsafe fn set_color_at( &self, pos: c_double, color: impl CastInto<Ref<QColor>> )
Creates a stop point at the given position with the given color. The given position must be in the range 0 to 1.
Calls C++ function: void QGradient::setColorAt(double pos, const QColor& color)
.
sourcepub unsafe fn set_coordinate_mode(&self, mode: CoordinateMode)
pub unsafe fn set_coordinate_mode(&self, mode: CoordinateMode)
Sets the coordinate mode of this gradient to mode. The default mode is LogicalMode.
Calls C++ function: void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
.
Sets the coordinate mode of this gradient to mode. The default mode is LogicalMode.
This function was introduced in Qt 4.4.
See also coordinateMode().
sourcepub unsafe fn set_interpolation_mode(&self, mode: InterpolationMode)
pub unsafe fn set_interpolation_mode(&self, mode: InterpolationMode)
Calls C++ function: void QGradient::setInterpolationMode(QGradient::InterpolationMode mode)
.
sourcepub unsafe fn set_spread(&self, spread: Spread)
pub unsafe fn set_spread(&self, spread: Spread)
Specifies the spread method that should be used for this gradient.
Calls C++ function: void QGradient::setSpread(QGradient::Spread spread)
.
Specifies the spread method that should be used for this gradient.
Note that this function only has effect for linear and radial gradients.
See also spread().
sourcepub unsafe fn set_stops(
&self,
stops: impl CastInto<Ref<QVectorOfQPairOfDoubleQColor>>
)
pub unsafe fn set_stops( &self, stops: impl CastInto<Ref<QVectorOfQPairOfDoubleQColor>> )
Replaces the current set of stop points with the given stopPoints. The positions of the points must be in the range 0 to 1, and must be sorted with the lowest point first.
Calls C++ function: void QGradient::setStops(const QVector<QPair<double, QColor>>& stops)
.
Replaces the current set of stop points with the given stopPoints. The positions of the points must be in the range 0 to 1, and must be sorted with the lowest point first.
See also setColorAt() and stops().
sourcepub unsafe fn spread(&self) -> Spread
pub unsafe fn spread(&self) -> Spread
Returns the spread method use by this gradient. The default is PadSpread.
Calls C++ function: QGradient::Spread QGradient::spread() const
.
sourcepub unsafe fn stops(&self) -> CppBox<QVectorOfQPairOfDoubleQColor>
pub unsafe fn stops(&self) -> CppBox<QVectorOfQPairOfDoubleQColor>
Returns the stop points for this gradient.
Calls C++ function: QVector<QPair<double, QColor>> QGradient::stops() const
.
Returns the stop points for this gradient.
If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
See also setStops() and setColorAt().
Trait Implementations§
source§impl CppDeletable for QRadialGradient
impl CppDeletable for QRadialGradient
source§unsafe fn delete(&self)
unsafe fn delete(&self)
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Calls C++ function: [destructor] void QRadialGradient::~QRadialGradient()
.
The QRadialGradient class is used in combination with QBrush to specify a radial gradient brush.
Qt supports both simple and extended radial gradients.
Simple radial gradients interpolate colors between a focal point and end points on a circle surrounding it. Extended radial gradients interpolate colors between a focal circle and a center circle. Points outside the cone defined by the two circles will be transparent. For simple radial gradients the focal point is adjusted to lie inside the center circle, whereas the focal point can have any position in an extended radial gradient.
Outside the end points the gradient is either padded, reflected or repeated depending on the currently set spread method:
PadSpread (default) | ReflectSpread | RepeatSpread |
The colors in a gradient is defined using stop points of the QGradientStop type, i.e. a position and a color. Use the QGradient::setColorAt() or the QGradient::setStops() function to define the stop points. It is the gradient's complete set of stop points that describes how the gradient area should be filled. If no stop points have been specified, a gradient of black at 0 to white at 1 is used.
In addition to the functions inherited from QGradient, the QRadialGradient class provides the center(), focalPoint() and radius() functions returning the gradient's center, focal point and radius respectively.
source§impl Deref for QRadialGradient
impl Deref for QRadialGradient
source§impl StaticDowncast<QRadialGradient> for QGradient
impl StaticDowncast<QRadialGradient> for QGradient
source§unsafe fn static_downcast(ptr: Ptr<QGradient>) -> Ptr<QRadialGradient>
unsafe fn static_downcast(ptr: Ptr<QGradient>) -> Ptr<QRadialGradient>
Calls C++ function: QRadialGradient* static_cast<QRadialGradient*>(QGradient* ptr)
.
source§impl StaticUpcast<QGradient> for QRadialGradient
impl StaticUpcast<QGradient> for QRadialGradient
source§unsafe fn static_upcast(ptr: Ptr<QRadialGradient>) -> Ptr<QGradient>
unsafe fn static_upcast(ptr: Ptr<QRadialGradient>) -> Ptr<QGradient>
Calls C++ function: QGradient* static_cast<QGradient*>(QRadialGradient* ptr)
.