Fractrace.Animation.AnimationControl.ComputeAnimationPart C# (CSharp) Method

ComputeAnimationPart() private method

Compute part of animation.
private ComputeAnimationPart ( int from, int to, int steps, ParameterHistory animationHistory, int historyIndex ) : void
from int
to int
steps int
animationHistory ParameterHistory
historyIndex int
return void
        private void ComputeAnimationPart(int from, int to, int steps, ParameterHistory animationHistory, int historyIndex)
        {
            lblAnimationProgress.Text = "compute: " + from.ToString() + " " + to.ToString();
            for (int i = 0; i < steps && !_animationAbort; i++)
            {
                lblAnimationProgress.Text = "compute: " + from.ToString() + " " + to.ToString() + " Step " + i.ToString() + " (from " + steps.ToString() + ")";
                double r = 1.0 / steps * (double)i;
                Application.DoEvents();
                if (_animationSmooth)
                    animationHistory.LoadSmoothed(r + historyIndex);
                else
                    animationHistory.Load(r + historyIndex);
                int updateSteps = ParameterDict.Current.GetInt("View.UpdateSteps");
                if (updateSteps <= 0)
                    updateSteps = 0;
                if (updateSteps > 1)
                    ParameterDict.Current.SetInt("View.UpdateSteps", updateSteps - 1);
                ResultImageView.PublicForm.SetPictureBoxSize();
                Fractrace.Scheduler.PaintJob paintJob = new Scheduler.PaintJob(ResultImageView.PublicForm, ResultImageView.PublicForm.GestaltPicture);
                _currentPaintJob = paintJob;
                paintJob.Run(updateSteps);
                ResultImageView.PublicForm.CallDrawImage();
                if (_stepPreviewControls.ContainsKey(from))
                    _stepPreviewControls[from].UpdateComputedStep(i);
            }
        }