Enum druid::piet::image_crate::imageops::FilterType
pub enum FilterType {
Nearest,
Triangle,
CatmullRom,
Gaussian,
Lanczos3,
}
Expand description
Available Sampling Filters.
Examples
To test the different sampling filters on a real example, you can find two
examples called
scaledown
and
scaleup
in the examples
directory of the crate source code.
Here is a 3.58 MiB test image that has been scaled down to 300x225 px:
Nearest Neighbor
Linear: Triangle
Cubic: Catmull-Rom
Gaussian
Lanczos with window 3
Speed
Time required to create each of the examples above, tested on an Intel i7-4770 CPU with Rust 1.37 in release mode:
Nearest | 31 ms |
---|---|
Triangle | 414 ms |
CatmullRom | 817 ms |
Gaussian | 1180 ms |
Lanczos3 | 1170 ms |
Variants§
Nearest
Nearest Neighbor
Triangle
Linear Filter
CatmullRom
Cubic Filter
Gaussian
Gaussian Filter
Lanczos3
Lanczos with window 3
Trait Implementations§
§impl Clone for FilterType
impl Clone for FilterType
§fn clone(&self) -> FilterType
fn clone(&self) -> FilterType
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more§impl Debug for FilterType
impl Debug for FilterType
§impl PartialEq<FilterType> for FilterType
impl PartialEq<FilterType> for FilterType
§fn eq(&self, other: &FilterType) -> bool
fn eq(&self, other: &FilterType) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Copy for FilterType
impl StructuralPartialEq for FilterType
Auto Trait Implementations§
impl RefUnwindSafe for FilterType
impl Send for FilterType
impl Sync for FilterType
impl Unpin for FilterType
impl UnwindSafe for FilterType
Blanket Implementations§
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
§impl<T> RoundFrom<T> for T
impl<T> RoundFrom<T> for T
§fn round_from(x: T) -> T
fn round_from(x: T) -> T
Performs the conversion.
§impl<T, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
impl<T, U> RoundInto<U> for Twhere U: RoundFrom<T>,
§fn round_into(self) -> U
fn round_into(self) -> U
Performs the conversion.