UnityEditor.RotationCurveInterpolation.RemapAnimationBindingForAddKey C# (CSharp) Method

RemapAnimationBindingForAddKey() public static method

public static RemapAnimationBindingForAddKey ( EditorCurveBinding binding, AnimationClip clip ) : UnityEditor.EditorCurveBinding[]
binding EditorCurveBinding
clip UnityEngine.AnimationClip
return UnityEditor.EditorCurveBinding[]
        public static EditorCurveBinding[] RemapAnimationBindingForAddKey(EditorCurveBinding binding, AnimationClip clip)
        {
            if (!AnimationWindowUtility.IsTransformType(binding.type))
            {
                return null;
            }
            if (binding.propertyName.StartsWith("m_LocalPosition."))
            {
                if (binding.type == typeof(Transform))
                {
                    return GenerateTransformCurveBindingArray(binding.path, "m_LocalPosition.", binding.type, 3);
                }
                return null;
            }
            if (binding.propertyName.StartsWith("m_LocalScale."))
            {
                return GenerateTransformCurveBindingArray(binding.path, "m_LocalScale.", binding.type, 3);
            }
            if (!binding.propertyName.StartsWith("m_LocalRotation"))
            {
                return null;
            }
            EditorCurveBinding binding2 = binding;
            binding2.propertyName = "localEulerAngles.x";
            if (AnimationUtility.GetEditorCurve(clip, binding2) != null)
            {
                return GenerateTransformCurveBindingArray(binding.path, "localEulerAngles.", binding.type, 3);
            }
            return GenerateTransformCurveBindingArray(binding.path, "localEulerAnglesBaked.", binding.type, 3);
        }