The HBhvInterpolatorColor class controls color attribute changes. More...

#include <HBhvInterpolator.h>

Public Member Functions

virtual HBhvInterpolatorCreateInstance (HBhvAnimation *ainst)
 
char * GetColorComponent ()
 
char * GetGeomType ()
 
const char * GetType ()
 
 HBhvInterpolatorColor (HBhvAnimation *animation=0, const char *name=0)
 
void Insert (HPoint pos, int l=0)
 
virtual void Interpolate (int keyframe, float fraction)
 
void Replace (HPoint pos, int l)
 
virtual void Serialize (HUtilityXMLGenerator *xmlgen)
 
void SetColorComponent (const char *ColorComponent)
 
void SetGeomType (const char *geomtype)
 
- Public Member Functions inherited from HBhvInterpolator
void Append (HKeyframe *piece)
 
void Copy (int pos, int adpos, bool replace)
 
void Duplicate (int pos, bool replace, bool next)
 
virtual void Evaluate (int keyframe, float fraction, bool &hasPos, HPoint &pos, bool &hasQuat, HQuat &quat, bool &hasScale, HPoint &scale)
 
HBhvAnimationGetAnimation ()
 
HKeyframe ** GetArray ()
 
virtual int GetArrayLength ()
 
virtual HKeyframeGetAt (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)
 
virtual void Reset ()
 
void SetAnimation (HBhvAnimation *animation)
 
void SetInstancedInterpolator (HBhvInterpolator *interpolator)
 

Static Public Member Functions

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

Protected Attributes

char m_ColorComponent [MVO_BUFFER_SIZE]
 
char m_GeomType [MVO_BUFFER_SIZE]
 
- Protected Attributes inherited from HBhvInterpolator
char m_Name [BHV_MAX_NAME_LENGTH]
 
HBhvAnimationm_pAnimation
 
VArray< HKeyframe * > m_pArray
 
HBhvInterpolatorm_pInterpolatorInstance
 
HC_KEY m_pTarget
 

Additional Inherited Members

- Protected Member Functions inherited from HBhvInterpolator
void AddPositionToMatrix (HPoint &trans)
 
void AddRotationToMatrix (float rot[16])
 
void AddScaleToMatrix (HPoint &scale)
 
void SetTarget ()
 

Detailed Description

The HBhvInterpolatorColor class controls color attribute changes.

Constructor & Destructor Documentation

◆ HBhvInterpolatorColor()

HBhvInterpolatorColor::HBhvInterpolatorColor ( HBhvAnimation animation = 0,
const char *  name = 0 
)

Constructs an HBhvInterpolatorColor object.

Parameters
animationThe animation that this interpolator belongs to.
nameThe name of the interpolator.

Member Function Documentation

◆ CreateInstance()

virtual HBhvInterpolator* HBhvInterpolatorColor::CreateInstance ( HBhvAnimation ainst)
virtual

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
ainstThe animation instance that this interpolator is associated with.
Returns
The newly created interpolator that references this interpolator.

Implements HBhvInterpolator.

◆ GetColorComponent()

char* HBhvInterpolatorColor::GetColorComponent ( )
inline
Returns
The color components that are applied.

◆ GetGeomType()

char* HBhvInterpolatorColor::GetGeomType ( )
inline
Returns
The geometry type that color changes apply to like faces, lines, etc...

◆ GetType()

const char* HBhvInterpolatorColor::GetType ( )
virtual
Returns
The type of the interpolator which is 'Color'.

Implements HBhvInterpolator.

◆ Insert()

void HBhvInterpolatorColor::Insert ( HPoint  pos,
int  l = 0 
)
inline

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

Parameters
posThe color value you want to set for the new keyframe. Pass r,g, and b values in the x,y and z parameters respectively in HPoint.
larray position to insert item after

References HKeyframeChannel::m_cp.

◆ Interpolate()

virtual void HBhvInterpolatorColor::Interpolate ( int  keyframe,
float  fraction 
)
virtual

Performs an interpolation on the animation target.

Parameters
keyframeThe reference keyframe for this interpolation.
fractionThe fraction value from the specified keyframe to the next keyframe. The value is from 0 to 1.

Reimplemented from HBhvInterpolator.

◆ Replace()

void HBhvInterpolatorColor::Replace ( HPoint  pos,
int  l 
)
inline

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

Parameters
posThe color value for the replacement keyframe. Pass r,g, and b values in the x,y and z parameters respectively in HPoint.
larray position to replace

References HKeyframeChannel::m_cp.

◆ Serialize()

virtual void HBhvInterpolatorColor::Serialize ( HUtilityXMLGenerator *  xmlgen)
virtual

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

Reimplemented from HBhvInterpolator.

◆ SetColorComponent()

void HBhvInterpolatorColor::SetColorComponent ( const char *  ColorComponent)

Sets color components attributes like diffuse, specular and gloss that color changes will be applied to.

Parameters
ColorComponentThe color options that can be set in HC_Set_Color for faces.

◆ SetGeomType()

void HBhvInterpolatorColor::SetGeomType ( const char *  geomtype)

Sets the geometry type that color changes applies to like faces, lines, etc...

◆ XMLCallback()

static void* HBhvInterpolatorColor::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.

Member Data Documentation

◆ m_ColorComponent

char HBhvInterpolatorColor::m_ColorComponent[MVO_BUFFER_SIZE]
protected

For internal use only.

◆ m_GeomType

char HBhvInterpolatorColor::m_GeomType[MVO_BUFFER_SIZE]
protected

For internal use only.


The documentation for this class was generated from the following file: