pixel_handler/structs/
pixel.rs

1use super::grid_position::GridPosition;
2
3
4use ggez::graphics::{self, Color, MeshBuilder};
5
6#[derive(Clone, Copy)]
7pub struct Pixel {
8    pub position: GridPosition,
9    pub color: Color,
10}
11
12impl Pixel {
13    pub fn new(position: GridPosition, color: Color) -> Self {
14        Self { position, color }
15    }
16
17    pub fn append_to_mesh(&mut self, mesh_builder: &mut MeshBuilder) {
18        mesh_builder
19            .rectangle(
20                graphics::DrawMode::fill(),
21                self.position.as_rect(),
22                self.color,
23            )
24            .unwrap();
25    }
26}