|
DHART
|
Contains implementation for the EmbreeRayTracer More...
#include <embree_raytracer.h>#include <corecrt_math_defines.h>#include <functional>#include <iostream>#include <thread>#include <robin_hood.h>#include <meshinfo.h>#include <RayRequest.h>#include <HFExceptions.h>
Include dependency graph for embree_raytracer.cpp:Go to the source code of this file.
Classes | |
| struct | HF::RayTracer::Vertex |
| A vertex. Used internally in Embree. More... | |
| struct | HF::RayTracer::Triangle |
| A triangle. Used internally in Embree. More... | |
Namespaces | |
| namespace | HF |
| Perform human scale analysis on 3D environments. | |
| namespace | HF::RayTracer |
| Cast rays to determine if and where they intersect geometry. | |
Functions | |
| template<typename numeric1 , typename numeric2 , typename dist_type = float> | |
| RTCRayHit | HF::RayTracer::ConstructHit (numeric1 x, numeric1 y, numeric1 z, numeric2 dx, numeric2 dy, numeric2 dz, dist_type distance=-1.0f, int mesh_id=-1) |
| template<typename numeric1 , typename numeric2 , typename dist_type = float> | |
| RTCRay | HF::RayTracer::ConstructRay (numeric1 x, numeric1 y, numeric1 z, numeric2 dx, numeric2 dy, numeric2 dz, dist_type distance=-1.0f, int mesh_id=-1) |
| RTCError | HF::RayTracer::CheckState (RTCDevice &device) |
| Check an embree device for errors. More... | |
| void | HF::RayTracer::vectorsToBuffers (const std::vector< std::array< float, 3 > > &vertices, std::vector< Triangle > &Tribuffer, std::vector< Vertex > &Vbuffer) |
| Index a list of verticies and place them into a triangle and vertex buffer. More... | |
| void | HF::RayTracer::buffersToStructs (std::vector< float > &in_vertices, std::vector< int > &in_indices, std::vector< Vertex > &out_vertices, std::vector< Triangle > &out_triangles) |
| Package raw arrays of floats and indices in buffers to the required Embree types. More... | |
| Vector3D | HF::RayTracer::cross (const Vector3D &x, const Vector3D &y) |
| double | HF::RayTracer::dot (const Vector3D &v1, const Vector3D &v2) |
| Vector3D | HF::RayTracer::InvertVector (const Vector3D &V) |
| double | HF::RayTracer::RayTriangleIntersection (const Vector3D &origin, const Vector3D &direction, const Vector3D &v1, const Vector3D &v2, const Vector3D &v3) |
| Determine the distance between a ray's origin and it's point of intersection with a triangle. More... | |
| Vector3D | HF::RayTracer::GetPointFromBuffer (int index, Vertex *buffer) |
Contains implementation for the EmbreeRayTracer
Definition in file embree_raytracer.cpp.
| struct HF::RayTracer::Vertex |
A vertex. Used internally in Embree.
Definition at line 77 of file embree_raytracer.cpp.
Collaboration diagram for HF::RayTracer::Vertex:| Class Members | ||
|---|---|---|
| float | x | |
| float | y | |
| float | z | |
| struct HF::RayTracer::Triangle |
A triangle. Used internally in Embree.
Definition at line 82 of file embree_raytracer.cpp.
Collaboration diagram for HF::RayTracer::Triangle:| Class Members | ||
|---|---|---|
| int | v0 | |
| int | v1 | |
| int | v2 | |