[−][src]Struct piet::RadialGradient
A description of a radial gradient in the unit rect, which can be resolved to a fixed gradient.
The center
and origin
are given in UnitPoint
coordinates.
The center
parameter specifies the center
of the circle, so that points
of distance radius from the center
map to 1.0 in the gradient stops.
The origin
parameter specifies the point that maps to 0.0 in the
gradient stops. Using the same origin
and center
gives a radially
symmetric gradient; using different points is useful for simulating
lighting effects. See configuring a radial gradient for a fuller
explanation.
By default, origin
and center
are both at the center (0.5, 0.5) point.
This can be changed during construction with the with_center
and
with_origin
builder methods.
The ScaleMode
describes how the gradient is mapped to a non-square
rectangle; by default this will expand on the longest axis, but this can
be changed with the with_scale_mode
builder method.
Fields
center: UnitPoint
origin: UnitPoint
radius: f64
stops: ArrayVec<[GradientStop; 3]>
scale_mode: ScaleMode
Methods
impl RadialGradient
[src]
pub fn new(radius: f64, stops: impl GradientStops) -> Self
[src]
Creates a simple RadialGradient
. This gradient has origin
and center
set to (0.5, 0.5)
, and uses the Fill
ScaleMode
. These attributes can be
modified with the with_center
, with_origin
,
and with_scale_mode
builder methods.
pub fn with_center(self, center: UnitPoint) -> Self
[src]
A builder-style method for changing the center of the gradient. This
does not change the origin
; in the common case, you will want to change
both values.
See the main RadialGradient
docs for an explanation of center vs. origin.
pub fn with_origin(self, origin: UnitPoint) -> Self
[src]
A builder-style method for changing the origin of the gradient.
See the main RadialGradient
docs for an explanation of center vs. origin.
pub fn with_scale_mode(self, scale_mode: ScaleMode) -> Self
[src]
A builder-style method for changing the ScaleMode
of the gradient.
fn resolve(&self, rect: Rect) -> FixedRadialGradient
[src]
Generate a FixedRadialGradient
by mapping points in the unit square
onto points in rect
.
Trait Implementations
impl Clone for RadialGradient
[src]
fn clone(&self) -> RadialGradient
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,