Exemple #1
0
        protected override void OnMouseUp(MouseEventArgs s)
        {
            Viewer.UpdateTextCallback UpdateText = FPD.Form_Main.form_display.Pixel_Info;
            if (((MouseEventArgs)s).Button == MouseButtons.Left)
            {
                //Viewer.Save_current_tobackup();
                try
                {
                    int X = 0, Y = 0;
                    X = ((MouseEventArgs)s).X;
                    Y = ((MouseEventArgs)s).Y;
                    int Rotate_X = 0, Rotate_Y = 0;
                    Rotate_X = (Viewer.rotate_degree == 180) ? this.Width - X : (Viewer.rotate_degree == 90)? Y : (Viewer.rotate_degree == 270)? this.Height - Y : X;
                    Rotate_Y = (Viewer.rotate_degree == 180) ? this.Height - Y : (Viewer.rotate_degree == 90) ? this.Width - X : (Viewer.rotate_degree == 270) ?  X : Y;
                    Color pixel = Viewer.bmp_backup.GetPixel(Rotate_X * 4, Rotate_Y * 4);
                    Invoke(UpdateText, new Object[] { null, $"X : {Rotate_X * 4}, Y : {Rotate_Y * 4}, Gray Value : {pixel.GetBrightness()} ", null, null });

                    Viewer.Mouse.X = ((MouseEventArgs)s).X * 4;
                    Viewer.Mouse.Y = ((MouseEventArgs)s).Y * 4;
                    Update_DisplayRange(((MouseEventArgs)s).X, ((MouseEventArgs)s).Y);
                    base.OnMouseUp(s);
                }
                catch (Exception e)
                {
                }
            }
        }
        private void btn_getpixelinfo_Click(object sender, EventArgs e)
        {
            Viewer.UpdateTextCallback UpdateText = Pixel_Info;
            int X = 0, Y = 0;

            X = Convert.ToInt32(tb_pinfo_x.Text);
            Y = Convert.ToInt32(tb_pinfo_y.Text);
            int Rotate_X = 0, Rotate_Y = 0;

            Rotate_X       = (Viewer.rotate_degree == 180) ? Viewer.bmp0.Width - 1 - X : (Viewer.rotate_degree == 270) ? Y : (Viewer.rotate_degree == 90) ? Viewer.bmp0.Width - 1 - Y : X;
            Rotate_Y       = (Viewer.rotate_degree == 180) ? Viewer.bmp0.Height - 1 - Y : (Viewer.rotate_degree == 270) ? Viewer.bmp0.Height - 1 - X : (Viewer.rotate_degree == 90) ? X : Y;
            Viewer.Mouse.X = Rotate_X;
            Viewer.Mouse.Y = Rotate_Y;


            Viewer.Save_current_tobackup();
            Color pixel = Viewer.bmp_backup.GetPixel(Rotate_X, Rotate_Y);

            Invoke(UpdateText, new Object[] { null, $"X : {X}, Y : {Y}, {pixel.ToString()} ", null, null });
            Sample_draw.Update_DisplayRange(Rotate_X / 4, Rotate_Y / 4);
            Sample_draw.Refresh();
            if (Viewer.DisplayByGL)
            {
                gL_Drawer.Refresh();
            }
        }
Exemple #3
0
        protected override void OnMouseUp(MouseEventArgs s)
        {
            Viewer.UpdateTextCallback UpdateText = FPD.Form_Main.form_display.Pixel_Info;
            if (((MouseEventArgs)s).Button == MouseButtons.Left)
            {
                Viewer.Save_current_tobackup();
                try
                {
                    int X = 0, Y = 0;
                    X = ((MouseEventArgs)s).X;
                    Y = ((MouseEventArgs)s).Y;
                    int Rotate_X = 0, Rotate_Y = 0;
                    Rotate_X = (Viewer.rotate_degree == 180) ? this.Width - X : (Viewer.rotate_degree == 90) ? Y : (Viewer.rotate_degree == 270) ? this.Height - Y : X;
                    Rotate_Y = (Viewer.rotate_degree == 180) ? this.Height - Y : (Viewer.rotate_degree == 90) ? this.Width - X : (Viewer.rotate_degree == 270) ? X : Y;
                    int zoomx = 0, zoomy = 0;
                    zoomx = Convert.ToInt32(Rotate_X * 2 * Viewer.ZoomIn_Ratio);
                    zoomy = Convert.ToInt32(Rotate_Y * 2 * Viewer.ZoomIn_Ratio);
                    int shiftx = 0, shifty = 0;
                    shiftx = Convert.ToInt32(zoomx + (Viewer.Display_Range_L + 1) / 2 * Viewer.bmp0.Width);
                    shifty = Convert.ToInt32(zoomy + (1 - (Viewer.Display_Range_T + 1) / 2) * Viewer.bmp0.Height);
                    Color pixel = Viewer.bmp_backup.GetPixel(shiftx, shifty);
                    Invoke(UpdateText, new Object[] { null, $"X : {shiftx}, Y : {shifty}, Gray Value : {pixel.GetBrightness() * 255} ", null, null });

                    Viewer.Mouse.X = Convert.ToInt32(Convert.ToInt32(((MouseEventArgs)s).X * 2 * Viewer.ZoomIn_Ratio) + (Viewer.Display_Range_L + 1) / 2 * Viewer.bmp0.Width);      //zoom + shift
                    Viewer.Mouse.Y = Convert.ToInt32(Convert.ToInt32(((MouseEventArgs)s).Y * 2 * Viewer.ZoomIn_Ratio) + (1 - (Viewer.Display_Range_T + 1) / 2) * Viewer.bmp0.Height);
                    Viewer.ROI_X_2 = shiftx;
                    Viewer.ROI_Y_2 = shifty;

                    if (Viewer.Mouse.X < Viewer.Temp_ROI_x)
                    {
                        Viewer.ROI_DrawRange_L = Viewer.Mouse.X;
                        Viewer.ROI_DrawRange_R = Viewer.Temp_ROI_x;
                    }
                    else
                    {
                        Viewer.ROI_DrawRange_L = Viewer.Temp_ROI_x;
                        Viewer.ROI_DrawRange_R = Viewer.Mouse.X;
                    }

                    if (Viewer.Mouse.Y < Viewer.Temp_ROI_y)
                    {
                        Viewer.ROI_DrawRange_T = Viewer.Mouse.Y;
                        Viewer.ROI_DrawRange_D = Viewer.Temp_ROI_y;
                    }
                    else
                    {
                        Viewer.ROI_DrawRange_T = Viewer.Temp_ROI_y;
                        Viewer.ROI_DrawRange_D = Viewer.Mouse.Y;
                    }

                    base.OnMouseUp(s);
                }
                catch (Exception e)
                {
                }
            }
        }