Esempio n. 1
0
        public CSplineSubinterval(CPoint p1, CPoint p2, double df, double ddf)
        {
            _p1 = p1;
            _p2 = p2;

            B = ddf;
            C = df;
            D = p1.Y;
            A = (_p2.Y - B * Math.Pow(_p2.X - _p1.X, 2) - C * (_p2.X - _p1.X) - D) / Math.Pow(_p2.X - _p1.X, 3);
        }
Esempio n. 2
0
        public CSplineSubinterval(CPoint p1, CPoint p2, double df, double ddf)
        {
            point1 = p1;
            point2 = p2;

            B = ddf;
            C = df;
            D = point1.Y;
            A = (point2.Y - B * Math.Pow(point2.X - point1.X, 2) - C * (point2.X - point1.X) - D) / Math.Pow(point2.X - point1.X, 3);
        }
Esempio n. 3
0
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            Console.WriteLine("x: " + e.X + "; y: " + e.Y);

            if ((splineModel != null) && (splineModel.Points != null))
            {
                foreach (CPoint point in splineModel.Points)
                {
                    if ((point.X >= e.X - 4) && (point.X <= e.X + 4) && (point.Y >= e.Y - 4) && (point.Y <= e.Y + 4))
                    {
                        Console.WriteLine("Координаты точки: " + point.X + ':' + point.Y);

                        selectedPoint = point;
                    }
                }
            }
        }
Esempio n. 4
0
        private void button1_Click(object sender, EventArgs e)
        {
            var random = new Random();

            var points   = new CPoint[(int)numericUpDown1.Value];
            var interval = (pictureBox1.Width - 20) / (int)numericUpDown1.Value;

            for (var i = 0; i < (int)numericUpDown1.Value; i++)
            {
                points[i] = new CPoint(random.Next(10 + interval * i, 10 + interval * (i + 1)),
                                       random.Next(10, pictureBox1.Height - 10));
            }

            _model = new CSpline(points);

            vScrollBar1.Value = 0;
            vScrollBar2.Value = 0;

            SetD1ToModel();
            GetDerivatesFromModel();
            Draw();
        }
Esempio n. 5
0
        private void button1_Click(object sender, EventArgs e)
        {
            var random = new Random();

            int val = decimal.ToInt32(numericUpDown1.Value);

            CPoint[] points   = new CPoint[val];
            var      interval = (pictureBox1.Width - 20) / val;

            for (int i = 0; i < val; i++)
            {
                points[i] = new CPoint(random.Next(10 + interval * i, 10 + interval * (i + 1)), random.Next(10, pictureBox1.Height - 10));
            }

            splineModel = new CSpline(points);

            vScrollBar1.Value = 0;
            vScrollBar2.Value = 0;

            SetD1ToModel();
            GetDerivatesFromModel();
            Draw();
        }