HBhvInterpolatorScale

Functions

void

CalculatePos

void

CalculateAllTangents

void

Reset

HBhvInterpolatorScale

char const *

GetType

HBhvInterpolator *

CreateInstance

void

Insert

void

Replace

void

Serialize

void

Interpolate

void

Evaluate

void *

XMLCallback

Detailed Description

class HBhvInterpolatorScale : public HBhvInterpolator

The HBhvInterpolatorScale class controls scaling. This class can be used for camera interpolation as well other targets.

Public Functions

virtual void CalculatePos(int keyframe, float fraction, HPoint &res)

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.

virtual void CalculateAllTangents()

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 Reset()

Resets this interpolator instance.

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

Constructs an HBhvInterpolatorScale object.

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

  • name – The name of the interpolator.

virtual char const *GetType()
Returns

The type of this interpolator which is ‘Scale’.

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(HPoint pos, int l = 0)

This method creates a new keyframe with the passed scaling factor and then inserts it after the given position l in the keyframe array.

Parameters
  • pos – The scale factors for the new keyframe.

  • l – The array position to insert item after.

inline void Replace(HPoint pos, int l)

Replaces the item at the given position in the keyframe array with a new keyframe that was created with the passed scaling factors.

Parameters
  • pos – The scale factors 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 an 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.