#include <ElevationMap.h>
Public Member Functions | |
ElevationMap (World *parent, const rapidxml::xml_node< char > *root) | |
bool | getElevationAt (double x, double y, float &z) const |
return false if out of bounds More... | |
virtual void | loadConfigFrom (const rapidxml::xml_node< char > *root) override |
virtual void | simul_post_timestep (const TSimulContext &context) override |
virtual void | simul_pre_timestep (const TSimulContext &context) override |
virtual | ~ElevationMap () |
![]() | |
WorldElementBase (World *parent) | |
virtual | ~WorldElementBase () |
![]() | |
const std::optional< Shape2p5 > & | collisionShape () const |
void | customVisualVisible (const bool visible) |
bool | customVisualVisible () const |
virtual void | guiUpdate (const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &viz, const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &physical) |
World * | parent () |
const World * | parent () const |
void | showCollisionShape (bool show) |
VisualObject (World *parent, bool insertCustomVizIntoViz=true, bool insertCustomVizIntoPhysical=true) | |
virtual | ~VisualObject () |
![]() | |
virtual void | apply_force (const mrpt::math::TVector2D &force, const mrpt::math::TPoint2D &applyPoint=mrpt::math::TPoint2D(0, 0)) |
const b2Body * | b2d_body () const |
b2Body * | b2d_body () |
virtual void | freeOpenGLResources () |
mrpt::poses::CPose2D | getCPose2D () const |
Alternative to getPose() More... | |
mrpt::poses::CPose3D | getCPose3D () const |
Alternative to getPose() More... | |
mrpt::math::TVector3D | getLinearAcceleration () const |
const std::string & | getName () const |
mrpt::math::TPose3D | getPose () const |
mrpt::math::TPose3D | getPoseNoLock () const |
No thread-safe version. Used internally only. More... | |
World * | getSimulableWorldObject () |
const World * | getSimulableWorldObject () const |
mrpt::math::TTwist2D | getTwist () const |
mrpt::math::TTwist2D | getVelocityLocal () const |
bool | hadCollision () const |
bool | isInCollision () const |
virtual VisualObject * | meAsVisualObject () |
virtual void | registerOnServer (mvsim::Client &c) |
void | resetCollisionFlag () |
void | setName (const std::string &s) |
void | setPose (const mrpt::math::TPose3D &p) const |
void | setTwist (const mrpt::math::TTwist2D &dq) const |
Simulable (World *parent) | |
Protected Member Functions | |
virtual void | internalGuiUpdate (const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &viz, const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &physical, bool childrenOnly) override |
![]() | |
void | addCustomVisualization (const mrpt::opengl::CRenderizable::Ptr &glModel, const mrpt::poses::CPose3D &modelPose={}, const float modelScale=1.0f, const std::string &modelName="group", const std::optional< std::string > &modelURI=std::nullopt, const bool initialShowBoundingBox=false) |
bool | parseVisual (const rapidxml::xml_node< char > &rootNode) |
Returns true if there is at least one <visual>...</visual> entry. More... | |
bool | parseVisual (const JointXMLnode<> &rootNode) |
void | setCollisionShape (const Shape2p5 &cs) |
Protected Attributes | |
bool | debugShowContactPoints_ = false |
bool | firstSceneRendering_ = true |
std::shared_ptr< mrpt::opengl::CPointCloud > | gl_debugWheelsContactPoints_ |
mrpt::opengl::CMesh::Ptr | gl_mesh_ |
mrpt::math::CMatrixFloat | meshCacheZ_ |
float | resolution_ = 1.0f |
float | textureExtensionX_ = 0 |
0=auto More... | |
float | textureExtensionY_ = 0 |
0=auto More... | |
![]() | |
std::shared_ptr< mrpt::opengl::CSetOfObjects > | glCollision_ |
std::shared_ptr< mrpt::opengl::CSetOfObjects > | glCustomVisual_ |
int32_t | glCustomVisualId_ = -1 |
const bool | insertCustomVizIntoPhysical_ = true |
const bool | insertCustomVizIntoViz_ = true |
World * | world_ |
![]() | |
std::string | name_ |
Private Attributes | |
mrpt::tfest::TMatchingPairList | corrs_ |
mrpt::poses::CPose3D | optimalTf_ |
Additional Inherited Members | |
![]() | |
using | Ptr = std::shared_ptr< WorldElementBase > |
![]() | |
using | Ptr = std::shared_ptr< Simulable > |
![]() | |
static Ptr | factory (World *parent, const rapidxml::xml_node< char > *xml_node, const char *class_name=nullptr) |
![]() | |
static void | FreeOpenGLResources () |
![]() | |
static double | GeometryEpsilon = 1e-3 |
Definition at line 20 of file ElevationMap.h.
ElevationMap::ElevationMap | ( | World * | parent, |
const rapidxml::xml_node< char > * | root | ||
) |
Definition at line 27 of file ElevationMap.cpp.
|
virtual |
Definition at line 33 of file ElevationMap.cpp.
bool ElevationMap::getElevationAt | ( | double | x, |
double | y, | ||
float & | z | ||
) | const |
return false if out of bounds
Definition at line 365 of file ElevationMap.cpp.
|
overrideprotectedvirtual |
Implements mvsim::VisualObject.
Definition at line 159 of file ElevationMap.cpp.
|
overridevirtual |
Implements mvsim::WorldElementBase.
Definition at line 34 of file ElevationMap.cpp.
|
overridevirtual |
Override to do any required process right after the integration of dynamic equations for each timestep. IMPORTANT: Reimplementations MUST also call this base method, since it is in charge of important tasks (e.g. update q_, dq_)
Reimplemented from mvsim::Simulable.
Definition at line 339 of file ElevationMap.cpp.
|
overridevirtual |
Process right before the integration of dynamic equations for each timestep: set action forces from motors, update friction models, etc.
Reimplemented from mvsim::Simulable.
Definition at line 182 of file ElevationMap.cpp.
|
private |
Definition at line 58 of file ElevationMap.h.
|
protected |
Definition at line 54 of file ElevationMap.h.
|
protected |
Definition at line 45 of file ElevationMap.h.
|
protected |
Definition at line 44 of file ElevationMap.h.
|
protected |
This object holds both, the mesh data, and is in charge of 3D rendering.
Definition at line 43 of file ElevationMap.h.
|
protected |
A copy of elevation data in gl_mesh_. Coordinate order is (x,y)
Definition at line 52 of file ElevationMap.h.
|
private |
Definition at line 59 of file ElevationMap.h.
|
protected |
Definition at line 46 of file ElevationMap.h.
|
protected |
0=auto
Definition at line 48 of file ElevationMap.h.
|
protected |
0=auto
Definition at line 49 of file ElevationMap.h.