DHART
|
#include <ray_data.h>
Public Member Functions | |
nanoRT_Data ()=delete | |
nanoRT_Data (HF::nanoGeom::Mesh *mesh) | |
~nanoRT_Data () | |
![]() | |
TriangleIntersector (const double *vertices, const unsigned int *faces, const size_t vertex_stride_bytes) | |
bool | Intersect (double *t_inout, const unsigned int prim_index) const |
Do ray intersection stuff for prim_index th primitive and return hit distance t , barycentric coordinate u and v . Returns true if there's intersection. More... | |
double | GetT () const |
Returns the nearest hit distance. More... | |
void | Update (double t, unsigned int prim_idx) const |
Update is called when initializing intersection and nearest hit is found. More... | |
void | PrepareTraversal (const Ray< double > &ray, const BVHTraceOptions &trace_options) const |
Prepare BVH traversal (e.g. compute inverse ray direction) This function is called only once in BVH traversal. More... | |
void | PostTraversal (const Ray< double > &ray, bool hit, nanort::TriangleIntersection< double > *isect) const |
Post BVH traversal stuff. Fill isect if there is a hit. More... | |
Public Attributes | |
HF::nanoGeom::Mesh * | mesh |
nanort::Ray< double > | ray |
nanort::TriangleIntersection< double > | hit |
double | dist = -1 |
double | point [3] = { -1,-1,-1 } |
Definition at line 76 of file ray_data.h.
|
delete |
nanoRT_Data::nanoRT_Data | ( | HF::nanoGeom::Mesh * | mesh | ) |
Definition at line 10 of file nanort_raytracer.cpp.
References nanort::Ray< T >::dir, hit, nanort::Ray< T >::max_t, mesh, nanort::Ray< T >::min_t, nanort::Ray< T >::org, nanort::TriangleIntersection< T >::prim_id, ray, nanort::TriangleIntersection< T >::t, nanort::TriangleIntersection< T >::u, and nanort::TriangleIntersection< T >::v.
nanoRT_Data::~nanoRT_Data | ( | ) |
Definition at line 38 of file nanort_raytracer.cpp.
References HF::nanoGeom::Mesh::faces, mesh, and HF::nanoGeom::Mesh::vertices.
double nanoRT_Data::dist = -1 |
Definition at line 90 of file ray_data.h.
nanort::TriangleIntersection<double> nanoRT_Data::hit |
Definition at line 88 of file ray_data.h.
Referenced by nanoRT_Data(), and HF::nanoGeom::nanoRT_Intersect().
HF::nanoGeom::Mesh* nanoRT_Data::mesh |
Definition at line 84 of file ray_data.h.
Referenced by nanoRT_Data(), and ~nanoRT_Data().
double nanoRT_Data::point[3] = { -1,-1,-1 } |
Definition at line 91 of file ray_data.h.
Referenced by HF::nanoGeom::nanoRT_Intersect().
nanort::Ray<double> nanoRT_Data::ray |
Definition at line 86 of file ray_data.h.
Referenced by nanoRT_Data(), and HF::nanoGeom::nanoRT_Intersect().