Tatooine
intersection.h
Go to the documentation of this file.
1#ifndef TATOOINE_INTERSECTION_H
2#define TATOOINE_INTERSECTION_H
3//==============================================================================
4#include <tatooine/concepts.h>
5#include <tatooine/ray.h>
6//==============================================================================
7namespace tatooine {
8//==============================================================================
9template <typename Real, size_t N>
10struct ray_intersectable;
11//==============================================================================
12template <typename Real, size_t N>
14 static_assert(is_floating_point<Real>);
15 using real_type = Real;
17 using pos_type = vec_t;
18 using normal_t = vec_t;
21 //============================================================================
32};
33//==============================================================================
34} // namespace tatooine
35//==============================================================================
36#endif
Definition: algorithm.h:6
Definition: intersection.h:13
Real real_type
Definition: intersection.h:15
vec< Real, N > vec_t
Definition: intersection.h:16
ray_t incident_ray
incident ray
Definition: intersection.h:25
normal_t normal
normal of intersection point on the primitive
Definition: intersection.h:31
ray_intersectable_ptr_t const * intersectable
pointer to primitive object
Definition: intersection.h:23
real_type t
position on ray
Definition: intersection.h:27
pos_type position
world position of intersection
Definition: intersection.h:29
Definition: ray_intersectable.h:10