Helios++
Helios software for LiDAR simulations
Raycaster Class Referenceabstract

Raycaster interface declaring raycasting operations. More...

#include <Raycaster.h>

Inheritance diagram for Raycaster:

Public Member Functions

virtual std::map< double, Primitive * > searchAll (glm::dvec3 rayOrigin, glm::dvec3 rayDir, double tmin, double tmax, bool groundOnly)=0
 Search all intersections for specified ray. More...
 
virtual RaySceneIntersectionsearch (glm::dvec3 rayOrigin, glm::dvec3 rayDir, double tmin, double tmax, bool groundOnly)=0
 Search first intersection for specified ray. More...
 

Detailed Description

Raycaster interface declaring raycasting operations.

Author
Alberto M. Esmoris Pena
Version
1.0

Member Function Documentation

◆ search()

virtual RaySceneIntersection* Raycaster::search ( glm::dvec3  rayOrigin,
glm::dvec3  rayDir,
double  tmin,
double  tmax,
bool  groundOnly 
)
pure virtual

Search first intersection for specified ray.

Parameters
rayOriginRay origin 3D coordinates
rayDirRay 3D director vector
tminMinimum time to intersection. It is used to prevent considering intersections (capturing points) before this time during the recursive search process
tmaxMaximum time to intersection. It is used to prevent considering intersections (capturing points) after this time during the recursive search process
groundOnlyFlag to specify if only ground primitives must be considered (true) or not (false)
Returns
Return first found intersection

Implemented in KDGroveRaycaster, GroveKDTreeRaycaster, and KDTreeRaycaster.

◆ searchAll()

virtual std::map<double, Primitive*> Raycaster::searchAll ( glm::dvec3  rayOrigin,
glm::dvec3  rayDir,
double  tmin,
double  tmax,
bool  groundOnly 
)
pure virtual

Search all intersections for specified ray.

Parameters
rayOriginRay origin 3D coordinates
rayDirRay 3D director vector
tminMinimum time to intersection. It is used to prevent considering intersections (capturing points) before this time during the recursive search process
tmaxMaximum time to intersection. It is used to prevent considering intersections (capturing points) after this time during the recursive search process
groundOnlyFlag to specify if only ground primitives must be considered (true) or not (false)
Returns
Return map of collected primitives, each identified by its distance with respect to ray origin

Implemented in KDGroveRaycaster, GroveKDTreeRaycaster, and KDTreeRaycaster.


The documentation for this class was generated from the following file: