UnityEditor.QuaternionCurveTangentCalculation.SetCurve C# (CSharp) Method

SetCurve() public method

public SetCurve ( int index, AnimationCurve curve ) : void
index int
curve UnityEngine.AnimationCurve
return void
        public void SetCurve(int index, AnimationCurve curve)
        {
            if (index == 0)
            {
                this.eulerX = curve;
            }
            else if (index == 1)
            {
                this.eulerY = curve;
            }
            else
            {
                this.eulerZ = curve;
            }
        }

Usage Example

 public static void UpdateTangentsFromMode(AnimationCurve curve, AnimationClip clip, EditorCurveBinding curveBinding)
 {
     if (RotationCurveInterpolation.GetModeFromCurveData(curveBinding) == RotationCurveInterpolation.Mode.NonBaked)
     {
         QuaternionCurveTangentCalculation quaternionCurveTangentCalculation = default(QuaternionCurveTangentCalculation);
         int curveIndexFromName = RotationCurveInterpolation.GetCurveIndexFromName(curveBinding.propertyName);
         for (int i = 0; i < 3; i++)
         {
             if (i == curveIndexFromName)
             {
                 quaternionCurveTangentCalculation.SetCurve(i, curve);
             }
             else
             {
                 EditorCurveBinding binding = curveBinding;
                 binding.propertyName = "localEulerAngles." + RotationCurveInterpolation.kPostFix[i];
                 AnimationCurve editorCurve = AnimationUtility.GetEditorCurve(clip, binding);
                 if (editorCurve == null)
                 {
                     return;
                 }
                 quaternionCurveTangentCalculation.SetCurve(i, editorCurve);
             }
         }
         quaternionCurveTangentCalculation.UpdateTangentsFromMode(curveIndexFromName);
     }
     else
     {
         CurveUtility.UpdateTangentsFromMode(curve);
     }
 }
All Usage Examples Of UnityEditor.QuaternionCurveTangentCalculation::SetCurve