Navigation
| Name | CurveEditor |
| Type | Editor |
| Location | /Engine/Source/Editor/CurveEditor/ |
| Module Build Rules | CurveEditor.Build.cs |
Classes
| Name | Remarks |
|---|---|
| FCurveChangeDiff | Utility that holds a snapshot of some curve data for the purposes of later comparing changes made to those curves. |
| FCurveChangeListener | Listens to changes made to curves and cleans the subscriptions on destruction. |
| FCurveDrawParamsCache | Caches curve draw params for curves of a curve editor. |
| FCurveEditor | |
| FCurveEditorAxis | Class that models an underlying curve data structure through a generic abstraction that the curve editor understands. |
| FCurveEditorCommandChange | Base class for actions that support undo / redo in the curve editor. |
| FCurveEditorTree | Complete implementation of a curve editor tree. |
| FCurveEditorTreeDelegate | Generic multicast delegate that guards against re-entrancy for the curve editor tree |
| FCurveModel | Class that models an underlying curve data structure through a generic abstraction that the curve editor understands. |
| FKeyBarCurveModel | Class that provides functionality to represents keys as continuous ranges. |
| FLinearCurveEditorAxis | Implementation of FCurveEditorAxis that draws grid lines on a linear basis |
| FPositionMirrorSolver | This class facilitates the movement of a dragged edge and recalculates the key heights for all specified keys. |
| FPromotedFilterCommandBinder | Binds and unbinds commands that are created by FPromotedFilterContainer. |
| FPromotedFilterContainer | Holds the state for surfacing filters to the toolbar from the SCurveEditorFilterPanel, so the user can access & apply them more quickly. |
| FRichCurveEditorModel | |
| FRichCurveEditorModelRaw | Rich curve model operating on a raw curve ptr. |
| FScopedChangeBase | Base class for scoped changes that intend to append a command to the transaction system when the scope ends. |
| FScopedCurveChange | Starts a transaction. |
| FScopedSelectionChange | Saves the current selection state and on destruction compares it against the then current selection. |
| FScopedSelectionChangeEventSuppression | Prevents FCurveEditorSelection::OnSelectionChanged from being broadcast while the constructed scope is open. |
| FSuppressibleEventBroadcaster | Wraps a simple multicast delegate with a counter. |
| FTangentMirrorSolver | Given keys that are between an imaginary, x-axis aligned mirror edge and dragged edge, this class facilitates recalculates the tangents for all specified keys. |
| FTangentSelectionFlattener | Given some keys, this class squishes the curves based on how much the selection is squished vertically. |
| FTransactionManager | Interacts with the transaction system to enable command-based actions for curve editor. |
| SCurveEditorFilterPanel | |
| SCurveEditorPanel | Curve editor widget that reflects the state of an FCurveEditor |
| SCurveEditorToolProperties | Widget to show curve editor tool extension properties |
| SCurveEditorTree | |
| SCurveEditorTreeFilterStatusBar | Widget that shows the metrics for the current tree filter in the curve editor (in the form "Showing {0} of {1} items ({2} selected)") |
| SCurveEditorTreePin | |
| SCurveEditorTreeSelect | |
| SCurveEditorTreeTextFilter | |
| SCurveEditorView | This is the base widget type for all views that exist on a curve editor panel. |
| SCurveEditorViewAbsolute | A Normalized curve view supporting one or more curves with their own screen transform that normalizes the vertical curve range to [-1,1] |
| SCurveEditorViewNormalized | A Normalized curve view supporting one or more curves with their own screen transform that normalizes the vertical curve range to [-1,1] |
| SCurveEditorViewStacked | A Normalized curve view supporting one or more curves with their own screen transform that normalizes the vertical curve range to [-1,1] |
| SCurveKeyDetailPanel | Inline details panel that lets you edit the Time and Value of a generic FCurveEditor Key |
| SCurveViewerPanel | Curve viewer widget that reflects the state of an FCurveEditor |
| SGridLineSpacingList | A widget which creates a list of pre-determined numbers and a spot to enter a custom number. |
| SInteractiveCurveEditorView | |
| TCurvesSnapshotPerfInfo | Utility for retrieving some common performance data about FCurveDiffingData (or a collection thereof). |
| TInvertedCurveModel | |
| TUniformMirrorSolver | This class computes linear interpolation for values involving the movement of edges in a rectangular selection of keys. |
| UCurveEditorBakeFilter | |
| UCurveEditorFilterBase | An abstract base class for Curve Editor Filtering. |
| UCurveEditorGaussianFilter | |
| UCurveEditorKeyProxy | |
| UCurveEditorReduceFilter | |
| UCurveEditorSettings | Serializable options for curve editor. |
| UCurveEditorSmartReduceFilter |
Structs
| Name | Remarks |
|---|---|
| FAddKeysChangeData | |
| FCurveAttributeChangeData | Stores data for restoring curves attributes of multiple curves. |
| FCurveAttributeChangeData_PerCurve | Stores data for restoring the curve attributes of a single curve. |
| FCurveBounds | |
| FCurveDiffingData | Holds data that is captured to diff a curves previous state to a current state. |
| FCurveDrawParams | Structure that defines the necessary data for painting a whole curve |
| FCurveDrawParamsHandle | Handle for an entry in the draw params array |
| FCurveEditorAxisSnap | Utility struct that acts as a way to control snapping to a specific axis based on UI settings, or shift key. |
| FCurveEditorBakeFilterRange | |
| FCurveEditorDelayedDrag | Utility struct used to facilitate a delayed drag operation with an implementation interface |
| FCurveEditorFilterStates | Sparse map of filter states specifying items that have matched a filter |
| FCurveEditorInitParams | Curve Editor initialization parameters. |
| FCurveEditorScreenSpace | Utility struct used for converting to/from curve editor screen space |
| FCurveEditorScreenSpaceH | Utility struct used for converting to/from curve editor screen space |
| FCurveEditorScreenSpaceV | Utility struct used for converting to/from curve editor screen space |
| FCurveEditorSelection | Class responsible for tracking selections of keys. |
| FCurveEditorToolID | A unique identifier for a tool in the curve editor |
| FCurveEditorTreeEvents | Struct that represents an event for when the tree has been changed. |
| FCurveEditorTreeFilter | Base class for all filters that can be applied to a curve editor tree. |
| FCurveEditorTreeItem | Concrete type used as a tree item for the curve editor. |
| FCurveEditorTreeItemID | |
| FCurveEditorTreeTextFilter | Built-in text filter of type ECurveEditorTreeFilterType::Text. |
| FCurveEditorTreeTextFilterTerm | A text filter term containing >= 1 sparate tokens ordered from child to parent |
| FCurveEditorTreeTextFilterToken | A specific text token (containing neither spaces nor .) |
| FCurveEditorViewAxisID | Identifier for a specific axis on a view. |
| FCurveEditorZoomScaleConfig | |
| FCurveKeyData | Holds data for restoring keys on a curve. |
| FCurveKeyDataMap | Snapshot of curve editor content. |
| FCurveModelID | A unique identifier for a curve model existing on a curve editor |
| FCurvePointHandle | A unique handle to a particular point handle (key, tangent handle etc) on a curve, represented by the key's handle, its curve ID, and its type |
| FCurvePointInfo | Structure that defines the necessary data for painting a given curve point |
| FCurveSnapMetrics | |
| FCurvesSnapshot | Holds selected data about curves. |
| FCurvesSnapshotBuilder | Utility for selectively capturing state of curves based on some ECurveChangeFlags. |
| FCurveTangentMirrorData | Holds data about mirroring keys in a single curve. |
| FCustomColorForChannel | Custom Color Object |
| FCustomColorForSpaceSwitch | Custom Color Object |
| FGaussianParams | |
| FGenericCurveChangeData | Stores changes made to curves in the curve editor. |
| FKeyAttributeChangeData | Stores data for restoring key attributes of multiple curves. |
| FKeyAttributeChangeData_PerCurve | Stores data for restoring key attributes for a single curve. |
| FKeyAttributes | Extended attributes that the curve editor understands |
| FKeyDrawInfo | Structure that defines how to draw a particular key |
| FKeyHandleSet | A set of key handles implemented as a sorted array for transparent passing to TArrayView<> APIs. |
| FKeyPasteArgs | Arguments for pasting keys in FCurveEditor. |
| FKeyPosition | Generic key position information for a key on a curve |
| FMirrorableTangentInfo | |
| FMoveKeysChangeData | Data for an operation that translates keys. |
| FMoveKeysChangeData_PerCurve | |
| FRemoveKeysChangeData | |
| FScopedCurveEditorTreeEventGuard | Scoped guard that prevents the broadcast of tree events for the duration of its lifetime. |
| FSmartReduceParams | |
| FSortedCurveEditorTreeItems | Container specifying a linear set of child identifiers and |
| FStaticCurveEditorBounds | |
| ICurveEditorBounds | |
| ICurveEditorTreeItem | Optional implementation interface for any tree item to be shown on the curve editor tree. |
Interfaces
| Name | Remarks |
|---|---|
| IBufferedCurveModel | Represents a buffered curve which can be applied to a standard curve model |
| ICurveEditorCurveCachePool | |
| ICurveEditorDragOperation | Interface for all drag operations in the curve editor |
| ICurveEditorExtension | |
| ICurveEditorKeyDragOperation | Interface for all key drag operations in the curve editor |
| ICurveEditorKeyProxy | Interface that can be implemented by any object passed to a curve editor to use as a key editing proxy. |
| ICurveEditorModule | Interface for the Curve Editor module. |
| ICurveEditorToolExtension | You can extend the Curve Editor toolset by implementing this interface. |
| IMultiCurveChangeVisitor | Interface for processing changes made to multiple FCurveModels. |
| ISingleCurveChangeVisitor | Interface for processing changes made to a single FCurveModel. |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FOnActiveToolChanged | TMulticastDelegate_OneParam< void, FCurveEditorToolID > | CurveEditor.h | |
| FOnCreateCurveEditorExtension | TBaseDelegate_OneParam< TSharedRef< ICurveEditorExtension >, TWeakPtr< FCurveEditor > > | A delegate which will create an extension for the Curve Editor. | ICurveEditorModule.h |
| FOnCreateCurveEditorToolExtension | TBaseDelegate_OneParam< TUniquePtr< ICurveEditorToolExtension >, TWeakPtr< FCurveEditor > > | A delegate which will create a tool extension for the Curve Editor. | ICurveEditorModule.h |
| FOnCreateCurveEditorView | TBaseDelegate_OneParam< TSharedRef< SCurveEditorView >, TWeakPtr< FCurveEditor > > | A delegate used for creating a new curve editor view | ICurveEditorModule.h |
| FOnCurveArrayChanged | TMulticastDelegate_ThreeParams< void, FCurveModel *, bool, const FCurveEditor * > | CurveEditor.h | |
| FOnCurveColorsChanged | TMulticastDelegate_OneParam< void, TConstArrayView< FCurveModelID > > | CurveEditor.h | |
| FOnCurveEditorToggleExpansionState | TMulticastDelegate_OneParam< void, bool > | Tree/CurveEditorTree.h | |
| FOnCurveHasChangedExternally | TMulticastDelegate_OneParam< void, const FCurveModelID & > | Invoked when FCurveModel::HasChangedAndResetTest returns true. | CurveEditorCurveDrawParamsCache.h |
| FOnOptionsRefresh | TMulticastDelegate_NoParams< void > | ICurveEditorToolExtension.h | |
| FOnSetBoolean | TBaseDelegate_OneParam< void, bool > | CurveEditor.h |
Enums
Public
| Name | Remarks |
|---|---|
| CurveViewConstants::ELayerOffset:: | Pre-defined layer offsets for specific curve view elements. |
| ECurveEditorAxisOrientation | Curve editor axis orientation enumeration |
| ECurveEditorPanningMouseButton | |
| ECurveEditorSnapAxis | Defines the axis to snap to when dragging. |
| ECurveEditorTangentTypes | Enums to describe supported tangent types, by default support all but smart auto |
| ECurveEditorTangentVisibility | Defines visibility states for the tangents in the curve editor. |
| ECurveEditorTreeFilterState | Enumeration of bitmask values specifying how a specific tree item is interpreted by the current set of filters |
| ECurveEditorTreeFilterType | |
| ECurveEditorViewID | Enumeration identifying a single specific view type, or a combination thereof |
| ECurveEditorZoomPosition | Defines the position to center the zoom about in the curve editor. |
| ECurvePointType | Enum for representing the type of a key point in the curve editor |
| UE::CurveEditor::ECurveChangeFlags | Flags about the types of changes that can be made to a curve. |
| UE::CurveEditor::ECurveEditorPasteFlags | Enhances the paste operation |
| UE::CurveEditor::ECurveEditorPasteMode | Defines the merging behaviour of the paste operation. |
| UE::CurveEditor::ECurvesSnapshotPerfFlags | |
| UE::CurveEditor::EScopedKeyChangeFlags | |
| UE::CurveEditor::EScopedSelectionChangeFlags |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BufferedCurveColor | FLinearColor | Views/SInteractiveCurveEditorView.h | ||
| CurveEditorDescription | Filters/CurveEditorEulerFilter.h | |||
| CurveEditorDescription | Filters/CurveEditorSmartSnapFilter.h | |||
| CurveEditorLabel | Filters/CurveEditorEulerFilter.h | |||
| CurveEditorLabel | Filters/CurveEditorSmartSnapFilter.h | |||
| CurveLabelOffsetX | float | The default offset from the top-right corner of curve views for curve labels to be drawn. | Views/SInteractiveCurveEditorView.h | |
| CurveLabelOffsetY | float | Views/SInteractiveCurveEditorView.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| CurveEditorAxis.h | |||
| CurveEditorTypes.h | |||
| Tree/CurveEditorTree.h | |||
FString UE::CurveEditor::DumpSnapshotPerfData
(
const TCurvesSnapshotPerfInfo< T > InData, |
Converts the specified info into a string. | Modification/Keys/SnapshotPerfDebugUtils.h | |
FString UE::CurveEditor::DumpSnapshotPerfData
(
const TMap< T, FCurveDiffingData >& InMap, |
Modification/Keys/SnapshotPerfDebugUtils.h | ||
FString UE::CurveEditor::DumpSnapshotPerfData
(
const FCurvesSnapshot& InSnapshot, |
Modification/Keys/SnapshotPerfDebugUtils.h | ||
| Misc/KeyPasteArgs.h | |||
| Modification/Keys/ECurveChangeFlags.h | |||
| Modification/Keys/SnapshotPerfDebugUtils.h | |||
| Modification/Utils/ScopedCurveChange.h | |||
| Modification/Utils/ScopedSelectionChange.h | |||
FMenuEntryResizeParams UE::CurveEditor::MakeResizeParams
(
FStringView UISpecifier, |
Looks up the CurveEditor.AllowClipping.[UISpecifier] and CurveEditor.ClipPriority.[UISpecifier] from the given style. | Misc/ResizeParamUtils.h | |
void UE::CurveEditor::MirrorOnMidpoint
(
const TMap< FCurveModelID, TArray< FKeyHandle, TArrayAllocator >, TMapAllocator >& InKeysToMirror, |
Finds the mid-point of every curve's passed in key handles and mirrors all points on the imaginary line going through it. | Misc/Mirror/MirrorUtils.h | |
void UE::CurveEditor::RecomputeMirroringParallel
(
const FCurveEditor& InCurveEditor, |
Mirrors the tangents stores in InCurveData. | Misc/Mirror/MultiCurveMirrorUtils.h | |
void UE::CurveEditor::RecomputeMirroringParallel
(
const FCurveEditor& InCurveEditor, |
Mirrors the tangents stores in InCurveData. | Misc/Mirror/MultiCurveMirrorUtils.h | |
void UE::CurveEditor::RecomputeMirroringParallel
(
const FCurveEditor& InCurveEditor, |
Mirrors the tangents stores in InCurveData. | Misc/Mirror/MultiCurveMirrorUtils.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TArray< FKeyAttributes > UE::CurveEditor::Private::CopyAndInvertKeyAttributesFromBuffer
(
const IBufferedCurveModel& RealBuffer |
InvertedCurveModel.h | ||
static TArray< FKeyPosition > UE::CurveEditor::Private::CopyAndInvertKeyPositionsFromBuffer
(
const IBufferedCurveModel& RealBuffer |
InvertedCurveModel.h | ||
static FKeyAttributes UE::CurveEditor::Private::InvertKeyAttributes
(
FKeyAttributes Attributes |
InvertedCurveModel.h | ||
static void UE::CurveEditor::Private::InvertKeyAttributes
(
TArrayView< FKeyAttributes > Output |
InvertedCurveModel.h | ||
static void UE::CurveEditor::Private::InvertKeyAttributes
(
const InT& Input, |
InvertedCurveModel.h | ||
static FKeyPosition UE::CurveEditor::Private::InvertKeyPosition
(
const FKeyPosition& KeyPosition |
InvertedCurveModel.h | ||
static void UE::CurveEditor::Private::InvertKeyPositions
(
TArrayView< FKeyPosition > Output |
InvertedCurveModel.h | ||
static void UE::CurveEditor::Private::InvertKeyPositions
(
const InT& Input, |
InvertedCurveModel.h | ||
static float UE::CurveEditor::Private::InvertTangent
(
float Tangent |
InvertedCurveModel.h |