36 #ifndef LVR_RAYCASTER_BASE_HPP 37 #define LVR_RAYCASTER_BASE_HPP 52 template<
typename IntT>
89 const std::vector<Vector3f>& directions,
90 std::vector<IntT>& intersections,
91 std::vector<uint8_t>& hits
105 const std::vector<std::vector<Vector3f> >& directions,
106 std::vector< std::vector<IntT> >& intersections,
107 std::vector< std::vector<uint8_t> >& hits
120 const std::vector<Vector3f>& origins,
121 const std::vector<Vector3f>& directions,
122 std::vector<IntT>& intersections,
123 std::vector<uint8_t>& hits
136 const std::vector<Vector3f>& origins,
137 const std::vector<std::vector<Vector3f> >& directions,
138 std::vector<std::vector<IntT> >& intersections,
139 std::vector<std::vector<uint8_t> >& hits
146 template<
typename IntT>
151 #include "RaycasterBase.tcc" 153 #endif // LVR_RAYCASTER_BASE_HPP 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.
std::shared_ptr< MeshBuffer > MeshBufferPtr
RaycasterBase(const MeshBufferPtr mesh)
Constructor: Stores mesh as member.
Eigen::Vector3f Vector3f
Eigen 3D vector, single precision.
std::shared_ptr< RaycasterBase< IntT > > RaycasterBasePtr
const MeshBufferPtr m_mesh
virtual bool castRay(const Vector3f &origin, const Vector3f &direction, IntT &intersection)=0
Cast a single ray onto the mesh.