From ee533e13b52bf1fc13139dad7a9612c789c3d827 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tomas=20Wenstr=C3=B6m?= Date: Sat, 23 Jan 2021 15:56:22 +0100 Subject: [PATCH] Rename methods and use f64's conversion between radians and degrees --- src/common.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/common.rs b/src/common.rs index 591d781..1cf205e 100644 --- a/src/common.rs +++ b/src/common.rs @@ -26,12 +26,12 @@ impl Point2D { } } - 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 { @@ -145,9 +145,10 @@ impl From> for (T, T) { impl From for Point2D { 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(), } } } @@ -169,14 +170,14 @@ pub struct Radians(pub f64); 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()) } } -- 2.11.0