예제 #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 public FInterpCurvePointFloat(float inVal, float outVal)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = default(float);
     LeaveTangent  = default(float);
     InterpMode    = EInterpCurveMode.Linear;
 }
예제 #2
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 public FInterpCurvePointLinearColor(float inVal, FLinearColor outVal)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = default(FLinearColor);
     LeaveTangent  = default(FLinearColor);
     InterpMode    = EInterpCurveMode.Linear;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 public FInterpCurvePointTwoVectors(float inVal, FTwoVectors outVal)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = default(FTwoVectors);
     LeaveTangent  = default(FTwoVectors);
     InterpMode    = EInterpCurveMode.Linear;
 }
예제 #4
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 public FInterpCurvePointVector2D(float inVal, FVector2D outVal)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = default(FVector2D);
     LeaveTangent  = default(FVector2D);
     InterpMode    = EInterpCurveMode.Linear;
 }
예제 #5
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 /// <param name="arriveTangent">Tangent of curve arriving at this point. </param>
 /// <param name="leaveTangent">Tangent of curve leaving from this point.</param>
 /// <param name="interpMode">interpolation mode to use</param>
 public FInterpCurvePointLinearColor(float inVal, FLinearColor outVal,
                                     FLinearColor arriveTangent, FLinearColor leaveTangent, EInterpCurveMode interpMode)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
 }
예제 #6
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 public FInterpCurvePointQuat(float inVal, FQuat outVal)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = default(FQuat);
     LeaveTangent  = default(FQuat);
     InterpMode    = EInterpCurveMode.Linear;
     padding1      = padding2 = padding3 = 0;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 /// <param name="arriveTangent">Tangent of curve arriving at this point. </param>
 /// <param name="leaveTangent">Tangent of curve leaving from this point.</param>
 /// <param name="interpMode">interpolation mode to use</param>
 public FInterpCurvePointTwoVectors(float inVal, FTwoVectors outVal,
                                    FTwoVectors arriveTangent, FTwoVectors leaveTangent, EInterpCurveMode interpMode)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
 }
예제 #8
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 /// <param name="arriveTangent">Tangent of curve arriving at this point. </param>
 /// <param name="leaveTangent">Tangent of curve leaving from this point.</param>
 /// <param name="interpMode">interpolation mode to use</param>
 public FInterpCurvePointFloat(float inVal, float outVal,
                               float arriveTangent, float leaveTangent, EInterpCurveMode interpMode)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
 }
예제 #9
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 /// <param name="arriveTangent">Tangent of curve arriving at this point. </param>
 /// <param name="leaveTangent">Tangent of curve leaving from this point.</param>
 /// <param name="interpMode">interpolation mode to use</param>
 public FInterpCurvePointVector2D(float inVal, FVector2D outVal,
                                  FVector2D arriveTangent, FVector2D leaveTangent, EInterpCurveMode interpMode)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
 }
예제 #10
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="inVal">input value that corresponds to this key</param>
 /// <param name="outVal">Output value of templated type</param>
 /// <param name="arriveTangent">Tangent of curve arriving at this point. </param>
 /// <param name="leaveTangent">Tangent of curve leaving from this point.</param>
 /// <param name="interpMode">interpolation mode to use</param>
 public FInterpCurvePointQuat(float inVal, FQuat outVal,
                              FQuat arriveTangent, FQuat leaveTangent, EInterpCurveMode interpMode)
 {
     InVal         = inVal;
     OutVal        = outVal;
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
     padding1      = padding2 = padding3 = 0;
 }
예제 #11
0
        public int AddPoint(float inVal, T outVal, T arriveTangent, T leaveTangent, EInterpCurveMode curveMode)
        {
            int i = 0;

            for (; i < Points.Count && Points[i].InVal < inVal; i++)
            {
            }

            Points.Insert(i, new InterpCurvePoint <T>(inVal, outVal, arriveTangent, leaveTangent, curveMode));
            return(i);
        }
예제 #12
0
 /// <summary>
 /// Set the method to use for interpolating between the give keyframe and the next one.
 /// <para>KeyIndex must be within range ie >=0 and < NumKeys. </para>
 /// </summary>
 public virtual void SetKeyInterpMode(int keyIndex, EInterpCurveMode newMode)
 => E_FCurveEdInterface_SetKeyInterpMode(this, keyIndex, (byte)newMode);
예제 #13
0
 public InterpCurvePoint(float inVal, T outVal, T arriveTangent, T leaveTangent, EInterpCurveMode interpMode) : this(inVal, outVal)
 {
     ArriveTangent = arriveTangent;
     LeaveTangent  = leaveTangent;
     InterpMode    = interpMode;
 }