[][src]Macro embedded_graphics::egtriangle

macro_rules! egtriangle {
    (($x1:expr, $y1:expr), ($x2:expr, $y2:expr), ($x3:expr, $y3:expr) $(, $style_key:ident = $style_value:expr )* $(,)?) => { ... };
}

Create a Triangle with optional styling using a convenient macro.

use embedded_graphics::prelude::*;
use embedded_graphics::{egtriangle, style::Style, primitives::Triangle, pixelcolor::Rgb565};

let empty_triangle: Triangle<Rgb565> = egtriangle!((10, 20), (30, 40), (50, 60));
let filled_triangle: Triangle<Rgb565> = egtriangle!((10, 20), (30, 40), (50, 60), stroke = Some(Rgb565::RED), fill = Some(Rgb565::GREEN));
let triangle_default_style: Triangle<Rgb565> = egtriangle!((10, 20), (30, 40), (50, 60), style = Style::default());

Style properties like stroke map to the method calls on the WithStyle trait. For example, the following code makes two identical triangles:

use embedded_graphics::prelude::*;
use embedded_graphics::{egtriangle, style::Style, primitives::Triangle, pixelcolor::Rgb565};

let Triangle: Triangle<Rgb565> = egtriangle!((10, 20), (30, 40), (50, 60), stroke = Some(Rgb565::RED), fill = Some(Rgb565::GREEN));
let Triangle: Triangle<Rgb565> = Triangle::new(Point::new(10, 20), Point::new(30, 40), Point::new(50, 60))
    .stroke(Some(Rgb565::RED))
    .fill(Some(Rgb565::GREEN));