Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/Curves
Inheritance Hierarchy
- FIndexedCurve
- FRealCurve
- FRichCurve
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Classes/Curves/RichCurve.h |
| Include | #include "Curves/RichCurve.h" |
Syntax
struct FRichCurve : public FRealCurve
Remarks
A rich, editable float curve
Variables
| Type | Name | Description | |
|---|---|---|---|
| TArray< FRichCurveKey > | Keys | Sorted array of keys |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AutoSetTangents
(
float Tension |
Auto set tangents for any 'auto' keys in curve | |
| void | CompressCurve
(
FCompressedRichCurve& OutCurve, |
Compresses a rich curve for efficient runtime storage and evaluation | |
| const TArray< FRichCurveKey > & | Gets a const reference of the keys, so indices and handles can't be meddled with | ||
| TArray< FRichCurveKey > | Gets a copy of the keys, so indices and handles can't be meddled with | ||
| FRichCurveKey | GetFirstKey () |
Quick accessors for the first and last keys | |
| FRichCurveKey * | GetFirstMatchingKey
(
const TArray< FKeyHandle >& KeyHandles |
Get the first key that matches any of the given key handles. | |
| FRichCurveKey & | GetKey
(
FKeyHandle KeyHandle |
Functions for getting keys based on handles | |
| FRichCurveKey | GetKey
(
FKeyHandle KeyHandle |
Functions for getting keys based on handles | |
| TArray< FRichCurveKey >::TConstIterator | Const iterator for the keys, so the indices and handles stay valid | ||
| const FRichCurveKey & | GetKeyRef
(
FKeyHandle KeyHandle |
Functions for getting keys based on handles | |
| ERichCurveTangentMode | GetKeyTangentMode
(
FKeyHandle KeyHandle |
Get the tangent mode of the specified key | |
| FRichCurveKey | GetLastKey () |
||
| bool | IsConstant
(
float Tolerance |
Returns whether the curve is constant or not | |
| bool | IsEmpty () |
Returns whether the curve is empty or not | |
| void | RemoveRedundantAutoTangentKeys
(
float Tolerance, |
||
| void | RemoveRedundantAutoTangentKeys
(
float Tolerance |
||
| void | ReserveKeys
(
const int32 Number |
Reserves keys to be added by AddKey. | |
| void | SetKeyInterpMode
(
FKeyHandle KeyHandle, |
||
| void | SetKeys
(
const TArray< FRichCurveKey >& InKeys |
Sets the keys with the keys.Expects that the keys are already sorted. | |
| void | SetKeyTangentMode
(
FKeyHandle KeyHandle, |
Set the tangent mode of the specified key | |
| void | SetKeyTangentWeightMode
(
FKeyHandle KeyHandle, |
Set the tangent weight mode of the specified key |
Overridden from FRealCurve
| Type | Name | Description | |
|---|---|---|---|
| FKeyHandle | AddKey
(
float InTime, |
Add a new key to the curve with the supplied Time and Value. Returns the handle of the new key. | |
| void | BakeCurve
(
float SampleRate, |
||
| void | BakeCurve
(
float SampleRate |
Bake curve given the sample rate | |
| void | DeleteKey
(
FKeyHandle KeyHandle |
Remove the specified key from the curve. | |
| float | Eval
(
float InTime, |
Evaluate this rich curve at the specified time | |
| ERichCurveInterpMode | GetKeyInterpMode
(
FKeyHandle KeyHandle |
Get the interp mode of the specified key | |
| TPair< float, float > | GetKeyTimeValuePair
(
FKeyHandle KeyHandle |
Returns a | |
| float | GetKeyValue
(
FKeyHandle KeyHandle |
Returns the value of the specified key | |
| void | GetTimeRange
(
float& MinTime, |
Get range of input time values. | |
| void | GetValueRange
(
float& MinValue, |
Get range of output values. | |
| void | ReadjustTimeRange
(
float NewMinTimeRange, |
Resize curve length to the [MinTimeRange, MaxTimeRange] | |
| void | RemapTimeValue
(
float& InTime, |
Remap InTime based on pre and post infinity extrapolation values | |
| void | RemoveRedundantKeys
(
float Tolerance, |
||
| void | RemoveRedundantKeys
(
float Tolerance, |
Remove redundant keys, comparing against Tolerance (and optional use of sample-rate for additional testing) | |
| void | Reset () |
Clear all keys. | |
| void | SetKeyInterpMode
(
FKeyHandle KeyHandle, |
Set the interp mode of the specified key | |
| void | SetKeyValue
(
FKeyHandle KeyHandle, |
Set the value of the specified key | |
| FKeyHandle | UpdateOrAddKey
(
float InTime, |
Finds the key at InTime, and updates its value. |
Overridden from FIndexedCurve
| Type | Name | Description | |
|---|---|---|---|
| FIndexedCurve * | Duplicate () |
Allocates a duplicate of the curve | |
| float | GetKeyTime
(
FKeyHandle KeyHandle |
Get the time for the Key with the specified index. | |
| int32 | GetNumKeys () |
Get number of keys in curve. | |
| void | SetKeyTime
(
FKeyHandle KeyHandle, |
Move a key to a new time. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| bool | operator==
(
const FRichCurve& Curve |
Determine if two RichCurves are the same |
Deprecated Functions
| Type | Name | Description | |
|---|---|---|---|
| void | RemoveRedundantKeys
(
float Tolerance, |
FRichCurve::RemoveRedundantKeys is deprecated, use signature with additional SampleRate or RemoveRedundantAutoTangentKeys instead | |
| void | RemoveRedundantKeys
(
float Tolerance |
FRichCurve::RemoveRedundantKeys is deprecated, use signature with additional SampleRate or RemoveRedundantAutoTangentKeys instead |