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(); } }
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) { } } }