Simbody
|
Three translational mobilities. More...
#include <MobilizedBody.h>
Public Member Functions | |
Translation (Direction=Forward) | |
Translation (MobilizedBody &parent, const Body &, Direction=Forward) | |
By default the parent body frame and the body's own frame are used as the inboard and outboard mobilizer frames, resp. | |
Translation (MobilizedBody &parent, const Transform &inbFrame, const Body &, const Transform &outbFrame, Direction=Forward) | |
Use this constructor to specify mobilizer frames which are not coincident with the body frames. | |
Translation & | addBodyDecoration (const Transform &X_BD, const DecorativeGeometry &g) |
Add decorative geometry specified relative to the new (outboard) body's reference frame B, or to the outboard mobilizer frame M attached to body B, or to the inboard mobilizer frame F attached to the parent body P. | |
Translation & | addOutboardDecoration (const Transform &X_MD, const DecorativeGeometry &g) |
Add decorative geometry specified relative to the outboard mobilizer frame M attached to body B. | |
Translation & | addInboardDecoration (const Transform &X_FD, const DecorativeGeometry &g) |
Add decorative geometry specified relative to the inboard mobilizer frame F attached to the parent body P. | |
Translation & | setDefaultInboardFrame (const Transform &X_PF) |
Change this mobilizer's frame F on the parent body P. | |
Translation & | setDefaultOutboardFrame (const Transform &X_BM) |
Change this mobilizer's frame M fixed on this (the outboard) body B. | |
Translation & | setDefaultTranslation (const Vec3 &p_FM) |
const Vec3 & | getDefaultTranslation () const |
void | setMobilizerTranslation (State &s, const Vec3 &p_FM) const |
const Vec3 & | getMobilizerTranslation (const State &s) const |
void | setMobilizerVelocity (State &s, const Vec3 &v_FM) const |
const Vec3 & | getMobilizerVelocity (const State &s) const |
At stage Velocity or higher, return the cross-mobilizer velocity V_FM, the relative velocity of this body's "moving" mobilizer frame M in the parent body's corresponding "fixed" frame F, measured and expressed in F. | |
const Vec3 & | getMobilizerAcceleration (const State &s) const |
TODO: Not implemented yet -- any volunteers? At stage Acceleration, return the cross-mobilizer acceleration A_FM, the relative acceleration of body B's "moving" mobilizer frame M in the parent body's corresponding "fixed" frame F, measured and expressed in F. | |
const Vec3 & | getDefaultQ () const |
Translation & | setDefaultQ (const Vec3 &q) |
const Vec3 & | getQ (const State &) const |
const Vec3 & | getQDot (const State &) const |
const Vec3 & | getQDotDot (const State &) const |
const Vec3 & | getU (const State &) const |
const Vec3 & | getUDot (const State &) const |
void | setQ (State &, const Vec3 &) const |
void | setU (State &, const Vec3 &) const |
const Vec3 & | getMyPartQ (const State &, const Vector &qlike) const |
const Vec3 & | getMyPartU (const State &, const Vector &ulike) const |
Vec3 & | updMyPartQ (const State &, Vector &qlike) const |
Vec3 & | updMyPartU (const State &, Vector &ulike) const |
SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS (Translation, TranslationImpl, MobilizedBody) |
Three translational mobilities.
The generalized coordinates are x,y,z translations along the parent (inboard) F frame axes.
SimTK::MobilizedBody::Translation::Translation | ( | Direction | = Forward | ) | [explicit] |
SimTK::MobilizedBody::Translation::Translation | ( | MobilizedBody & | parent, |
const Body & | , | ||
Direction | = Forward |
||
) |
By default the parent body frame and the body's own frame are used as the inboard and outboard mobilizer frames, resp.
SimTK::MobilizedBody::Translation::Translation | ( | MobilizedBody & | parent, |
const Transform & | inbFrame, | ||
const Body & | , | ||
const Transform & | outbFrame, | ||
Direction | = Forward |
||
) |
Use this constructor to specify mobilizer frames which are not coincident with the body frames.
Translation& SimTK::MobilizedBody::Translation::addBodyDecoration | ( | const Transform & | X_BD, |
const DecorativeGeometry & | g | ||
) | [inline] |
Add decorative geometry specified relative to the new (outboard) body's reference frame B, or to the outboard mobilizer frame M attached to body B, or to the inboard mobilizer frame F attached to the parent body P.
Note that the body itself may already have had some decorative geometry on it when it was first put into this MobilizedBody; in that case this just adds more.
Reimplemented from SimTK::MobilizedBody.
Translation& SimTK::MobilizedBody::Translation::addOutboardDecoration | ( | const Transform & | X_MD, |
const DecorativeGeometry & | |||
) | [inline] |
Add decorative geometry specified relative to the outboard mobilizer frame M attached to body B.
If body B already has decorative geometry on it, this just adds some more.
Reimplemented from SimTK::MobilizedBody.
Translation& SimTK::MobilizedBody::Translation::addInboardDecoration | ( | const Transform & | X_FD, |
const DecorativeGeometry & | |||
) | [inline] |
Add decorative geometry specified relative to the inboard mobilizer frame F attached to the parent body P.
If body P already has decorative geometry on it, this just adds some more.
Reimplemented from SimTK::MobilizedBody.
Translation& SimTK::MobilizedBody::Translation::setDefaultInboardFrame | ( | const Transform & | X_PF | ) | [inline] |
Change this mobilizer's frame F on the parent body P.
Calling this method invalidates the MobilizedBody's topology, so the containing matter subsystem's realizeTopology() method must be called again. A reference to this MobilizedBody is returned so that this can be chained like an assignment operator.
Reimplemented from SimTK::MobilizedBody.
Translation& SimTK::MobilizedBody::Translation::setDefaultOutboardFrame | ( | const Transform & | X_BM | ) | [inline] |
Change this mobilizer's frame M fixed on this (the outboard) body B.
Calling this method invalidates the MobilizedBody's topology, so the containing matter subsystem's realizeTopology() method must be called again. A reference to this MobilizedBody is returned so that this can be chained like an assignment operator.
Reimplemented from SimTK::MobilizedBody.
Translation& SimTK::MobilizedBody::Translation::setDefaultTranslation | ( | const Vec3 & | p_FM | ) | [inline] |
const Vec3& SimTK::MobilizedBody::Translation::getDefaultTranslation | ( | ) | const [inline] |
void SimTK::MobilizedBody::Translation::setMobilizerTranslation | ( | State & | s, |
const Vec3 & | p_FM | ||
) | const [inline] |
const Vec3& SimTK::MobilizedBody::Translation::getMobilizerTranslation | ( | const State & | s | ) | const [inline] |
void SimTK::MobilizedBody::Translation::setMobilizerVelocity | ( | State & | s, |
const Vec3 & | v_FM | ||
) | const [inline] |
const Vec3& SimTK::MobilizedBody::Translation::getMobilizerVelocity | ( | const State & | ) | const [inline] |
At stage Velocity or higher, return the cross-mobilizer velocity V_FM, the relative velocity of this body's "moving" mobilizer frame M in the parent body's corresponding "fixed" frame F, measured and expressed in F.
Note that this isn't the usual spatial velocity since it isn't expressed in G.
Reimplemented from SimTK::MobilizedBody.
const Vec3& SimTK::MobilizedBody::Translation::getMobilizerAcceleration | ( | const State & | ) | const [inline] |
TODO: Not implemented yet -- any volunteers? At stage Acceleration, return the cross-mobilizer acceleration A_FM, the relative acceleration of body B's "moving" mobilizer frame M in the parent body's corresponding "fixed" frame F, measured and expressed in F.
Note that this isn't the usual spatial acceleration since it isn't expressed in G.
Reimplemented from SimTK::MobilizedBody.
const Vec3& SimTK::MobilizedBody::Translation::getDefaultQ | ( | ) | const |
Translation& SimTK::MobilizedBody::Translation::setDefaultQ | ( | const Vec3 & | q | ) |
const Vec3& SimTK::MobilizedBody::Translation::getMyPartQ | ( | const State & | , |
const Vector & | qlike | ||
) | const |
const Vec3& SimTK::MobilizedBody::Translation::getMyPartU | ( | const State & | , |
const Vector & | ulike | ||
) | const |
SimTK::MobilizedBody::Translation::SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS | ( | Translation | , |
TranslationImpl | , | ||
MobilizedBody | |||
) |