From 076b3a2d072dd00cfd03fb5639d545930b969cc1 Mon Sep 17 00:00:00 2001 From: Reinier Balt Date: Wed, 9 Jun 2021 11:41:25 +0200 Subject: [PATCH] Update example to use TriColor --- src/color.rs | 1 + src/epd2in13bc/mod.rs | 30 ++++++++++++------------------ src/lib.rs | 2 +- 3 files changed, 14 insertions(+), 19 deletions(-) diff --git a/src/color.rs b/src/color.rs index 6918dcb..8867978 100644 --- a/src/color.rs +++ b/src/color.rs @@ -187,6 +187,7 @@ impl TriColor { } } +#[cfg(feature = "graphics")] impl PixelColor for TriColor { type Raw = (); } diff --git a/src/epd2in13bc/mod.rs b/src/epd2in13bc/mod.rs index 9c11cbf..27c034b 100644 --- a/src/epd2in13bc/mod.rs +++ b/src/epd2in13bc/mod.rs @@ -7,10 +7,8 @@ //!```rust, no_run //!# use embedded_hal_mock::*; //!# fn main() -> Result<(), MockError> { -//!use embedded_graphics::{ -//! pixelcolor::BinaryColor::On as Black, prelude::*, primitives::Line, style::PrimitiveStyle, -//!}; -//!use epd_waveshare::{epd2in13bc::*, prelude::*}; +//!use embedded_graphics::{prelude::*, primitives::Line, style::PrimitiveStyle}; +//!use epd_waveshare::{epd2in13bc::*, prelude::*, color::TriColor}; //!# //!# let expectations = []; //!# let mut spi = spi::Mock::new(&expectations); @@ -25,28 +23,24 @@ //!let mut epd = Epd2in13bc::new(&mut spi, cs_pin, busy_in, dc, rst, &mut delay)?; //! //!// Use display graphics from embedded-graphics -//!// This display is for the black/white pixels -//!let mut mono_display = Display2in13bc::default(); +//!// This display is for the black/white/chromatic pixels +//!let mut tricolor_display = Display2in13bc::default(); //! -//!// Use embedded graphics for drawing -//!// A black line +//!// Use embedded graphics for drawing a black line //!let _ = Line::new(Point::new(0, 120), Point::new(0, 200)) -//! .into_styled(PrimitiveStyle::with_stroke(Black, 1)) -//! .draw(&mut mono_display); +//! .into_styled(PrimitiveStyle::with_stroke(TriColor::Black, 1)) +//! .draw(&mut tricolor_display); //! -//!// Use a second display for red/yellow -//!let mut chromatic_display = Display2in13bc::default(); -//! -//!// We use `Black` but it will be shown as red/yellow +//!// We use `chromatic` but it will be shown as red/yellow //!let _ = Line::new(Point::new(15, 120), Point::new(15, 200)) -//! .into_styled(PrimitiveStyle::with_stroke(Black, 1)) -//! .draw(&mut chromatic_display); +//! .into_styled(PrimitiveStyle::with_stroke(TriColor::Chromatic, 1)) +//! .draw(&mut tricolor_display); //! //!// Display updated frame //!epd.update_color_frame( //! &mut spi, -//! &mono_display.buffer(), -//! &chromatic_display.buffer() +//! &tricolor_display.bw_buffer(), +//! &tricolor_display.chromatic_buffer() //!)?; //!epd.display_frame(&mut spi, &mut delay)?; //! diff --git a/src/lib.rs b/src/lib.rs index 50ee2d2..39abc82 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -99,7 +99,7 @@ pub mod prelude { pub use crate::SPI_MODE; #[cfg(feature = "graphics")] - pub use crate::graphics::{Display, DisplayRotation, OctDisplay}; + pub use crate::graphics::{Display, TriDisplay, DisplayRotation, OctDisplay}; } /// Computes the needed buffer length. Takes care of rounding up in case width