Rigid Body Dynamics Library
|
Describes a joint relative to the predecessor body. More...
Public Member Functions | |
Joint () | |
Joint (JointType type) | |
Joint (JointType type, int degreesOfFreedom) | |
Joint (const Joint &joint) | |
Joint & | operator= (const Joint &joint) |
~Joint () | |
Joint (const JointType joint_type, const Math::Vector3d &joint_axis) | |
Constructs a joint from the given cartesian parameters. More... | |
Joint (const Math::SpatialVector &axis_0) | |
Constructs a 1 DoF joint with the given motion subspaces. More... | |
Joint (const Math::SpatialVector &axis_0, const Math::SpatialVector &axis_1) | |
Constructs a 2 DoF joint with the given motion subspaces. More... | |
Joint (const Math::SpatialVector &axis_0, const Math::SpatialVector &axis_1, const Math::SpatialVector &axis_2) | |
Constructs a 3 DoF joint with the given motion subspaces. More... | |
Joint (const Math::SpatialVector &axis_0, const Math::SpatialVector &axis_1, const Math::SpatialVector &axis_2, const Math::SpatialVector &axis_3) | |
Constructs a 4 DoF joint with the given motion subspaces. More... | |
Joint (const Math::SpatialVector &axis_0, const Math::SpatialVector &axis_1, const Math::SpatialVector &axis_2, const Math::SpatialVector &axis_3, const Math::SpatialVector &axis_4) | |
Constructs a 5 DoF joint with the given motion subspaces. More... | |
Joint (const Math::SpatialVector &axis_0, const Math::SpatialVector &axis_1, const Math::SpatialVector &axis_2, const Math::SpatialVector &axis_3, const Math::SpatialVector &axis_4, const Math::SpatialVector &axis_5) | |
Constructs a 6 DoF joint with the given motion subspaces. More... | |
bool | validate_spatial_axis (Math::SpatialVector &axis) |
Checks whether we have pure rotational or translational axis. More... | |
Data Fields | |
Math::SpatialVector * | mJointAxes |
The spatial axes of the joint. More... | |
JointType | mJointType |
Type of joint. More... | |
unsigned int | mDoFCount |
Number of degrees of freedom of the joint. Note: CustomJoints. More... | |
unsigned int | q_index |
int | custom_joint_index |
Describes a joint relative to the predecessor body.
This class contains all information required for one single joint. This contains the joint type and the axis of the joint. See Joint Modeling for detailed description.
Definition at line 218 of file Joint.h.
References RigidBodyDynamics::JointType1DoF, RigidBodyDynamics::JointType6DoF, RigidBodyDynamics::JointTypeCustom, RigidBodyDynamics::JointTypeEulerXYZ, RigidBodyDynamics::JointTypeEulerYXZ, RigidBodyDynamics::JointTypeEulerZXY, RigidBodyDynamics::JointTypeEulerZYX, RigidBodyDynamics::JointTypeFixed, RigidBodyDynamics::JointTypeFloatingBase, RigidBodyDynamics::JointTypeRevoluteX, RigidBodyDynamics::JointTypeRevoluteY, RigidBodyDynamics::JointTypeRevoluteZ, RigidBodyDynamics::JointTypeSpherical, and RigidBodyDynamics::JointTypeTranslationXYZ.
Definition at line 304 of file Joint.h.
References RigidBodyDynamics::JointTypeCustom.
Definition at line 325 of file Joint.h.
References Joint::mJointAxes.
|
inline |
Constructs a joint from the given cartesian parameters.
This constructor creates all the required spatial values for the given cartesian parameters.
joint_type | whether the joint is revolute or prismatic |
joint_axis | the axis of rotation or translation |
Definition at line 371 of file Joint.h.
References RigidBodyDynamics::JointTypePrismatic, and RigidBodyDynamics::JointTypeRevolute.
|
inline |
Constructs a 1 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
Definition at line 414 of file Joint.h.
References RigidBodyDynamics::JointTypeHelical, RigidBodyDynamics::JointTypePrismatic, RigidBodyDynamics::JointTypeRevoluteX, RigidBodyDynamics::JointTypeRevoluteY, and RigidBodyDynamics::JointTypeRevoluteZ.
|
inline |
Constructs a 2 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
axis_1 | Motion subspace for axis 1 |
Definition at line 446 of file Joint.h.
References RigidBodyDynamics::JointType2DoF.
|
inline |
Constructs a 3 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
axis_1 | Motion subspace for axis 1 |
axis_2 | Motion subspace for axis 2 |
Definition at line 472 of file Joint.h.
References RigidBodyDynamics::JointType3DoF.
|
inline |
Constructs a 4 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
axis_1 | Motion subspace for axis 1 |
axis_2 | Motion subspace for axis 2 |
axis_3 | Motion subspace for axis 3 |
Definition at line 503 of file Joint.h.
References RigidBodyDynamics::JointType4DoF.
|
inline |
Constructs a 5 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
axis_1 | Motion subspace for axis 1 |
axis_2 | Motion subspace for axis 2 |
axis_3 | Motion subspace for axis 3 |
axis_4 | Motion subspace for axis 4 |
Definition at line 538 of file Joint.h.
References RigidBodyDynamics::JointType5DoF.
|
inline |
Constructs a 6 DoF joint with the given motion subspaces.
The motion subspaces are of the format:
axis_0 | Motion subspace for axis 0 |
axis_1 | Motion subspace for axis 1 |
axis_2 | Motion subspace for axis 2 |
axis_3 | Motion subspace for axis 3 |
axis_4 | Motion subspace for axis 4 |
axis_5 | Motion subspace for axis 5 |
Definition at line 577 of file Joint.h.
References RigidBodyDynamics::JointType6DoF.
Definition at line 335 of file Joint.h.
References Joint::custom_joint_index, Joint::mDoFCount, Joint::mJointAxes, Joint::mJointType, and Joint::q_index.
|
inline |
unsigned int mDoFCount |
Math::SpatialVector* mJointAxes |