Struct embedded_graphics::primitives::arc::Arc [−][src]
pub struct Arc { pub top_left: Point, pub diameter: u32, pub angle_start: Angle, pub angle_sweep: Angle, }
Expand description
Arc primitive
Examples
Create some arcs with different styles
use embedded_graphics::{ pixelcolor::Rgb565, prelude::*, primitives::{Arc, PrimitiveStyle, PrimitiveStyleBuilder}, }; // Arc with 1 pixel wide white stroke with top-left point at (10, 20) with a diameter of 30 Arc::new(Point::new(10, 20), 30, 0.0.deg(), 90.0.deg()) .into_styled(PrimitiveStyle::with_stroke(Rgb565::WHITE, 1)) .draw(&mut display)?; // Arc with styled stroke with top-left point at (15, 25) with a diameter of 20 let style = PrimitiveStyleBuilder::new() .stroke_color(Rgb565::RED) .stroke_width(3) .build(); Arc::new(Point::new(15, 25), 20, 180.0.deg(), -90.0.deg()) .into_styled(style) .draw(&mut display)?;
Fields
top_left: Point
Top-left point of the bounding-box of the circle supporting the arc
diameter: u32
Diameter of the circle supporting the arc
angle_start: Angle
Angle at which the arc starts
angle_sweep: Angle
Angle defining the arc sweep starting at angle_start
Implementations
impl Arc
[src]
impl Arc
[src]pub const fn new(
top_left: Point,
diameter: u32,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]
pub const fn new(
top_left: Point,
diameter: u32,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]Create a new arc delimited with a top-left point with a specific diameter and start and sweep angles
pub fn with_center(
center: Point,
diameter: u32,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]
pub fn with_center(
center: Point,
diameter: u32,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]Create a new arc centered around a given point with a specific diameter and start and sweep angles
pub fn from_circle(
circle: Circle,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]
pub fn from_circle(
circle: Circle,
angle_start: Angle,
angle_sweep: Angle
) -> Self
[src]Creates an arc based on a circle.
The resulting arc will match the top_left
and diameter
of the base circle.
Trait Implementations
impl Dimensions for Arc
[src]
impl Dimensions for Arc
[src]fn bounding_box(&self) -> Rectangle
[src]
fn bounding_box(&self) -> Rectangle
[src]Returns the bounding box.
impl PartialOrd<Arc> for Arc
[src]
impl PartialOrd<Arc> for Arc
[src]fn partial_cmp(&self, other: &Arc) -> Option<Ordering>
[src]
fn partial_cmp(&self, other: &Arc) -> Option<Ordering>
[src]This method returns an ordering between self
and other
values if one exists. Read more
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn lt(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than (for self
and other
) and is used by the <
operator. Read more
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]fn le(&self, other: &Rhs) -> bool
1.0.0[src]This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl PointsIter for Arc
[src]
impl PointsIter for Arc
[src]impl Primitive for Arc
[src]
impl Primitive for Arc
[src]fn into_styled<S>(self, style: S) -> Styled<Self, S> where
Self: Sized,
[src]
fn into_styled<S>(self, style: S) -> Styled<Self, S> where
Self: Sized,
[src]Converts this primitive into a Styled
.
impl<C: PixelColor> StyledDimensions<PrimitiveStyle<C>> for Arc
[src]
impl<C: PixelColor> StyledDimensions<PrimitiveStyle<C>> for Arc
[src]fn styled_bounding_box(&self, style: &PrimitiveStyle<C>) -> Rectangle
[src]
fn styled_bounding_box(&self, style: &PrimitiveStyle<C>) -> Rectangle
[src]Returns the bounding box using the given style.
impl<C: PixelColor> StyledDrawable<PrimitiveStyle<C>> for Arc
[src]
impl<C: PixelColor> StyledDrawable<PrimitiveStyle<C>> for Arc
[src]type Color = C
type Color = C
Color type.
fn draw_styled<D>(
&self,
style: &PrimitiveStyle<C>,
target: &mut D
) -> Result<Self::Output, D::Error> where
D: DrawTarget<Color = C>,
[src]
fn draw_styled<D>(
&self,
style: &PrimitiveStyle<C>,
target: &mut D
) -> Result<Self::Output, D::Error> where
D: DrawTarget<Color = C>,
[src]Draws the primitive using the given style.
impl Transform for Arc
[src]
impl Transform for Arc
[src]fn translate(&self, by: Point) -> Self
[src]
fn translate(&self, by: Point) -> Self
[src]Translate the arc from its current position to a new position by (x, y) pixels,
returning a new Arc
. For a mutating transform, see translate_mut
.
let arc = Arc::new(Point::new(5, 10), 10, 0.0.deg(), 90.0.deg()); let moved = arc.translate(Point::new(10, 10)); assert_eq!(moved.top_left, Point::new(15, 20));
fn translate_mut(&mut self, by: Point) -> &mut Self
[src]
fn translate_mut(&mut self, by: Point) -> &mut Self
[src]Translate the arc from its current position to a new position by (x, y) pixels.
let mut arc = Arc::new(Point::new(5, 10), 10, 0.0.deg(), 90.0.deg()); arc.translate_mut(Point::new(10, 10)); assert_eq!(arc.top_left, Point::new(15, 20));
impl Copy for Arc
[src]
impl StructuralPartialEq for Arc
[src]
Auto Trait Implementations
impl RefUnwindSafe for Arc
impl Send for Arc
impl Sync for Arc
impl Unpin for Arc
impl UnwindSafe for Arc
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]
impl<Src, Dst> LosslessTryInto<Dst> for Src where
Dst: LosslessTryFrom<Src>,
[src]pub fn lossless_try_into(self) -> Option<Dst>
[src]
pub fn lossless_try_into(self) -> Option<Dst>
[src]Performs the conversion.
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]
impl<Src, Dst> LossyInto<Dst> for Src where
Dst: LossyFrom<Src>,
[src]pub fn lossy_into(self) -> Dst
[src]
pub fn lossy_into(self) -> Dst
[src]Performs the conversion.
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
pub fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,