UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMovieSceneInverseNestedSequenceTransform Struct Reference

#include <MovieSceneSequenceTransform.h>

Public Member Functions

 FMovieSceneInverseNestedSequenceTransform ()
 
 FMovieSceneInverseNestedSequenceTransform (const FMovieSceneTimeTransform &InLinearTransform)
 
 FMovieSceneInverseNestedSequenceTransform (const FFrameTime &InOffset, double InTimeScale)
 
bool IsLinear () const
 
bool NeedsBreadcrumb () const
 
MOVIESCENE_API FMovieSceneTimeTransform AsLinear () const
 
MOVIESCENE_API FMovieSceneNestedSequenceTransform Inverse () const
 
MOVIESCENE_API TOptional< FFrameTimeTryTransformTime (FFrameTime Time, FFrameTime Breadcrumb) const
 
MOVIESCENE_API TOptional< FFrameTimeTryTransformTime (FFrameTime Time, FFrameTime Breadcrumb, const UE::MovieScene::FInverseTransformTimeParams &Params) const
 
MOVIESCENE_API bool TransformTimeWithinRange (FFrameTime Time, const TFunctionRef< bool(FFrameTime)> &Visitor, FFrameTime UntransformedRangeStart, FFrameTime UntransformedRangeEnd) const
 

Detailed Description

Structure used to represent a specific inverse transformation (ie from transformed to untransformed space) that cannot be combined with another. Stored as a stack inside FMovieSceneInverseSequenceTransform to represent a complete transformation from inner time-space to outer time-space.

Constructor & Destructor Documentation

◆ FMovieSceneInverseNestedSequenceTransform() [1/3]

FMovieSceneInverseNestedSequenceTransform::FMovieSceneInverseNestedSequenceTransform ( )
inline

Default construction to an identity linear transform. Should only be used by serialization.

◆ FMovieSceneInverseNestedSequenceTransform() [2/3]

FMovieSceneInverseNestedSequenceTransform::FMovieSceneInverseNestedSequenceTransform ( const FMovieSceneTimeTransform InLinearTransform)
inline

Construction from a linear transform

◆ FMovieSceneInverseNestedSequenceTransform() [3/3]

FMovieSceneInverseNestedSequenceTransform::FMovieSceneInverseNestedSequenceTransform ( const FFrameTime InOffset,
double  InTimeScale 
)
inline

Construction from a linear transform represented as an offset and scale (scale is applied first)

Member Function Documentation

◆ AsLinear()

FMovieSceneTimeTransform FMovieSceneInverseNestedSequenceTransform::AsLinear ( ) const

Convert this transform to its linear form.

Note
This is only valid to call where IsLinear() is true

◆ Inverse()

MOVIESCENE_API FMovieSceneNestedSequenceTransform FMovieSceneInverseNestedSequenceTransform::Inverse ( ) const

Convert this transform to its inverse (ie a transform that converts from untransformed space to transformed space)

◆ IsLinear()

bool FMovieSceneInverseNestedSequenceTransform::IsLinear ( ) const
inline

Check whether this transform is linear (true) or not (false)

◆ NeedsBreadcrumb()

bool FMovieSceneInverseNestedSequenceTransform::NeedsBreadcrumb ( ) const
inline

Check whether this transformation requires a breadcrumb trail (true) or not (false)

Note
Breadcrumbs may still be added for dense trails

◆ TransformTimeWithinRange()

bool FMovieSceneInverseNestedSequenceTransform::TransformTimeWithinRange ( FFrameTime  Time,
const TFunctionRef< bool(FFrameTime)> &  Visitor,
FFrameTime  UntransformedRangeStart,
FFrameTime  UntransformedRangeEnd 
) const

Attempt to transform the specified time by this inverse transform within a specified un-transformed range, calling a functor for every instance of the specified time in the un-transformed space.

Parameters
TimeThe time to transform
VisitorA callback to invoke for every instance of Time in the untransformed range. The result of the functor determines whether to continue iteration (true) or not (false).
UntransformedRangeStartThe inclusive start time in untransformed space within which to allow Visitor to be invoked
UntransformedRangeEndThe inclusive end time in untransformed space within which to allow Visitor to be invoked
Returns
True if every invocation of Visitor returned true, or there were no invocations; false if any invocation of Visitor returned false.

◆ TryTransformTime() [1/2]

TOptional< FFrameTime > FMovieSceneInverseNestedSequenceTransform::TryTransformTime ( FFrameTime  Time,
FFrameTime  Breadcrumb 
) const

Attempt to transform the specified time by this inverse transform. The operation can fail if the time does not map to the un-transformed time space (for example, when looping).

Parameters
TimeThe time to transform
BreadcrumbA breadcrumb in the un-transformed space to assist in resolving ambiguous transformations (ie, to transform into the correct time based on the breadcrumb's loop)
Returns
The transformed time if successful, or an epty optional otherwise

◆ TryTransformTime() [2/2]

TOptional< FFrameTime > FMovieSceneInverseNestedSequenceTransform::TryTransformTime ( FFrameTime  Time,
FFrameTime  Breadcrumb,
const UE::MovieScene::FInverseTransformTimeParams Params 
) const

Attempt to transform the specified time by this inverse transform. The operation can fail if the time does not map to the un-transformed time space (for example, when looping).

Parameters
TimeThe time to transform
BreadcrumbA breadcrumb in the un-transformed space to assist in resolving ambiguous transformations (ie, to transform into the correct time based on the breadcrumb's loop)
ParamsParameter structure that controls how to perform the inverse operation (ie to disallow cycling outside of the current loop; to ignore clamps etc)
Returns
The transformed time if successful, or an epty optional otherwise

The documentation for this struct was generated from the following files: