/// <summary> /// The window changed size. /// </summary> /// <param name="sender">The sending object.</param> /// <param name="e">The event.</param> private void Window_SizeChanged_1(object sender, SizeChangedEventArgs e) { // Clear out any previous animation StopAnimation(); CanvasOutput.Children.Clear(); // Create new animation at correct size. _display = new UniverseDisplayCell((int)e.NewSize.Width, (int)e.NewSize.Height, null); _display.UniverseRunner.PhysicsRules.CopyData(_physics); _display.Visualize(); _display.UniverseRunner.AutoKill = false; var img = new Image { Source = _display.Image }; img.SetValue(Canvas.LeftProperty, 0.0); img.SetValue(Canvas.TopProperty, 0.0); CanvasOutput.Children.Add(img); // Start the thread. _stopRequest = false; _background = new Thread(DoWork); _background.Start(); }
/// <summary> /// The window changed size. /// </summary> /// <param name="sender">The sending object.</param> /// <param name="e">The event.</param> private void Window_SizeChanged_1(object sender, SizeChangedEventArgs e) { // Clear out any previous animation StopAnimation(); CanvasOutput.Children.Clear(); // Create new animation at correct size. _display = new UniverseDisplayCell((int) e.NewSize.Width, (int) e.NewSize.Height, null); _display.UniverseRunner.PhysicsRules.CopyData(_physics); _display.Visualize(); _display.UniverseRunner.AutoKill = false; var img = new Image {Source = _display.Image}; img.SetValue(Canvas.LeftProperty, 0.0); img.SetValue(Canvas.TopProperty, 0.0); CanvasOutput.Children.Add(img); // Start the thread. _stopRequest = false; _background = new Thread(DoWork); _background.Start(); }
/// <summary> /// Update the user interface. /// </summary> private void UpdateUi() { _display.Visualize(); }