// instant
 public static EaseObject OffsetTo(this UIElement obj, double offsetX, double offsetY)
 {
     try
     {
         return(ArtefactAnimator.AddEase(((TransformGroup)obj.RenderTransform).Children[(int)TransformGroupIndexes.TranslateTransform], new object[] { AnimationTypes.OffsetX, AnimationTypes.OffsetY }, new object[] { offsetX, offsetY }, 0, null, 0).Finish());
     }
     catch (Exception error) { Debug.WriteLine("[ERROR] ArtefactAnimatorExtensions - OffsetTo - " + error); return(null); }
 }
 public static EaseObject SkewTo(this UIElement obj, double skewX, double skewY, double time, PercentHandler transition, double delay)
 {
     try
     {
         return(ArtefactAnimator.AddEase(((TransformGroup)obj.RenderTransform).Children[(int)TransformGroupIndexes.SkewTransform], new object[] { AnimationTypes.SkewX, AnimationTypes.SkewY }, new object[] { skewX, skewY }, time, transition, delay));
     }
     catch (Exception error) { Debug.WriteLine("[ERROR] ArtefactAnimatorExtensions - SkewTo - " + error); return(null); }
 }
 // instant
 public static EaseObject RotateTo(this UIElement obj, double rotation)
 {
     try
     {
         return(ArtefactAnimator.AddEase(((TransformGroup)obj.RenderTransform).Children[(int)TransformGroupIndexes.RotateTransform], AnimationTypes.Rotation, rotation, 0, null, 0).Finish());
     }
     catch (Exception error) { Debug.WriteLine("[ERROR] ArtefactAnimatorExtensions - RotateTo - " + error); return(null); }
 }
 public static EaseObject XTo(this UIElement obj, double X, double time, PercentHandler transition, double delay)
 {
     return(ArtefactAnimator.AddEase(obj, AnimationTypes.X, X, time, transition, delay));
 }
 public static EaseObject AutoAlphaCollapsedTo(this UIElement obj, double alpha, double time, PercentHandler transition, double delay)
 {
     ArtefactAnimator.StopEase(obj, new string[] { AnimationTypes.Alpha, AnimationTypes.AutoAlpha, AnimationTypes.AutoAlphaCollapsed });
     return(ArtefactAnimator.AddEase(obj, AnimationTypes.AutoAlphaCollapsed, alpha, time, transition, delay));
 }
 public static EaseObject DimensionsTo(this UIElement obj, double width, double height, double time, PercentHandler transition, double delay)
 {
     return(ArtefactAnimator.AddEase(obj, new[] { AnimationTypes.Width, AnimationTypes.Height }, new object[] { width, height }, time, transition, delay));
 }
 public static EaseObject SlideTo(this UIElement obj, double x, double y, double time, PercentHandler transition, double delay)
 {
     return(ArtefactAnimator.AddEase(obj, new[] { AnimationTypes.X, AnimationTypes.Y }, new object[] { x, y }, time, transition, delay));
 }