#![allow(dead_code)]
use std::fmt::Display;
use togo::prelude::*;
#[doc(hidden)]
#[derive(Debug, PartialEq, Clone)]
pub struct OffsetRaw {
pub arc: Arc,
pub orig: Point,
pub g: f64,
}
impl Display for OffsetRaw {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "[{}, {}, {}]", self.arc, self.orig, self.g)
}
}
impl OffsetRaw {
#[inline]
pub fn new(arc: Arc, orig: Point, g: f64) -> Self {
OffsetRaw { arc, orig, g }
}
}
#[doc(hidden)]
#[inline]
pub fn offsetraw(arc: Arc, orig: Point, g: f64) -> OffsetRaw {
OffsetRaw::new(arc, orig, g)
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_offsetraw() {
let a = arc(point(0.0, 0.0), point(1.0, 0.0), point(0.5, 0.0), 1.0);
let o = point(0.0, 0.0);
let off = offsetraw(a, o, 0.25);
assert_eq!(off.g, 0.25);
}
}