public static void AddScalingAnimation(this Storyboard storyboard, FrameworkElement fe, double fromX, double toX, double fromY, double toY, Duration duration, EasingFunctionBase easingFunction) { storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateDoubleAnimation(duration, fromX, toX, easingFunction), CompositeTransform.ScaleXProperty); storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateDoubleAnimation(duration, fromY, toY, easingFunction), CompositeTransform.ScaleYProperty); }
public static void AddOpacityAnimation(this Storyboard storyboard, UIElement fe, double from, double to, Duration duration, EasingFunctionBase easingFunction) { storyboard.AddAnimation(fe, storyboard.CreateDoubleAnimation(duration, from, to, easingFunction), UIElement.OpacityProperty); }
public static void AddWayPointAnimation(this Storyboard storyboard, FrameworkElement fe, IList<Point> points, double speed) { var durations = new List<Duration> { new Duration(TimeSpan.FromSeconds(0)) }; for (var i = 0; i < points.Count - 1; i++) { durations.Add(points[i].CalculateDuration(points[i + 1], speed)); } var xValues = points.Select(p => p.X).ToList(); storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateKeyFrameAnimation(xValues, durations), CompositeTransform.TranslateXProperty); var yValues = points.Select(p => p.Y).ToList(); storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateKeyFrameAnimation(yValues, durations), CompositeTransform.TranslateYProperty); }
public static void AddTranslationAnimation(this Storyboard storyboard, FrameworkElement fe, Point from, Point to, Duration duration, EasingFunctionBase easingFunction) { storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateDoubleAnimation(duration, from.X, to.X, easingFunction), CompositeTransform.TranslateXProperty); storyboard.AddAnimation(fe.RenderTransform, storyboard.CreateDoubleAnimation(duration, from.Y, to.Y, easingFunction), CompositeTransform.TranslateYProperty); }
public static void ImportLegacyData(this EffectManager effect_manager, string data) { var data_list = data.StringToList(); KeyValuePair<string, string> value_pair; string key, value; var anim_idx = 0; for (var idx = 0; idx < data_list.Count; idx++) { value_pair = (KeyValuePair<string, string>)data_list[idx]; key = value_pair.Key; value = value_pair.Value; switch (key) { case "m_animate_per": effect_manager.m_animate_per = (AnimatePerOptions)int.Parse(value); break; case "m_begin_delay": effect_manager.m_begin_delay = float.Parse(value); break; case "m_begin_on_start": effect_manager.m_begin_on_start = bool.Parse(value); break; case "m_character_size": effect_manager.m_character_size = float.Parse(value); break; case "m_display_axis": effect_manager.m_display_axis = (TextDisplayAxis)int.Parse(value); break; case "m_line_height": effect_manager.m_line_height_factor = float.Parse(value); break; case "m_max_width": effect_manager.m_max_width = float.Parse(value); break; case "m_on_finish_action": effect_manager.m_on_finish_action = (ON_FINISH_ACTION)int.Parse(value); break; case "m_px_offset": effect_manager.m_px_offset = value.StringToVector2(); break; // case "m_text": // effect_manager.m_text = value; break; case "m_text_alignment": effect_manager.m_text_alignment = (TextAlignment)int.Parse(value); break; case "m_text_anchor": effect_manager.m_text_anchor = (TextAnchor)int.Parse(value); break; case "m_time_type": effect_manager.m_time_type = (AnimationTime)int.Parse(value); break; case "ANIM_DATA_START": if (anim_idx == effect_manager.NumAnimations) effect_manager.AddAnimation(); idx = effect_manager.GetAnimation(anim_idx).ImportLegacyData(data_list, idx + 1); anim_idx ++; break; } } }