Navigation
API > API/Editor > API/Editor/CurveEditor
This class computes linear interpolation for values involving the movement of edges in a rectangular selection of keys. While best used for tangent angles, it could be applied to any key attributes that can be interpolated linearly.
For example:
- When the top edge is moved downward, the interpolated values decrease linearly to 0 as the edge approaches the bottom edge. If the top edge moves past the bottom edge (the "midpoint"), the values invert, transitioning past zero into the opposite sign.
- Similarly, when the bottom edge is moved upward toward the top edge, the same interpolation and inversion logic applies.
This class handles the described interpolation logic in a generic manner. It is agnostic to the type or source of the values being interpolated and how the computed values are applied. Its sole responsibility is to perform linear interpolation based on the edge movement.
| Name | TUniformMirrorSolver |
| Type | class |
| Header File | /Engine/Source/Editor/CurveEditor/Public/Misc/Mirror/UniformMirrorSolver.h |
| Include Path | #include "Misc/Mirror/UniformMirrorSolver.h" |
Syntax
template<typename TNumeric>
class TUniformMirrorSolver
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Misc/Mirror/UniformMirrorSolver.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| InitialKeyHeights | const TArray< double > | The initial heights of all keys. Indices coincide with InitialKeyHeights. | Misc/Mirror/UniformMirrorSolver.h | |
| InitialValues | const TArray< TNumeric > | The initial tangent angles in radians. Indices coincide with InitialKeyHeights. | Misc/Mirror/UniformMirrorSolver.h | |
| MiddlePointBaseValue | const TNumeric | The value that should be at MiddlePointY. | Misc/Mirror/UniformMirrorSolver.h | |
| MiddlePointY | const double | The Y component at which the tangents reach 0 slope. | Misc/Mirror/UniformMirrorSolver.h | |
| StartY | const double | The Y component at which the drag started. | Misc/Mirror/UniformMirrorSolver.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void ComputeMirroringParallel
(
double InNewHeight, |
Recomputes the values in response to the edge being moved. | Misc/Mirror/UniformMirrorSolver.h | |
int32 NumValues() |
Misc/Mirror/UniformMirrorSolver.h |