Esempio n. 1
0
        public void Update(float dt)
        {
            CurrentTime += dt;
            float t = m_totalDuration > 0 ? CurrentTime / m_totalDuration : 0;

            t = t > 1 ? 1 :
                t < 0 ? 0 :
                t;

            t = AnimHelper.Ease(t, Ease);

            if (IsForward)
            {
                m_currOffset = m_startOffset - t * m_distance;
            }
            else
            {
                m_currOffset = m_startOffset + t * m_distance;
            }

            if (IsVertical)
            {
                Item.Element.RenderY = AnimHelper.Round(m_currOffset);
            }
            else
            {
                Item.Element.RenderX = AnimHelper.Round(m_currOffset);
            }
        }
Esempio n. 2
0
 public SlidingTransition(
     BadgeCaps device,
     MessageQueueItem item1,
     MessageQueueItem item2,
     SlidingDirection direction,
     Easing ease,
     float speed,
     float?padding)
 {
     Item1     = item1;
     Item2     = item2;
     Direction = direction;
     Ease      = ease;
     Speed     = speed;
     if (IsVertical)
     {
         Padding       = padding.HasValue ? padding.Value : device.Height;
         m_startOffset = Item1.Element.RenderY;
         m_distance    = AnimHelper.Round(Item1.Element.ClipHeight + m_startOffset + Padding);
     }
     else
     {
         Padding       = padding.HasValue ? padding.Value : device.Width;
         m_startOffset = Item1.Element.RenderX;
         m_distance    = AnimHelper.Round(Item1.Element.ClipWidth + m_startOffset + Padding);
     }
     m_currOffset    = m_startOffset;
     m_totalDuration = m_distance / Speed;
 }
Esempio n. 3
0
        public void Update(float dt)
        {
            CurrentTime += dt;
            float t = m_totalDuration > 0 ? CurrentTime / m_totalDuration : 0;

            t = t > 1 ? 1 :
                t < 0 ? 0 :
                t;

            t = AnimHelper.Ease(t, Ease);

            m_currOffsetX = m_startOffsetX - t * DirectionX * m_distanceX;
            m_currOffsetY = m_startOffsetY - t * DirectionY * m_distanceY;

            Item.Element.RenderX = AnimHelper.Round(m_currOffsetX);
            Item.Element.RenderY = AnimHelper.Round(m_currOffsetY);
        }