public void richTextBoxIncoming_DoubleClick(object sender, EventArgs e)
        {
            ClearNullStr(richTextBoxIncoming);
            int fxIndex = richTextBoxIncoming.Lines[0].Split(new[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries).Length;
            var list    = new PointPairList();

            try
            {
                ZedGraphResult.GraphPane.CurveList["Исходная"].Color = Color.Green;
            }
            catch
            {
                ZedGraphHlp.DrawGraph(ZedGraphResult, "Исходная", list, Color.Red, checkBoxHaveDept.Checked);
            }
            ZedGraphResult.GraphPane.CurveList["Исходная"].Clear();

            foreach (string line in richTextBoxIncoming.Lines)
            {
                string[] parts = line.Split(new[] { ' ', '\t' }, StringSplitOptions.RemoveEmptyEntries);
                ZedGraphResult.GraphPane.CurveList["Исходная"].AddPoint(ConvertExt.ToDbl(parts[fxIndex - 1]), ConvertExt.ToDbl(parts[0]));
            }

            ZedGraphResult.AxisChange();
            ZedGraphResult.Invalidate();
        }
 private void buttonTrim_Click(object sender, EventArgs e)
 {
     textBox2.Text            = Math.Round(ZedGraphResult.GraphPane.YAxis.Scale.Max, 1).ToString(CultureInfo.InvariantCulture);
     textBox3.Text            = Math.Round(ZedGraphResult.GraphPane.YAxis.Scale.Min, 1).ToString(CultureInfo.InvariantCulture);
     richTextBoxIncoming.Text = "";
     foreach (string parameter in IncomingParameters)
     {
         string[] parts = parameter.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
         var      dept  = ConvertExt.ToDbl(parts[0]);
         if (dept <= ConvertExt.ToDbl(textBox2.Text) & dept >= ConvertExt.ToDbl(textBox3.Text))
         {
             richTextBoxIncoming.Text += (dept - ConvertExt.ToDbl(textBox3.Text)).IsLessThanEpsilon() == false
                 ? parameter + "\r\n"
                 : parameter;
         }
     }
 }
        private void buttonGenerate_Click(object sender, EventArgs e)
        {
            richTextBoxIncoming.Text = "";
            var list = new PointPairList();

            double start  = ConvertExt.ToDbl(textBox2.Text);
            double finish = ConvertExt.ToDbl(textBox3.Text);
            double step   = ConvertExt.ToDbl(textBox4.Text);

            double[,] temp2 = Evaluator(TextBoxIdeal.Text, start, finish, step);
            for (var i = 0; i < temp2.GetLength(1); i++)
            {
                list.Add(temp2[1, i], temp2[0, i]);
                // ReSharper disable LocalizableElement
                richTextBoxIncoming.Text += temp2[0, i] + "\t" + temp2[1, i] + "\r\n";
                // ReSharper restore LocalizableElement
            }
            ZedGraphHlp.DrawGraph(ZedGraphResult, "Сгенерированная", list, Color.Green, false);
        }
        private void buttonStartAlgorithm_Click(object sender, EventArgs e)
        {
            int popsize         = Convert.ToInt32(textBoxPopulationSize.Text);
            var selectionConfig = new SelectionConfig
            {
                MaxNelrodMidIterations = 300,
                MutationChance         = Convert.ToInt32(textBoxMutationChance.Text),
                GrowSpeed              = Convert.ToInt32(textBox1GrowSpeed.Text),
                MaxConstantsCount      = Convert.ToInt16(textBoxLeafsCount.Text),
                MaxAlgorithmIterations = Convert.ToInt16(textBoxIterationsCount.Text),
                TargetDeviation        = ConvertExt.ToDbl(textBoxDesp.Text),
            };

            var args = PointsReader();

            SelectionManager = new SelectionManager(popsize, args, checkBoxConvolution.Checked, selectionConfig, new GraphPointsCycle(this));

            textBoxPopulationSize.Enabled = false;
            textBoxPopulationSize.Text    = SelectionManager.PopulationSize.ToString();

            ContinueIterationsLoop();
        }