BVHRaycaster: CPU version of BVH Raycasting: WIP.  
 More...
#include <BVHRaycaster.hpp>
|  | 
|  | BVHRaycaster (const MeshBufferPtr mesh, unsigned int stack_size=64) | 
|  | Constructor: Stores mesh as member.  More... 
 | 
|  | 
| bool | castRay (const Vector3f &origin, const Vector3f &direction, IntT &intersection) | 
|  | Cast a single ray onto the mesh.  More... 
 | 
|  | 
| virtual void | castRays (const std::vector< Vector3f > &origins, const std::vector< std::vector< Vector3f > > &directions, std::vector< std::vector< IntT > > &intersections, std::vector< std::vector< uint8_t > > &hits) | 
|  | Cast rays with multiples origins. Each origin has multiples directions.  More... 
 | 
|  | 
| virtual void | castRays (const std::vector< Vector3f > &origins, const std::vector< Vector3f > &directions, std::vector< IntT > &intersections, std::vector< uint8_t > &hits) | 
|  | Cast from multiple ray origin/direction pairs onto the mesh.  More... 
 | 
|  | 
| virtual void | castRays (const Vector3f &origin, const std::vector< std::vector< Vector3f > > &directions, std::vector< std::vector< IntT > > &intersections, std::vector< std::vector< uint8_t > > &hits) | 
|  | Cast a ray from a single origin with multiple directions (in matrix form) onto the mesh.  More... 
 | 
|  | 
| virtual void | castRays (const Vector3f &origin, const std::vector< Vector3f > &directions, std::vector< IntT > &intersections, std::vector< uint8_t > &hits) | 
|  | Cast a ray from single origin with multiple directions onto the mesh.  More... 
 | 
|  | 
|  | RaycasterBase (const MeshBufferPtr mesh) | 
|  | Constructor: Stores mesh as member.  More... 
 | 
|  | 
template<typename IntT>
class lvr2::BVHRaycaster< IntT >
BVHRaycaster: CPU version of BVH Raycasting: WIP. 
Definition at line 56 of file BVHRaycaster.hpp.
◆ BVHRaycaster()
Constructor: Stores mesh as member. 
 
 
◆ barycentric()
◆ castRay()
◆ distanceSquare()
Calculates the squared distance of two vectors. 
- Parameters
- 
  
    | a | First vector |  | b | Second vector |  
 
- Returns
- The square distance 
Definition at line 143 of file BVHRaycaster.hpp.
 
 
◆ intersectTrianglesBVH()
Calculates the closest intersection of a raycast into a scene of triangles, given a bounding volume hierarchy. 
- Parameters
- 
  
    | clBVHindicesOrTriLists | Compressed BVH Node data, that stores for each node, whether it is a leaf node and triangle indices lists for leaf nodes and the indices of their child nodes for inner nodes |  | origin | Origin of the ray |  | ray | Direction of the ray |  | clBVHlimits | 3d upper and lower limits for each bounding box in the BVH |  | clTriangleIntersectionData | Precomputed intersection data for each triangle |  | clTriIdxList | List of triangle indices |  
 
- Returns
- The TriangleIntersectionResult, containing information about the triangle intersection 
 
 
◆ rayIntersectsBox()
Calculates whether a ray intersects a box. 
- Parameters
- 
  
    | origin | The origin of the ray |  | ray | The ray |  | boxPtr | A pointer to the box data |  
 
- Returns
- A boolean indicating whether the ray hits the box 
 
 
◆ m_bvh
◆ m_BVHindicesOrTriLists
◆ m_BVHlimits
◆ m_faces
◆ m_stack_size
◆ m_TriangleIntersectionData
◆ m_TriIdxList
◆ m_vertices
The documentation for this class was generated from the following file: