pub struct SubImage<I> { /* private fields */ }
Expand description
A View into another image
Instances of this struct can be created using:
GenericImage::sub_image
to create a mutable view,GenericImageView::view
to create an immutable view,SubImage::new
to instantiate the struct directly.
Implementations§
source§impl<I> SubImage<I>
impl<I> SubImage<I>
sourcepub fn new(image: I, x: u32, y: u32, width: u32, height: u32) -> SubImage<I>
pub fn new(image: I, x: u32, y: u32, width: u32, height: u32) -> SubImage<I>
Construct a new subimage The coordinates set the position of the top left corner of the SubImage.
sourcepub fn change_bounds(&mut self, x: u32, y: u32, width: u32, height: u32)
pub fn change_bounds(&mut self, x: u32, y: u32, width: u32, height: u32)
Change the coordinates of this subimage.
sourcepub fn to_image(
&self
) -> ImageBuffer<<<I as Deref>::Target as GenericImageView>::Pixel, Vec<<<<I as Deref>::Target as GenericImageView>::Pixel as Pixel>::Subpixel>>
pub fn to_image( &self ) -> ImageBuffer<<<I as Deref>::Target as GenericImageView>::Pixel, Vec<<<<I as Deref>::Target as GenericImageView>::Pixel as Pixel>::Subpixel>>
Convert this subimage to an ImageBuffer
Trait Implementations§
source§impl<I> GenericImage for SubImage<I>
impl<I> GenericImage for SubImage<I>
source§fn blend_pixel(
&mut self,
x: u32,
y: u32,
pixel: <SubImage<I> as GenericImageView>::Pixel
)
fn blend_pixel( &mut self, x: u32, y: u32, pixel: <SubImage<I> as GenericImageView>::Pixel )
DEPRECATED: This method will be removed. Blend the pixel directly instead.
§type InnerImage = <I as Deref>::Target
type InnerImage = <I as Deref>::Target
Underlying image type. This is mainly used by SubImages in order to
always have a reference to the original image. This allows for less
indirections and it eases the use of nested SubImages.
source§fn get_pixel_mut(
&mut self,
x: u32,
y: u32
) -> &mut <SubImage<I> as GenericImageView>::Pixel
fn get_pixel_mut( &mut self, x: u32, y: u32 ) -> &mut <SubImage<I> as GenericImageView>::Pixel
Gets a reference to the mutable pixel at location
(x, y)
. Indexed from top left. Read moresource§fn put_pixel(
&mut self,
x: u32,
y: u32,
pixel: <SubImage<I> as GenericImageView>::Pixel
)
fn put_pixel( &mut self, x: u32, y: u32, pixel: <SubImage<I> as GenericImageView>::Pixel )
Put a pixel at location (x, y). Indexed from top left. Read more
source§fn sub_image(
&mut self,
x: u32,
y: u32,
width: u32,
height: u32
) -> SubImage<&mut <SubImage<I> as GenericImage>::InnerImage>
fn sub_image( &mut self, x: u32, y: u32, width: u32, height: u32 ) -> SubImage<&mut <SubImage<I> as GenericImage>::InnerImage>
Returns a mutable subimage that is a view into this image.
If you want an immutable subimage instead, use
GenericImageView::view
The coordinates set the position of the top left corner of the SubImage.source§fn inner_mut(&mut self) -> &mut <SubImage<I> as GenericImage>::InnerImage
fn inner_mut(&mut self) -> &mut <SubImage<I> as GenericImage>::InnerImage
Returns a mutable reference to the underlying image.
source§unsafe fn unsafe_put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
unsafe fn unsafe_put_pixel(&mut self, x: u32, y: u32, pixel: Self::Pixel)
Puts a pixel at location (x, y). Indexed from top left. Read more
source§impl<I> GenericImageView for SubImage<I>
impl<I> GenericImageView for SubImage<I>
§type InnerImageView = <I as Deref>::Target
type InnerImageView = <I as Deref>::Target
Underlying image type. This is mainly used by SubImages in order to
always have a reference to the original image. This allows for less
indirections and it eases the use of nested SubImages.
source§fn dimensions(&self) -> (u32, u32)
fn dimensions(&self) -> (u32, u32)
The width and height of this image.
source§fn get_pixel(&self, x: u32, y: u32) -> <SubImage<I> as GenericImageView>::Pixel
fn get_pixel(&self, x: u32, y: u32) -> <SubImage<I> as GenericImageView>::Pixel
Returns the pixel located at (x, y). Indexed from top left. Read more
source§fn view(
&self,
x: u32,
y: u32,
width: u32,
height: u32
) -> SubImage<&<SubImage<I> as GenericImageView>::InnerImageView>
fn view( &self, x: u32, y: u32, width: u32, height: u32 ) -> SubImage<&<SubImage<I> as GenericImageView>::InnerImageView>
Returns an subimage that is an immutable view into this image.
You can use
GenericImage::sub_image
if you need a mutable view instead.
The coordinates set the position of the top left corner of the view.source§fn inner(&self) -> &<SubImage<I> as GenericImageView>::InnerImageView
fn inner(&self) -> &<SubImage<I> as GenericImageView>::InnerImageView
Returns a reference to the underlying image.
source§fn in_bounds(&self, x: u32, y: u32) -> bool
fn in_bounds(&self, x: u32, y: u32) -> bool
Returns true if this x, y coordinate is contained inside the image.
Auto Trait Implementations§
impl<I> RefUnwindSafe for SubImage<I>where
I: RefUnwindSafe,
impl<I> Send for SubImage<I>where
I: Send,
impl<I> Sync for SubImage<I>where
I: Sync,
impl<I> Unpin for SubImage<I>where
I: Unpin,
impl<I> UnwindSafe for SubImage<I>where
I: UnwindSafe,
Blanket Implementations§
source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<Swp, Dwp, T>,
Convert the source color to the destination color using the specified
method
source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Convert the source color to the destination color using the bradford
method by default
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
source§impl<T, U> ConvertInto<U> for Twhere
U: ConvertFrom<T>,
impl<T, U> ConvertInto<U> for Twhere
U: ConvertFrom<T>,
source§fn convert_into(self) -> U
fn convert_into(self) -> U
Convert into T with values clamped to the color defined bounds Read more
source§fn convert_unclamped_into(self) -> U
fn convert_unclamped_into(self) -> U
Convert into T. The resulting color might be invalid in its color space Read more
source§fn try_convert_into(self) -> Result<U, OutOfBounds<U>>
fn try_convert_into(self) -> Result<U, OutOfBounds<U>>
Convert into T, returning ok if the color is inside of its defined range,
otherwise an
OutOfBounds
error is returned which contains the unclamped color. Read more