Rigid Body Dynamics Library
|
#include <Kinematics.h>
Public Types | |
enum | ConstraintType { ConstraintTypePosition = 0 , ConstraintTypeOrientation , ConstraintTypeFull , ConstraintTypePositionXY , ConstraintTypePositionZ , ConstraintTypePositionCoMXY } |
Public Member Functions | |
InverseKinematicsConstraintSet () | |
unsigned int | AddPointConstraint (unsigned int body_id, const Math::Vector3d &body_point, const Math::Vector3d &target_pos, float weight=1.) |
unsigned int | AddOrientationConstraint (unsigned int body_id, const Math::Matrix3d &target_orientation, float weight=1.) |
unsigned int | AddFullConstraint (unsigned int body_id, const Math::Vector3d &body_point, const Math::Vector3d &target_pos, const Math::Matrix3d &target_orientation, float weight=1.) |
unsigned int | ClearConstraints () |
unsigned int | AddPointConstraintXY (unsigned int body_id, const Math::Vector3d &body_point, const Math::Vector3d &target_pos, float weight=1.) |
unsigned int | AddPointConstraintZ (unsigned int body_id, const Math::Vector3d &body_point, const Math::Vector3d &target_pos, float weight=1.) |
unsigned int | AddPointConstraintCoMXY (unsigned int body_id, const Math::Vector3d &target_pos, float weight=1.) |
Data Fields | |
Math::MatrixNd | J |
Math::MatrixNd | G |
the Jacobian of all constraints More... | |
Math::VectorNd | e |
temporary storage of a single body Jacobian More... | |
unsigned int | num_constraints |
Vector with all the constraint residuals. More... | |
double | lambda |
unsigned int | num_steps |
Damping factor, the default value of 1.0e-6 is reasonable for most problems. More... | |
unsigned int | max_steps |
double | step_tol |
double | constraint_tol |
double | error_norm |
double | delta_q_norm |
std::vector< ConstraintType > | constraint_type |
std::vector< unsigned int > | body_ids |
std::vector< Math::Vector3d > | body_points |
std::vector< Math::Vector3d > | target_positions |
std::vector< Math::Matrix3d > | target_orientations |
std::vector< unsigned int > | constraint_row_index |
std::vector< float > | constraint_weight |
Definition at line 362 of file Kinematics.h.
enum ConstraintType |
Enumerator | |
---|---|
ConstraintTypePosition | |
ConstraintTypeOrientation | |
ConstraintTypeFull | |
ConstraintTypePositionXY | |
ConstraintTypePositionZ | |
ConstraintTypePositionCoMXY |
Definition at line 363 of file Kinematics.h.
RBDL_DLLAPI InverseKinematicsConstraintSet | ( | ) |
Definition at line 719 of file Kinematics.cc.
References InverseKinematicsConstraintSet::constraint_tol, InverseKinematicsConstraintSet::e, InverseKinematicsConstraintSet::lambda, InverseKinematicsConstraintSet::max_steps, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::num_steps, and InverseKinematicsConstraintSet::step_tol.
RBDL_DLLAPI unsigned int AddFullConstraint | ( | unsigned int | body_id, |
const Math::Vector3d & | body_point, | ||
const Math::Vector3d & | target_pos, | ||
const Math::Matrix3d & | target_orientation, | ||
float | weight = 1. |
||
) |
Definition at line 818 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypeFull, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
RBDL_DLLAPI unsigned int AddOrientationConstraint | ( | unsigned int | body_id, |
const Math::Matrix3d & | target_orientation, | ||
float | weight = 1. |
||
) |
Definition at line 801 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypeOrientation, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
RBDL_DLLAPI unsigned int AddPointConstraint | ( | unsigned int | body_id, |
const Math::Vector3d & | body_point, | ||
const Math::Vector3d & | target_pos, | ||
float | weight = 1. |
||
) |
Definition at line 729 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypePosition, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
unsigned int AddPointConstraintCoMXY | ( | unsigned int | body_id, |
const Math::Vector3d & | target_pos, | ||
float | weight = 1. |
||
) |
Definition at line 782 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypePositionCoMXY, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
unsigned int AddPointConstraintXY | ( | unsigned int | body_id, |
const Math::Vector3d & | body_point, | ||
const Math::Vector3d & | target_pos, | ||
float | weight = 1. |
||
) |
Definition at line 747 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypePositionXY, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
unsigned int AddPointConstraintZ | ( | unsigned int | body_id, |
const Math::Vector3d & | body_point, | ||
const Math::Vector3d & | target_pos, | ||
float | weight = 1. |
||
) |
Definition at line 765 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::ConstraintTypePositionZ, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
RBDL_DLLAPI unsigned int ClearConstraints | ( | ) |
Definition at line 837 of file Kinematics.cc.
References InverseKinematicsConstraintSet::body_ids, InverseKinematicsConstraintSet::body_points, InverseKinematicsConstraintSet::constraint_row_index, InverseKinematicsConstraintSet::constraint_type, InverseKinematicsConstraintSet::constraint_weight, InverseKinematicsConstraintSet::num_constraints, InverseKinematicsConstraintSet::target_orientations, and InverseKinematicsConstraintSet::target_positions.
std::vector<unsigned int> body_ids |
Definition at line 389 of file Kinematics.h.
std::vector<Math::Vector3d> body_points |
Definition at line 390 of file Kinematics.h.
std::vector<unsigned int> constraint_row_index |
Definition at line 393 of file Kinematics.h.
double constraint_tol |
Definition at line 383 of file Kinematics.h.
std::vector<ConstraintType> constraint_type |
Definition at line 388 of file Kinematics.h.
std::vector<float> constraint_weight |
Definition at line 394 of file Kinematics.h.
double delta_q_norm |
Definition at line 385 of file Kinematics.h.
temporary storage of a single body Jacobian
Definition at line 376 of file Kinematics.h.
double error_norm |
Definition at line 384 of file Kinematics.h.
the Jacobian of all constraints
Definition at line 375 of file Kinematics.h.
Definition at line 374 of file Kinematics.h.
double lambda |
Definition at line 379 of file Kinematics.h.
unsigned int max_steps |
Definition at line 381 of file Kinematics.h.
unsigned int num_constraints |
Vector with all the constraint residuals.
Definition at line 378 of file Kinematics.h.
unsigned int num_steps |
Damping factor, the default value of 1.0e-6 is reasonable for most problems.
Definition at line 380 of file Kinematics.h.
double step_tol |
Definition at line 382 of file Kinematics.h.
std::vector<Math::Matrix3d> target_orientations |
Definition at line 392 of file Kinematics.h.
std::vector<Math::Vector3d> target_positions |
Definition at line 391 of file Kinematics.h.