pub struct SpanImageResample<'a, I> { /* private fields */ }Expand description
Image resampling state for generic (non-affine) interpolators.
Unlike the affine variant which computes scale once per scanline, this
version expects per-pixel scale values and provides adjust_scale() to
clamp and blur them.
Port of C++ span_image_resample<Source, Interpolator>.
Implementations§
Source§impl<'a, I> SpanImageResample<'a, I>
impl<'a, I> SpanImageResample<'a, I>
Sourcepub fn new(interpolator: &'a mut I, filter: &'a ImageFilterLut) -> Self
pub fn new(interpolator: &'a mut I, filter: &'a ImageFilterLut) -> Self
Create with interpolator and filter.
pub fn base(&self) -> &SpanImageFilterBase<'a, I>
pub fn base_mut(&mut self) -> &mut SpanImageFilterBase<'a, I>
pub fn scale_limit(&self) -> i32
pub fn set_scale_limit(&mut self, v: i32)
pub fn blur_x(&self) -> f64
pub fn blur_y(&self) -> f64
pub fn set_blur_x(&mut self, v: f64)
pub fn set_blur_y(&mut self, v: f64)
pub fn set_blur(&mut self, v: f64)
Sourcepub fn adjust_scale(&self, rx: &mut i32, ry: &mut i32)
pub fn adjust_scale(&self, rx: &mut i32, ry: &mut i32)
Adjust per-pixel scale factors: clamp to limits, apply blur.
Port of C++ span_image_resample::adjust_scale().
Auto Trait Implementations§
impl<'a, I> Freeze for SpanImageResample<'a, I>
impl<'a, I> RefUnwindSafe for SpanImageResample<'a, I>where
I: RefUnwindSafe,
impl<'a, I> Send for SpanImageResample<'a, I>where
I: Send,
impl<'a, I> Sync for SpanImageResample<'a, I>where
I: Sync,
impl<'a, I> Unpin for SpanImageResample<'a, I>
impl<'a, I> UnsafeUnpin for SpanImageResample<'a, I>
impl<'a, I> !UnwindSafe for SpanImageResample<'a, I>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more