Struct buffer_graphics_lib::Graphics 
source · pub struct Graphics<'buffer> { /* private fields */ }Implementations§
source§impl Graphics<'_>
 
impl Graphics<'_>
sourcepub fn get_translate(&self) -> Coord
 
pub fn get_translate(&self) -> Coord
Get the canvas offset in pixels
sourcepub fn set_translate(&mut self, new_value: Coord)
 
pub fn set_translate(&mut self, new_value: Coord)
Set the canvas offset in pixels
All drawing commands will be offset by this value
sourcepub fn update_translate(&mut self, delta: Coord)
 
pub fn update_translate(&mut self, delta: Coord)
Adds delta to the current canvas offset
sourcepub fn copy_to_image(&self) -> Image
 
pub fn copy_to_image(&self) -> Image
Copy entire pixels array to an image
sourcepub fn get_px_for_char(x: usize, y: usize, size: TextSize) -> (usize, usize)
 
pub fn get_px_for_char(x: usize, y: usize, size: TextSize) -> (usize, usize)
Get top left pixel coord for letter px coord
sourcepub fn draw_image<P: Into<Coord>>(&mut self, xy: P, image: &Image)
 
pub fn draw_image<P: Into<Coord>>(&mut self, xy: P, image: &Image)
Draw an image at x, y
sourcepub fn draw_indexed_image<P: Into<Coord>>(&mut self, xy: P, image: &IndexedImage)
 
pub fn draw_indexed_image<P: Into<Coord>>(&mut self, xy: P, image: &IndexedImage)
Draw an indexed image at x, y
pub fn draw_arc(
    &mut self,
    center: Coord,
    angle_start: isize,
    angle_end: isize,
    radius: usize,
    close: bool,
    color: Color
)
pub fn draw_line<P1: Into<Coord>, P2: Into<Coord>>(
    &mut self,
    start: P1,
    end: P2,
    color: Color
)
sourcepub fn draw_offset<T, P: Into<Coord>>(
    &mut self,
    xy: P,
    renderable: &dyn Renderable<T>
)
 
pub fn draw_offset<T, P: Into<Coord>>(
    &mut self,
    xy: P,
    renderable: &dyn Renderable<T>
)
Draw renderable offset by [xy]
sourcepub fn draw<T>(&mut self, renderable: &dyn Renderable<T>)
 
pub fn draw<T>(&mut self, renderable: &dyn Renderable<T>)
Draw renderable
sourcepub fn update_pixel(&mut self, x: isize, y: isize, color: Color)
 
pub fn update_pixel(&mut self, x: isize, y: isize, color: Color)
Update a pixel color, using Graphics::set_pixel or Graphics::blend_pixel depending
on whether colors alpha is 255 or not
sourcepub fn clear(&mut self, color: Color)
 
pub fn clear(&mut self, color: Color)
Sets every pixel to the same color, this ignores translate
sourcepub fn draw_letter(
    &mut self,
    pos: (isize, isize),
    chr: char,
    size: TextSize,
    color: Color
)
 
pub fn draw_letter(
    &mut self,
    pos: (isize, isize),
    chr: char,
    size: TextSize,
    color: Color
)
Draw a letter at pos
pub fn draw_ascii_letter(
    &mut self,
    pos: (isize, isize),
    code: u8,
    size: TextSize,
    color: Color
)
sourcepub fn draw_ascii<P: Into<TextPos>, F: Into<TextFormat>>(
    &mut self,
    text: &[Vec<u8>],
    pos: P,
    format: F
)
 
pub fn draw_ascii<P: Into<TextPos>, F: Into<TextFormat>>(
    &mut self,
    text: &[Vec<u8>],
    pos: P,
    format: F
)
Should only be used by Text::render
text param must already be corrected wrapped
pub fn draw_text<P: Into<TextPos>, F: Into<TextFormat>>(
    &mut self,
    text: &str,
    pos: P,
    format: F
)
pub fn draw_rect<R: Into<Rect>>(&mut self, rect: R, draw_type: DrawType)
pub fn draw_circle<C: Into<Circle>>(&mut self, circle: C, draw_type: DrawType)
pub fn draw_polygon<P: Into<Polygon>>(&mut self, polygon: P, draw_type: DrawType)
pub fn draw_triangle<T: Into<Triangle>>(
    &mut self,
    triangle: T,
    draw_type: DrawType
)
pub fn draw_ellipse<E: Into<Ellipse>>(&mut self, ellipse: E, draw_type: DrawType)
sourcepub fn blend_pixel(&mut self, x: isize, y: isize, color: Color)
 
pub fn blend_pixel(&mut self, x: isize, y: isize, color: Color)
Set the RGB values for a pixel by blending it with the provided color This method uses alpha blending, note that the canvas pixels always have 255 alpha