FBFCurve Class Reference


Detailed Description

Inheritance diagram for FBFCurve:

List of all members.

Public Member Functions

 __init__ (object pObject=None)
 Constructor.
 FBDelete ()
 Virtual FBDelete function.
float Evaluate (FBTime pTime)
 Evaluate FCurve at pTime.
 EditBegin (int pKeyCount=-1)
 Setup function to begin adding keys.
 EditEnd (int pKeyCount=-1)
 End key adding sequence.
 EditClear ()
 Empty FCurve of all keys.
int KeyAdd (FBTime pTime, float pValue, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
 Add a key at the specified time.
bool KeyRemove (int pIndex)
 Remove key at index.
bool KeyDelete (int pStartIndex, int pStopIndex)
 Delete keys within an index range.
bool KeyDelete (FBTime pStart=FBTime::MinusInfinity, FBTime pStop=FBTime::Infinity, bool pInclusive=False)
 Delete keys within a time range.
 KeyInsert (FBTime pTime, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
 Insert a key without affecting the curve shape.
 KeyReplaceBy (FBFCurve pSource, FBTime pStart=FBTime::MinusInfinity, FBTime pStop=FBTime::Infinity, bool pUseExactGivenSpan=False, bool pKeyStartEndOnNoKey=True)
 Replace keys within a range in current function curve with keys found in a source function curve.
 Replace (FBFCurve pSource, FBTime pStart=FBTime::MinusInfinity, FBTime pStop=FBTime::Infinity, bool pUseExactGivenSpan=False, bool pKeyStartEndOnNoKey=True)
 Replace keys within a range in current function curve with keys found in a source function curve.
FBFCurve CreateInterpolatorCurve (FBInterpolatorCurveType pCurveType)
 Create and interpolator curve.

Public Attributes

FBPropertyListFCurveKey Keys
 List: Keys.

Member Function Documentation

__init__ ( object  pObject = None)

Constructor.

Parameters:
pObjectFor internal use only (default is NULL).
Examples
UI/FCurveEditor.py, Tasks/ClearKeysOnSelectedModels.py

Reimplemented from FBComponent.

FBDelete ( )

Virtual FBDelete function.

Examples
Tasks/DeleteHierarchy.py

Reimplemented from FBComponent.

float Evaluate ( FBTime  pTime)

Evaluate FCurve at pTime.

Parameters:
pTimeTime at which FCurve is to be evaluated.
Returns:
Value of FCurve at pTime.
EditBegin ( int  pKeyCount = -1)

Setup function to begin adding keys.

Parameters:
pKeyCountKey to begin adding at(default is -1).
EditEnd ( int  pKeyCount = -1)

End key adding sequence.

Parameters:
pKeyCountKey to finish adding at (default is -1).
EditClear ( )

Empty FCurve of all keys.

int KeyAdd ( FBTime  pTime,
float  pValue,
FBInterpolation  pInterpolation = kFBInterpolationCubic,
FBTangentMode  pTangentMode = kFBTangentModeAuto 
)

Add a key at the specified time.

Parameters:
pTimeTime at which to insert the key.
pValueValue of the key.
pInterpolationInterpolation type of the inserted key, default value is Cubic interpolation.
pTangentModeTangent calculation method of the inserted key, default value is Auto (Smooth).
Returns:
The position of the new key in the list of FCurve keys.
Warning:
Since there are no parameter to indicate the interpolation and tangent mode, the neighbor keys may be affected by the newly inserted key.
bool KeyRemove ( int  pIndex)

Remove key at index.

Parameters:
pIndexIndex of the key to remove.
Returns:
If the removal was successful or not.
bool KeyDelete ( int  pStartIndex,
int  pStopIndex 
)

Delete keys within an index range.

Index range is inclusive. This function is much faster than multiple removes.

Parameters:
pStartIndexIndex of first deleted key.
pStopIndexIndex of last deleted key.
Returns:
true if the function curve contains keys, false otherwise.
Remarks:
Result is undetermined if function curve has keys but an index is out of bounds.
bool KeyDelete ( FBTime  pStart = FBTime::MinusInfinity,
FBTime  pStop = FBTime::Infinity,
bool  pInclusive = False 
)

Delete keys within a time range.

This function is much faster than multiple removes.

Parameters:
pStartStart of time range.
pStopEnd of time range.
pInclusiveTime range include the keys at pStart and pStop if true.
Returns:
true if the function curve contains keys, false otherwise.
KeyInsert ( FBTime  pTime,
FBInterpolation  pInterpolation = kFBInterpolationCubic,
FBTangentMode  pTangentMode = kFBTangentModeAuto 
)

Insert a key without affecting the curve shape.

Parameters:
pTimeTime at which the key is to be inserted.
pInterpolationInterpolation type of the inserted key, default value is Cubic interpolation.
pTangentModeTangent calculation method of the inserted key, default value is Auto (Smooth).
KeyReplaceBy ( FBFCurve  pSource,
FBTime  pStart = FBTime::MinusInfinity,
FBTime  pStop = FBTime::Infinity,
bool  pUseExactGivenSpan = False,
bool  pKeyStartEndOnNoKey = True 
)

Replace keys within a range in current function curve with keys found in a source function curve.

Parameters:
pSourceSource function curve.
pStartStart of time range.
pStopEnd of time range.
pUseExactGivenSpanWhen false, the time of the first and last key in the range will be used.
pKeyStartEndOnNoKeyWhen true, inserts a key at the beginning and at the end of the range if there is no key to insert.
Replace ( FBFCurve  pSource,
FBTime  pStart = FBTime::MinusInfinity,
FBTime  pStop = FBTime::Infinity,
bool  pUseExactGivenSpan = False,
bool  pKeyStartEndOnNoKey = True 
)

Replace keys within a range in current function curve with keys found in a source function curve.

Deprecated:
Deprecate as of 2014 version for naming consistency, use KeyReplaceBy instead.
Parameters:
pSourceSource function curve.
pStartStart of time range.
pStopEnd of time range.
pUseExactGivenSpanWhen false, the time of the first and last key in the range will be used.
pKeyStartEndOnNoKeyWhen true, inserts a key at the beginning and at the end of the range if there is no key to insert.
FBFCurve CreateInterpolatorCurve ( FBInterpolatorCurveType  pCurveType)

Create and interpolator curve.

Parameters:
pCurveTypeInterpolator curve type to create.

Member Data Documentation


FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve
FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve FBFCurve