重构图像加载 图像放大缩放移动 算法等

This commit is contained in:
moco 2024-11-24 23:59:27 +08:00
parent 64f012a777
commit 343d467c78
14 changed files with 2291 additions and 351 deletions

View File

@ -31,87 +31,12 @@ namespace PBAnaly
private string color_bar = "YellowHot";
System.Windows.Forms.TableLayoutPanel tlp_main_images;
private Dictionary<string ,BioanalysisMannage> bioanalysisMannages = new Dictionary<string, BioanalysisMannage>();
bool isRun = false;
private Thread thread;
private void runThread()
{
//while (isRun)
//{
// int index = 0;
// foreach (var item in ImageToolMannage.imageDataPath)
// {
// if (index == 0)
// {
// if (pb_image1.InvokeRequired)
// {
// pb_image1.Invoke(new Action(() => pb_image1.Image = item.Value.pictureBox));
// }
// }
// else if (index == 1)
// {
// if (pb_image2.InvokeRequired)
// {
// pb_image2.Invoke(new Action(() => pb_image2.Image = item.Value.pictureBox));
// }
// }
// else if (index == 2)
// {
// if (pb_image3.InvokeRequired)
// {
// pb_image3.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 3)
// {
// if (pb_image4.InvokeRequired)
// {
// pb_image4.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 4)
// {
// if (pb_image5.InvokeRequired)
// {
// pb_image5.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 5)
// {
// if (pb_image6.InvokeRequired)
// {
// pb_image6.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 6)
// {
// if (pb_image7.InvokeRequired)
// {
// pb_image7.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 7)
// {
// if (pb_image8.InvokeRequired)
// {
// pb_image8.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// else if (index == 8)
// {
// if (pb_image9.InvokeRequired)
// {
// pb_image9.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// }
// }
// Thread.Sleep(200);
//}
}
public MainForm(LoginForm InnerloginForm, Autholity autholity, string UserID)
{
InitializeComponent();
@ -154,246 +79,8 @@ namespace PBAnaly
materialSkinManager.Theme = MaterialSkinManager.Themes.DARK; // Theme 属性用来设置整体的主题
materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.Indigo700, TextShade.WHITE); // ColorScheme 属性来设置配色方案
}
public void SetPic(Bitmap p)
{
int index = 0;
//foreach (var item in ImageToolMannage.imageDataPath)
//{
// if (index == 0)
// {
// var camera = item.Value.GetImage();
// pb_image1.Image = util.ConvertRgb24ImageToBitmap(camera);
// pb_image1.Refresh();
// }
// else if (index == 1)
// {
// pb_image2.Invoke(new Action(() => pb_image2.Image = item.Value.pictureBox));
// }
// else if (index == 2)
// {
// pb_image3.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// else if (index == 3)
// {
// pb_image4.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// else if (index == 4)
// {
// pb_image5.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// else if (index == 5)
// {
// if (pb_image6.InvokeRequired)
// {
// pb_image6.Invoke(new Action(() => pb_image6.Image = item.Value.pictureBox));
// }
// }
// else if (index == 6)
// {
// pb_image7.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// else if (index == 7)
// {
// pb_image8.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// else if (index == 8)
// {
// pb_image9.Invoke(new Action(() => pb_image9.Image = item.Value.pictureBox));
// }
// index++;
//}
}
private void initPanel()
{
//BeginUpdate(tl_right_main_view);
//tl_right_main_view.RowCount = 1;
//tl_right_main_view.ColumnCount = 1;
//tl_right_main_view.Controls.Clear();
//if (isGridView)
//{
// pl_right.Controls.Clear();
// itpf = new COMMImageToolPaletteForm(this);
// itpf.TopLevel = false;
// itpf.Dock = DockStyle.Fill;
// pb_colorbar = new PictureBox();
// pb_colorbar.SizeMode = PictureBoxSizeMode.StretchImage;
// tl_right_main_view.RowCount = 1;
// tl_right_main_view.ColumnCount = 2;
// tl_right_main_view.RowStyles.Clear();
// tl_right_main_view.ColumnStyles.Clear();
// tl_right_main_view.ColumnStyles.Add(new ColumnStyle(SizeType.Percent,100f));
// tl_right_main_view.ColumnStyles.Add(new ColumnStyle(SizeType.Absolute, 100f));
// pb_lists.Clear();
// tlp_main_images = new TableLayoutPanel();
// tl_right_main_view.Controls.Add(tlp_main_images,0,0);
// tl_right_main_view.Controls.Add(pb_colorbar, 1,0);
// pb_colorbar.Dock = DockStyle.Fill;
// pl_right.Controls.Add(itpf);
// pb_colorbar.Show();
// pb_colorbar.Dock = DockStyle.Fill;
// itpf.Show();
// tlp_main_images.Dock = DockStyle.Fill;
// int capCount = ImageToolMannage.imageDataPath.Count;
// int rows = (int)Math.Ceiling(Math.Sqrt(capCount));
// int cols = (int)Math.Ceiling((double)capCount / rows);
// if (capCount == 1)
// {
// rows = 1;
// cols = 0;
// }
// else if (capCount == 2)
// {
// rows = 1;
// cols = 2;
// }
// else if ( capCount == 3)
// {
// rows = 1;
// cols = capCount;
// }
// else if (capCount == 4)
// {
// rows = 2;
// cols = 2;
// }
// else if (capCount > 4 && capCount <= 6)
// {
// rows = 2;
// cols = 3;
// }
// else if (capCount > 6 && capCount <= 9)
// {
// rows = 3;
// cols = 3;
// }
// tlp_main_images.RowCount = rows;
// tlp_main_images.ColumnCount = cols;
// tlp_main_images.RowStyles.Clear();
// tlp_main_images.ColumnStyles.Clear();
// for (int i = 0; i < rows; i++)
// {
// tlp_main_images.RowStyles.Add(new RowStyle(SizeType.Percent, 100f / rows));
// }
// for (int i = 0; i < cols; i++)
// {
// tlp_main_images.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100f / cols));
// }
// int index = 0;
// int r = 0;
// int c = 0;
// foreach (var item in ImageToolMannage.imageDataPath)
// {
// if (index == 0)
// {
// tlp_main_images.Controls.Add(pb_image1, c, r);
// pb_image1.Dock = DockStyle.Fill;
// pb_image1.Show();
// }
// else if(index == 1)
// {
// tlp_main_images.Controls.Add(pb_image2, c, r);
// pb_image2.Dock = DockStyle.Fill;
// pb_image2.Show();
// }
// else if (index == 2)
// {
// tlp_main_images.Controls.Add(pb_image3, c, r);
// pb_image3.Dock = DockStyle.Fill;
// pb_image3.Show();
// }
// else if (index == 3)
// {
// tlp_main_images.Controls.Add(pb_image4, c, r);
// pb_image4.Dock = DockStyle.Fill;
// pb_image4.Show();
// }
// else if (index == 4)
// {
// tlp_main_images.Controls.Add(pb_image5, c, r);
// pb_image5.Dock = DockStyle.Fill;
// pb_image5.Show();
// }
// else if (index == 5)
// {
// tlp_main_images.Controls.Add(pb_image6, c, r);
// pb_image6.Dock = DockStyle.Fill;
// pb_image6.Show();
// }
// else if (index == 6)
// {
// tlp_main_images.Controls.Add(pb_image7, c, r);
// pb_image7.Dock = DockStyle.Fill;
// pb_image7.Show();
// }
// else if (index == 7)
// {
// tlp_main_images.Controls.Add(pb_image8, c, r);
// pb_image8.Dock = DockStyle.Fill;
// pb_image8.Show();
// }
// else if (index == 8)
// {
// tlp_main_images.Controls.Add(pb_image9, c, r);
// pb_image9.Dock = DockStyle.Fill;
// pb_image9.Show();
// }
// c++;
// if (c >= cols)
// {
// r++;
// c = 0;
// }
// index++;
// }
// isRun = true;
// thread = new Thread(runThread);
// thread.IsBackground = true;
// thread.Start();
//}
//else
//{
// isRun = false;
// tl_right_main_view.Controls.Add(DataProcess_panel);
// DataProcess_panel.Dock = DockStyle.Fill;
// foreach (var frmEmbed in ImageToolMannage.imageDataPath.Values)
// {
// if (frmEmbed != null)
// {
// frmEmbed.TopLevel = false;
// DataProcess_panel.Controls.Add(frmEmbed);
// //FormGenerate_X = FormGenerate_X + 15;
// //FormGenerate_Y = FormGenerate_Y + 15;
// frmEmbed.Location = new System.Drawing.Point(FormGenerate_X, FormGenerate_Y);
// frmEmbed.Show(); // 显示
// frmEmbed.BringToFront();
// frmEmbed.initPicturebox();
// }
// }
//}
//EndUpdate(tl_right_main_view);
}
private void materialButton_changeFormSize_MouseMove(object sender, MouseEventArgs e)
{
@ -621,31 +308,40 @@ namespace PBAnaly
#endregion
if (selectedFilePath != "")
{
if (ImageToolMannage.imageDataPath.TryGetValue(selectedFilePath, out var value))
//if (ImageToolMannage.imageDataPath.TryGetValue(selectedFilePath, out var value))
//{
// return;
//}
if (bioanalysisMannages.TryGetValue(selectedFilePath, out var value))
{
return;
}
BioanalysisMannage bioanalysisMannage = new BioanalysisMannage(selectedFilePath, pl_right);
DataProcess_panel.Controls.Add(bioanalysisMannage.GetImagePanel);
bioanalysisMannage.GetImagePanel.BringToFront();
bioanalysisMannages[selectedFilePath] = bioanalysisMannage;
//ImagePanel frmEmbed = new ImagePanel(selectedFilePath, pl_right);
//ImageToolMannage.imageDataPath[selectedFilePath] = frmEmbed;
ImagePanel frmEmbed = new ImagePanel(selectedFilePath, pl_right);
ImageToolMannage.imageDataPath[selectedFilePath] = frmEmbed;
//if (frmEmbed != null)
//{
// frmEmbed.TopLevel = false;
// DataProcess_panel.Controls.Add(frmEmbed);
// FormGenerate_X = FormGenerate_X + 15;
// FormGenerate_Y = FormGenerate_Y + 15;
// frmEmbed.Location = new System.Drawing.Point(FormGenerate_X, FormGenerate_Y);
// frmEmbed.Show(); // 显示
// frmEmbed.BringToFront();
if (frmEmbed != null)
{
frmEmbed.TopLevel = false;
DataProcess_panel.Controls.Add(frmEmbed);
FormGenerate_X = FormGenerate_X + 15;
FormGenerate_Y = FormGenerate_Y + 15;
frmEmbed.Location = new System.Drawing.Point(FormGenerate_X, FormGenerate_Y);
frmEmbed.Show(); // 显示
frmEmbed.BringToFront();
//frmEmbed.RefreshUI();
// //frmEmbed.RefreshUI();
}
initPanel();
//}
//initPanel();
}

View File

@ -0,0 +1,635 @@
using Aspose.Pdf.AI;
using PBAnaly.UI;
using ScottPlot.Panels;
using ScottPlot.Plottables;
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.PixelFormats;
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading;
using System.Windows.Forms;
namespace PBAnaly.Module
{
/// <summary>
/// 生物分析 管理类
/// </summary>
public class BioanalysisMannage
{
public struct AlgAttribute
{
public int brightness;
public int brightnessMax;
public int brightnessMin;
public int opacity;
public int opacityMax;
public int opacityMin;
public int colorValue;
public int colorMinValue;
public int colorMin;
public int colorMax;
public bool scientificON;
public int colorIndex;
}
#region
private string path;
private string mark_path;
private string tif_marker_path;
private string tif_org_path;
private Image<L16> image_mark_L16 = null;
private byte[] image_mark_byte = null;
private Image<Rgb24> image_mark_rgb24 = null;
private Image<Rgb24> image_mark_and_org_rgb24 = null;
private Image<L16> image_org_L16 = null;
private byte[] image_org_byte = null;
private Image<Rgb24> image_org_rgb24 = null;
private Image<Rgb24> colorbar_rgb24_image = null;
private int colorbarWW = 200, colorh_onecolor = 10;
private int colorbarW = 600, colorbarH = 2600;
private ReaLTaiizor.Controls.Panel pl_right;
private BioanalyImagePanel imagePanel = null;
private BioanayImagePaletteForm imagePaletteForm = null;
PBBiologyVC.PBImageProcessVC pbpvc = new PBBiologyVC.PBImageProcessVC();
private Thread algThread;
private bool isalgRun = false;
private bool isUpdateAlg = false;
private Queue<AlgAttribute> queueAlgAttribute = new Queue<AlgAttribute>();
#region
AlgAttribute algAttribute = new AlgAttribute();
#region imagepanel
private bool isDragging = false;
private System.Drawing.Point mouseDownPosition;
private System.Drawing.Point pictureBoxStartPosition;
#endregion
#endregion
#region
public int Brightness
{
get { return algAttribute.brightness; }
set
{
if (algAttribute.brightness != value)
{
bool fix = false;
algAttribute.brightness = value;
if (imagePaletteForm.dtb_brightness.Value != algAttribute.brightness)
{
imagePaletteForm.dtb_brightness.Value = algAttribute.brightness;
fix = true;
}
if (imagePaletteForm.nud_brightness.Value != algAttribute.brightness)
{
imagePaletteForm.nud_brightness.Value = algAttribute.brightness;
fix = true;
}
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
public int Opacity
{
get { return algAttribute.opacity; }
set
{
if (algAttribute.brightness != value)
{
bool fix = false;
algAttribute.opacity = value;
if (imagePaletteForm.dtb_opacity.Value != algAttribute.opacity)
{
imagePaletteForm.dtb_opacity.Value = algAttribute.opacity;
fix = true;
}
if (imagePaletteForm.nud_opacity.Value != algAttribute.opacity)
{
imagePaletteForm.nud_opacity.Value = algAttribute.opacity;
fix = true;
}
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
public int ColorMax
{
get { return algAttribute.colorValue; }
set
{
if (algAttribute.colorValue != value)
{
var fix = false;
algAttribute.colorValue = value;
if(algAttribute.colorValue != imagePaletteForm.dtb_colorMax.Value)
imagePaletteForm.dtb_colorMax.Value = algAttribute.colorValue;
if (algAttribute.colorValue != imagePaletteForm.nud_colorMax.Value)
imagePaletteForm.nud_colorMax.Value = algAttribute.colorValue;
if (algAttribute.colorValue > imagePaletteForm.nud_colorMin.Value)
{
imagePaletteForm.nud_colorMin.Maximum = algAttribute.colorValue;
imagePaletteForm.dtb_colorMin.Maximum = algAttribute.colorValue;
fix = true;
}
else if(algAttribute.colorValue < imagePaletteForm.nud_colorMin.Value)
{
imagePaletteForm.nud_colorMin.Maximum = algAttribute.colorValue;
imagePaletteForm.dtb_colorMin.Maximum = algAttribute.colorValue;
imagePaletteForm.nud_colorMin.Value = algAttribute.colorValue;
fix |= true;
}
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
public int ColorMin
{
get { return algAttribute.colorMinValue; }
set
{
if (algAttribute.colorMinValue != value)
{
bool fix = false;
algAttribute.colorMinValue = value;
if (algAttribute.colorMinValue != imagePaletteForm.dtb_colorMin.Value)
{
imagePaletteForm.dtb_colorMin.Value = algAttribute.colorMinValue;
fix = true;
}
if (algAttribute.colorMinValue != imagePaletteForm.nud_colorMin.Value)
{
imagePaletteForm.nud_colorMin.Value = algAttribute.colorMinValue;
fix = true;
}
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
public int ColorIndex
{
get { return algAttribute.colorIndex; }
set
{
if (algAttribute.colorIndex != value)
{
bool fix = true;
algAttribute.colorIndex = value;
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
public bool ScientificON
{
get { return algAttribute.scientificON; }
set
{
if (algAttribute.scientificON != value)
{
bool fix = true;
algAttribute.scientificON = value;
if (fix && isUpdateAlg)
{
queueAlgAttribute.Enqueue(algAttribute);
}
}
}
}
#endregion
#endregion
public BioanalysisMannage(string _path, ReaLTaiizor.Controls.Panel _pl_right)
{
isUpdateAlg = false;
this.pl_right = _pl_right;
imagePanel = new BioanalyImagePanel();
imagePanel.TopLevel = false;
imagePanel.Show();
imagePanel.BringToFront();
imagePaletteForm = new BioanayImagePaletteForm();
imagePaletteForm.TopLevel = false;
imagePaletteForm.Dock = System.Windows.Forms.DockStyle.Fill;
this.pl_right.Controls.Add(imagePaletteForm);
imagePaletteForm.BringToFront();
imagePaletteForm.Show();
this.path = _path;
ReadTif();// 读tif档
algAttribute.brightness = 127;
algAttribute. brightnessMax = 254;
algAttribute. brightnessMin = 0;
algAttribute. opacity = 100;
algAttribute. opacityMax = 100;
algAttribute. opacityMin = 0;
algAttribute. colorValue = 65534;
algAttribute. colorMinValue = 5999;
algAttribute. colorMin = 0;
algAttribute. colorMax = 65535;
algAttribute.scientificON = false;
algAttribute.colorIndex = 0;
// 初始化控件
Init();
// 初始化执行算法
ImageAlg(algAttribute);
isalgRun = true;
algThread = new Thread(new ThreadStart(AlgRun));
algThread.IsBackground = true;
algThread.Start();
isUpdateAlg = true;// 开始可以更新算法
}
#region
private void Init()
{
imagePanel.cbb_mode.SelectedIndexChanged += Cbb_mode_SelectedIndexChanged; ;
imagePanel.cbb_mode.SelectedIndex = 0;
imagePaletteForm.dtb_brightness.Maximum = algAttribute.brightnessMax;
imagePaletteForm.dtb_brightness.Minimum = algAttribute.brightnessMin;
imagePaletteForm.dtb_brightness.Value = algAttribute.brightness;
imagePaletteForm.nud_brightness.Minimum = algAttribute.brightnessMin;
imagePaletteForm.nud_brightness.Maximum = algAttribute.brightnessMax;
imagePaletteForm.nud_brightness.Value = algAttribute.brightness;
imagePaletteForm.dtb_opacity.Maximum = algAttribute.opacityMax;
imagePaletteForm.dtb_opacity.Minimum = algAttribute.opacityMin;
imagePaletteForm.dtb_opacity.Value = algAttribute.opacity;
imagePaletteForm.nud_opacity.Maximum = algAttribute.opacityMax;
imagePaletteForm.nud_opacity.Minimum = algAttribute.opacityMin;
imagePaletteForm.nud_opacity.Value = algAttribute.opacity;
imagePaletteForm.dtb_colorMax.Maximum = algAttribute.colorMax;
imagePaletteForm.dtb_colorMax.Minimum = algAttribute.colorMin;
imagePaletteForm.dtb_colorMax.Value = algAttribute.colorValue;
imagePaletteForm.nud_colorMax.Maximum = algAttribute.colorMax;
imagePaletteForm.nud_colorMax.Minimum= algAttribute.colorMin;
imagePaletteForm.nud_colorMax.Value= algAttribute.colorValue;
imagePaletteForm.dtb_colorMin.Maximum = algAttribute.colorMin;
imagePaletteForm.dtb_colorMin.Maximum = algAttribute.colorValue;
imagePaletteForm.dtb_colorMin.Value = algAttribute.colorValue;
imagePaletteForm.nud_colorMin.Maximum = algAttribute.colorValue;
imagePaletteForm.nud_colorMin.Minimum = algAttribute.colorMin;
imagePaletteForm.nud_colorMin.Value= algAttribute.colorMinValue;
imagePaletteForm.cb_colortable.SelectedIndex = algAttribute.colorIndex;
imagePaletteForm.dtb_brightness.ValueChanged += Dtb_brightness_ValueChanged;
imagePaletteForm.dtb_opacity.ValueChanged += Dtb_opacity_ValueChanged;
imagePaletteForm.nud_brightness.ValueChanged += Nud_brightness_ValueChanged;
imagePaletteForm.nud_opacity.ValueChanged += Nud_opacity_ValueChanged;
imagePaletteForm.dtb_colorMax.ValueChanged += Dtb_colorMax_ValueChanged;
imagePaletteForm.dtb_colorMin.ValueChanged += Dtb_colorMin_ValueChanged;
imagePaletteForm.nud_colorMax.ValueChanged += Nud_colorMax_ValueChanged;
imagePaletteForm.nud_colorMin.ValueChanged += Nud_colorMin_ValueChanged;
imagePaletteForm.cb_colortable.SelectedIndexChanged += Cb_colortable_SelectedIndexChanged;
imagePanel.cb_scientific.CheckedChanged += Cb_scientific_CheckedChanged;
imagePanel.image_pl.MouseDown += Image_pl_MouseDown;
imagePanel.image_pl.DoubleClick += Image_pl_DoubleClick;
imagePanel.image_pl.MouseMove += Image_pl_MouseMove;
imagePanel.image_pl.MouseUp += Image_pl_MouseUp;
imagePanel.image_pl.Paint += Image_pl_Paint;
}
private void ReadTif()
{
string[] tifFiles = Directory.GetFiles(path, "*.tif", SearchOption.TopDirectoryOnly);
foreach (string tifFile in tifFiles)
{
if (tifFile.ToUpper().Contains("MARKER"))
{
tif_marker_path = tifFile;
image_mark_L16 = util.LoadTiffAsL16(tif_marker_path);
image_mark_byte = util.ConvertL16ImageToByteArray(image_mark_L16);
}
else
{
tif_org_path = tifFile;
image_org_L16 = util.LoadTiffAsL16(tif_org_path);
image_org_byte = util.ConvertL16ImageToByteArray(image_org_L16);
}
}
imagePanel.SetButtomLabel($"{image_mark_L16.Width} x {image_mark_L16.Height}" );
}
private void ImageAlg(AlgAttribute aatb)
{
var pseu_8bit_3_byte = new byte[image_org_byte.Length*3];
var pseu_and_mark_8bit_3_byte = new byte[image_org_byte.Length * 3];
var colorbarimage = new byte[colorbarW * colorbarH * 3];
double opacity = (aatb.opacity / 100.0);
int brightness = aatb.brightness - 127;
unsafe
{
fixed (byte* pseu_16_byte_src = image_org_byte)
{
fixed (byte* pseu_8bit_3_byte_src = pseu_8bit_3_byte)
{
fixed (byte* pseu_and_mark_8bit_3_byte_src = pseu_and_mark_8bit_3_byte)
{
fixed (byte* mark_L16_byte_src = image_mark_byte)
{
fixed (byte* colorbarimage_src = colorbarimage)
{
var ret = pbpvc.render_process(pseu_16_byte_src, mark_L16_byte_src, pseu_8bit_3_byte_src,
pseu_and_mark_8bit_3_byte_src, colorbarimage_src, aatb.colorIndex, (ushort)(colorbarW), (ushort)colorbarH, 16, (ushort)image_mark_L16.Width, (ushort)image_mark_L16.Height,
1, aatb.colorValue, aatb.colorMinValue, aatb.scientificON == true ? 1 : 0, false, (ushort)colorbarWW, (ushort)colorh_onecolor, brightness, 1.0, opacity);
if (ret != -1)
{
image_org_rgb24 = util.ConvertByteArrayToRgb24Image(pseu_8bit_3_byte, image_mark_L16.Width, (ushort)image_mark_L16.Height, 3);
image_mark_and_org_rgb24 = util.ConvertByteArrayToRgb24Image(pseu_and_mark_8bit_3_byte, image_mark_L16.Width, (ushort)image_mark_L16.Height, 3);
colorbar_rgb24_image = util.ConvertByteArrayToRgb24Image(colorbarimage, colorbarW, colorbarH, 3);
}
}
}
}
}
}
}
RefreshCbb();
}
private void AlgRun()
{
while (isalgRun)
{
if (isUpdateAlg == false) continue;
AlgAttribute? aatb = null ;
if (queueAlgAttribute.Count > 1)
{
while (queueAlgAttribute.Count>1)
{
queueAlgAttribute.Dequeue();
}
}
if (queueAlgAttribute.Count > 0)
{
aatb = queueAlgAttribute.Dequeue();
}
if (aatb !=null)
{
ImageAlg((AlgAttribute)aatb);
}
Thread.Sleep(5);
}
}
public void RefreshCbb()
{
if (imagePanel.cbb_mode.InvokeRequired)
{
imagePanel.cbb_mode.Invoke(new MethodInvoker(() =>
{
switch (imagePanel.cbb_mode.Text)
{
case "merge":
if (image_mark_and_org_rgb24 != null)
imagePanel.SetImage(image_mark_and_org_rgb24, colorbar_rgb24_image);
break;
case "mark":
if (image_mark_rgb24 != null)
imagePanel.SetImage(image_mark_rgb24, colorbar_rgb24_image);
else
imagePanel.SetImage(image_mark_L16, colorbar_rgb24_image);
break;
case "pseudocolor":
if (image_org_rgb24 != null)
imagePanel.SetImage(image_org_rgb24, colorbar_rgb24_image);
else
imagePanel.SetImage(image_org_L16);
break;
}
}));
}
else
{
switch (imagePanel.cbb_mode.Text)
{
case "merge":
if (image_mark_and_org_rgb24 != null)
imagePanel.SetImage(image_mark_and_org_rgb24, colorbar_rgb24_image);
break;
case "mark":
if (image_mark_rgb24 != null)
imagePanel.SetImage(image_mark_rgb24, colorbar_rgb24_image);
else
imagePanel.SetImage(image_mark_L16, colorbar_rgb24_image);
break;
case "pseudocolor":
if (image_org_rgb24 != null)
imagePanel.SetImage(image_org_rgb24, colorbar_rgb24_image);
else
imagePanel.SetImage(image_org_L16);
break;
}
}
}
#endregion
#region
private void Cb_scientific_CheckedChanged(object sender, AntdUI.BoolEventArgs e)
{
ScientificON = imagePanel.cb_scientific.Checked;
}
private void Cbb_mode_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(imagePanel.cbb_mode.Text == "mark")
{
imagePaletteForm.cb_colortable.SelectedIndex = 7;
}
else
{
RefreshCbb();
}
}
private void Dtb_brightness_ValueChanged()
{
Brightness = imagePaletteForm.dtb_brightness.Value;
}
private void Dtb_opacity_ValueChanged()
{
Opacity = imagePaletteForm.dtb_opacity.Value;
}
private void Nud_opacity_ValueChanged(object sender, System.EventArgs e)
{
Opacity = (int)imagePaletteForm.nud_opacity.Value;
}
private void Nud_brightness_ValueChanged(object sender, System.EventArgs e)
{
Brightness = (int)imagePaletteForm.nud_brightness.Value;
}
private void Nud_colorMin_ValueChanged(object sender, System.EventArgs e)
{
ColorMin = (int)imagePaletteForm.nud_colorMin.Value;
}
private void Nud_colorMax_ValueChanged(object sender, System.EventArgs e)
{
ColorMax = (int)imagePaletteForm.nud_colorMax.Value;
}
private void Dtb_colorMin_ValueChanged()
{
ColorMin = (int)imagePaletteForm.dtb_colorMin.Value;
}
private void Dtb_colorMax_ValueChanged()
{
ColorMax = (int)imagePaletteForm.dtb_colorMax.Value;
}
private void Cb_colortable_SelectedIndexChanged(object sender, System.EventArgs e)
{
ColorIndex = imagePaletteForm.cb_colortable.SelectedIndex;
}
#region imagepanel
private void Image_pl_Paint(object sender, PaintEventArgs e)
{
}
private void Image_pl_MouseUp(object sender, MouseEventArgs e)
{
if (isDragging && e.Button == MouseButtons.Left)
{
imagePanel.pl_bg_panel.Cursor = Cursors.Default;
}
}
private void Image_pl_MouseMove(object sender, MouseEventArgs e)
{
if (isDragging && e.Button == MouseButtons.Left)
{
int deltaX = e.X - mouseDownPosition.X;
int deltaY = e.Y - mouseDownPosition.Y;
// 仅当鼠标移动时调整位置,减少频繁重绘
if (Math.Abs(deltaX) > 1 || Math.Abs(deltaY) > 1)
{
imagePanel.pl_bg_panel.Left = pictureBoxStartPosition.X + deltaX;
imagePanel.pl_bg_panel.Top = pictureBoxStartPosition.Y + deltaY;
// 防止 pl_bg_image 拖动超出 pl_image 的范围
if (imagePanel.pl_bg_panel.Left > 0) imagePanel.pl_bg_panel.Left = 0;
if (imagePanel.pl_bg_panel.Top > 0) imagePanel.pl_bg_panel.Top = 0;
if (imagePanel.pl_bg_panel.Right < imagePanel.pl_panel_image.ClientSize.Width)
imagePanel.pl_bg_panel.Left = imagePanel.pl_panel_image.ClientSize.Width - imagePanel.pl_bg_panel.Width;
if (imagePanel.pl_bg_panel.Bottom < imagePanel.pl_panel_image.ClientSize.Height)
imagePanel.pl_bg_panel.Top = imagePanel.pl_panel_image.ClientSize.Height - imagePanel.pl_bg_panel.Height;
}
}
}
private void Image_pl_DoubleClick(object sender, System.EventArgs e)
{
}
private void Image_pl_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left && imagePanel.IsImageLargerThanPanel())
{
isDragging = true;
mouseDownPosition = e.Location;
pictureBoxStartPosition = imagePanel.pl_bg_panel.Location;
imagePanel.pl_bg_panel.Cursor = Cursors.Hand;
}
}
#endregion
#endregion
#region
public BioanalyImagePanel GetImagePanel
{
get { return imagePanel; }
}
#endregion
}
}

View File

@ -94,6 +94,7 @@ namespace PBAnaly.Module
return new System.Drawing.Point(realX, realY);
}
public static System.Drawing.Rectangle GetRealImageRectangle(PictureBox pictureBox, System.Drawing.Rectangle mouseRectangle)
{
if (pictureBox.Image == null)

View File

@ -87,6 +87,7 @@
<Compile Include="MainForm.Designer.cs">
<DependentUpon>MainForm.cs</DependentUpon>
</Compile>
<Compile Include="Module\BioanalysisMannage.cs" />
<Compile Include="Module\ImageProcess.cs" />
<Compile Include="Module\ImageToolMannage.cs" />
<Compile Include="Module\PBAnalyCommMannager.cs" />
@ -112,6 +113,18 @@
<Compile Include="UI\AnalyzeDataForm.Designer.cs">
<DependentUpon>AnalyzeDataForm.cs</DependentUpon>
</Compile>
<Compile Include="UI\BioanalyImagePanel.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="UI\BioanalyImagePanel.Designer.cs">
<DependentUpon>BioanalyImagePanel.cs</DependentUpon>
</Compile>
<Compile Include="UI\BioanayImagePaletteForm.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="UI\BioanayImagePaletteForm.Designer.cs">
<DependentUpon>BioanayImagePaletteForm.cs</DependentUpon>
</Compile>
<Compile Include="UI\colorbarControl.cs">
<SubType>UserControl</SubType>
</Compile>
@ -185,6 +198,12 @@
<EmbeddedResource Include="UI\AnalyzeDataForm.resx">
<DependentUpon>AnalyzeDataForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="UI\BioanalyImagePanel.resx">
<DependentUpon>BioanalyImagePanel.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="UI\BioanayImagePaletteForm.resx">
<DependentUpon>BioanayImagePaletteForm.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="UI\colorbarControl.resx">
<DependentUpon>colorbarControl.cs</DependentUpon>
</EmbeddedResource>

View File

@ -0,0 +1,338 @@
namespace PBAnaly.UI
{
partial class BioanalyImagePanel
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.windowBar1 = new AntdUI.WindowBar();
this.panel1 = new AntdUI.Panel();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.panel2 = new AntdUI.Panel();
this.cbb_mode = new System.Windows.Forms.ComboBox();
this.label1 = new AntdUI.Label();
this.cb_scientific = new AntdUI.Checkbox();
this.flowPanel1 = new AntdUI.FlowPanel();
this.ava_save = new AntdUI.Avatar();
this.ava_zoom_out = new AntdUI.Avatar();
this.ava__zoom_in = new AntdUI.Avatar();
this.ava_auto = new AntdUI.Avatar();
this.panel3 = new AntdUI.Panel();
this.lb_size = new AntdUI.Label();
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
this.image_pr = new AntdUI.Image3D();
this.pl_panel_image = new AntdUI.Panel();
this.pl_bg_panel = new AntdUI.Panel();
this.image_pl = new AntdUI.Image3D();
this.panel1.SuspendLayout();
this.tableLayoutPanel1.SuspendLayout();
this.panel2.SuspendLayout();
this.flowPanel1.SuspendLayout();
this.panel3.SuspendLayout();
this.tableLayoutPanel2.SuspendLayout();
this.pl_panel_image.SuspendLayout();
this.pl_bg_panel.SuspendLayout();
this.SuspendLayout();
//
// windowBar1
//
this.windowBar1.BackColor = System.Drawing.SystemColors.ActiveCaptionText;
this.windowBar1.Dock = System.Windows.Forms.DockStyle.Top;
this.windowBar1.ForeColor = System.Drawing.SystemColors.ButtonFace;
this.windowBar1.IsMax = false;
this.windowBar1.Location = new System.Drawing.Point(3, 3);
this.windowBar1.Name = "windowBar1";
this.windowBar1.ShowIcon = false;
this.windowBar1.Size = new System.Drawing.Size(352, 23);
this.windowBar1.TabIndex = 0;
this.windowBar1.Text = " ";
this.windowBar1.UseSystemStyleColor = true;
//
// panel1
//
this.panel1.Controls.Add(this.tableLayoutPanel1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(3, 26);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(352, 23);
this.panel1.TabIndex = 1;
this.panel1.Text = "panel1";
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 4;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 131F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 69F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 125F));
this.tableLayoutPanel1.Controls.Add(this.panel2, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.cb_scientific, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.flowPanel1, 3, 0);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 1;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(352, 23);
this.tableLayoutPanel1.TabIndex = 0;
//
// panel2
//
this.panel2.Controls.Add(this.cbb_mode);
this.panel2.Controls.Add(this.label1);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(0, 0);
this.panel2.Margin = new System.Windows.Forms.Padding(0);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(131, 23);
this.panel2.TabIndex = 0;
this.panel2.Text = "panel2";
//
// cbb_mode
//
this.cbb_mode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbb_mode.FormattingEnabled = true;
this.cbb_mode.Items.AddRange(new object[] {
"merge",
"mark",
"pseudocolor"});
this.cbb_mode.Location = new System.Drawing.Point(45, 1);
this.cbb_mode.Name = "cbb_mode";
this.cbb_mode.Size = new System.Drawing.Size(83, 20);
this.cbb_mode.TabIndex = 1;
//
// label1
//
this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
this.label1.Location = new System.Drawing.Point(3, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(36, 23);
this.label1.TabIndex = 0;
this.label1.Text = "模式:";
//
// cb_scientific
//
this.cb_scientific.AutoCheck = true;
this.cb_scientific.Location = new System.Drawing.Point(134, 3);
this.cb_scientific.Name = "cb_scientific";
this.cb_scientific.Size = new System.Drawing.Size(63, 17);
this.cb_scientific.TabIndex = 1;
this.cb_scientific.Text = "光子数";
//
// flowPanel1
//
this.flowPanel1.Controls.Add(this.ava_save);
this.flowPanel1.Controls.Add(this.ava_zoom_out);
this.flowPanel1.Controls.Add(this.ava__zoom_in);
this.flowPanel1.Controls.Add(this.ava_auto);
this.flowPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.flowPanel1.Location = new System.Drawing.Point(227, 0);
this.flowPanel1.Margin = new System.Windows.Forms.Padding(0);
this.flowPanel1.Name = "flowPanel1";
this.flowPanel1.Size = new System.Drawing.Size(125, 23);
this.flowPanel1.TabIndex = 2;
this.flowPanel1.Text = "flowPanel1";
//
// ava_save
//
this.ava_save.Cursor = System.Windows.Forms.Cursors.Hand;
this.ava_save.Image = global::PBAnaly.Properties.Resources.;
this.ava_save.ImageFit = AntdUI.TFit.Contain;
this.ava_save.Location = new System.Drawing.Point(96, 3);
this.ava_save.Name = "ava_save";
this.ava_save.Size = new System.Drawing.Size(25, 17);
this.ava_save.TabIndex = 6;
this.ava_save.Text = "a";
//
// ava_zoom_out
//
this.ava_zoom_out.Cursor = System.Windows.Forms.Cursors.Hand;
this.ava_zoom_out.Image = global::PBAnaly.Properties.Resources.;
this.ava_zoom_out.ImageFit = AntdUI.TFit.Contain;
this.ava_zoom_out.Location = new System.Drawing.Point(65, 3);
this.ava_zoom_out.Name = "ava_zoom_out";
this.ava_zoom_out.Size = new System.Drawing.Size(25, 17);
this.ava_zoom_out.TabIndex = 5;
this.ava_zoom_out.Text = "a";
this.ava_zoom_out.Click += new System.EventHandler(this.ava_zoom_out_Click);
//
// ava__zoom_in
//
this.ava__zoom_in.Cursor = System.Windows.Forms.Cursors.Hand;
this.ava__zoom_in.Image = global::PBAnaly.Properties.Resources.;
this.ava__zoom_in.ImageFit = AntdUI.TFit.Contain;
this.ava__zoom_in.Location = new System.Drawing.Point(34, 3);
this.ava__zoom_in.Name = "ava__zoom_in";
this.ava__zoom_in.Size = new System.Drawing.Size(25, 17);
this.ava__zoom_in.TabIndex = 4;
this.ava__zoom_in.Text = "";
this.ava__zoom_in.Click += new System.EventHandler(this.ava__zoom_in_Click);
//
// ava_auto
//
this.ava_auto.Cursor = System.Windows.Forms.Cursors.Hand;
this.ava_auto.HandCursor = System.Windows.Forms.Cursors.IBeam;
this.ava_auto.Image = global::PBAnaly.Properties.Resources.;
this.ava_auto.ImageFit = AntdUI.TFit.Contain;
this.ava_auto.Location = new System.Drawing.Point(3, 3);
this.ava_auto.Name = "ava_auto";
this.ava_auto.Size = new System.Drawing.Size(25, 17);
this.ava_auto.TabIndex = 3;
this.ava_auto.Text = "a";
this.ava_auto.Click += new System.EventHandler(this.ava_auto_Click);
//
// panel3
//
this.panel3.Controls.Add(this.lb_size);
this.panel3.Dock = System.Windows.Forms.DockStyle.Bottom;
this.panel3.Location = new System.Drawing.Point(3, 292);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(352, 13);
this.panel3.TabIndex = 2;
this.panel3.Text = "panel3";
//
// lb_size
//
this.lb_size.BackColor = System.Drawing.SystemColors.ControlLight;
this.lb_size.Dock = System.Windows.Forms.DockStyle.Fill;
this.lb_size.Location = new System.Drawing.Point(0, 0);
this.lb_size.Margin = new System.Windows.Forms.Padding(0, 0, 0, 0);
this.lb_size.Name = "lb_size";
this.lb_size.Size = new System.Drawing.Size(352, 13);
this.lb_size.TabIndex = 0;
this.lb_size.Text = "800x600";
this.lb_size.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// tableLayoutPanel2
//
this.tableLayoutPanel2.ColumnCount = 2;
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 66F));
this.tableLayoutPanel2.Controls.Add(this.image_pr, 1, 0);
this.tableLayoutPanel2.Controls.Add(this.pl_panel_image, 0, 0);
this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel2.Location = new System.Drawing.Point(3, 49);
this.tableLayoutPanel2.Name = "tableLayoutPanel2";
this.tableLayoutPanel2.RowCount = 1;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(352, 243);
this.tableLayoutPanel2.TabIndex = 3;
//
// image_pr
//
this.image_pr.Dock = System.Windows.Forms.DockStyle.Fill;
this.image_pr.Duration = 0;
this.image_pr.ImageFit = AntdUI.TFit.Fill;
this.image_pr.Location = new System.Drawing.Point(289, 3);
this.image_pr.Name = "image_pr";
this.image_pr.Size = new System.Drawing.Size(60, 237);
this.image_pr.Speed = 1;
this.image_pr.TabIndex = 1;
this.image_pr.Text = "image3D1";
//
// pl_panel_image
//
this.pl_panel_image.Back = System.Drawing.Color.FromArgb(((int)(((byte)(6)))), ((int)(((byte)(6)))), ((int)(((byte)(6)))));
this.pl_panel_image.Controls.Add(this.pl_bg_panel);
this.pl_panel_image.Dock = System.Windows.Forms.DockStyle.Fill;
this.pl_panel_image.Location = new System.Drawing.Point(3, 3);
this.pl_panel_image.Name = "pl_panel_image";
this.pl_panel_image.Size = new System.Drawing.Size(280, 237);
this.pl_panel_image.TabIndex = 0;
this.pl_panel_image.Text = "panel4";
//
// pl_bg_panel
//
this.pl_bg_panel.Controls.Add(this.image_pl);
this.pl_bg_panel.Location = new System.Drawing.Point(0, 0);
this.pl_bg_panel.Name = "pl_bg_panel";
this.pl_bg_panel.Size = new System.Drawing.Size(223, 185);
this.pl_bg_panel.TabIndex = 0;
this.pl_bg_panel.Text = "panel4";
//
// image_pl
//
this.image_pl.Dock = System.Windows.Forms.DockStyle.Fill;
this.image_pl.Duration = 0;
this.image_pl.ImageFit = AntdUI.TFit.Fill;
this.image_pl.Location = new System.Drawing.Point(0, 0);
this.image_pl.Name = "image_pl";
this.image_pl.Size = new System.Drawing.Size(223, 185);
this.image_pl.Speed = 1;
this.image_pl.TabIndex = 0;
this.image_pl.Text = "image3D1";
//
// BioanalyImagePanel
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(358, 308);
this.Controls.Add(this.tableLayoutPanel2);
this.Controls.Add(this.panel3);
this.Controls.Add(this.panel1);
this.Controls.Add(this.windowBar1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Name = "BioanalyImagePanel";
this.Padding = new System.Windows.Forms.Padding(3);
this.Text = "BioanalyImagePanel";
this.MouseEnter += new System.EventHandler(this.BioanalyImagePanel_MouseEnter);
this.panel1.ResumeLayout(false);
this.tableLayoutPanel1.ResumeLayout(false);
this.panel2.ResumeLayout(false);
this.flowPanel1.ResumeLayout(false);
this.panel3.ResumeLayout(false);
this.tableLayoutPanel2.ResumeLayout(false);
this.pl_panel_image.ResumeLayout(false);
this.pl_bg_panel.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private AntdUI.WindowBar windowBar1;
private AntdUI.Panel panel1;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private AntdUI.Panel panel2;
private AntdUI.Label label1;
private AntdUI.FlowPanel flowPanel1;
private AntdUI.Avatar ava_auto;
private AntdUI.Panel panel3;
private AntdUI.Label lb_size;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
public System.Windows.Forms.ComboBox cbb_mode;
private AntdUI.Image3D image_pr;
public AntdUI.Checkbox cb_scientific;
public AntdUI.Avatar ava_save;
public AntdUI.Avatar ava_zoom_out;
public AntdUI.Avatar ava__zoom_in;
public AntdUI.Panel pl_bg_panel;
public AntdUI.Image3D image_pl;
public AntdUI.Panel pl_panel_image;
}
}

View File

@ -0,0 +1,250 @@
using PBAnaly.Module;
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.PixelFormats;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace PBAnaly.UI
{
public partial class BioanalyImagePanel : Form
{
#region Key
private const int WM_NCHITTEST = 0x84;
private const int HTCLIENT = 0x1;
private const int HTCAPTION = 0x2;
private const int HTLEFT = 0x10;
private const int HTRIGHT = 0x11;
private const int HTTOP = 0x12;
private const int HTTOPLEFT = 0x13;
private const int HTTOPRIGHT = 0x14;
private const int HTBOTTOM = 0x15;
private const int HTBOTTOMLEFT = 0x16;
private const int HTBOTTOMRIGHT = 0x17;
#endregion
private const float ZoomMaxFactor = 2.0f;
private const float ZoomMinFactor = 1.2f;
private const float ZoomFactor = 1.2f;
private float currentZoom = 1.0f;
public BioanalyImagePanel()
{
InitializeComponent();
this.FormBorderStyle = FormBorderStyle.None;
pl_bg_panel.Dock = DockStyle.None;
pl_bg_panel.Location = new System.Drawing.Point(pl_panel_image.Location.X, pl_panel_image.Location.Y);
pl_bg_panel.Width = pl_panel_image.Width;
pl_bg_panel.Height = pl_panel_image.Height;
CenterPictureBox();
image_pl.MouseWheel += Image_pl_MouseWheel;
}
#region
public void SetButtomLabel(string value)
{
lb_size.Text = value;
}
public void SetImage(Image<L16> image)
{
if (image_pl.InvokeRequired)
{
image_pl.Invoke(new MethodInvoker(() =>
{
image_pl.Image = util.ConvertL16ToBitmap(image);
}));
}
else
{
image_pl.Image = util.ConvertL16ToBitmap(image);
}
}
public void SetImage(Image<L16> image, Image<Rgb24> colorbar)
{
if (image_pl.InvokeRequired)
{
image_pl.Invoke(new MethodInvoker(() =>
{
image_pl.Image = util.ConvertL16ToBitmap(image);
image_pr.Image = util.ConvertRgb24ImageToBitmap(colorbar);
}));
}
else
{
image_pl.Image = util.ConvertL16ToBitmap(image);
image_pr.Image = util.ConvertRgb24ImageToBitmap(colorbar);
}
}
public void SetImage(Image<Rgb24> image)
{
if (image_pl.InvokeRequired)
{
image_pl.Invoke(new MethodInvoker(() =>
{
image_pl.Image = util.ConvertRgb24ImageToBitmap(image);
}));
}
else
{
image_pl.Image = util.ConvertRgb24ImageToBitmap(image);
}
}
public void SetImage(Image<Rgb24> image, Image<Rgb24> colorbar)
{
if (image_pl.InvokeRequired)
{
image_pl.Invoke(new MethodInvoker(() =>
{
image_pl.Image = util.ConvertRgb24ImageToBitmap(image);
image_pr.Image = util.ConvertRgb24ImageToBitmap(colorbar);
}));
}
else
{
image_pl.Image = util.ConvertRgb24ImageToBitmap(image);
image_pr.Image = util.ConvertRgb24ImageToBitmap(colorbar);
}
}
public bool IsImageLargerThanPanel()
{
return pl_bg_panel.Width > pl_panel_image.ClientSize.Width || pl_bg_panel.Height > pl_panel_image.ClientSize.Height;
}
#endregion
#region WndProc
protected override void WndProc(ref Message m)
{
switch (m.Msg)
{
case WM_NCHITTEST:
base.WndProc(ref m);
System.Drawing.Point pos = this.PointToClient(new System.Drawing.Point(m.LParam.ToInt32() & 0xFFFF, m.LParam.ToInt32() >> 16));
if (pos.X < 10)
{
if (pos.Y < 10) m.Result = (IntPtr)HTTOPLEFT;
else if (pos.Y > this.ClientSize.Height - 10) m.Result = (IntPtr)HTBOTTOMLEFT;
else m.Result = (IntPtr)HTLEFT;
}
else if (pos.X > this.ClientSize.Width - 10)
{
if (pos.Y < 10) m.Result = (IntPtr)HTTOPRIGHT;
else if (pos.Y > this.ClientSize.Height - 10) m.Result = (IntPtr)HTBOTTOMRIGHT;
else m.Result = (IntPtr)HTRIGHT;
}
else if (pos.Y < 10)
{
m.Result = (IntPtr)HTTOP;
}
else if (pos.Y > this.ClientSize.Height - 10)
{
m.Result = (IntPtr)HTBOTTOM;
}
break;
default:
base.WndProc(ref m);
break;
}
}
#endregion
#region
private void ava_auto_Click(object sender, EventArgs e)
{
pl_bg_panel.Location = new System.Drawing.Point(pl_panel_image.Location.X, pl_panel_image.Location.Y);
pl_bg_panel.Width = pl_panel_image.Width;
pl_bg_panel.Height = pl_panel_image.Height;
CenterPictureBox();
}
private void ava__zoom_in_Click(object sender, EventArgs e)
{
ZoomPictureBox(ZoomFactor);
}
private void ava_zoom_out_Click(object sender, EventArgs e)
{
ZoomPictureBox(1 / ZoomFactor);
}
private void Image_pl_MouseWheel(object sender, MouseEventArgs e)
{
if (e.Delta > 0)
{
// 滚轮向上,放大图片
ZoomPictureBox(ZoomFactor);
}
else if (e.Delta < 0)
{
ZoomPictureBox(1 / ZoomFactor);
}
}
#endregion
#region
public void CenterPictureBox()
{
// 设置 pl_bg_image 的位置,使其在 pl_image 中居中
pl_bg_panel.Left = (pl_panel_image.ClientSize.Width - pl_bg_panel.Width) / 2;
pl_bg_panel.Top = (pl_panel_image.ClientSize.Height - pl_bg_panel.Height) / 2;
//// 防止图片超过panel的边界
if (pl_bg_panel.Left < 0) pl_bg_panel.Left = 0;
if (pl_bg_panel.Top < 0) pl_bg_panel.Top = 0;
}
private void ZoomPictureBox(float factor)
{
currentZoom *= factor;
int w = (int)(pl_bg_panel.Width * factor);
int h = (int)(pl_bg_panel.Height * factor);
if (w < pl_panel_image.Width || h < pl_panel_image.Height)
{
w = pl_panel_image.Width;
h = pl_panel_image.Height;
}
if (w > pl_panel_image.Width * 5 || h > pl_panel_image.Height * 5)
{
w = pl_panel_image.Width * 5;
h = pl_panel_image.Height * 5;
}
// 按照缩放比例调整pl_bg_image的宽度和高度
pl_bg_panel.Width = w;
pl_bg_panel.Height = h;
// 调用方法使PB_image在pl_image中居中
CenterPictureBox();
}
#endregion
private void BioanalyImagePanel_MouseEnter(object sender, EventArgs e)
{
}
}
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -0,0 +1,743 @@
namespace PBAnaly.UI
{
partial class BioanayImagePaletteForm
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.fb_fixSetting = new ReaLTaiizor.Controls.FoxButton();
this.foxLabel7 = new ReaLTaiizor.Controls.FoxLabel();
this.ftb_h = new ReaLTaiizor.Controls.FoxTextBox();
this.foxLabel5 = new ReaLTaiizor.Controls.FoxLabel();
this.ftb_w = new ReaLTaiizor.Controls.FoxTextBox();
this.foxLabel8 = new ReaLTaiizor.Controls.FoxLabel();
this.flb_act_mm = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel9 = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel6 = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel2 = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel3 = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel1 = new ReaLTaiizor.Controls.FoxLabel();
this.foxLabel4 = new ReaLTaiizor.Controls.FoxLabel();
this.hpb_line = new ReaLTaiizor.Controls.HopePictureBox();
this.hpb_wand = new ReaLTaiizor.Controls.HopePictureBox();
this.hpb_xianduan = new ReaLTaiizor.Controls.HopePictureBox();
this.ftb_r = new ReaLTaiizor.Controls.FoxTextBox();
this.hpb_rect = new ReaLTaiizor.Controls.HopePictureBox();
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
this.hpb_circe = new ReaLTaiizor.Controls.HopePictureBox();
this.panel2 = new AntdUI.Panel();
this.collapseItem2 = new AntdUI.CollapseItem();
this.cb_colortable = new System.Windows.Forms.ComboBox();
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
this.nud_brightness = new System.Windows.Forms.NumericUpDown();
this.dtb_colorMax = new ReaLTaiizor.Controls.DungeonTrackBar();
this.dtb_colorMin = new ReaLTaiizor.Controls.DungeonTrackBar();
this.dtb_opacity = new ReaLTaiizor.Controls.DungeonTrackBar();
this.pb_bgimage = new System.Windows.Forms.PictureBox();
this.dtb_brightness = new ReaLTaiizor.Controls.DungeonTrackBar();
this.panel1 = new AntdUI.Panel();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.collapseItem1 = new AntdUI.CollapseItem();
this.cll_panel = new AntdUI.Collapse();
this.collapseItem3 = new AntdUI.CollapseItem();
this.nud_opacity = new System.Windows.Forms.NumericUpDown();
this.nud_colorMin = new System.Windows.Forms.NumericUpDown();
this.nud_colorMax = new System.Windows.Forms.NumericUpDown();
((System.ComponentModel.ISupportInitialize)(this.hpb_line)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_wand)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_xianduan)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_rect)).BeginInit();
this.tableLayoutPanel3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.hpb_circe)).BeginInit();
this.panel2.SuspendLayout();
this.collapseItem2.SuspendLayout();
this.tableLayoutPanel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nud_brightness)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pb_bgimage)).BeginInit();
this.panel1.SuspendLayout();
this.tableLayoutPanel1.SuspendLayout();
this.collapseItem1.SuspendLayout();
this.cll_panel.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nud_opacity)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nud_colorMin)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nud_colorMax)).BeginInit();
this.SuspendLayout();
//
// fb_fixSetting
//
this.fb_fixSetting.BackColor = System.Drawing.Color.Transparent;
this.fb_fixSetting.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
this.fb_fixSetting.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(193)))), ((int)(((byte)(193)))), ((int)(((byte)(193)))));
this.fb_fixSetting.Cursor = System.Windows.Forms.Cursors.Hand;
this.fb_fixSetting.DisabledBaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(249)))), ((int)(((byte)(249)))), ((int)(((byte)(249)))));
this.fb_fixSetting.DisabledBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(209)))), ((int)(((byte)(209)))), ((int)(((byte)(209)))));
this.fb_fixSetting.DisabledTextColor = System.Drawing.Color.FromArgb(((int)(((byte)(166)))), ((int)(((byte)(178)))), ((int)(((byte)(190)))));
this.fb_fixSetting.DownColor = System.Drawing.Color.FromArgb(((int)(((byte)(232)))), ((int)(((byte)(232)))), ((int)(((byte)(232)))));
this.fb_fixSetting.EnabledCalc = true;
this.fb_fixSetting.Font = new System.Drawing.Font("Segoe UI", 10F);
this.fb_fixSetting.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(78)))), ((int)(((byte)(90)))));
this.fb_fixSetting.Location = new System.Drawing.Point(120, 30);
this.fb_fixSetting.Name = "fb_fixSetting";
this.fb_fixSetting.OverColor = System.Drawing.Color.FromArgb(((int)(((byte)(242)))), ((int)(((byte)(242)))), ((int)(((byte)(242)))));
this.fb_fixSetting.Size = new System.Drawing.Size(59, 31);
this.fb_fixSetting.TabIndex = 6;
this.fb_fixSetting.Text = "修改";
this.fb_fixSetting.Visible = false;
//
// foxLabel7
//
this.foxLabel7.BackColor = System.Drawing.Color.Transparent;
this.foxLabel7.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.foxLabel7.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel7.Location = new System.Drawing.Point(120, 5);
this.foxLabel7.Name = "foxLabel7";
this.foxLabel7.Size = new System.Drawing.Size(26, 19);
this.foxLabel7.TabIndex = 4;
this.foxLabel7.Text = "r=";
//
// ftb_h
//
this.ftb_h.BackColor = System.Drawing.Color.Transparent;
this.ftb_h.Cursor = System.Windows.Forms.Cursors.Hand;
this.ftb_h.EnabledCalc = true;
this.ftb_h.Font = new System.Drawing.Font("Segoe UI", 10F);
this.ftb_h.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(78)))), ((int)(((byte)(90)))));
this.ftb_h.Location = new System.Drawing.Point(34, 28);
this.ftb_h.MaxLength = 32767;
this.ftb_h.MultiLine = false;
this.ftb_h.Name = "ftb_h";
this.ftb_h.ReadOnly = false;
this.ftb_h.Size = new System.Drawing.Size(75, 22);
this.ftb_h.TabIndex = 3;
this.ftb_h.Text = "20";
this.ftb_h.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.ftb_h.UseSystemPasswordChar = false;
//
// foxLabel5
//
this.foxLabel5.BackColor = System.Drawing.Color.Transparent;
this.foxLabel5.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.foxLabel5.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel5.Location = new System.Drawing.Point(3, 31);
this.foxLabel5.Name = "foxLabel5";
this.foxLabel5.Size = new System.Drawing.Size(26, 19);
this.foxLabel5.TabIndex = 2;
this.foxLabel5.Text = "h=";
//
// ftb_w
//
this.ftb_w.BackColor = System.Drawing.Color.Transparent;
this.ftb_w.Cursor = System.Windows.Forms.Cursors.Hand;
this.ftb_w.EnabledCalc = true;
this.ftb_w.Font = new System.Drawing.Font("Segoe UI", 10F);
this.ftb_w.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(78)))), ((int)(((byte)(90)))));
this.ftb_w.Location = new System.Drawing.Point(34, 0);
this.ftb_w.MaxLength = 32767;
this.ftb_w.MultiLine = false;
this.ftb_w.Name = "ftb_w";
this.ftb_w.ReadOnly = false;
this.ftb_w.Size = new System.Drawing.Size(75, 22);
this.ftb_w.TabIndex = 1;
this.ftb_w.Text = "20";
this.ftb_w.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.ftb_w.UseSystemPasswordChar = false;
//
// foxLabel8
//
this.foxLabel8.BackColor = System.Drawing.Color.Transparent;
this.tableLayoutPanel2.SetColumnSpan(this.foxLabel8, 4);
this.foxLabel8.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel8.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel8.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel8.Location = new System.Drawing.Point(3, 166);
this.foxLabel8.Name = "foxLabel8";
this.foxLabel8.Size = new System.Drawing.Size(204, 18);
this.foxLabel8.TabIndex = 34;
this.foxLabel8.Text = "Color Rable";
//
// flb_act_mm
//
this.flb_act_mm.BackColor = System.Drawing.Color.Transparent;
this.flb_act_mm.Dock = System.Windows.Forms.DockStyle.Fill;
this.flb_act_mm.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.flb_act_mm.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.flb_act_mm.Location = new System.Drawing.Point(93, 137);
this.flb_act_mm.Name = "flb_act_mm";
this.flb_act_mm.Size = new System.Drawing.Size(114, 23);
this.flb_act_mm.TabIndex = 30;
this.flb_act_mm.Text = "0 mm";
//
// foxLabel9
//
this.foxLabel9.BackColor = System.Drawing.Color.Transparent;
this.foxLabel9.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel9.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel9.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel9.Location = new System.Drawing.Point(3, 108);
this.foxLabel9.Name = "foxLabel9";
this.foxLabel9.Size = new System.Drawing.Size(44, 23);
this.foxLabel9.TabIndex = 18;
this.foxLabel9.Text = "Max";
//
// foxLabel6
//
this.foxLabel6.BackColor = System.Drawing.Color.Transparent;
this.foxLabel6.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel6.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel6.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel6.Location = new System.Drawing.Point(3, 79);
this.foxLabel6.Name = "foxLabel6";
this.foxLabel6.Size = new System.Drawing.Size(44, 23);
this.foxLabel6.TabIndex = 13;
this.foxLabel6.Text = "Min";
//
// foxLabel2
//
this.foxLabel2.BackColor = System.Drawing.Color.Transparent;
this.foxLabel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel2.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel2.Location = new System.Drawing.Point(3, 61);
this.foxLabel2.Name = "foxLabel2";
this.foxLabel2.Size = new System.Drawing.Size(44, 12);
this.foxLabel2.TabIndex = 10;
this.foxLabel2.Text = "色阶";
//
// foxLabel3
//
this.foxLabel3.BackColor = System.Drawing.Color.Transparent;
this.foxLabel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel3.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel3.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel3.Location = new System.Drawing.Point(3, 32);
this.foxLabel3.Name = "foxLabel3";
this.foxLabel3.Size = new System.Drawing.Size(44, 23);
this.foxLabel3.TabIndex = 6;
this.foxLabel3.Text = "透明度::";
//
// foxLabel1
//
this.foxLabel1.BackColor = System.Drawing.Color.Transparent;
this.foxLabel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.foxLabel1.Font = new System.Drawing.Font("宋体", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.foxLabel1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel1.Location = new System.Drawing.Point(3, 3);
this.foxLabel1.Name = "foxLabel1";
this.foxLabel1.Size = new System.Drawing.Size(44, 23);
this.foxLabel1.TabIndex = 1;
this.foxLabel1.Text = "亮度:";
//
// foxLabel4
//
this.foxLabel4.BackColor = System.Drawing.Color.Transparent;
this.foxLabel4.Font = new System.Drawing.Font("Segoe UI", 10F, System.Drawing.FontStyle.Bold);
this.foxLabel4.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(76)))), ((int)(((byte)(88)))), ((int)(((byte)(100)))));
this.foxLabel4.Location = new System.Drawing.Point(3, 3);
this.foxLabel4.Name = "foxLabel4";
this.foxLabel4.Size = new System.Drawing.Size(26, 19);
this.foxLabel4.TabIndex = 0;
this.foxLabel4.Text = "w=";
//
// hpb_line
//
this.hpb_line.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(196)))), ((int)(((byte)(204)))));
this.hpb_line.Dock = System.Windows.Forms.DockStyle.Fill;
this.hpb_line.Image = global::PBAnaly.Properties.Resources.线;
this.hpb_line.Location = new System.Drawing.Point(3, 137);
this.hpb_line.Name = "hpb_line";
this.hpb_line.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_line.Size = new System.Drawing.Size(44, 23);
this.hpb_line.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_line.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_line.TabIndex = 9;
this.hpb_line.TabStop = false;
this.hpb_line.TextRenderingType = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
//
// hpb_wand
//
this.hpb_wand.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(196)))), ((int)(((byte)(204)))));
this.hpb_wand.Image = global::PBAnaly.Properties.Resources._魔法_魔术_一键;
this.hpb_wand.Location = new System.Drawing.Point(105, 3);
this.hpb_wand.Name = "hpb_wand";
this.hpb_wand.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_wand.Size = new System.Drawing.Size(28, 27);
this.hpb_wand.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_wand.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_wand.TabIndex = 13;
this.hpb_wand.TabStop = false;
this.hpb_wand.TextRenderingType = System.Drawing.Text.TextRenderingHint.SystemDefault;
//
// hpb_xianduan
//
this.hpb_xianduan.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(196)))), ((int)(((byte)(204)))));
this.hpb_xianduan.Image = global::PBAnaly.Properties.Resources.线__1_;
this.hpb_xianduan.Location = new System.Drawing.Point(71, 3);
this.hpb_xianduan.Name = "hpb_xianduan";
this.hpb_xianduan.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_xianduan.Size = new System.Drawing.Size(28, 27);
this.hpb_xianduan.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_xianduan.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_xianduan.TabIndex = 12;
this.hpb_xianduan.TabStop = false;
this.hpb_xianduan.TextRenderingType = System.Drawing.Text.TextRenderingHint.SystemDefault;
//
// ftb_r
//
this.ftb_r.BackColor = System.Drawing.Color.Transparent;
this.ftb_r.Cursor = System.Windows.Forms.Cursors.Hand;
this.ftb_r.EnabledCalc = true;
this.ftb_r.Font = new System.Drawing.Font("Segoe UI", 10F);
this.ftb_r.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(66)))), ((int)(((byte)(78)))), ((int)(((byte)(90)))));
this.ftb_r.Location = new System.Drawing.Point(151, 2);
this.ftb_r.MaxLength = 32767;
this.ftb_r.MultiLine = false;
this.ftb_r.Name = "ftb_r";
this.ftb_r.ReadOnly = false;
this.ftb_r.Size = new System.Drawing.Size(75, 22);
this.ftb_r.TabIndex = 5;
this.ftb_r.Text = "10";
this.ftb_r.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
this.ftb_r.UseSystemPasswordChar = false;
//
// hpb_rect
//
this.hpb_rect.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(196)))), ((int)(((byte)(204)))));
this.hpb_rect.Dock = System.Windows.Forms.DockStyle.Fill;
this.hpb_rect.Image = global::PBAnaly.Properties.Resources._10矩形;
this.hpb_rect.Location = new System.Drawing.Point(2, 2);
this.hpb_rect.Margin = new System.Windows.Forms.Padding(2);
this.hpb_rect.Name = "hpb_rect";
this.hpb_rect.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_rect.Size = new System.Drawing.Size(30, 30);
this.hpb_rect.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_rect.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_rect.TabIndex = 10;
this.hpb_rect.TabStop = false;
this.hpb_rect.TextRenderingType = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
//
// tableLayoutPanel3
//
this.tableLayoutPanel3.ColumnCount = 5;
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel3.Controls.Add(this.hpb_wand, 3, 0);
this.tableLayoutPanel3.Controls.Add(this.hpb_xianduan, 2, 0);
this.tableLayoutPanel3.Controls.Add(this.hpb_circe, 1, 0);
this.tableLayoutPanel3.Controls.Add(this.hpb_rect, 0, 0);
this.tableLayoutPanel3.Controls.Add(this.panel2, 0, 1);
this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel3.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel3.Margin = new System.Windows.Forms.Padding(0);
this.tableLayoutPanel3.Name = "tableLayoutPanel3";
this.tableLayoutPanel3.RowCount = 2;
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel3.Size = new System.Drawing.Size(268, 113);
this.tableLayoutPanel3.TabIndex = 0;
//
// hpb_circe
//
this.hpb_circe.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(196)))), ((int)(((byte)(204)))));
this.hpb_circe.Image = global::PBAnaly.Properties.Resources.1;
this.hpb_circe.Location = new System.Drawing.Point(37, 3);
this.hpb_circe.Name = "hpb_circe";
this.hpb_circe.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_circe.Size = new System.Drawing.Size(28, 27);
this.hpb_circe.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_circe.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_circe.TabIndex = 11;
this.hpb_circe.TabStop = false;
this.hpb_circe.TextRenderingType = System.Drawing.Text.TextRenderingHint.SystemDefault;
//
// panel2
//
this.tableLayoutPanel3.SetColumnSpan(this.panel2, 5);
this.panel2.Controls.Add(this.fb_fixSetting);
this.panel2.Controls.Add(this.ftb_r);
this.panel2.Controls.Add(this.foxLabel7);
this.panel2.Controls.Add(this.ftb_h);
this.panel2.Controls.Add(this.foxLabel5);
this.panel2.Controls.Add(this.ftb_w);
this.panel2.Controls.Add(this.foxLabel4);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(3, 37);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(262, 73);
this.panel2.TabIndex = 14;
this.panel2.Text = "panel2";
//
// collapseItem2
//
this.collapseItem2.Controls.Add(this.tableLayoutPanel3);
this.collapseItem2.Location = new System.Drawing.Point(-268, -113);
this.collapseItem2.Name = "collapseItem2";
this.collapseItem2.Size = new System.Drawing.Size(268, 113);
this.collapseItem2.TabIndex = 1;
this.collapseItem2.Text = "ROI工具";
//
// cb_colortable
//
this.tableLayoutPanel2.SetColumnSpan(this.cb_colortable, 3);
this.cb_colortable.Dock = System.Windows.Forms.DockStyle.Fill;
this.cb_colortable.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cb_colortable.FormattingEnabled = true;
this.cb_colortable.Items.AddRange(new object[] {
"YellowHot",
"Black_Red",
"Black_Green",
"Black_Blue",
"Black_Yley",
"RGB",
"Pseudo",
"Gray"});
this.cb_colortable.Location = new System.Drawing.Point(3, 190);
this.cb_colortable.Name = "cb_colortable";
this.cb_colortable.Size = new System.Drawing.Size(84, 20);
this.cb_colortable.TabIndex = 35;
//
// tableLayoutPanel2
//
this.tableLayoutPanel2.ColumnCount = 5;
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 50F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 50F));
this.tableLayoutPanel2.Controls.Add(this.nud_colorMax, 4, 4);
this.tableLayoutPanel2.Controls.Add(this.nud_colorMin, 4, 3);
this.tableLayoutPanel2.Controls.Add(this.nud_opacity, 4, 1);
this.tableLayoutPanel2.Controls.Add(this.nud_brightness, 4, 0);
this.tableLayoutPanel2.Controls.Add(this.dtb_colorMax, 1, 4);
this.tableLayoutPanel2.Controls.Add(this.dtb_colorMin, 1, 3);
this.tableLayoutPanel2.Controls.Add(this.dtb_opacity, 1, 1);
this.tableLayoutPanel2.Controls.Add(this.foxLabel8, 0, 6);
this.tableLayoutPanel2.Controls.Add(this.flb_act_mm, 3, 5);
this.tableLayoutPanel2.Controls.Add(this.foxLabel9, 0, 4);
this.tableLayoutPanel2.Controls.Add(this.foxLabel6, 0, 3);
this.tableLayoutPanel2.Controls.Add(this.foxLabel2, 0, 2);
this.tableLayoutPanel2.Controls.Add(this.foxLabel3, 0, 1);
this.tableLayoutPanel2.Controls.Add(this.foxLabel1, 0, 0);
this.tableLayoutPanel2.Controls.Add(this.hpb_line, 0, 5);
this.tableLayoutPanel2.Controls.Add(this.cb_colortable, 0, 7);
this.tableLayoutPanel2.Controls.Add(this.pb_bgimage, 3, 7);
this.tableLayoutPanel2.Controls.Add(this.dtb_brightness, 1, 0);
this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel2.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel2.Margin = new System.Windows.Forms.Padding(0);
this.tableLayoutPanel2.Name = "tableLayoutPanel2";
this.tableLayoutPanel2.RowCount = 9;
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 18F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 24F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel2.Size = new System.Drawing.Size(260, 272);
this.tableLayoutPanel2.TabIndex = 0;
//
// nud_brightness
//
this.nud_brightness.Dock = System.Windows.Forms.DockStyle.Fill;
this.nud_brightness.Location = new System.Drawing.Point(213, 3);
this.nud_brightness.Name = "nud_brightness";
this.nud_brightness.Size = new System.Drawing.Size(44, 21);
this.nud_brightness.TabIndex = 44;
//
// dtb_colorMax
//
this.dtb_colorMax.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.tableLayoutPanel2.SetColumnSpan(this.dtb_colorMax, 3);
this.dtb_colorMax.Cursor = System.Windows.Forms.Cursors.Hand;
this.dtb_colorMax.Dock = System.Windows.Forms.DockStyle.Fill;
this.dtb_colorMax.DrawValueString = false;
this.dtb_colorMax.EmptyBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(221)))), ((int)(((byte)(221)))), ((int)(((byte)(221)))));
this.dtb_colorMax.FillBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(217)))), ((int)(((byte)(99)))), ((int)(((byte)(50)))));
this.dtb_colorMax.JumpToMouse = false;
this.dtb_colorMax.Location = new System.Drawing.Point(52, 107);
this.dtb_colorMax.Margin = new System.Windows.Forms.Padding(2);
this.dtb_colorMax.Maximum = 100;
this.dtb_colorMax.Minimum = 0;
this.dtb_colorMax.MinimumSize = new System.Drawing.Size(35, 18);
this.dtb_colorMax.Name = "dtb_colorMax";
this.dtb_colorMax.Size = new System.Drawing.Size(156, 22);
this.dtb_colorMax.TabIndex = 40;
this.dtb_colorMax.Text = "dungeonTrackBar5";
this.dtb_colorMax.ThumbBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(244)))), ((int)(((byte)(244)))));
this.dtb_colorMax.ThumbBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(180)))), ((int)(((byte)(180)))), ((int)(((byte)(180)))));
this.dtb_colorMax.Value = 0;
this.dtb_colorMax.ValueDivison = ReaLTaiizor.Controls.DungeonTrackBar.ValueDivisor.By1;
this.dtb_colorMax.ValueToSet = 0F;
//
// dtb_colorMin
//
this.dtb_colorMin.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.tableLayoutPanel2.SetColumnSpan(this.dtb_colorMin, 3);
this.dtb_colorMin.Cursor = System.Windows.Forms.Cursors.Hand;
this.dtb_colorMin.Dock = System.Windows.Forms.DockStyle.Fill;
this.dtb_colorMin.DrawValueString = false;
this.dtb_colorMin.EmptyBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(221)))), ((int)(((byte)(221)))), ((int)(((byte)(221)))));
this.dtb_colorMin.FillBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(217)))), ((int)(((byte)(99)))), ((int)(((byte)(50)))));
this.dtb_colorMin.JumpToMouse = false;
this.dtb_colorMin.Location = new System.Drawing.Point(52, 78);
this.dtb_colorMin.Margin = new System.Windows.Forms.Padding(2);
this.dtb_colorMin.Maximum = 100;
this.dtb_colorMin.Minimum = 0;
this.dtb_colorMin.MinimumSize = new System.Drawing.Size(35, 18);
this.dtb_colorMin.Name = "dtb_colorMin";
this.dtb_colorMin.Size = new System.Drawing.Size(156, 22);
this.dtb_colorMin.TabIndex = 39;
this.dtb_colorMin.Text = "dungeonTrackBar4";
this.dtb_colorMin.ThumbBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(244)))), ((int)(((byte)(244)))));
this.dtb_colorMin.ThumbBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(180)))), ((int)(((byte)(180)))), ((int)(((byte)(180)))));
this.dtb_colorMin.Value = 0;
this.dtb_colorMin.ValueDivison = ReaLTaiizor.Controls.DungeonTrackBar.ValueDivisor.By1;
this.dtb_colorMin.ValueToSet = 0F;
//
// dtb_opacity
//
this.dtb_opacity.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.tableLayoutPanel2.SetColumnSpan(this.dtb_opacity, 3);
this.dtb_opacity.Cursor = System.Windows.Forms.Cursors.Hand;
this.dtb_opacity.Dock = System.Windows.Forms.DockStyle.Fill;
this.dtb_opacity.DrawValueString = false;
this.dtb_opacity.EmptyBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(221)))), ((int)(((byte)(221)))), ((int)(((byte)(221)))));
this.dtb_opacity.FillBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(217)))), ((int)(((byte)(99)))), ((int)(((byte)(50)))));
this.dtb_opacity.JumpToMouse = false;
this.dtb_opacity.Location = new System.Drawing.Point(52, 31);
this.dtb_opacity.Margin = new System.Windows.Forms.Padding(2);
this.dtb_opacity.Maximum = 100;
this.dtb_opacity.Minimum = 0;
this.dtb_opacity.MinimumSize = new System.Drawing.Size(35, 18);
this.dtb_opacity.Name = "dtb_opacity";
this.dtb_opacity.Size = new System.Drawing.Size(156, 22);
this.dtb_opacity.TabIndex = 37;
this.dtb_opacity.Text = "dungeonTrackBar2";
this.dtb_opacity.ThumbBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(244)))), ((int)(((byte)(244)))));
this.dtb_opacity.ThumbBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(180)))), ((int)(((byte)(180)))), ((int)(((byte)(180)))));
this.dtb_opacity.Value = 0;
this.dtb_opacity.ValueDivison = ReaLTaiizor.Controls.DungeonTrackBar.ValueDivisor.By1;
this.dtb_opacity.ValueToSet = 0F;
//
// pb_bgimage
//
this.pb_bgimage.Dock = System.Windows.Forms.DockStyle.Fill;
this.pb_bgimage.Location = new System.Drawing.Point(90, 187);
this.pb_bgimage.Margin = new System.Windows.Forms.Padding(0);
this.pb_bgimage.Name = "pb_bgimage";
this.pb_bgimage.Size = new System.Drawing.Size(120, 29);
this.pb_bgimage.TabIndex = 36;
this.pb_bgimage.TabStop = false;
//
// dtb_brightness
//
this.dtb_brightness.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.tableLayoutPanel2.SetColumnSpan(this.dtb_brightness, 3);
this.dtb_brightness.Cursor = System.Windows.Forms.Cursors.Hand;
this.dtb_brightness.Dock = System.Windows.Forms.DockStyle.Fill;
this.dtb_brightness.DrawValueString = false;
this.dtb_brightness.EmptyBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(221)))), ((int)(((byte)(221)))), ((int)(((byte)(221)))));
this.dtb_brightness.FillBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(217)))), ((int)(((byte)(99)))), ((int)(((byte)(50)))));
this.dtb_brightness.JumpToMouse = false;
this.dtb_brightness.Location = new System.Drawing.Point(52, 2);
this.dtb_brightness.Margin = new System.Windows.Forms.Padding(2);
this.dtb_brightness.Maximum = 100;
this.dtb_brightness.Minimum = 0;
this.dtb_brightness.MinimumSize = new System.Drawing.Size(35, 18);
this.dtb_brightness.Name = "dtb_brightness";
this.dtb_brightness.Size = new System.Drawing.Size(156, 22);
this.dtb_brightness.TabIndex = 2;
this.dtb_brightness.Text = "dungeonTrackBar1";
this.dtb_brightness.ThumbBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(244)))), ((int)(((byte)(244)))));
this.dtb_brightness.ThumbBorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(180)))), ((int)(((byte)(180)))), ((int)(((byte)(180)))));
this.dtb_brightness.Value = 0;
this.dtb_brightness.ValueDivison = ReaLTaiizor.Controls.DungeonTrackBar.ValueDivisor.By1;
this.dtb_brightness.ValueToSet = 0F;
//
// panel1
//
this.panel1.Controls.Add(this.tableLayoutPanel2);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(3, 3);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(260, 272);
this.panel1.TabIndex = 0;
this.panel1.Text = "panel1";
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 1;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
this.tableLayoutPanel1.Controls.Add(this.panel1, 0, 0);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 3;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 278F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 6F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(266, 302);
this.tableLayoutPanel1.TabIndex = 0;
//
// collapseItem1
//
this.collapseItem1.Controls.Add(this.tableLayoutPanel1);
this.collapseItem1.Expand = true;
this.collapseItem1.Location = new System.Drawing.Point(19, 59);
this.collapseItem1.Name = "collapseItem1";
this.collapseItem1.Size = new System.Drawing.Size(266, 302);
this.collapseItem1.TabIndex = 0;
this.collapseItem1.Text = "图像调整";
//
// cll_panel
//
this.cll_panel.Cursor = System.Windows.Forms.Cursors.Hand;
this.cll_panel.Dock = System.Windows.Forms.DockStyle.Fill;
this.cll_panel.HeaderBg = System.Drawing.Color.FromArgb(((int)(((byte)(186)))), ((int)(((byte)(179)))), ((int)(((byte)(179)))));
this.cll_panel.Items.Add(this.collapseItem1);
this.cll_panel.Items.Add(this.collapseItem2);
this.cll_panel.Items.Add(this.collapseItem3);
this.cll_panel.Location = new System.Drawing.Point(0, 0);
this.cll_panel.Name = "cll_panel";
this.cll_panel.Size = new System.Drawing.Size(304, 495);
this.cll_panel.TabIndex = 1;
this.cll_panel.Text = "fed";
//
// collapseItem3
//
this.collapseItem3.Expand = true;
this.collapseItem3.Location = new System.Drawing.Point(19, 473);
this.collapseItem3.Margin = new System.Windows.Forms.Padding(2);
this.collapseItem3.Name = "collapseItem3";
this.collapseItem3.Size = new System.Drawing.Size(266, 154);
this.collapseItem3.TabIndex = 3;
this.collapseItem3.Text = "collapseItem3";
//
// nud_opacity
//
this.nud_opacity.Dock = System.Windows.Forms.DockStyle.Fill;
this.nud_opacity.Location = new System.Drawing.Point(213, 32);
this.nud_opacity.Name = "nud_opacity";
this.nud_opacity.Size = new System.Drawing.Size(44, 21);
this.nud_opacity.TabIndex = 45;
//
// nud_colorMin
//
this.nud_colorMin.Dock = System.Windows.Forms.DockStyle.Fill;
this.nud_colorMin.Location = new System.Drawing.Point(213, 79);
this.nud_colorMin.Name = "nud_colorMin";
this.nud_colorMin.Size = new System.Drawing.Size(44, 21);
this.nud_colorMin.TabIndex = 50;
//
// nud_colorMax
//
this.nud_colorMax.Dock = System.Windows.Forms.DockStyle.Fill;
this.nud_colorMax.Location = new System.Drawing.Point(213, 108);
this.nud_colorMax.Name = "nud_colorMax";
this.nud_colorMax.Size = new System.Drawing.Size(44, 21);
this.nud_colorMax.TabIndex = 51;
//
// BioanayImagePaletteForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(304, 495);
this.Controls.Add(this.cll_panel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.Margin = new System.Windows.Forms.Padding(2);
this.Name = "BioanayImagePaletteForm";
this.Text = "BioanayImagePaletteForm";
((System.ComponentModel.ISupportInitialize)(this.hpb_line)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_wand)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_xianduan)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.hpb_rect)).EndInit();
this.tableLayoutPanel3.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.hpb_circe)).EndInit();
this.panel2.ResumeLayout(false);
this.collapseItem2.ResumeLayout(false);
this.tableLayoutPanel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.nud_brightness)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pb_bgimage)).EndInit();
this.panel1.ResumeLayout(false);
this.tableLayoutPanel1.ResumeLayout(false);
this.collapseItem1.ResumeLayout(false);
this.cll_panel.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.nud_opacity)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nud_colorMin)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nud_colorMax)).EndInit();
this.ResumeLayout(false);
}
#endregion
private ReaLTaiizor.Controls.FoxButton fb_fixSetting;
private ReaLTaiizor.Controls.FoxLabel foxLabel7;
private ReaLTaiizor.Controls.FoxTextBox ftb_h;
private ReaLTaiizor.Controls.FoxLabel foxLabel5;
private ReaLTaiizor.Controls.FoxTextBox ftb_w;
private ReaLTaiizor.Controls.FoxLabel foxLabel8;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
private ReaLTaiizor.Controls.FoxLabel flb_act_mm;
private ReaLTaiizor.Controls.FoxLabel foxLabel9;
private ReaLTaiizor.Controls.FoxLabel foxLabel6;
private ReaLTaiizor.Controls.FoxLabel foxLabel2;
private ReaLTaiizor.Controls.FoxLabel foxLabel3;
private ReaLTaiizor.Controls.FoxLabel foxLabel1;
private ReaLTaiizor.Controls.HopePictureBox hpb_line;
private System.Windows.Forms.PictureBox pb_bgimage;
private ReaLTaiizor.Controls.FoxLabel foxLabel4;
private ReaLTaiizor.Controls.HopePictureBox hpb_wand;
private ReaLTaiizor.Controls.HopePictureBox hpb_xianduan;
private ReaLTaiizor.Controls.FoxTextBox ftb_r;
private ReaLTaiizor.Controls.HopePictureBox hpb_rect;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
private ReaLTaiizor.Controls.HopePictureBox hpb_circe;
private AntdUI.Panel panel2;
private AntdUI.CollapseItem collapseItem2;
private AntdUI.Panel panel1;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private AntdUI.CollapseItem collapseItem1;
private AntdUI.Collapse cll_panel;
private AntdUI.CollapseItem collapseItem3;
public ReaLTaiizor.Controls.DungeonTrackBar dtb_brightness;
public ReaLTaiizor.Controls.DungeonTrackBar dtb_colorMax;
public ReaLTaiizor.Controls.DungeonTrackBar dtb_colorMin;
public ReaLTaiizor.Controls.DungeonTrackBar dtb_opacity;
public System.Windows.Forms.NumericUpDown nud_colorMax;
public System.Windows.Forms.NumericUpDown nud_colorMin;
public System.Windows.Forms.NumericUpDown nud_opacity;
public System.Windows.Forms.NumericUpDown nud_brightness;
public System.Windows.Forms.ComboBox cb_colortable;
}
}

View File

@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace PBAnaly.UI
{
public partial class BioanayImagePaletteForm : Form
{
public BioanayImagePaletteForm()
{
InitializeComponent();
}
}
}

View File

@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@ -308,24 +308,22 @@
//
this.pl_bg_image.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(39)))), ((int)(((byte)(51)))), ((int)(((byte)(63)))));
this.pl_bg_image.Controls.Add(this.pb_image);
this.pl_bg_image.Dock = System.Windows.Forms.DockStyle.Fill;
this.pl_bg_image.EdgeColor = System.Drawing.Color.FromArgb(((int)(((byte)(32)))), ((int)(((byte)(41)))), ((int)(((byte)(50)))));
this.pl_bg_image.Location = new System.Drawing.Point(4, 4);
this.pl_bg_image.Margin = new System.Windows.Forms.Padding(0);
this.pl_bg_image.Name = "pl_bg_image";
this.pl_bg_image.Padding = new System.Windows.Forms.Padding(5);
this.pl_bg_image.Size = new System.Drawing.Size(288, 261);
this.pl_bg_image.Size = new System.Drawing.Size(237, 181);
this.pl_bg_image.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.pl_bg_image.TabIndex = 1;
this.pl_bg_image.Text = "panel1";
//
// pb_image
//
this.pb_image.Dock = System.Windows.Forms.DockStyle.Fill;
this.pb_image.Location = new System.Drawing.Point(5, 5);
this.pb_image.Margin = new System.Windows.Forms.Padding(0);
this.pb_image.Name = "pb_image";
this.pb_image.Size = new System.Drawing.Size(278, 251);
this.pb_image.Size = new System.Drawing.Size(180, 124);
this.pb_image.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.pb_image.TabIndex = 0;
this.pb_image.TabStop = false;

View File

@ -1372,7 +1372,8 @@ namespace PBAnaly.UI
{
saveFileDialog.Title = "保存Panel图像";
saveFileDialog.Filter = "PNG 图片|*.png|JPEG 图片|*.jpg|BMP 图片|*.bmp";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
if (saveFileDialog.ShowDialog()
== DialogResult.OK)
{
// 根据文件扩展名选择格式
System.Drawing.Imaging.ImageFormat format = System.Drawing.Imaging.ImageFormat.Bmp;

View File

@ -484,10 +484,9 @@
// collapseItem2
//
this.collapseItem2.Controls.Add(this.tableLayoutPanel3);
this.collapseItem2.Expand = true;
this.collapseItem2.Location = new System.Drawing.Point(19, 338);
this.collapseItem2.Location = new System.Drawing.Point(-331, -113);
this.collapseItem2.Name = "collapseItem2";
this.collapseItem2.Size = new System.Drawing.Size(329, 113);
this.collapseItem2.Size = new System.Drawing.Size(331, 113);
this.collapseItem2.TabIndex = 1;
this.collapseItem2.Text = "ROI工具";
//
@ -511,7 +510,7 @@
this.tableLayoutPanel3.RowCount = 2;
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 34F));
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
this.tableLayoutPanel3.Size = new System.Drawing.Size(329, 113);
this.tableLayoutPanel3.Size = new System.Drawing.Size(331, 113);
this.tableLayoutPanel3.TabIndex = 0;
//
// hpb_wand
@ -521,7 +520,7 @@
this.hpb_wand.Location = new System.Drawing.Point(105, 3);
this.hpb_wand.Name = "hpb_wand";
this.hpb_wand.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_wand.Size = new System.Drawing.Size(28, 28);
this.hpb_wand.Size = new System.Drawing.Size(28, 27);
this.hpb_wand.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_wand.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_wand.TabIndex = 13;
@ -536,7 +535,7 @@
this.hpb_xianduan.Location = new System.Drawing.Point(71, 3);
this.hpb_xianduan.Name = "hpb_xianduan";
this.hpb_xianduan.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_xianduan.Size = new System.Drawing.Size(28, 28);
this.hpb_xianduan.Size = new System.Drawing.Size(28, 27);
this.hpb_xianduan.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_xianduan.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_xianduan.TabIndex = 12;
@ -551,7 +550,7 @@
this.hpb_circe.Location = new System.Drawing.Point(37, 3);
this.hpb_circe.Name = "hpb_circe";
this.hpb_circe.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_circe.Size = new System.Drawing.Size(28, 28);
this.hpb_circe.Size = new System.Drawing.Size(28, 27);
this.hpb_circe.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
this.hpb_circe.SmoothingType = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
this.hpb_circe.TabIndex = 11;
@ -565,7 +564,7 @@
this.hpb_rect.Dock = System.Windows.Forms.DockStyle.Fill;
this.hpb_rect.Image = global::PBAnaly.Properties.Resources._10矩形;
this.hpb_rect.Location = new System.Drawing.Point(2, 2);
this.hpb_rect.Margin = new System.Windows.Forms.Padding(2);
this.hpb_rect.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.hpb_rect.Name = "hpb_rect";
this.hpb_rect.PixelOffsetType = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
this.hpb_rect.Size = new System.Drawing.Size(30, 30);
@ -589,7 +588,7 @@
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(3, 37);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(323, 73);
this.panel2.Size = new System.Drawing.Size(325, 73);
this.panel2.TabIndex = 14;
this.panel2.Text = "panel2";
//
@ -710,7 +709,7 @@
this.ControlBox = false;
this.Controls.Add(this.cll_panel);
this.FormStyle = MaterialSkin.Controls.MaterialForm.FormStyles.ActionBar_None;
this.Margin = new System.Windows.Forms.Padding(2);
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "ImageToolPaletteForm";

View File

@ -28,7 +28,7 @@ int PBBiologyVC::PBImageProcessVC::render_process(System::Byte* pseImage, System
cvtColor(r, r, COLOR_BGR2RGB);
std::memcpy(mergepseImage, r.data, byteCount);
cvtColor(cvRenderpseImage, cvRenderpseImage, COLOR_BGR2RGB);
Mat bgr_tab_img = bgr_tab_image(colorbarWW, h_onecolor, bgr_tab);
// std::cout << "w = " << bgr_tab_img.cols << "c= " << bgr_tab_img.rows << "c = " << bgr_tab_img.channels() << std::endl;