pub struct Rectangle {
pub top_left: Point,
pub bottom_right: Point,
}
Expand description
Rectangle primitive
§Examples
The macro examples make for more concise code.
§Create some rectangles with different styles
use embedded_graphics::{
pixelcolor::Rgb565, prelude::*, primitives::Rectangle, style::PrimitiveStyleBuilder,
};
// Rectangle with red 3 pixel wide stroke and green fill from (50, 20) to (60, 35)
let style = PrimitiveStyleBuilder::new()
.stroke_color(Rgb565::RED)
.stroke_width(3)
.fill_color(Rgb565::GREEN)
.build();
Rectangle::new(Point::new(50, 20), Point::new(60, 35))
.into_styled(style)
.draw(&mut display)?;
// Rectangle with translation applied
Rectangle::new(Point::new(50, 20), Point::new(60, 35))
.translate(Point::new(65, 35))
.into_styled(style)
.draw(&mut display)?;
Fields§
§top_left: Point
Top left point of the rect
bottom_right: Point
Bottom right point of the rect
Implementations§
Trait Implementations§
Source§impl Dimensions for Rectangle
impl Dimensions for Rectangle
Source§impl Ord for Rectangle
impl Ord for Rectangle
Source§impl PartialOrd for Rectangle
impl PartialOrd for Rectangle
Source§impl Primitive for Rectangle
impl Primitive for Rectangle
Source§fn into_styled<C>(
self,
style: PrimitiveStyle<C>,
) -> Styled<Self, PrimitiveStyle<C>>where
C: PixelColor,
Self: Sized,
fn into_styled<C>(
self,
style: PrimitiveStyle<C>,
) -> Styled<Self, PrimitiveStyle<C>>where
C: PixelColor,
Self: Sized,
Converts this primitive into a
Styled
.Source§impl Transform for Rectangle
impl Transform for Rectangle
Source§fn translate(&self, by: Point) -> Self
fn translate(&self, by: Point) -> Self
Translate the rect from its current position to a new position by (x, y) pixels, returning
a new Rectangle
. For a mutating transform, see translate_mut
.
let rect = Rectangle::new(Point::new(5, 10), Point::new(15, 20));
let moved = rect.translate(Point::new(10, 10));
assert_eq!(moved.top_left, Point::new(15, 20));
assert_eq!(moved.bottom_right, Point::new(25, 30));
Source§fn translate_mut(&mut self, by: Point) -> &mut Self
fn translate_mut(&mut self, by: Point) -> &mut Self
Translate the rect from its current position to a new position by (x, y) pixels.
let mut rect = Rectangle::new(Point::new(5, 10), Point::new(15, 20));
rect.translate_mut(Point::new(10, 10));
assert_eq!(rect.top_left, Point::new(15, 20));
assert_eq!(rect.bottom_right, Point::new(25, 30));
impl Copy for Rectangle
impl Eq for Rectangle
impl StructuralPartialEq for Rectangle
Auto Trait Implementations§
impl Freeze for Rectangle
impl RefUnwindSafe for Rectangle
impl Send for Rectangle
impl Sync for Rectangle
impl Unpin for Rectangle
impl UnwindSafe for Rectangle
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 16 bytes