summaryrefslogtreecommitdiff
path: root/src/math.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/math.rs')
-rw-r--r--src/math.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/math.rs b/src/math.rs
index c747cce..ff652ea 100644
--- a/src/math.rs
+++ b/src/math.rs
@@ -1,4 +1,6 @@
use ggez::graphics::Rect;
+use ggez::nalgebra::Point2;
+use rand::Rng;
use std::f32::consts::PI;
use std::time::Instant;
@@ -27,3 +29,9 @@ pub fn next_source(source: Rect, animation: &[(usize, Rect)], timer: Instant) ->
(source, timer)
}
}
+
+pub fn random_nearby_point(origin: Point2<f32>, within_radius: f32) -> Point2<f32> {
+ let w = within_radius * rand::thread_rng().gen_range(0.0, 1.0);
+ let t = 2.0 * PI * rand::thread_rng().gen_range(0.0, 1.0);
+ Point2::new(origin.x + w * t.cos(), origin.y + w * t.sin())
+}