Example #1
0
        public static TweenBuilder2D TweenAll(this IEnumerable <FrameworkElement> items, Func <TweenBuilder2D, TweenBuilder2D> builder, double stagger = 0, object channel = null)
        {
            double         delay  = 0.0;
            TweenBuilder2D result = null;

            foreach (var item in items)
            {
                result = builder(Tween(item, channel));
                var anim = result.Animation as Timeline;
                if (anim != null)
                {
                    anim.Delay += delay;
                }
                delay += stagger;
            }
            return(result ?? new TweenBuilder2D());
        }
 public static TweenBuilder2D FadeTo(this TweenBuilder2D builder, double to)
 => builder.To(a => builder.Target.Alpha = a, builder.Target.Alpha, to);
Example #3
0
 public TweenBuilder2D(TweenBuilder2D builder, IAnimation animation) : base(builder, animation)
 {
 }
 public static TweenBuilder2D SpinOnce(this TweenBuilder2D builder)
 => RotateBy(builder, Math.PI * 2);
 public static TweenBuilder2D Spin(this TweenBuilder2D builder, double times = double.MaxValue)
 => RotateBy(builder, Math.PI * 2).Repeat(times);
 public static TweenBuilder2D ScaleBy(this TweenBuilder2D builder, double x, double y)
 => builder.To(a => builder.Target.Scale = a, builder.Target.Scale, new Vector2(builder.Target.Scale.X + x, builder.Target.Scale.Y + y));
 public static TweenBuilder2D RotateBy(this TweenBuilder2D builder, double angle)
 => builder.To(a => builder.Target.Rotation = a, builder.Target.Rotation, builder.Target.Rotation + angle);
 public static TweenBuilder2D ScaleTo(this TweenBuilder2D builder, IAnimatable2D target)
 => builder.To(a => builder.Target.Scale = a, builder.Target.Scale, target.Scale);
 public static TweenBuilder2D ScaleBy(this TweenBuilder2D builder, double scale)
 => ScaleBy(builder, scale, scale);
 public static TweenBuilder2D ScaleTo(this TweenBuilder2D builder, double x, double y)
 => builder.To(a => builder.Target.Scale = a, builder.Target.Scale, new Vector2(x, y));
 public static TweenBuilder2D MoveBy(this TweenBuilder2D builder, double x, double y)
 => builder.To(a => builder.Target.Position = a, builder.Target.Position, new Vector2(builder.Target.Position.X + x, builder.Target.Position.Y + y));
 public static TweenBuilder2D MoveTo(this TweenBuilder2D builder, IAnimatable2D target)
 => builder.To(a => builder.Target.Position = a, builder.Target.Position, target.Position);
 public static TweenBuilder2D MoveTo(this TweenBuilder2D builder, double x, double y)
 => builder.To(a => builder.Target.Position = a, builder.Target.Position, new Vector2(x, y));
 public static TweenBuilder2D FadeOut(this TweenBuilder2D builder)
 => builder.To(a => builder.Target.Alpha = a, 1.0, 0.0);