private void Evaluate() { if (!btnEvaluate.Enabled) { return; } Hashtable parameters = new Hashtable(); foreach (Control ctrl in pnlVariables.Controls) { if (ctrl.Visible) { Panel pnl = ctrl as Panel; if (pnl != null) { parameters.Add(pnl.Tag, pnl.Controls[1].Text); } } } string message; double[] data = SyntheticGenerator.GenerateData(tbNoOfSamples.Value, tbSamplesPerSecond.Value, tctFormula.Text, parameters, out message); if (message != null) { lblMessage.Text = message; spectrum.Series[0].Points.Clear(); } else { lblMessage.Text = ""; FftAnalyzer.Windowing(tbNoOfSamples.Value, data, WindowType, 1, data, false); RenderScopeData(data); _fftAnalyzer.ExecuteFftAsync(data, SamplesPerSecond, 1, WindowingTypes.Square); // already windowed. } }