class
ManagedArticulatedObjectClass describing wrapper for ArticulatedObject constructions. Provides bindings for all ArticulatedObject-specific functionality.
Base classes
-
template<class T>class AbstractManagedPhysicsObject<esp::physics::ArticulatedObject>
- Base class template for wrapper for physics objects of all kinds to enable Managed Container access.
Derived classes
- class ManagedBulletArticulatedObject
- Class describing wrapper for dynamic ArticulatedObject constructions using the Bullet library. Provides bindings for all ArticulatedObject-specific functionality.
Constructors, destructors, conversion operators
-
ManagedArticulatedObject(const std::
string& classKey = "ManagedArticulatedObject") explicit
Public functions
-
auto getInitializationAttributes() const -> std::
shared_ptr<metadata:: attributes:: ArticulatedObjectAttributes> - auto getGlobalScale() const -> float
-
auto getLinkSceneNode(int linkId = -1) const -> scene::
SceneNode* -
auto getLinkVisualSceneNodes(int linkId = -1) const -> std::
vector<scene:: SceneNode*> - auto getLink(int linkId) const -> ArticulatedLink*
- auto getNumLinks() const -> int
-
auto getLinkIds() const -> std::
vector<int> -
auto getLinkIdsWithBase() const -> std::
vector<int> -
auto getLinkObjectIds() const -> std::
unordered_map<int, int> -
void setRootLinearVelocity(const Mn::
Vector3& linVel) -
auto getRootLinearVelocity() const -> Mn::
Vector3 -
void setRootAngularVelocity(const Mn::
Vector3& angVel) -
auto getRootAngularVelocity() const -> Mn::
Vector3 -
void setJointForces(const std::
vector<float>& forces) -
void addJointForces(const std::
vector<float>& forces) -
auto getJointForces() -> std::
vector<float> -
void setJointVelocities(const std::
vector<float>& vels) -
auto getJointVelocities() -> std::
vector<float> -
void setJointPositions(const std::
vector<float>& positions) -
auto getJointPositions() -> std::
vector<float> -
auto getJointMotorTorques(double fixedTimeStep) -> std::
vector<float> -
auto getJointPositionLimits() -> std::
pair<std:: vector<float>, std:: vector<float>> -
void addArticulatedLinkForce(int linkId,
Magnum::
Vector3 force) - auto getArticulatedLinkFriction(int linkId) const -> float
- void setArticulatedLinkFriction(int linkId, float friction)
- auto getLinkJointType(int linkId) const -> JointType
-
auto getLinkJointName(int linkId) const -> std::
string -
auto getLinkName(int linkId) const -> std::
string - auto getLinkDoFOffset(int linkId) const -> int
- auto getLinkNumDoFs(int linkId) const -> int
- auto getLinkJointPosOffset(int linkId) const -> int
- auto getLinkNumJointPos(int linkId) const -> int
- void reset()
- auto getCanSleep() const -> bool
- void setAutoClampJointLimits(bool autoClamp)
- auto getAutoClampJointLimits() const -> bool
- void clampJointLimits()
- auto createJointMotor(const int dof, const JointMotorSettings& settings) const -> int
- void removeJointMotor(const int motorId)
- auto getJointMotorSettings(const int motorId) const -> JointMotorSettings
- void updateJointMotor(const int motorId, const JointMotorSettings& settings)
-
auto getExistingJointMotors() const -> std::
unordered_map<int, int> -
auto createMotorsForAllDofs(const JointMotorSettings& settings) -> std::
unordered_map<int, int> -
void updateAllMotorTargets(const std::
vector<float>& stateTargets, bool velocities)
Protected functions
-
auto getPhyObjInfoHeaderInternal() const -> std::
string override - Retrieve a comma-separated string holding the header values for the info returned for this managed object, type-specific. TODO : once Magnum supports retrieving key-values of configurations, use that to build this data.
-
auto getPhysObjInfoInternal(std::
shared_ptr<esp:: physics:: ArticulatedObject>& sp) const -> std:: string override - Specialization-specific extension of getObjectInfo, comma separated info ideal for saving to csv.