X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fcore%2Flevel%2Fmod.rs;fp=src%2Fcore%2Flevel%2Fmod.rs;h=00f30090a033831768295652220507b9dc3ca856;hb=4074267844733949556af129550dfc42fc81da76;hp=cccd2538a4a1a69eafd3ddeed08ea2b3ed00ba60;hpb=0d75b79ec38b321835c2f3984252f27ff271f8b4;p=kaka%2Frust-sdl-test.git diff --git a/src/core/level/mod.rs b/src/core/level/mod.rs index cccd253..00f3009 100644 --- a/src/core/level/mod.rs +++ b/src/core/level/mod.rs @@ -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() } }