# CSLIKJoint Class Reference

`#include <IKJoint.h>`

Inheritance diagram for CSLIKJoint:

List of all members.

## Public Types
enum | EJointSolverType { SI_DEFAULT, SI_2D, SI_3D }
| Joint solver types. More...
## Public Member Functions
| CSLIKJoint (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate, CSLModel *in_pRoot)
virtual | ~CSLIKJoint ()
SI_Float | GetLength ()
SI_Void | SetLength (SI_Float in_fValue)
CSIBCVector3D | GetPreferredRotation ()
SI_Void | SetPreferredRotation (CSIBCVector3D &in_rValue)
SI_Bool | GetPseudoRoot ()
SI_Void | SetPseudoRoot (SI_Bool in_bValue)
SI_Bool | GetRotationLimitActivation ()
SI_Void | SetRotationLimitActivation (SI_Bool in_bValue)
CSIBCVector3D | GetRotationLimitMaximum ()
SI_Void | SetRotationLimitMaximum (CSIBCVector3D &in_rValue)
CSIBCVector3D | GetRotationLimitMinimum ()
SI_Void | SetRotationLimitMinimum (CSIBCVector3D &in_rValue)
EJointSolverType | GetSolverType ()
SI_Void | SetSolverType (EJointSolverType in_Type)
SI_Float | GetStiffness ()
SI_Void | SetStiffness (SI_Float in_fValue)
SI_Bool | GetStiffnessActivation ()
SI_Void | SetStiffnessActivation (SI_Bool in_bValue)
CSLIKResolutionPlane * | GetResolutionPlane ()
CSLIKResolutionPlane * | CreateResolutionPlane ()
SI_Void | ConnectResolutionPlane (CSLIKResolutionPlane *in_pResPlane)
virtual SI_Error | Synchronize ()
virtual ETemplateType | Type ()
virtual CSLAnimatableType * | ParameterFromName (SI_Char *in_szName)
virtual SI_Bool | ValidateParent (CSLModel *in_pNewParent)

## Detailed Description

Describes one joint of an IK chain (see the SI_IK_Joint template reference).

## Member Enumeration Documentation

enum EJointSolverType

Joint solver types.

Enumerator:

  SI_DEFAULT | default joint type
  SI_2D | 2D joint
  SI_3D | 3D joint

## Constructor & Destructor Documentation

CSLIKJoint | ( | CSLScene * | in_pScene,
|  | CSLModel * | in_pModel,
|  | CdotXSITemplate * | in_pTemplate,
|  | CSLModel * | in_pRoot |
| ) |  |  |

Constructor

Parameters:

  | in_pScene | Pointer to the scene containing the joint
  | in_pModel | Pointer to the model containing the joint
  | in_pTemplate | Pointer to the CdotXSITemplate containing the joint
  | in_pRoot | Pointer to the model that is the chain root of that joint

Returns:
  an instance of CSLIKJoint

virtual ~CSLIKJoint | ( |  | ) | `[virtual]`

Destructor

## Member Function Documentation

SI_Float GetLength | ( |  | ) |

Return the length value of the joint.

Returns:
  SI_Float Length value.

SI_Void SetLength | ( | SI_Float | in_fValue | ) |

Change the length value of the joint.

Parameters:

  | in_fValue | New length value.

Returns:
  SI_Void

CSIBCVector3D GetPreferredRotation | ( |  | ) |

Return the prefered rotation of the joint.

Returns:
  CSIBCVector3D Preferred rotation value.

SI_Void SetPreferredRotation | ( | CSIBCVector3D & | in_rValue | ) |

Change the preferred rotation value of the joint.

Parameters:

  | in_rValue | New preferred rotation value.

Returns:
  SI_Void

SI_Bool GetPseudoRoot | ( |  | ) |

Return a flag indicating if the joint is a pseudo-root.

Returns:
  SI_Bool Pseudo-root status.

SI_Void SetPseudoRoot | ( | SI_Bool | in_bValue | ) |

Change the flag indicating the joint is a pseudo-root.

Parameters:

  | in_bValue | New Pseudo-root status.

