use super::*;
#[derive(Clone, Copy, Debug, lombok_macros::Data, PartialEq)]
pub struct Transform2D {
#[get(type(copy))]
pub a: f64,
#[get(type(copy))]
pub b: f64,
#[get(type(copy))]
pub c: f64,
#[get(type(copy))]
pub d: f64,
#[get(type(copy))]
pub e: f64,
#[get(type(copy))]
pub f: f64,
}
#[derive(Clone, Copy, Debug, lombok_macros::Data, PartialEq)]
pub struct BBox {
#[get(type(copy))]
pub min_x: f64,
#[get(type(copy))]
pub min_y: f64,
#[get(type(copy))]
pub max_x: f64,
#[get(type(copy))]
pub max_y: f64,
}
#[derive(Clone, Copy, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct Point {
#[get(type(copy))]
pub x: f32,
#[get(type(copy))]
pub y: f32,
}
#[derive(Clone, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct Polygon {
pub points: Vec<Point>,
}
#[derive(Clone, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct Path {
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) commands: Vec<PathCommand>,
#[get(pub(crate), type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) fill_rule: FillRule,
}
#[derive(Clone, Debug, lombok_macros::Data)]
pub struct PathBuilder {
#[get(pub(crate))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) commands: Vec<PathCommand>,
#[get(pub(crate), type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) fill_rule: FillRule,
#[get(pub(crate), type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) current: Point,
#[get(pub(crate), type(copy))]
#[get_mut(pub(crate))]
#[set(pub(crate))]
pub(crate) start: Point,
}
#[derive(Clone, Copy, Debug, PartialEq)]
pub(crate) struct Ellipse {
pub(crate) center_x: f64,
pub(crate) center_y: f64,
pub(crate) radius_x: f64,
pub(crate) radius_y: f64,
}
#[derive(Clone, Debug, lombok_macros::Data, PartialEq)]
pub struct StrokeStyle {
#[get(type(copy))]
pub width: f32,
#[get(type(copy))]
pub cap: LineCap,
#[get(type(copy))]
pub join: LineJoin,
pub dash: DashPattern,
}
#[derive(Clone, Debug, Default, lombok_macros::Data, PartialEq)]
pub struct DashPattern {
pub pattern: Vec<f32>,
#[get(type(copy))]
pub offset: f32,
}