IKSolverFABRIK Class Reference

Forward and Backward Reaching Inverse Kinematics solver. More...

Inheritance diagram for IKSolverFABRIK:

Collaboration diagram for IKSolverFABRIK:

## Public Member Functions | |

void | SolveForward (Vector3 position) |

Solving stage 1 of the FABRIK algorithm. More... | |

void | SolveBackward (Vector3 position) |

Solving stage 2 of the FABRIK algorithm. More... | |

Public Member Functions inherited from IKSolverHeuristic | |

bool | SetChain (Transform[] hierarchy, Transform root) |

Rebuild the bone hierarcy and reinitiate the solver. More... | |

override void | StoreDefaultLocalState () |

Stores the default local state for the bones used by the solver. More... | |

override void | FixTransforms () |

Fixes all the Transforms used by the solver to their initial state. More... | |

override bool | IsValid (bool log) |

Determines whether this instance is valid or not. If log == true, will log a warning message in case of an invalid solver. More... | |

override IKSolver.Point[] | GetPoints () |

Gets all the points used by the solver. More... | |

override IKSolver.Point | GetPoint (Transform transform) |

Gets the point with the specified Transform. More... | |

Public Member Functions inherited from IKSolver | |

void | Initiate (Transform root) |

Initiate the solver with specified root Transform. Use only if this IKSolver is not a member of an IK component. More... | |

void | Update () |

Updates the IK solver. Use only if this IKSolver is not a member of an IK component or the IK component has been disabled and you intend to manually control the updating. More... | |

Vector3 | GetIKPosition () |

Gets the IK position. NOTE: You are welcome to read IKPosition directly, this method is here only to match the Unity's built in IK API. More... | |

void | SetIKPosition (Vector3 position) |

Sets the IK position. NOTE: You are welcome to set IKPosition directly, this method is here only to match the Unity's built in IK API. More... | |

float | GetIKPositionWeight () |

Gets the IK position weight. NOTE: You are welcome to read IKPositionWeight directly, this method is here only to match the Unity's built in IK API. More... | |

void | SetIKPositionWeight (float weight) |

Sets the IK position weight. NOTE: You are welcome to set IKPositionWeight directly, this method is here only to match the Unity's built in IK API. More... | |

Transform | GetRoot () |

Gets the root Transform. More... | |

delegate void | UpdateDelegate () |

Delegates solver update events. More... | |

delegate void | IterationDelegate (int i) |

Delegates solver iteration events. More... | |

## Static Public Member Functions | |

static Vector3 | SolveJoint (Vector3 pos1, Vector3 pos2, float length) |

Interpolates the joint position to match the bone's length More... | |

## Public Attributes | |

IterationDelegate | OnPreIteration |

Called before each iteration of the solver. More... | |

Public Attributes inherited from IKSolverHeuristic | |

Transform | target |

The target Transform. Solver IKPosition will be automatically set to the position of the target. More... | |

float | tolerance = 0f |

Minimum distance from last reached position. Will stop solving if difference from previous reached position is less than tolerance. If tolerance is zero, will iterate until maxIterations. More... | |

int | maxIterations = 4 |

Max iterations per frame More... | |

bool | useRotationLimits = true |

If true, rotation limits (if excisting) will be applied on each iteration. More... | |

Bone[] | bones = new Bone[0] |

The hierarchy of bones. More... | |

Public Attributes inherited from IKSolver | |

Vector3 | IKPosition |

The IK position. More... | |

float | IKPositionWeight = 1f |

The IK position weight. More... | |

UpdateDelegate | OnPreInitiate |

Called before initiating the solver. More... | |

UpdateDelegate | OnPostInitiate |

Called after initiating the solver. More... | |

UpdateDelegate | OnPreUpdate |

Called before updating. More... | |

UpdateDelegate | OnPostUpdate |

Called after writing the solved pose More... | |

## Additional Inherited Members | |

Properties inherited from IKSolver | |

bool | initiated` [get, set]` |

Gets a value indicating whether this IKSolver has successfully initiated. More... | |

Forward and Backward Reaching Inverse Kinematics solver.

This class is based on the "FABRIK: A fast, iterative solver for the inverse kinematics problem." paper by Aristidou, A., Lasenby, J.

Generated by 1.8.4