Returns:
  SI_Void

SI_Bool GetRotationLimitActivation | ( |  | ) |

Return the rotation limit activation flag of the joint.

Returns:
  SI_Bool Rrotation limit activation flag.

SI_Void SetRotationLimitActivation | ( | SI_Bool | in_bValue | ) |

Change the rotation limit activation flag of the joint.

Parameters:

  | in_bValue | New rotation limit activation flag.

Returns:
  SI_Void

CSIBCVector3D GetRotationLimitMaximum | ( |  | ) |

Return the maximum rotation limit of the joint.

Returns:
  CSIBCVector3D Maximum rotation limit.

SI_Void SetRotationLimitMaximum | ( | CSIBCVector3D & | in_rValue | ) |

Change the maximum rotation limit value of the joint.

Parameters:

  | in_rValue | New maximum rotation limit.

Returns:
  SI_Void

CSIBCVector3D GetRotationLimitMinimum | ( |  | ) |

Return the minimum rotation limit of the joint.

Returns:
  CSIBCVector3D Minimum rotation limit.

SI_Void SetRotationLimitMinimum | ( | CSIBCVector3D & | in_rValue | ) |

Change the minimum rotation limit value of the joint.

Parameters:

  | in_rValue | New minimum rotation limit.

Returns:
  SI_Void

EJointSolverType GetSolverType | ( |  | ) |

Return the solver type of the joint.

Returns:
  EJointSolverType Solver type.

SI_Void SetSolverType | ( | EJointSolverType | in_Type | ) |

Change the solver type of the joint.

Parameters:

  | in_Type | New solver type.

Returns:
  SI_Void

SI_Float GetStiffness | ( |  | ) |

Return the stiffness value of the joint.

Returns:
  SI_Float Stiffness value.

SI_Void SetStiffness | ( | SI_Float | in_fValue | ) |

Change the stiffness value of the joint.

Parameters:

  | in_fValue | New stiffness value.

Returns:
  SI_Void

SI_Bool GetStiffnessActivation | ( |  | ) |

Return the stiffness activation flag of the joint.

Returns:
  SI_Bool Stiffness activation flag.

SI_Void SetStiffnessActivation | ( | SI_Bool | in_bValue | ) |

Change the stiffness activation flag of the joint.

Parameters:

  | in_bValue | New stiffness activation flag.

Returns:
  SI_Void

CSLIKResolutionPlane* GetResolutionPlane | ( |  | ) |

gets the resolution plane of this joint

Returns:
  the resolution plane

CSLIKResolutionPlane* CreateResolutionPlane | ( |  | ) |

creates the resolution plane of this joint

Returns:
  the resolution plane

SI_Void ConnectResolutionPlane | ( | CSLIKResolutionPlane * | in_pResPlane | ) |

connect and existing resolution plane to this joint

Parameters:

  | in_pResPlane | the resolution plane to connect to

Returns:
  SI_Void

virtual SI_Error Synchronize | ( |  | ) | `[virtual]`

Synchronizes this IK joint instance with its IO layer representation

Returns:
  SI_Error

Return values:

  | SI_SUCCESS | this function always returns SI_SUCCESS

Reimplemented from CSLTemplate.

virtual ETemplateType Type | ( |  | ) | `[virtual]`

Get the template type

Returns:
  ETemplateType the template type of the joint

Implements CSLTemplate.

virtual CSLAnimatableType* ParameterFromName | ( | SI_Char * | in_szName | ) | `[virtual]`

Gets a handle on one of this template's parameters by using its name

Parameters:

  | in_szName | the name of the parameter to get the handle from

Returns:
  CSLAnimatableType* the handle to the parameter

Reimplemented from CSLTemplate.

virtual SI_Bool ValidateParent | ( | CSLModel * | in_pNewParent | ) | `[virtual]`

Validate that the parent is of valid type

Parameters:

  | in_pNewParent | the parent to validate against

Returns:
  SI_Bool whether the parent is valid or not

Reimplemented from CSLPrimitive.

The documentation for this class was generated from the following file:

- IKJoint.h