FRealCurve

A rich, editable float curve

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Curves/RealCurve.h

Include

#include "Curves/RealCurve.h"

Syntax

struct FRealCurve : public FIndexedCurve

Remarks

A rich, editable float curve

Variables

Name Description

Public variable

float

 

DefaultValue

Default value

Public variable

TEnumAsByte< ER...

 

PostInfinityExtrap

Post-infinity extrapolation state

Public variable

TEnumAsByte< ER...

 

PreInfinityExtrap

Pre-infinity extrapolation state

Constructors

Name Description

Public function

FRealCurve()

Functions

Name Description

Public function Virtual

FKeyHandle

 

AddKey

(
    float InTime,
    float InValue,
    const bool bUnwindRotation,
    FKeyHandle KeyHandle
)

Add a new key to the curve with the supplied Time and Value. Returns the handle of the new key.

Public function Virtual

void

 

BakeCurve

(
    float SampleRate,
    float FirstKeyTime,
    float LastKeyTime
)

Public function Virtual

void

 

BakeCurve

(
    float SampleRate
)

Bake curve given the sample rate

Public function

void

 

ClearDefaultValue()

Removes the default value for this curve.

Protected function Static

void

 

CycleTime

(
    float MinTime,
    float MaxTime,
    float& InTime,
    int& CycleCount
)

Public function Virtual

void

 

DeleteKey

(
    FKeyHandle KeyHandle
)

Remove the specified key from the curve.

Public function Virtual Const

float

 

Eval

(
    float InTime,
    float InDefaultValue
)

Evaluate this curve at the specified time

Public function Const

FKeyHandle

 

FindKey

(
    float KeyTime,
    float KeyTimeTolerance
)

Finds a key a the specified time

Public function Const

float

 

GetDefaultValue()

Get the default value for the curve

Protected function Virtual Const

int32

 

GetKeyIndex

(
    float KeyTime,
    float KeyTimeTolerance
)

Public function Virtual Const

ERichCurveIn...

 

GetKeyInterpMode

(
    FKeyHandle KeyHandle
)

Public function Virtual Const

TPair< float...

 

GetKeyTimeValuePair

(
    FKeyHandle KeyHandle
)

Returns a pair for the specified key

Public function Virtual Const

float

 

GetKeyValue

(
    FKeyHandle KeyHandle
)

Returns the value of the specified key

Public function Virtual Const

void

 

GetTimeRange

(
    float& MinTime,
    float& MaxTime
)

Get range of input time values.

Public function Virtual Const

void

 

GetValueRange

(
    float& MinValue,
    float& MaxValue
)

Get range of output values.

Public function Const

bool

 

HasAnyData()

Check whether this curve has any data or not

Public function Const

bool

 

KeyExistsAtTime

(
    float KeyTime,
    float KeyTimeTolerance
)

True if a key exists already, false otherwise

Public function Virtual

void

 

ReadjustTimeRange

(
    float NewMinTimeRange,
    float NewMaxTimeRange,
    bool bInsert,
    float OldStartTime,
    float OldEndTime
)

Resize curve length to the [MinTimeRange, MaxTimeRange]

Public function Virtual Const

void

 

RemapTimeValue

(
    float& InTime,
    float& CycleValueOffset
)

Remap InTime based on pre and post infinity extrapolation values

Public function Virtual

void

 

RemoveRedundantKeys

(
    float Tolerance
)

Remove redundant keys, comparing against Tolerance

Public function Virtual

void

 

RemoveRedundantKeys

(
    float Tolerance,
    float FirstKeyTime,
    float LastKeyTime
)

Public function Virtual

void

 

Reset()

Clear all keys.

Public function

void

 

SetDefaultValue

(
    float InDefaultValue
)

Set the default value of the curve

Public function Virtual

void

 

SetKeyInterpMode

(
    FKeyHandle KeyHandle,
    ERichCurveInterpMode NewInterpMode
)

Public function Virtual

void

 

SetKeyValue

(
    FKeyHandle KeyHandle,
    float NewValue,
    bool bAutoSetTangents
)

Set the value of the specified key

Public function Virtual

FKeyHandle

 

UpdateOrAddKey

(
    float InTime,
    float InValue,
    const bool bUnwindRotation,
    float KeyTimeTolerance
)

Finds the key at InTime, and updates its value.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback