mirror of
https://github.com/MorizzG/ray-tracer.git
synced 2025-12-06 04:22:42 +00:00
20 lines
415 B
C++
20 lines
415 B
C++
#pragma once
|
|
|
|
#include "raytracer.h"
|
|
#include "vec3.h"
|
|
|
|
class Ray {
|
|
public:
|
|
constexpr Ray() = default;
|
|
|
|
constexpr Ray(const Point3& origin, const Vec3& direction) : orig_{origin}, dir_{direction} {}
|
|
|
|
Point3 origin() const { return orig_; }
|
|
Vec3 direction() const { return dir_; }
|
|
|
|
constexpr Point3 At(f64 t) const { return orig_ + t * dir_; }
|
|
|
|
private:
|
|
Point3 orig_;
|
|
Vec3 dir_;
|
|
};
|