ElevationMap.h
Go to the documentation of this file.
1 /*+-------------------------------------------------------------------------+
2  | MultiVehicle simulator (libmvsim) |
3  | |
4  | Copyright (C) 2014-2020 Jose Luis Blanco Claraco |
5  | Copyright (C) 2017 Borys Tymchenko (Odessa Polytechnic University) |
6  | Distributed under 3-clause BSD License |
7  | See COPYING |
8  +-------------------------------------------------------------------------+ */
9 
10 #pragma once
11 
12 #include <mrpt/img/CImage.h>
13 #include <mrpt/opengl/CMesh.h>
14 #include <mrpt/poses/CPose3D.h>
15 #include <mrpt/tfest/TMatchingPair.h>
17 
18 namespace mvsim
19 {
21 {
23  public:
25  virtual ~ElevationMap();
26 
27  virtual void loadConfigFrom(const rapidxml::xml_node<char>* root) override;
28 
29  virtual void simul_pre_timestep(const TSimulContext& context) override;
30  virtual void simul_post_timestep(const TSimulContext& context) override;
31 
32  bool getElevationAt(
33  double x, double y, float& z) const;
34  void poses_mutex_lock() override {}
35  void poses_mutex_unlock() override {}
36 
37  protected:
38  virtual void internalGuiUpdate(
39  mrpt::opengl::COpenGLScene& scene, bool childrenOnly) override;
40 
43  mrpt::opengl::CMesh::Ptr m_gl_mesh;
45  double m_resolution;
48 
49  private:
50  // temp vars (declared here to avoid reallocs):
51  mrpt::tfest::TMatchingPairList corrs;
53 };
54 } // namespace mvsim
GLint GLint GLint GLint GLint GLint y
mrpt::tfest::TMatchingPairList corrs
Definition: ElevationMap.h:51
virtual void loadConfigFrom(const rapidxml::xml_node< char > *root) override
virtual void simul_pre_timestep(const TSimulContext &context) override
scene
virtual void internalGuiUpdate(mrpt::opengl::COpenGLScene &scene, bool childrenOnly) override
ElevationMap(World *parent, const rapidxml::xml_node< char > *root)
GLint GLint GLint GLint GLint x
void poses_mutex_lock() override
Definition: ElevationMap.h:34
#define DECLARES_REGISTER_WORLD_ELEMENT(CLASS_NAME)
T root(const T v0, const T v1)
GLdouble GLdouble z
mrpt::opengl::CMesh::Ptr m_gl_mesh
Definition: ElevationMap.h:43
void poses_mutex_unlock() override
Definition: ElevationMap.h:35
mrpt::math::CMatrixFloat m_mesh_z_cache
Definition: ElevationMap.h:47
bool getElevationAt(double x, double y, float &z) const
return false if out of bounds
virtual void simul_post_timestep(const TSimulContext &context) override
mrpt::poses::CPose3D m_optimal_transf
Definition: ElevationMap.h:52


mvsim
Author(s):
autogenerated on Fri May 7 2021 03:05:51