Replaced Degrees and Radians with a single Angle type
[kaka/rust-sdl-test.git] / src / core / level / mod.rs
index cccd253..00f3009 100644 (file)
@@ -1,4 +1,4 @@
-use common::{Point, Dimension, Intersection, Radians, supercover_line};
+use common::{Point, Dimension, Intersection, Angle, ToAngle, supercover_line};
 use core::render::Renderer;
 use sprites::SpriteManager;
 use std::rc::Rc;
@@ -90,12 +90,11 @@ impl Level {
        for wall in &self.walls {
            for e in &wall.edges {
                let c = (e.p1 + e.p2) / 2.0;
-               let mut rad = (e.p2 - e.p1).to_radians();
-               rad.0 += std::f64::consts::FRAC_PI_2;
+               let a = (e.p2 - e.p1).to_angle() + std::f64::consts::FRAC_PI_2.radians();
 
                renderer.draw_line(
                    <(i32, i32)>::from(c.to_i32()),
-                   <(i32, i32)>::from((c + Point::from(rad) * 10.0).to_i32()),
+                   <(i32, i32)>::from((c + Point::from(a) * 10.0).to_i32()),
                    (255, 128, 0));
 
                renderer.draw_line(
@@ -248,9 +247,7 @@ impl<'a> Wall<'a> {
        }
     }
 
-    pub fn normal(&self) -> Radians {
-       let mut rad = (self.edge.p2 - self.edge.p1).to_radians();
-       rad.0 += std::f64::consts::FRAC_PI_2;
-       rad
+    pub fn normal(&self) -> Angle {
+       (self.edge.p2 - self.edge.p1).to_angle() + std::f64::consts::FRAC_PI_2.radians()
     }
 }