示例#1
0
        //Dibuja los valores en un gráfico
        public static void GetGrafico(PictureBox img, PaintEventArgs evento)
        {
            int              totalRegistro = Controlador.GetDataList().Count;
            double           xstep         = (double)img.ClientRectangle.Width / totalRegistro;
            double           ystep         = (double)img.ClientRectangle.Height / Controlador.limiteValido;
            List <Rectangle> muestras      = new List <Rectangle>();
            Pen              lapiz         = new Pen(Color.Red, 2);

            for (int puntoX = 0; puntoX < totalRegistro - 1; puntoX++)
            {
                //Creamos puntos
                int puntoY = Controlador.GetValorY(puntoX);
                muestras.Add(new Rectangle((int)(puntoX * xstep), (int)(puntoY * ystep), tamañoCuadro, tamañoCuadro));


                //alternativa - dibujar línea para unir punto
                using (Pen pn = new Pen(Color.Blue, 1))
                {
                    int puntoYFinal = Controlador.GetValorY(puntoX + 1);
                    evento.Graphics.DrawLine(pn,
                                             new PointF((int)(puntoX * xstep), (int)(puntoY * ystep)),
                                             new PointF((int)((puntoX + 1) * xstep), (int)(puntoYFinal * ystep)));
                }
            }


            //Dibujamos los punto resultantes
            evento.Graphics.DrawRectangles(lapiz, muestras.ToArray());
        }
示例#2
0
        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            PictureBox img = (PictureBox)sender;

            //Dibujamos mediante el controlador
            Controlador.GetGrafico(img, e);
        }
示例#3
0
        private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
        {
            PictureBox img = (PictureBox)sender;

            if (PuntoModificadoY != null)
            {
                PuntoModificadoY.Y += (int)((e.Y - LastY) / ((double)img.Height / Controlador.limiteValido));
                LastY = e.Y;
                //Actualizamos el punto modificado
                Controlador.SetPuntoModificado(PuntoModificadoY);
                //Dibujamos nuevamente el grafico
                pictureBox1.Refresh();
            }
        }
示例#4
0
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            PictureBox img = (PictureBox)sender;
            //obtenemos X y se guarda temporalmente
            int pointX = e.X * Controlador.numeroMuestras / img.Width;

            //validacion de puntos
            if (pointX >= 0 && pointX < Controlador.numeroMuestras)
            {
                //Establecemos el nuevo punto
                PuntoModificadoY = Controlador.GetValorXY(pointX);
                LastY            = e.Y;
            }
        }
示例#5
0
        private void LoaData()
        {
            //Buscamos datos
            Controlador.LoadData();
            //Asignamos los datos a un bindingDataSource
            bindingSource1.DataSource = Controlador.GetDataList();


            //Asignamos el binding a un dataGridView para ver los datos
            dataGridView1.DataSource = bindingSource1;
            //Ajustamos el contenido a la ventana
            dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;


            //Ajustamos el pictureBox al tamaño de la ventana
            pictureBox1.Anchor = ((AnchorStyles)((((AnchorStyles.Top | AnchorStyles.Bottom) | AnchorStyles.Left) | AnchorStyles.Right)));
        }