plotters::element

Trait Drawable

Source
pub trait Drawable<DB: DrawingBackend, CM: CoordMapper = BackendCoordOnly> {
    // Required method
    fn draw<I: Iterator<Item = CM::Output>>(
        &self,
        pos: I,
        backend: &mut DB,
        parent_dim: (u32, u32),
    ) -> Result<(), DrawingErrorKind<DB::ErrorType>>;
}
Expand description

The trait indicates we are able to draw it on a drawing area

Required Methods§

Source

fn draw<I: Iterator<Item = CM::Output>>( &self, pos: I, backend: &mut DB, parent_dim: (u32, u32), ) -> Result<(), DrawingErrorKind<DB::ErrorType>>

Actually draws the element. The key points is already translated into the image coordinate and can be used by DC directly

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'a, Coord: 'a, DB: DrawingBackend, T: Borrow<str>> Drawable<DB> for MultiLineText<'a, Coord, T>

Source§

impl<'a, Coord: 'a, DB: DrawingBackend, T: Borrow<str>> Drawable<DB> for Text<'a, Coord, T>

Source§

impl<'a, DB: DrawingBackend, Coord: Clone> Drawable<DB> for DynElement<'a, DB, Coord>

Source§

impl<'a, DB: DrawingBackend, Label: Display> Drawable<DB> for Pie<'a, (i32, i32), Label>

Source§

impl<Coord, DB: DrawingBackend> Drawable<DB> for EmptyElement<Coord, DB>

Source§

impl<Coord, DB: DrawingBackend> Drawable<DB> for PathElement<Coord>

Source§

impl<Coord, DB: DrawingBackend> Drawable<DB> for Pixel<Coord>

Source§

impl<Coord, DB: DrawingBackend> Drawable<DB> for Polygon<Coord>

Source§

impl<Coord, DB: DrawingBackend> Drawable<DB> for Rectangle<Coord>

Source§

impl<Coord, DB: DrawingBackend, A, B> Drawable<DB> for ComposedElement<Coord, DB, A, B>
where for<'a> &'a A: PointCollection<'a, BackendCoord>, for<'b> &'b B: PointCollection<'b, BackendCoord>, A: Drawable<DB>, B: Drawable<DB>,

Source§

impl<Coord, DB: DrawingBackend, Size: SizeDesc> Drawable<DB> for Circle<Coord, Size>

Source§

impl<Coord, DB: DrawingBackend, Size: SizeDesc> Drawable<DB> for Cross<Coord, Size>

Source§

impl<Coord, DB: DrawingBackend, Size: SizeDesc> Drawable<DB> for TriangleMarker<Coord, Size>

Source§

impl<I0, Size, DB, Marker> Drawable<DB> for DottedPathElement<I0, Size, Marker>
where I0: Iterator + Clone, Size: SizeDesc, DB: DrawingBackend, Marker: IntoDynElement<'static, DB, BackendCoord>,

Source§

impl<I0: Iterator + Clone, Size: SizeDesc, DB: DrawingBackend> Drawable<DB> for DashedPathElement<I0, Size>

Source§

impl<X, Y, Z, DB: DrawingBackend> Drawable<DB, BackendCoordAndZ> for Cubiod<X, Y, Z>