Rigid Body Dynamics Library
|
Describes all properties of a single body. More...
#include <Body.h>
Public Member Functions | |
Body () | |
Body (const Body &body) | |
Body & | operator= (const Body &body) |
Body (const Math::Scalar &mass, const Math::Vector3d &com, const Math::Vector3d &gyration_radii) | |
Constructs a body from mass, center of mass and radii of gyration. More... | |
Body (const Math::Scalar &mass, const Math::Vector3d &com, const Math::Matrix3d &inertia_C) | |
Constructs a body from mass, center of mass, and a 3x3 inertia matrix. More... | |
void | Join (const Math::SpatialTransform &transform, const Body &other_body) |
Joins inertial parameters of two bodies to create a composite body. More... | |
~Body () | |
Data Fields | |
Math::Scalar | mMass |
The mass of the body. More... | |
Math::Vector3d | mCenterOfMass |
The position of the center of mass in body coordinates. More... | |
Math::Matrix3d | mInertia |
Inertia matrix at the center of mass. More... | |
bool | mIsVirtual |
Describes all properties of a single body.
A Body contains information about mass, the location of its center of mass, and the ineria tensor in the center of mass. This class is designed to use the given information and transform it such that it can directly be used by the spatial algebra.
|
inline |
Constructs a body from mass, center of mass and radii of gyration.
This constructor eases the construction of a new body as all the required parameters can be specified as parameters to the constructor. These are then used to generate the spatial inertia matrix which is expressed at the origin.
mass | the mass of the body |
com | the position of the center of mass in the bodies coordinates |
gyration_radii | the radii of gyration at the center of mass of the body |
|
inline |
Constructs a body from mass, center of mass, and a 3x3 inertia matrix.
This constructor eases the construction of a new body as all the required parameters can simply be specified as parameters to the constructor. These are then used to generate the spatial inertia matrix which is expressed at the origin.
mass | the mass of the body |
com | the position of the center of mass in the bodies coordinates |
inertia_C | the inertia at the center of mass |
|
inline |
Joins inertial parameters of two bodies to create a composite body.
This function can be used to joint inertial parameters of two bodies to create a composite body that has the inertial properties as if the two bodies were joined by a fixed joint.
transform | The frame transformation from the current body to the other body. |
other_body | The other body that will be merged with *this. |
Definition at line 108 of file Body.h.
References SpatialRigidBodyInertia::createFromMassComInertiaC(), SpatialTransform::E, Body::mCenterOfMass, Body::mInertia, Body::mMass, RigidBodyDynamics::Math::parallel_axis(), SpatialTransform::r, SpatialRigidBodyInertia::toMatrix(), and RigidBodyDynamics::Math::VectorCrossMatrix().
Definition at line 41 of file Body.h.
References Body::mCenterOfMass, Body::mInertia, Body::mIsVirtual, and Body::mMass.
Math::Vector3d mCenterOfMass |
Math::Matrix3d mInertia |
Math::Scalar mMass |