HBhvInterpolatorAxisRotate

Functions

HBhvInterpolatorAxisRotate

void

SetAxis

void

GetAxis

char const *

GetType

HBhvInterpolator *

CreateInstance

void

Insert

void

Replace

void

Serialize

void

Interpolate

void

Evaluate

void *

XMLCallback

Detailed Description

class HBhvInterpolatorAxisRotate : public HBhvInterpolator

The HBhvInterpolatorAxisRotate class controls rotation around an arbitrary axis.

Public Functions

HBhvInterpolatorAxisRotate(HBhvAnimation *animation = 0, char const *name = 0)

Constructs an HBhvInterpolatorAxisRotate object.

Parameters
  • animation – The animation that this interpolator belongs to.

  • name – The name of of the interpolator.

inline void SetAxis(float x, float y, float z)

Sets the axis of rotation.

inline void GetAxis(HPoint &axis)

Returns the axis of rotation.

virtual char const *GetType()
Returns

The type of the interpolator which is ‘AxisRot’.

virtual HBhvInterpolator *CreateInstance(HBhvAnimation *ainst)

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.

inline void Insert(float angle, int l = 0)

This method creates a new axis rotation keyframe with the passed angle value and then inserts it after the passed position l into the keyframe array.

Parameters
  • angle – The angle for the new keyframe.

  • l – The array position to insert new keyframe after.

inline void Replace(float angle, int l)

Replaces the item at the given position in the keyframe array with a new axis rotation keyframe that was created with the passed angle value.

Parameters
  • angle – The angle for the replacement keyframe.

  • l – The array position to replace.

virtual void Serialize(HUtilityXMLGenerator *xmlgen)

Writes XML data to a buffer using the passed XML generator.

virtual void Interpolate(int keyframe, float fraction)

Performs interpolation on the 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.

virtual void Evaluate(int keyframe, float fraction, bool &hasPos, HPoint &pos, bool &hasQuat, HQuat &quat, bool &hasScale, HPoint &scale)

Public Static Functions

static void *XMLCallback(HUtilityXMLTag *xt, bool open, void *m_pExtraData)

This is XML read callback which parses XML data and then populates the member variables with the associated values.