aboutsummaryrefslogtreecommitdiff
path: root/src/core/ray.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/ray.rs')
-rw-r--r--src/core/ray.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/ray.rs b/src/core/ray.rs
index 2368315..f5517ce 100644
--- a/src/core/ray.rs
+++ b/src/core/ray.rs
@@ -1,8 +1,15 @@
//! The ray class used when probing the 3d scene
use crate::core::Vector3f;
+use crate::Float;
pub struct Ray {
pub origin: Vector3f,
pub direction: Vector3f,
}
+impl Ray {
+ pub fn at(&self, t: Float) -> Vector3f {
+ self.origin + self.direction * t
+ }
+}
+