9template <
typename Real,
size_t N>
11 static_assert(is_floating_point<Real>);
12 template <
typename OtherReal,
size_t OtherN>
70 [[nodiscard]]
auto at(Real t)
const {
Definition: concepts.h:30
Definition: algorithm.h:6
constexpr auto normalize(base_tensor< Tensor, T, N > const &t_in) -> vec< T, N >
Definition: tensor_operations.h:100
void normalize()
Definition: ray.h:74
auto direction() -> auto &
Definition: ray.h:54
auto origin() const -> auto const &
Definition: ray.h:44
pos_type m_origin
Definition: ray.h:18
ray(pos_type const &origin, vec_t &&direction)
Definition: ray.h:36
ray(pos_type &&origin, vec_t const &direction)
Definition: ray.h:34
ray & operator=(ray &&) noexcept=default
auto direction(size_t i) const
Definition: ray.h:63
ray & operator=(ray const &)=default
ray(pos_type &&origin, vec_t &&direction)
Definition: ray.h:38
auto origin(size_t i) -> auto &
Definition: ray.h:47
auto direction(size_t i) -> auto &
Definition: ray.h:60
auto operator()(Real t) const
Definition: ray.h:67
ray(ray &&) noexcept=default
auto origin() -> auto &
Definition: ray.h:41
auto direction() const -> auto const &
Definition: ray.h:57
auto at(Real t) const
Definition: ray.h:70
vec< Real, N > vec_t
Definition: ray.h:14
vec_t m_direction
Definition: ray.h:19
auto origin(size_t i) const
Definition: ray.h:50