|
MVSim
Lightweight simulator for 2.5D vehicles and robots
|
#include <Wheel.h>


Public Member Functions | |
| Wheel (World *world) | |
| mrpt::math::TPose3D | pose () const |
| std::string | asString () const |
| void | getAs3DObject (mrpt::opengl::CSetOfObjects &obj, bool isPhysicalScene) |
| void | loadFromXML (const rapidxml::xml_node< char > *xml_node) |
| void | internalGuiUpdate (const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &viz, const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &physical, bool childrenOnly) override |
| double | getPhi () const |
| Orientation (rad) wrt vehicle local frame. | |
| void | setPhi (double val) |
| Orientation (rad) wrt vehicle local frame. | |
| double | getW () const |
| Spinning velocity (rad/s) wrt shaft. | |
| void | setW (double val) |
| Spinning velocity (rad/s) wrt shaft. | |
| void | recalcInertia () |
| Recompute Iyy from mass, diameter and height. | |
Public Member Functions inherited from mvsim::VisualObject | |
| VisualObject (World *parent, bool insertCustomVizIntoViz=true, bool insertCustomVizIntoPhysical=true) | |
| VisualObject (const VisualObject &)=delete | |
| VisualObject & | operator= (const VisualObject &)=delete |
| VisualObject (VisualObject &&)=delete | |
| VisualObject & | operator= (VisualObject &&)=delete |
| 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 | customVisualVisible (const bool visible) |
| bool | customVisualVisible () const |
| const std::optional< Shape2p5 > & | collisionShape () const |
| void | showCollisionShape (bool show) |
Public Attributes | |
| double | x = 0 |
| double | y = -0.5 |
| double | yaw = 0 |
| double | diameter = .4 |
| double | width = .2 |
| double | mass = 2.0 |
| [kg] | |
| double | Iyy = 1.0 |
| mrpt::img::TColor | color {0xff323232} |
| std::string | linked_yaw_object_name |
| double | linked_yaw_offset = .0 |
| const TParameterDefinitions | params_ |
Protected Attributes | |
| double | phi = 0 |
| double | w = 0 |
Protected Attributes inherited from mvsim::VisualObject | |
| World * | world_ |
| std::shared_ptr< mrpt::opengl::CSetOfObjects > | glCustomVisual_ |
| std::shared_ptr< mrpt::opengl::CSetOfObjects > | glCollision_ |
| int32_t | glCustomVisualId_ = -1 |
| const bool | insertCustomVizIntoViz_ = true |
| const bool | insertCustomVizIntoPhysical_ = true |
Additional Inherited Members | |
Static Public Member Functions inherited from mvsim::VisualObject | |
| static void | FreeOpenGLResources () |
Static Public Attributes inherited from mvsim::VisualObject | |
| static double | GeometryEpsilon |
Protected Member Functions inherited from mvsim::VisualObject | |
| bool | parseVisual (const rapidxml::xml_node< char > &rootNode) |
Returns true if there is at least one <visual>...</visual> entry. | |
| bool | parseVisual (const JointXMLnode<> &rootNode) |
| 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, const std::optional< double > &scaleOverride=std::nullopt) |
| void | setCollisionShape (const Shape2p5 &cs) |
Common info for 2D wheels, for usage in derived classes. Wheels are modeled as a mass with a cylindrical shape.
| std::string mvsim::Wheel::asString | ( | ) | const |
Generates a human-readable description of the wheel parameters and kinematic status
|
inline |
Pose of the wheel wrt the chassis ref point (in local coords)
| mrpt::img::TColor mvsim::Wheel::color {0xff323232} |
Color for OpenGL rendering
| double mvsim::Wheel::diameter = .4 |
Length(diameter) and width of the wheel rectangle [m]
| double mvsim::Wheel::Iyy = 1.0 |
Inertia: computed automatically from geometry at constructor and at loadFromXML(), but can be overrided.
| std::string mvsim::Wheel::linked_yaw_object_name |
Optional: name of a named custom visualization object in my parent vehicle, whose angle (yaw) is to be set whenever this wheel angle is updated.
| const TParameterDefinitions mvsim::Wheel::params_ |
|
protected |
Angular position and velocity of the wheel as it spins over its shaft (rad, rad/s)
| double mvsim::Wheel::x = 0 |
Location of the wheel wrt the chassis ref point [m,rad] (in local coords)