- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# FCDAnimationMultiCurve Class Reference
[COLLADA Document Object Model.]

A COLLADA multi-dimensional animation curve. More...

`#include <FCDAnimationMultiCurve.h>`

Inheritance diagram for FCDAnimationMultiCurve:

List of all members.

## Public Member Functions
| FCDAnimationMultiCurve (FCDocument *document, uint32 dimension)
| Constructor.
virtual | ~FCDAnimationMultiCurve ()
| Destructor.
uint32 | GetDimension () const
| Retrieves the number of dimensions for the curve.
FCDAnimationMKey ** | GetKeys ()
| Retrieves the list of key inputs for the animation curve.
const FCDAnimationMKey ** | GetKeys () const
| See above.
size_t | GetKeyCount () const
| Retrieves the number of keys within the animation curve.
void | SetKeyCount (size_t count, FUDaeInterpolation::Interpolation interpolation)
| Sets the number of keys within the animation curve.
FCDAnimationMKey * | GetKey (size_t index)
| Retrieve one key of the animation curve.
const FCDAnimationMKey * | GetKey (size_t index) const
| See above.
FCDAnimationMKey * | AddKey (FUDaeInterpolation::Interpolation interpolation)
| Appends a key to the animation curve.
FUDaeInfinity::Infinity | GetPreInfinity () const
| Retrieves the type of behavior for the curve if the input value is outside the input interval defined by the curve keys and less than any key input value.
void | SetPreInfinity (FUDaeInfinity::Infinity infinity)
| Sets the behavior of the curve if the input value is outside the input interval defined by the curve keys and less than any key input value.
FUDaeInfinity::Infinity | GetPostInfinity () const
| Retrieves the type of behavior for the curve if the input value is outside the input interval defined by the curve keys and greater than any key input value.
void | SetPostInfinity (FUDaeInfinity::Infinity infinity)
| Sets the behavior of the curve if the input value is outside the input interval defined by the curve keys and greater than any key input value.
void | Evaluate (float input, float *output) const
| Evaluates the animation curve.
int32 | GetTargetElement () const
| [INTERNAL] Retrieves the target element suffix for the curve.
void | SetTargetElement (int32 e)
| [INTERNAL] Sets the target element suffix for the curve.
int32 | GetTargetElement ()
void | Set2DCurveEvaluation (bool flag)
| Turns on or off the 2D Curve Evaluation.
bool | Is2DCurveEvaluation ()
| Returns whether 2D Curve Evaluation is on or off.

## Detailed Description

A COLLADA multi-dimensional animation curve.

This is a utility class that is used to convert multiple animation curves into one animation curve that has multiple dimensions, but only one list of key inputs.

FCollada will never create a multi-dimensional animation curve during the import of a COLLADA document.

## Constructor & Destructor Documentation

FCDAnimationMultiCurve::FCDAnimationMultiCurve | ( | FCDocument * | document,
|  | uint32 | dimension
| ) |

  | Constructor. The number of dimensions will not change in the lifetime of a multi-dimensional curve. Parameters:
  | document | The COLLADA document that owns the animation curve.
  | dimension | The number of dimensions for the animation curve.

## Member Function Documentation

FCDAnimationMKey* FCDAnimationMultiCurve::AddKey | ( | FUDaeInterpolation::Interpolation | interpolation | ) |

  | Appends a key to the animation curve. Parameters:
  | interpolation | The interpolation type for the new key.
Returns: The new key.

void FCDAnimationMultiCurve::Evaluate | ( | float | input,
|  | float * | output
| ) | const

  | Evaluates the animation curve. Parameters:
  | input | An input value.
  | output | An array of floating-point values to fill in with the sampled values.

uint32 FCDAnimationMultiCurve::GetDimension | ( |  | ) | const`[inline]`

| Retrieves the number of dimensions for the curve. Returns: The number of dimensions for the curve.

FCDAnimationMKey* FCDAnimationMultiCurve::GetKey | ( | size_t | index | ) | `[inline]`

  | Retrieve one key of the animation curve. Parameters:
  | index | The index of the key to retrieve.
Returns: The indexed key.

size_t FCDAnimationMultiCurve::GetKeyCount | ( |  | ) | const`[inline]`

| Retrieves the number of keys within the animation curve. Returns: The number of keys.

FCDAnimationMKey** FCDAnimationMultiCurve::GetKeys | ( |  | ) | `[inline]`

| Retrieves the list of key inputs for the animation curve. Returns: The list of key inputs.

FUDaeInfinity::Infinity FCDAnimationMultiCurve::GetPostInfinity | ( |  | ) | const`[inline]`

| Retrieves the type of behavior for the curve if the input value is outside the input interval defined by the curve keys and greater than any key input value. See also: FUDaeInfinity Returns: The post-infinity behavior of the curve.

FUDaeInfinity::Infinity FCDAnimationMultiCurve::GetPreInfinity | ( |  | ) | const`[inline]`

| Retrieves the type of behavior for the curve if the input value is outside the input interval defined by the curve keys and less than any key input value. See also: FUDaeInfinity Returns: The pre-infinity behavior of the curve.

int32 FCDAnimationMultiCurve::GetTargetElement | ( |  | ) | const`[inline]`

| [INTERNAL] Retrieves the target element suffix for the curve. This will be -1 if the animated element does not belong to an animated element list. Returns: The target element suffix.

bool FCDAnimationMultiCurve::Is2DCurveEvaluation | ( |  | ) | `[inline]`

| Returns whether 2D Curve Evaluation is on or off. Returns: A boolean that indicates if the 2D Curve Evaluation is on or off.

void FCDAnimationMultiCurve::Set2DCurveEvaluation | ( | bool | flag | ) | `[inline]`

  | Turns on or off the 2D Curve Evaluation. Parameters:
  | flag | An on or off boolean flag.

void FCDAnimationMultiCurve::SetKeyCount | ( | size_t | count,
|  | FUDaeInterpolation::Interpolation | interpolation
| ) |

  | Sets the number of keys within the animation curve. Parameters:
  | count | The new number of keys in the curve.
  | interpolation | If creating new keys, the interpolation type for the new keys.

void FCDAnimationMultiCurve::SetPostInfinity | ( | FUDaeInfinity::Infinity | infinity | ) | `[inline]`

  | Sets the behavior of the curve if the input value is outside the input interval defined by the curve keys and greater than any key input value. See also: FUDaeInfinity Parameters:
  | infinity | The post-infinity behavior of the curve.

void FCDAnimationMultiCurve::SetPreInfinity | ( | FUDaeInfinity::Infinity | infinity | ) | `[inline]`

  | Sets the behavior of the curve if the input value is outside the input interval defined by the curve keys and less than any key input value. See also: FUDaeInfinity Parameters:
  | infinity | The pre-infinity behavior of the curve.

void FCDAnimationMultiCurve::SetTargetElement | ( | int32 | e | ) | `[inline]`

  | [INTERNAL] Sets the target element suffix for the curve. Parameters:
  | e | The target element suffix. Set to value to -1 if the animated element does not belong to an animated element list.

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

- FCDocument/FCDAnimationMultiCurve.h