public Animation(Action <double> callback, double start = 0.0f, double end = 1.0f, Easing easing = null, Action finished = null) { _children = new List <Animation>(); _easing = easing ?? Easing.Linear; _finished = finished; Func <double, double> transform = AnimationExtensions.Interpolate(start, end); _step = f => callback(transform(f)); }