use super::*;
#[derive(Clone, Debug, Default, PartialEq)]
pub struct Contour {
pub points: Vec<Point>,
pub closed: bool,
}
#[derive(Clone, Debug, Default, PartialEq)]
pub struct FlatPath {
pub contours: Vec<Contour>,
}
#[derive(Clone, Debug, lombok_macros::Data)]
pub struct Tessellator {
#[get(pub(crate), type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) tolerance: f64,
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) flat: FlatPath,
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) working: Vec<Point>,
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) indices: Vec<usize>,
}
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct SolidVertex {
pub x: f32,
pub y: f32,
pub color: u32,
}
#[derive(Clone, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct SolidMesh {
pub vertices: Vec<SolidVertex>,
pub indices: Vec<u32>,
}
#[derive(Clone, Copy, Debug, Default, PartialEq)]
pub struct TextVertex {
pub x: f32,
pub y: f32,
pub u: f32,
pub v: f32,
pub color: u32,
}
#[derive(Clone, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct TextMesh {
pub vertices: Vec<TextVertex>,
pub indices: Vec<u32>,
}