Uniformly bending IK chain.
More...
#include <Urho3D/Math/InverseKinematics.h>
|
using | WeightFunction = ea::function< float(float)> |
|
|
void | Solve (const Vector3 &target, const Vector3 &baseDirection, float maxRotation, const IKSettings &settings, const WeightFunction &weightFun=DefaultWeightFunction) |
|
void | Twist (float angle, const IKSettings &settings) |
|
void | Clear () |
|
void | AddNode (IKNode *node) |
|
void | UpdateLengths () |
|
const IKNodeSegment * | FindSegment (const IKNode *node) const |
|
ea::vector< IKNodeSegment > & | GetSegments () |
|
const ea::vector< IKNodeSegment > & | GetSegments () const |
|
ea::vector< IKNode * > & | GetNodes () |
|
const ea::vector< IKNode * > & | GetNodes () const |
|
|
static float | DefaultWeightFunction (float x) |
|
|
void | UpdateSegmentWeights (const WeightFunction &weightFun) |
|
template<class T > |
void | EnumerateProjectedPositions (float totalRotation, const T &callback) const |
|
ea::pair< float, Vector3 > | GetProjectionAndOffset (const Vector3 &target, const Vector3 &basePosition, const Vector3 &baseDirection) const |
|
Vector2 | ProjectTarget (const Vector3 &target, const Vector3 &basePosition, const Vector3 &baseDirection) const |
|
Vector2 | EvaluateProjectedEnd (float totalRotation) const |
|
float | EvaluateError (float totalRotation, const Vector2 &target) const |
|
float | FindBestAngle (const Vector2 &projectedTarget, float maxRotation, float angularTolerance) const |
|
void | EvaluateSegmentPositions (float totalRotation, const Vector3 &baseDirection, const Vector3 &bendDirection) |
|
|
ea::vector< float > | weights_ |
|
|
void | StorePreviousTransforms () |
|
void | RestorePreviousTransforms () |
|
void | UpdateSegmentRotations (const IKSettings &settings) |
|
bool | isFirstSegmentIncomplete_ {} |
|
ea::vector< IKNode * > | nodes_ |
|
ea::vector< IKNodeSegment > | segments_ |
|
float | totalLength_ {} |
|
Uniformly bending IK chain.
The documentation for this class was generated from the following files:
- Urho3D/Math/InverseKinematics.h
- Urho3D/Math/InverseKinematics.cpp