Esempio n. 1
0
 public Curve(IAnimator animator, int component, IAnimatorAdapter adapter, Color4 color)
 {
     Animator  = animator;
     Component = component;
     Adapter   = adapter;
     Color     = color;
 }
Esempio n. 2
0
        static void CalcRange(IAnimator animator, IAnimatorAdapter adapter, out float minValue, out float maxValue)
        {
            minValue = float.MaxValue;
            maxValue = -float.MaxValue;
            for (int i = 0; i < adapter.ComponentCount; i++)
            {
                foreach (var k in animator.ReadonlyKeys)
                {
                    var value = adapter.GetComponentValue(animator, AnimationUtils.FramesToSeconds(k.Frame), i);
                    if (value < minValue)
                    {
                        minValue = value;
                    }
                    if (value > maxValue)
                    {
                        maxValue = value;
                    }
                }
            }
            var range = maxValue - minValue;

            if (range < 1)
            {
                range = 1;
            }
            maxValue += range * 0.2f;
            minValue -= range * 0.2f;
        }