BrashMonkey.Spriter.DataPlugins.SpriterDataUnity.RemoveTangents C# (CSharp) Method

RemoveTangents() private static method

private static RemoveTangents ( AnimationCurve>.IEnumerable curves ) : void
curves AnimationCurve>.IEnumerable
return void
        private static void RemoveTangents(IEnumerable<Dictionary<string, AnimationCurve>> curves)
        {
            //TODO: Remove duplicate keys?
            foreach (var animationCurve in curves)
            {
                foreach (var curve in animationCurve.Values)
                {
                    Keyframe last = curve.keys[0];
                    for (int i = 1; i < curve.keys.Length; i++)
                    {
                        Keyframe keyframe = curve.keys[i];
                        var diff = keyframe.value - last.value;
                        var time = keyframe.time - last.time;

                        last.outTangent = diff/time;
                        keyframe.inTangent = diff/time;

                        curve.MoveKey(i - 1, last);
                        curve.MoveKey(i, keyframe);

                        last = keyframe;
                    }
                }
            }
        }