Rigid Body Dynamics Library
InverseKinematicsConstraintSet Struct Reference

#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< ConstraintTypeconstraint_type
 
std::vector< unsigned int > body_ids
 
std::vector< Math::Vector3dbody_points
 
std::vector< Math::Vector3dtarget_positions
 
std::vector< Math::Matrix3dtarget_orientations
 
std::vector< unsigned int > constraint_row_index
 
std::vector< float > constraint_weight
 

Detailed Description

Definition at line 362 of file Kinematics.h.

Member Enumeration Documentation

◆ ConstraintType

Enumerator
ConstraintTypePosition 
ConstraintTypeOrientation 
ConstraintTypeFull 
ConstraintTypePositionXY 
ConstraintTypePositionZ 
ConstraintTypePositionCoMXY 

Definition at line 363 of file Kinematics.h.

Constructor & Destructor Documentation

◆ InverseKinematicsConstraintSet()

Member Function Documentation

◆ AddFullConstraint()

◆ AddOrientationConstraint()

◆ AddPointConstraint()

◆ AddPointConstraintCoMXY()

◆ AddPointConstraintXY()

◆ AddPointConstraintZ()

◆ ClearConstraints()

Field Documentation

◆ body_ids

std::vector<unsigned int> body_ids

Definition at line 389 of file Kinematics.h.

◆ body_points

std::vector<Math::Vector3d> body_points

Definition at line 390 of file Kinematics.h.

◆ constraint_row_index

std::vector<unsigned int> constraint_row_index

Definition at line 393 of file Kinematics.h.

◆ constraint_tol

double constraint_tol

Definition at line 383 of file Kinematics.h.

◆ constraint_type

std::vector<ConstraintType> constraint_type

Definition at line 388 of file Kinematics.h.

◆ constraint_weight

std::vector<float> constraint_weight

Definition at line 394 of file Kinematics.h.

◆ delta_q_norm

double delta_q_norm

Definition at line 385 of file Kinematics.h.

◆ e

temporary storage of a single body Jacobian

Definition at line 376 of file Kinematics.h.

◆ error_norm

double error_norm

Definition at line 384 of file Kinematics.h.

◆ G

the Jacobian of all constraints

Definition at line 375 of file Kinematics.h.

◆ J

Definition at line 374 of file Kinematics.h.

◆ lambda

double lambda

Definition at line 379 of file Kinematics.h.

◆ max_steps

unsigned int max_steps

Definition at line 381 of file Kinematics.h.

◆ num_constraints

unsigned int num_constraints

Vector with all the constraint residuals.

Definition at line 378 of file Kinematics.h.

◆ num_steps

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.

◆ step_tol

double step_tol

Definition at line 382 of file Kinematics.h.

◆ target_orientations

std::vector<Math::Matrix3d> target_orientations

Definition at line 392 of file Kinematics.h.

◆ target_positions

std::vector<Math::Vector3d> target_positions

Definition at line 391 of file Kinematics.h.


The documentation for this struct was generated from the following files: