}
}
- pub fn radians(&self) -> Radians {
+ pub fn to_radians(&self) -> Radians {
Radians(self.y.atan2(self.x))
}
- pub fn degrees(&self) -> Degrees {
- self.radians().to_degrees()
+ pub fn to_degrees(&self) -> Degrees {
+ self.to_radians().to_degrees()
}
pub fn to_i32(self) -> Point2D<i32> {
impl From<Degrees> for Point2D<f64> {
fn from(item: Degrees) -> Self {
+ let r = item.0.to_radians();
Point2D {
- x: (item.0 * std::f64::consts::PI / 180.0).cos(),
- y: (item.0 * std::f64::consts::PI / 180.0).sin(),
+ x: r.cos(),
+ y: r.sin(),
}
}
}
impl Degrees {
#[allow(dead_code)]
fn to_radians(&self) -> Radians {
- Radians(self.0 * std::f64::consts::PI / 180.0)
+ Radians(self.0.to_radians())
}
}
impl Radians {
#[allow(dead_code)]
fn to_degrees(&self) -> Degrees {
- Degrees(self.0 * 180.0 * std::f64::consts::FRAC_1_PI)
+ Degrees(self.0.to_degrees())
}
}