use crate::point::Point3;
use crate::value::GroupValue;
#[derive(Debug, Clone, Copy, Default)]
pub struct Arc {
pub center: Point3,
pub radius: f64,
pub start_angle: f64,
pub end_angle: f64,
pub thickness: f64,
}
impl Arc {
pub(crate) fn feed(&mut self, code: u16, val: &GroupValue) {
if let Some(v) = val.as_f64() {
match code {
10 => self.center.x = v,
20 => self.center.y = v,
30 => self.center.z = v,
40 => self.radius = v,
50 => self.start_angle = v,
51 => self.end_angle = v,
39 => self.thickness = v,
_ => {}
}
}
}
}