|
| virtual void | simul_pre_timestep (const TSimulContext &context) override |
| |
| virtual void | simul_post_timestep (const TSimulContext &context) override |
| |
| virtual void | apply_force (const mrpt::math::TVector2D &force, const mrpt::math::TPoint2D &applyPoint=mrpt::math::TPoint2D(0, 0)) override |
| |
| virtual void | create_multibody_system (b2World &world) |
| |
| virtual double | getMaxBlockRadius () const |
| |
| virtual double | getMass () const |
| |
|
b2Body * | getBox2DBlockBody () |
| |
|
mrpt::math::TPoint2D | getBlockCenterOfMass () const |
| | In local coordinates.
|
| |
| const mrpt::math::TPolygon2D & | blockShape () const |
| |
|
void | blockShape (const mrpt::math::TPolygon2D &p) |
| |
| void | setBlockIndex (size_t idx) |
| |
| size_t | getBlockIndex () const |
| |
|
| Block (World *parent) |
| |
|
double | ground_friction () const |
| |
|
void | ground_friction (double newValue) |
| |
|
double | mass () const |
| |
|
void | mass (double newValue) |
| |
|
bool | isStatic () const |
| |
|
void | setIsStatic (bool b) |
| |
|
const mrpt::img::TColor | block_color () const |
| |
|
void | block_color (const mrpt::img::TColor &c) |
| |
|
double | block_z_min () const |
| |
|
double | block_z_max () const |
| |
|
void | block_z_min (double v) |
| |
|
void | block_z_max (double v) |
| |
|
double | visual_scale () const |
| |
|
void | visual_scale (double v) |
| |
| bool | default_block_z_min_max () const |
| |
|
VisualObject * | meAsVisualObject () override |
| |
|
std::optional< float > | getElevationAt (const mrpt::math::TPoint2D &worldXY) const override |
| |
|
| 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) |
| |
|
| Simulable (World *parent) |
| |
| mrpt::math::TTwist2D | getRefVelocityLocal () const |
| |
| mrpt::math::TTwist2D | getVelocityLocal () const |
| |
| mrpt::math::TTwist2D | getRefVelocityGlobal () const |
| |
| mrpt::math::TTwist2D | getComVelocityGlobal () const |
| |
| mrpt::math::TPose3D | getPose () const |
| |
| virtual mrpt::math::TPose3D | getRelativePose () const |
| |
|
mrpt::math::TPose3D | getPoseNoLock () const |
| | No thread-safe version. Used internally only.
|
| |
| mrpt::math::TVector3D | getLinearAcceleration () const |
| |
| void | setPose (const mrpt::math::TPose3D &p, bool notifyChange=true) const |
| |
| virtual void | setRelativePose (const mrpt::math::TPose3D &p) |
| |
| void | setRefVelocityLocal (const mrpt::math::TTwist2D &dq) |
| |
|
mrpt::poses::CPose2D | getCPose2D () const |
| | Alternative to getPose()
|
| |
|
mrpt::poses::CPose3D | getCPose3D () const |
| | Alternative to getPose()
|
| |
| const std::string & | getName () const |
| |
| void | setName (const std::string &s) |
| |
| bool | isInCollision () const |
| |
| bool | hadCollision () const |
| |
| void | resetCollisionFlag () |
| |
|
virtual void | registerOnServer (mvsim::Client &c) |
| |
|
const b2Body * | b2d_body () const |
| |
|
b2Body * | b2d_body () |
| |
|
World * | getSimulableWorldObject () |
| |
|
const World * | getSimulableWorldObject () const |
| |
|
virtual void | freeOpenGLResources () |
| |
| virtual std::optional< float > | getElevationAt ([[maybe_unused]] const mrpt::math::TPoint2D &worldXY) const |
| |
|
|
virtual void | internalGuiUpdate (const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &viz, const mrpt::optional_ref< mrpt::opengl::COpenGLScene > &physical, bool childrenOnly) override |
| |
|
void | updateMaxRadiusFromPoly () |
| |
|
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) |
| |
|
| size_t | blockIndex_ = 0 |
| |
|
std::vector< b2FrictionJoint * > | friction_joints_ |
| |
|
double | mass_ = 30.0 |
| |
|
bool | isStatic_ = false |
| |
|
mrpt::math::TPolygon2D | block_poly_ |
| |
| double | maxRadius_ |
| |
|
double | block_z_min_ = std::numeric_limits<double>::quiet_NaN() |
| |
|
double | block_z_max_ = std::numeric_limits<double>::quiet_NaN() |
| |
|
mrpt::img::TColor | block_color_ {0x00, 0x00, 0xff} |
| |
|
mrpt::math::TPoint2D | block_com_ {.0, .0} |
| | In local coordinates.
|
| |
|
double | lateral_friction_ = 0.5 |
| | Default: 0.5.
|
| |
|
double | groundFriction_ = 0.5 |
| | Default: 0.5.
|
| |
|
double | restitution_ = 0.01 |
| | Default: 0.01.
|
| |
| float | linear_damping_ = 0.1 |
| |
| float | angular_damping_ = 0.1 |
| |
| bool | intangible_ = false |
| |
| double | visual_scale_ = std::numeric_limits<double>::quiet_NaN() |
| |
| const TParameterDefinitions | params_ |
| |
|
b2Fixture * | fixture_block_ |
| |
|
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 |
| |
| std::string | name_ |
| |
A non-vehicle "actor" for the simulation, typically obstacle blocks.