12 #include <mrpt/obs/CObservationPointCloud.h> 13 #include <mrpt/obs/CObservationRotatingScan.h> 14 #include <mrpt/opengl/CFBORender.h> 15 #include <mrpt/opengl/CPointCloudColoured.h> 16 #include <mrpt/poses/CPose2D.h> 47 const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& viz,
48 const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& physical,
49 bool childrenOnly)
override;
91 std::vector<PerHorzAngleLUT>
lut_;
mrpt::opengl::CSetOfObjects::Ptr gl_sensor_fov_
mrpt::poses::CPose3D sensorPoseOnVeh_
void simulateOn3DScene(mrpt::opengl::COpenGLScene &gl_scene) override
std::vector< PerHorzAngleLUT > lut_
mrpt::opengl::CPointCloudColoured::Ptr glPoints_
std::shared_ptr< mrpt::opengl::CFBORender > fbo_renderer_depth_
std::optional< TSimulContext > has_to_render_
virtual void loadConfigFrom(const rapidxml::xml_node< char > *root) override
Lidar3D(Simulable &parent, const rapidxml::xml_node< char > *root)
std::mutex has_to_render_mtx_
void freeOpenGLResources() override
virtual void simul_pre_timestep(const TSimulContext &context) override
mrpt::opengl::CSetOfObjects::Ptr gl_sensor_origin_corner_
mrpt::opengl::CSetOfObjects::Ptr gl_sensor_origin_
A 3D LiDAR sensor, with 360 degrees horizontal fielf-of-view, and a configurable vertical FOV...
#define DECLARES_REGISTER_SENSOR(CLASS_NAME)
std::vector< PerRayLUT > column
virtual void internalGuiUpdate(const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &viz, const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &physical, bool childrenOnly) override
mrpt::obs::CObservationPointCloud::Ptr last_scan2gui_
virtual void simul_post_timestep(const TSimulContext &context) override
mrpt::obs::CObservationPointCloud::Ptr last_scan_