예제 #1
0
        public void Add(AnimationClip clip, IAbstractAnimator animator)
        {
            if (listHead == null)
            {
                Setter = ((IAbstractAnimator <T>)animator).Setter;
            }
            var item = new Item {
                Clip = clip, Animator = (IAbstractAnimator <T>)animator
            };

            if (listHead == null)
            {
                listHead = item;
            }
            else
            {
                var tail = listHead;
                while (tail.Next != null)
                {
                    tail = tail.Next;
                }
                tail.Next = item;
            }
            Duration = Math.Max(Duration, clip.EndFrame);
        }
예제 #2
0
 public void Add(AnimationTrack track, IAbstractAnimator animator)
 {
     if (listHead == null)
     {
         Setter = ((IAbstractAnimator <T>)animator).Setter;
     }
     listHead = new Item {
         Track = track, Animator = (IAbstractAnimator <T>)animator, Next = listHead
     };
     Duration = Math.Max(Duration, animator.Duration);
 }
예제 #3
0
 public void Initialize(Animation animation, IAbstractAnimator animator)
 {
     this.animation = animation;
     this.animator  = (IAbstractAnimator <T>)animator;
     this.Setter    = this.animator.Setter;
 }
예제 #4
0
 public AnimatorBinding(IAbstractAnimator animator)
 {
     Animable = animator.Animable;
     TargetPropertyPathComparisonCode = animator.TargetPropertyPathComparisonCode;
 }