public void AnimateVertexBackward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; if (CenterScale) { target.RenderTransformOrigin = new Point(.5, .5); } else { target.RenderTransformOrigin = new Point(0, 0); } return; //no need to back cause default already } if (transform.ScaleX <= 1 || transform.ScaleY <= 1) { return; } DoubleAnimation scaleAnimation = new DoubleAnimation(transform.ScaleX, 1, new Duration(TimeSpan.FromSeconds(Duration))); transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); }
public void AnimateVertex(VertexControl target) { //get scale transform or create new one var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; if (Centered) { target.RenderTransformOrigin = new Point(.5, .5); } else { target.RenderTransformOrigin = new Point(0, 0); } } //create and run animation var scaleAnimation = new DoubleAnimation(1, 0, new Duration(TimeSpan.FromSeconds(Duration))); scaleAnimation.Completed += (sender, e) => { OnCompleted(target as IGraphControl); }; transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); }
public void AnimateVertexForward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; target.RenderTransformOrigin = CenterScale ? new Point(.5, .5) : new Point(0, 0); } #if WPF var scaleAnimation = new DoubleAnimation(1, ScaleTo, new Duration(TimeSpan.FromSeconds(Duration))); transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); #elif METRO var sb = new Storyboard(); var scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = ScaleTo }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)"); sb.Children.Add(scaleAnimation); scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = ScaleTo }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)"); sb.Children.Add(scaleAnimation); sb.Begin(); #else throw new NotImplementedException(); #endif }
public void AnimateVertex(VertexControl target, bool removeDataVertex = false) { //get scale transform or create new one var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; target.RenderTransformOrigin = Centered ? new Point(.5, .5) : new Point(0, 0); } //create and run animation #if WPF var scaleAnimation = new DoubleAnimation(1, 0, new Duration(TimeSpan.FromSeconds(Duration))); Timeline.SetDesiredFrameRate(scaleAnimation, 30); scaleAnimation.Completed += (sender, e) => OnCompleted(target, removeDataVertex); transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); #elif METRO var sb = new Storyboard(); //create and run animation var scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = 0 }; scaleAnimation.SetDesiredFrameRate(30); //scaleAnimation.Completed += (sender, e) => OnCompleted(target as IGraphControl, removeDataVertex); Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)"); sb.Children.Add(scaleAnimation); scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = 0 }; scaleAnimation.Completed += (sender, e) => OnCompleted(target as IGraphControl, removeDataVertex); scaleAnimation.SetDesiredFrameRate(30); Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)"); sb.Children.Add(scaleAnimation); sb.Begin(); #else throw new NotImplementedException(); #endif }
public void AnimateVertexBackward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); target.RenderTransformOrigin = CenterScale ? new Point(.5, .5) : new Point(0, 0); return; //no need to back cause default already } if (transform.ScaleX <= 1 || transform.ScaleY <= 1) { return; } #if WPF var scaleAnimation = new DoubleAnimation(transform.ScaleX, 1, new Duration(TimeSpan.FromSeconds(Duration))); Timeline.SetDesiredFrameRate(scaleAnimation, 30); transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); #elif METRO var sb = new Storyboard(); var scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = transform.ScaleX, To = 1 }; scaleAnimation.SetDesiredFrameRate(30); Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)"); sb.Children.Add(scaleAnimation); scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = transform.ScaleX, To = 1 }; scaleAnimation.SetDesiredFrameRate(30); Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)"); sb.Children.Add(scaleAnimation); sb.Begin(); #else throw new NotImplementedException(); #endif }
public void AnimateVertexForward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; if (CenterScale) { target.RenderTransformOrigin = new Point(.5, .5); } else { target.RenderTransformOrigin = new Point(0, 0); } } var sb = new Storyboard(); var scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = ScaleTo }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)"); sb.Children.Add(scaleAnimation); scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = 1, To = ScaleTo }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)"); sb.Children.Add(scaleAnimation); //transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); //transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); sb.Begin(); }
public void AnimateVertexBackward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; target.RenderTransformOrigin = CenterScale ? new Point(.5, .5) : new Point(0, 0); return; //no need to back cause default already } if (transform.ScaleX <= 1 || transform.ScaleY <= 1) { return; } var sb = new Storyboard(); var scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = transform.ScaleX, To = 1 }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleX)"); sb.Children.Add(scaleAnimation); scaleAnimation = new DoubleAnimation { Duration = new Duration(TimeSpan.FromSeconds(Duration)), From = transform.ScaleX, To = 1 }; Storyboard.SetTarget(scaleAnimation, target); Storyboard.SetTargetProperty(scaleAnimation, "(UIElement.RenderTransform).(CompositeTransform.ScaleY)"); sb.Children.Add(scaleAnimation); //transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); //transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); sb.Begin(); }
public void AnimateVertexForward(VertexControl target) { var transform = CustomHelper.GetScaleTransform(target); if (transform == null) { target.RenderTransform = new ScaleTransform(); transform = target.RenderTransform as ScaleTransform; if (CenterScale) { target.RenderTransformOrigin = new Point(.5, .5); } else { target.RenderTransformOrigin = new Point(0, 0); } } DoubleAnimation scaleAnimation = new DoubleAnimation(1, ScaleTo, new Duration(TimeSpan.FromSeconds(Duration))); transform.BeginAnimation(ScaleTransform.ScaleXProperty, scaleAnimation); transform.BeginAnimation(ScaleTransform.ScaleYProperty, scaleAnimation); }