The HBhvInterpolatorPosition class controls positional interpolation.
More...
#include <HBhvInterpolator.h>
|
| virtual void | CalculatePos (int keyframe, float fraction, HPoint &res) |
| |
| virtual HBhvInterpolator * | CreateInstance (HBhvAnimation *ainst) |
| |
|
virtual void | Evaluate (int keyframe, float fraction, bool &hasPos, HPoint &pos, bool &hasQuat, HQuat &quat, bool &hasScale, HPoint &scale) |
| |
| const char * | GetType () |
| |
| | HBhvInterpolatorPosition (HBhvAnimation *animation=0, const char *name=0) |
| |
| void | InsertCurve (HPoint pos, int l=0) |
| |
| void | InsertDiscrete (HPoint pos, int l=0) |
| |
| void | InsertLinear (HPoint pos, int l=0) |
| |
| virtual void | Interpolate (int keyframe, float fraction) |
| |
| void | ReplaceCurve (HPoint pos, int l) |
| |
| void | ReplaceLinear (HPoint pos, int l) |
| |
| virtual void | Reset () |
| |
| virtual void | Serialize (HUtilityXMLGenerator *xmlgen) |
| |
| void | Append (HKeyframe *piece) |
| |
| void | Copy (int pos, int adpos, bool replace) |
| |
| void | Duplicate (int pos, bool replace, bool next) |
| |
| HBhvAnimation * | GetAnimation () |
| |
| HKeyframe ** | GetArray () |
| |
| virtual int | GetArrayLength () |
| |
| virtual HKeyframe * | GetAt (int pos) |
| |
| const char * | GetName () |
| |
| void | GetRotationFromMatrix (HQuat &rotation) |
| |
| void | GetTranslationFromMatrix (HPoint &translation) |
| |
| | HBhvInterpolator (HBhvAnimation *animation=0, const char *name=0) |
| |
| void | Insert (HKeyframe *piece, int pos=0) |
| |
| void | Remove (int pos) |
| |
| void | Replace (HKeyframe *c, int pos) |
| |
| void | SetAnimation (HBhvAnimation *animation) |
| |
| void | SetInstancedInterpolator (HBhvInterpolator *interpolator) |
| |
|
| static void * | XMLCallback (HUtilityXMLTag *xt, bool open, void *m_pExtraData) |
| |
The HBhvInterpolatorPosition class controls positional interpolation.
HBhvInterpolatorPosition allows for either linear or spline based movement. This class can be used for camera interpolation as well other targets.
| HBhvInterpolatorPosition::HBhvInterpolatorPosition |
( |
HBhvAnimation * |
animation = 0, |
|
|
const char * |
name = 0 |
|
) |
| |
Constructs an HBhvInterpolatorPosition object.
- Parameters
-
| animation | The animation that this interpolator belongs to. |
| name | The name of the interpolator. |
| virtual void HBhvInterpolatorPosition::CalculateAllTangents |
( |
| ) |
|
|
protectedvirtual |
This is a helper method that calculates the tangents for all the entries in the keyframe array. You can call this method before doing an interpolation.
| virtual void HBhvInterpolatorPosition::CalculatePos |
( |
int |
keyframe, |
|
|
float |
fraction, |
|
|
HPoint & |
res |
|
) |
| |
|
virtual |
Calculates the interpolated positional value given a keyframe and fraction to the next keyframe.
- Parameters
-
| keyframe | The reference keyframe for this interpolation. |
| fraction | The fractional value from the specified keyframe to the next keyframe. This value is from 0 to 1. |
| res | The result of the interpolation. |
In special cases, you may want an interpolator that references this interpolator without changing it. Use this method to create the new interpolator passing a pointer to the animation that you want it to be associated with.
- Parameters
-
| ainst | The animation instance that this interpolator is associated with. |
- Returns
- The newly created interpolator that references this interpolator.
Implements HBhvInterpolator.
Reimplemented in HBhvInterpolatorTrail.
| const char* HBhvInterpolatorPosition::GetType |
( |
| ) |
|
|
virtual |
| void HBhvInterpolatorPosition::InsertCurve |
( |
HPoint |
pos, |
|
|
int |
l = 0 |
|
) |
| |
|
inline |
This method creates a new non-linear positional keyframe with the passed pos value and then inserts it after the passed position l into the keyframe array.
- Parameters
-
| pos | The position value for the keyframe to be insert. |
| l | The array position to insert item after. |
References HKeyframeChannel::m_cp.
| void HBhvInterpolatorPosition::InsertDiscrete |
( |
HPoint |
pos, |
|
|
int |
l = 0 |
|
) |
| |
|
inline |
This method creates a new discrete positional keyframe with the passed pos value and then inserts it after the passed position l into the keyframe array.
- Parameters
-
| pos | The position value for the new keyframe to be inserted. |
| l | The array position to insert item after. |
References HKeyframeChannel::m_cp.
| void HBhvInterpolatorPosition::InsertLinear |
( |
HPoint |
pos, |
|
|
int |
l = 0 |
|
) |
| |
|
inline |
This method creates a new linear positional keyframe with the passed pos value and then inserts it after the passed position l into the keyframe array.
- Parameters
-
| pos | The position value for the keyframe to be inserted. |
| l | The position in the array to insert the item after. |
References HKeyframeChannel::m_cp.
| virtual void HBhvInterpolatorPosition::Interpolate |
( |
int |
keyframe, |
|
|
float |
fraction |
|
) |
| |
|
virtual |
Performs an interpolation on this interpolator's animation target.
- Parameters
-
| keyframe | The reference keyframe for this interpolation. |
| fraction | The fraction value from the specified keyframe to the next keyframe. The value is from 0 to 1. |
Reimplemented from HBhvInterpolator.
Reimplemented in HBhvInterpolatorTrail.
| virtual void HBhvInterpolatorPosition::InterpolateCamera |
( |
HPoint & |
pos, |
|
|
bool |
simulate = false |
|
) |
| |
|
protectedvirtual |
Calculates the interpolated camera orientation and position for camera types that are position driven.
- Parameters
-
| pos | New Camera Position Reference |
| virtual void HBhvInterpolatorPosition::InterpolateCamera2 |
( |
HPoint & |
pos, |
|
|
bool |
simulate = false |
|
) |
| |
|
protectedvirtual |
Calculates the interpolated camera orientation for camera types that are target driven.
- Parameters
-
| pos | New Camera Position Reference |
| void HBhvInterpolatorPosition::ReplaceCurve |
( |
HPoint |
pos, |
|
|
int |
l |
|
) |
| |
|
inline |
Replaces the item at the given position in the keyframe array with a new non-linear positional keyframe that was created with the passed pos value.
- Parameters
-
| pos | The position value for the new replacement keyframe. |
| l | The array position to replace. |
References HKeyframeChannel::m_cp.
| void HBhvInterpolatorPosition::ReplaceLinear |
( |
HPoint |
pos, |
|
|
int |
l |
|
) |
| |
|
inline |
Replaces the item at the given position in the keyframe array with a new linear positional keyframe that was created with the passed pos value.
- Parameters
-
| pos | The position value for the new replacement keyframe. |
| l | The array position to replace. |
References HKeyframeChannel::m_cp.
| virtual void HBhvInterpolatorPosition::Reset |
( |
| ) |
|
|
virtual |
| virtual void HBhvInterpolatorPosition::Serialize |
( |
HUtilityXMLGenerator * |
xmlgen | ) |
|
|
virtual |
| static void* HBhvInterpolatorPosition::XMLCallback |
( |
HUtilityXMLTag * |
xt, |
|
|
bool |
open, |
|
|
void * |
m_pExtraData |
|
) |
| |
|
static |
This is XML read callback which parses XML data and then populates the member variables with the associated values.
The documentation for this class was generated from the following file: