#include <multibody/model.hpp>
Public Types | |
typedef std::size_t | Index |
Public Member Functions | |
Model () | |
~Model () | |
template<typename D > | |
Index | addBody (Index parent, const JointModelBase< D > &j, const SE3 &placement, const Inertia &Y, const std::string &jointName="", const std::string &bodyName="", bool visual=false) |
template<typename D > | |
Index | addBody (Index parent, const JointModelBase< D > &j, const SE3 &placement, const Inertia &Y, const Eigen::VectorXd &effort, const Eigen::VectorXd &velocity, const Eigen::VectorXd &lowPos, const Eigen::VectorXd &upPos, const std::string &jointName="", const std::string &bodyName="", bool visual=false) |
Index | addFixedBody (Index fix_lastMovingParent, const SE3 &placementFromLastMoving, const std::string &jointName="", bool visual=false) |
void | mergeFixedBody (Index parent, const SE3 &placement, const Inertia &Y) |
Index | getBodyId (const std::string &name) const |
bool | existBodyName (const std::string &name) const |
const std::string & | getBodyName (Index index) const |
Index | getJointId (const std::string &name) const |
bool | existJointName (const std::string &name) const |
const std::string & | getJointName (Index index) const |
Public Attributes | |
int | nq |
int | nv |
int | nbody |
int | nFixBody |
std::vector< Inertia > | inertias |
std::vector< SE3 > | jointPlacements |
JointModelVector | joints |
std::vector< Index > | parents |
std::vector< std::string > | names |
std::vector< std::string > | bodyNames |
std::vector< bool > | hasVisual |
std::vector< SE3 > | fix_lmpMi |
std::vector< Model::Index > | fix_lastMovingParent |
std::vector< bool > | fix_hasVisual |
std::vector< std::string > | fix_bodyNames |
Motion | gravity |
Static Public Attributes | |
static const Eigen::Vector3d | gravity981 |
typedef std::size_t se3::Model::Index |
se3::Model::Model | ( | ) | [inline] |
se3::Model::~Model | ( | ) | [inline] |
Model::Index se3::Model::addBody | ( | Index | parent, |
const JointModelBase< D > & | j, | ||
const SE3 & | placement, | ||
const Inertia & | Y, | ||
const std::string & | jointName = "" , |
||
const std::string & | bodyName = "" , |
||
bool | visual = false |
||
) |
References bodyNames, se3::JointModelBase< _JointModel >::derived(), hasVisual, inertias, jointPlacements, joints, names, nbody, nq, se3::JointModelBase< _JointModel >::nq(), nv, se3::JointModelBase< _JointModel >::nv(), parents, and se3::random().
Referenced by se3::buildModels::humanoid2d(), se3::buildModels::humanoidSimple(), and se3::lua::LuaModelReadFromTable().
Model::Index se3::Model::addBody | ( | Index | parent, |
const JointModelBase< D > & | j, | ||
const SE3 & | placement, | ||
const Inertia & | Y, | ||
const Eigen::VectorXd & | effort, | ||
const Eigen::VectorXd & | velocity, | ||
const Eigen::VectorXd & | lowPos, | ||
const Eigen::VectorXd & | upPos, | ||
const std::string & | jointName = "" , |
||
const std::string & | bodyName = "" , |
||
bool | visual = false |
||
) |
Model::Index se3::Model::addFixedBody | ( | Index | fix_lastMovingParent, |
const SE3 & | placementFromLastMoving, | ||
const std::string & | jointName = "" , |
||
bool | visual = false |
||
) | [inline] |
References fix_bodyNames, fix_hasVisual, fix_lastMovingParent, fix_lmpMi, nFixBody, and se3::random().
Referenced by se3::lua::LuaModelReadFromTable().
bool se3::Model::existBodyName | ( | const std::string & | name | ) | const [inline] |
References bodyNames.
bool se3::Model::existJointName | ( | const std::string & | name | ) | const [inline] |
References names.
Model::Index se3::Model::getBodyId | ( | const std::string & | name | ) | const [inline] |
References bodyNames, and nbody.
Referenced by se3::buildModels::humanoid2d(), and se3::buildModels::humanoidSimple().
const std::string & se3::Model::getBodyName | ( | Model::Index | index | ) | const [inline] |
Model::Index se3::Model::getJointId | ( | const std::string & | name | ) | const [inline] |
const std::string & se3::Model::getJointName | ( | Model::Index | index | ) | const [inline] |
References inertias, and se3::InertiaBase< Derived >::se3Action().
Referenced by se3::lua::LuaModelReadFromTable().
std::vector<std::string> se3::Model::bodyNames |
Referenced by addBody(), existBodyName(), getBodyId(), and getBodyName().
std::vector<std::string> se3::Model::fix_bodyNames |
Referenced by addFixedBody().
std::vector<bool> se3::Model::fix_hasVisual |
Referenced by addFixedBody().
std::vector<Model::Index> se3::Model::fix_lastMovingParent |
Referenced by addFixedBody().
std::vector<SE3> se3::Model::fix_lmpMi |
Referenced by addFixedBody().
const Eigen::Vector3d se3::Model::gravity981 [static] |
std::vector<bool> se3::Model::hasVisual |
Referenced by addBody(), and se3::operator<<().
std::vector<Inertia> se3::Model::inertias |
Referenced by addBody(), se3::NLEForwardStep::algo(), se3::RneaForwardStep::algo(), se3::CATForwardStep::algo(), se3::CrbaForwardStep::algo(), se3::JacobianCenterOfMassForwardStep::algo(), se3::centerOfMass(), se3::centerOfMassAcceleration(), se3::kineticEnergy(), mergeFixedBody(), and se3::potentialEnergy().
std::vector<SE3> se3::Model::jointPlacements |
Referenced by addBody(), se3::JacobiansForwardStep::algo(), se3::NLEForwardStep::algo(), se3::CATForwardStep::algo(), se3::RneaForwardStep::algo(), se3::CrbaForwardStep::algo(), se3::ForwardKinematicZeroStep::algo(), se3::JacobianForwardStep::algo(), se3::ForwardKinematicFirstStep::algo(), se3::JacobianCenterOfMassForwardStep::algo(), and se3::ForwardKinematicSecondStep::algo().
Referenced by addBody(), se3::computeAllTerms(), se3::computeJacobians(), se3::crba(), se3::Data::Data(), se3::emptyForwardPass(), se3::forwardKinematics(), se3::getJacobian(), getJointId(), getJointName(), se3::jacobian(), se3::jacobianCenterOfMass(), se3::jointLimits(), se3::nonLinearEffects(), and se3::rnea().
std::vector<std::string> se3::Model::names |
Referenced by addBody(), existJointName(), getJointId(), getJointName(), and se3::operator<<().
Referenced by addBody(), se3::centerOfMass(), se3::centerOfMassAcceleration(), se3::computeAllTerms(), se3::computeJacobians(), se3::crba(), se3::Data::Data(), se3::emptyForwardPass(), se3::forwardKinematics(), getBodyId(), getBodyName(), se3::jacobianCenterOfMass(), se3::jointLimits(), se3::kineticEnergy(), se3::nonLinearEffects(), se3::operator<<(), se3::potentialEnergy(), and se3::rnea().
Referenced by addFixedBody().
int se3::Model::nq |
Referenced by addBody(), and se3::operator<<().
int se3::Model::nv |
Referenced by addBody(), se3::Data::Data(), se3::cholesky::decompose(), se3::getJacobianComFromCrba(), se3::cholesky::internal::Mv(), se3::operator<<(), se3::cholesky::solve(), se3::cholesky::internal::UDUtv(), se3::cholesky::Uiv(), se3::cholesky::Utiv(), se3::cholesky::Utv(), and se3::cholesky::Uv().
std::vector<Index> se3::Model::parents |
Referenced by addBody(), se3::JacobiansForwardStep::algo(), se3::NLEForwardStep::algo(), se3::CATForwardStep::algo(), se3::RneaForwardStep::algo(), se3::NLEBackwardStep::algo(), se3::RneaBackwardStep::algo(), se3::CrbaBackwardStep::algo(), se3::ForwardKinematicZeroStep::algo(), se3::CATBackwardStep::algo(), se3::JacobianForwardStep::algo(), se3::ForwardKinematicFirstStep::algo(), se3::JacobianCenterOfMassForwardStep::algo(), se3::JacobianCenterOfMassBackwardStep::algo(), se3::ForwardKinematicSecondStep::algo(), se3::centerOfMass(), se3::centerOfMassAcceleration(), se3::jacobian(), and se3::operator<<().