class
#include <esp/metadata/URDFParser.h>
Model Generic structure representing an articulated object parsed from a URDF file independent from any physics implementation.
Constructors, destructors, conversion operators
- Model() defaulted
Public functions
-
auto m_rootTransformInWorld(Magnum::
Math:: ) -> Magnum::IdentityInitT Matrix4 - world transform of the object root if provided
- void printKinematicChain() const
-
auto getLink(const std::
string & linkName) const -> std::shared_ptr <Link> - Get a link provided its name.
-
auto getLink(int linkIndex) const -> std::
shared_ptr <Link> - Get a link provided its index.
-
auto getJoint(int linkIndex) const -> std::
shared_ptr <Joint> - Get a parent joint of a link provided the link index.
- void setGlobalScaling(float scaling)
- Set global scaling and re-scale an existing model. Modifies various internal parameters.
- auto getGlobalScaling() const -> float
- Get the currently configured global model scaling.
- void setMassScaling(float massScaling)
- Set scaling for mass from initial values configured in URDF. Modifies various internal parameters.
- auto getMassScaling() const -> float
- Get the currently configured mass scaling of the model.
Public variables
-
std::
string m_name - name of the articulated object or robot
-
std::
string m_sourceFile - source file this model was built from (e.g. the .urdf file)
-
std::
map <std::string , std::shared_ptr <Material>> m_materials - map of names to materials
-
std::
map <std::string , std::shared_ptr <Link>> m_links - map of names to links
-
std::
map <int, std::string > m_linkIndicesToNames - map of link indices to names
-
std::
map <std::string , std::shared_ptr <Joint>> m_joints - map of names to joints
-
std::
vector <std::shared_ptr <Link>> m_rootLinks - list of root links (usually 1)
-
std::
map <std::string , std::string > m_parentLinkTree - Keyed by child link name, provides reference to parent link.
- bool m_overrideFixedBase
Protected functions
- void scaleShape(Shape& shape, float scale)
- Scale the transformation and parameters of a Shape.
Protected variables
- float m_globalScaling
- float m_massScaling
- Mass scaling of the model's Link inertias.
Function documentation
void esp::metadata::URDF::Model:: printKinematicChain() const
output a string to console listing the link|joint hierarchy of this model for debugging and investigation purposes
std::shared_ptr <Link> esp::metadata::URDF::Model:: getLink(const std::string & linkName) const
Get a link provided its name.
Parameters | |
---|---|
linkName | The link's configured name from the URDF file. |
Returns | The link metadata object or nullptr if no link with provided name. |
std::shared_ptr <Link> esp::metadata::URDF::Model:: getLink(int linkIndex) const
Get a link provided its index.
Parameters | |
---|---|
linkIndex | The link's index. |
Returns | The link metadata object or nullptr if no link with provided index. |
std::shared_ptr <Joint> esp::metadata::URDF::Model:: getJoint(int linkIndex) const
Get a parent joint of a link provided the link index.
Parameters | |
---|---|
linkIndex | The link's index. |
Returns | The parent joint metadata object or nullptr if no link with provided index. |
void esp::metadata::URDF::Model:: setGlobalScaling(float scaling)
Set global scaling and re-scale an existing model. Modifies various internal parameters.
Parameters | |
---|---|
scaling | The new absolute uniform scale. |
void esp::metadata::URDF::Model:: setMassScaling(float massScaling)
Set scaling for mass from initial values configured in URDF. Modifies various internal parameters.
Parameters | |
---|---|
massScaling | The new absolute uniform mass scale. |
Variable documentation
bool esp::metadata::URDF::Model::m_overrideFixedBase
if true, force this model to produce a fixed base instance (e.g. the root is not dynamic)
float esp::metadata::URDF::Model::m_globalScaling protected
Global euclidean scaling applied to the model's transforms, asset scales, and prismatic joint limits. Does not affect mass.