mirror of
https://github.com/eggplantlwj/VisionEdit.git
synced 2026-03-28 19:26:35 +08:00
1、添加手眼标定工具,可选择4点或者9点标定,输出标定矩阵
2、修正Halcon引擎运行工具 3、添加相机SDK工具,但需完善 4、HalconTool取图工具增加选择文件夹功能 5、实现Job窗体可添加多个流程
This commit is contained in:
Binary file not shown.
@@ -2,7 +2,7 @@ using System;
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using ToolBase;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
using ViewROI;
|
||||
|
||||
|
||||
@@ -10,15 +10,15 @@ namespace CommonMethods
|
||||
{
|
||||
Job,
|
||||
HalconTool,
|
||||
SDK_Basler,
|
||||
SDK_PointGray,
|
||||
SDK_HIKVision,
|
||||
SDKBasler,
|
||||
SDKPointGray,
|
||||
SDKHIKVision,
|
||||
BlobAnalyse,
|
||||
FindLine,
|
||||
FindCircle,
|
||||
Caliper,
|
||||
ShapeMatch,
|
||||
EyeHandCalibration,
|
||||
EyeHandCalib,
|
||||
CircleCalibration,
|
||||
SubImage,
|
||||
CreateROI,
|
||||
@@ -41,6 +41,7 @@ namespace CommonMethods
|
||||
Output,
|
||||
CreateLine,
|
||||
PMAlignTool,
|
||||
HDevEngineTool,
|
||||
None
|
||||
|
||||
}
|
||||
@@ -56,6 +57,9 @@ namespace CommonMethods
|
||||
Line,
|
||||
Circle,
|
||||
Pose,
|
||||
Object,
|
||||
HXLD,
|
||||
HObject
|
||||
}
|
||||
|
||||
public enum SoftwareRunState
|
||||
|
||||
@@ -7,7 +7,7 @@ using HalconDotNet;
|
||||
|
||||
namespace DataStruct
|
||||
{
|
||||
public class DataStruct
|
||||
public class DataStructClass
|
||||
{
|
||||
/// <summary>
|
||||
/// XYU结果
|
||||
|
||||
338
EyeHandCalibTool/EyeHandCalib.cs
Normal file
338
EyeHandCalibTool/EyeHandCalib.cs
Normal file
@@ -0,0 +1,338 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using ToolBase;
|
||||
using ViewROI;
|
||||
using HalconDotNet;
|
||||
using System.Data;
|
||||
using System.Windows.Forms;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
using Logger;
|
||||
using static DataStruct.DataStructClass;
|
||||
|
||||
namespace EyeHandCalibTool
|
||||
{
|
||||
[Serializable]
|
||||
public class EyeHandCalib : IToolBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 仿射变换矩阵
|
||||
/// </summary>
|
||||
public HTuple homMat2D = new HTuple();
|
||||
/// <summary>
|
||||
/// 标定类型 四点标定|九点标定
|
||||
/// </summary>
|
||||
public CalibType calibType = CalibType.Four_Point;
|
||||
/// <summary>
|
||||
/// 标定表源数据
|
||||
/// </summary>
|
||||
public DataTable CalibSourceDataTable { get; set; } = null;
|
||||
/// <summary>
|
||||
/// 输入点信息
|
||||
/// </summary>
|
||||
public Point inputPoint = new Point();
|
||||
/// <summary>
|
||||
/// 输出点信息
|
||||
/// </summary>
|
||||
public Point outputPoint = new Point();
|
||||
/// <summary>
|
||||
/// 矩阵名称
|
||||
/// </summary>
|
||||
public string homMat2DName { get; set; } = Guid.NewGuid().ToString();
|
||||
/// <summary>
|
||||
/// X平移
|
||||
/// </summary>
|
||||
private HTuple _translateX = 0;
|
||||
internal HTuple TranslateX
|
||||
{
|
||||
get
|
||||
{
|
||||
_translateX = Math.Round((double)_translateX, 2);
|
||||
return _translateX;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_translateX = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Y平移
|
||||
/// </summary>
|
||||
private HTuple _translateY = 0;
|
||||
internal HTuple TranslateY
|
||||
{
|
||||
get
|
||||
{
|
||||
_translateY = Math.Round((double)_translateY, 2);
|
||||
return _translateY;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_translateY = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// X缩放
|
||||
/// </summary>
|
||||
private HTuple _scanX = 1;
|
||||
internal HTuple ScanX
|
||||
{
|
||||
get
|
||||
{
|
||||
_scanX = Math.Round((double)_scanX, 2);
|
||||
return _scanX;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_scanX = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Y缩放
|
||||
/// </summary>
|
||||
private HTuple _scanY = 1;
|
||||
internal HTuple ScanY
|
||||
{
|
||||
get
|
||||
{
|
||||
_scanY = Math.Round((double)_scanY, 2);
|
||||
return _scanY;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_scanY = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 角度旋转
|
||||
/// </summary>
|
||||
private HTuple _rotation = 0;
|
||||
internal HTuple Rotation
|
||||
{
|
||||
get
|
||||
{
|
||||
_rotation = Math.Round((double)_rotation, 2);
|
||||
return _rotation;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_rotation = value;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 轴斜切
|
||||
/// </summary>
|
||||
private HTuple _theta = 0;
|
||||
internal HTuple Theta
|
||||
{
|
||||
get
|
||||
{
|
||||
_theta = Math.Round((double)_theta, 2);
|
||||
return _theta;
|
||||
}
|
||||
set
|
||||
{
|
||||
value = Math.Round((double)value, 2);
|
||||
_theta = value;
|
||||
}
|
||||
}
|
||||
|
||||
public override void DispImage()
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void DispMainWindow(HWindowTool_Smart window)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void Run(SoftwareRunState softwareRunState)
|
||||
{
|
||||
try
|
||||
{
|
||||
// 若首次加载且本地存在矩阵,优先读取本地
|
||||
if (File.Exists(homMat2DName) && homMat2D.Length == 0)
|
||||
{
|
||||
HOperatorSet.ReadTuple(homMat2DName, out homMat2D);
|
||||
}
|
||||
// 再次判断
|
||||
if (homMat2D.Length == 0)
|
||||
{
|
||||
runMessage = $"{FormEyeHandCalib.Instance.myToolInfo.FormToolName}未生成仿射矩阵工具,需要先标定标准!";
|
||||
toolRunStatu = ToolRunStatu.Tool_Run_Error;
|
||||
FormEyeHandCalib.Instance.SetToolStatus(runMessage, toolRunStatu);
|
||||
}
|
||||
else
|
||||
{
|
||||
HTuple tupOutX, tupOutY;
|
||||
HOperatorSet.AffineTransPoint2d(homMat2D, inputPoint.Row, inputPoint.Col, out tupOutX, out tupOutY);
|
||||
outputPoint.Row = tupOutX;
|
||||
outputPoint.Col = tupOutY;
|
||||
runMessage = $"{FormEyeHandCalib.Instance.myToolInfo.FormToolName}运行成功";
|
||||
toolRunStatu = ToolRunStatu.Succeed;
|
||||
FormEyeHandCalib.Instance.SetToolStatus(runMessage, toolRunStatu);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
runMessage = $"{FormEyeHandCalib.Instance.myToolInfo.FormToolName}运行出现异常";
|
||||
toolRunStatu = ToolRunStatu.Tool_Run_Error;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 初始化标定数据源
|
||||
/// </summary>
|
||||
public void InitDataTable()
|
||||
{
|
||||
CalibSourceDataTable = new DataTable();
|
||||
//初始化DataTable,并将datatable绑定到DataGridView的数据源
|
||||
DataColumn c1 = new DataColumn("像素X", typeof(double));
|
||||
DataColumn c2 = new DataColumn("像素Y", typeof(double));
|
||||
DataColumn c3 = new DataColumn("机械X", typeof(double));
|
||||
DataColumn c4 = new DataColumn("机械Y", typeof(double));
|
||||
CalibSourceDataTable.Columns.Add(c1);
|
||||
CalibSourceDataTable.Columns.Add(c2);
|
||||
CalibSourceDataTable.Columns.Add(c3);
|
||||
CalibSourceDataTable.Columns.Add(c4);
|
||||
CalibSourceDataTable.Rows.Clear();
|
||||
for (int i = 0; i < (int)calibType; i++)
|
||||
{
|
||||
DataRow dr = CalibSourceDataTable.NewRow();
|
||||
dr[0] = 0;
|
||||
dr[1] = 50;
|
||||
dr[2] = 0;
|
||||
dr[3] = 50;
|
||||
CalibSourceDataTable.Rows.Add(dr);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导入标定数据
|
||||
/// </summary>
|
||||
public void ReadCalibData()
|
||||
{
|
||||
OpenFileDialog digOpenFile = new OpenFileDialog();
|
||||
digOpenFile.FileName = string.Empty;
|
||||
digOpenFile.Title = "请选择表格文件";
|
||||
digOpenFile.Filter = "CSV文件(*.csv)|*.csv";
|
||||
if (digOpenFile.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
string[] lines = File.ReadAllLines(digOpenFile.FileName, Encoding.Default);
|
||||
for (int i = 0; i < lines.Length; i++)
|
||||
{
|
||||
string[] data = Regex.Split(lines[i], ",");
|
||||
for (int j = 0; j < data.Length; j++)
|
||||
{
|
||||
CalibSourceDataTable.Rows[i][j] = data[j];
|
||||
if (j == 3) //只导入前四列
|
||||
break;
|
||||
}
|
||||
if (i == (int)calibType) //若标定类型为四点标定,则导入前四行,若为九点标定,则导入前九行
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 导出标定数据
|
||||
/// </summary>
|
||||
public void ExportCalibData()
|
||||
{
|
||||
try
|
||||
{
|
||||
SaveFileDialog dig_saveImage = new SaveFileDialog();
|
||||
dig_saveImage.FileName = "CalibData " + DateTime.Now.ToString("yyyy_MM_dd");
|
||||
dig_saveImage.Title = "请选择导出路径";
|
||||
dig_saveImage.Filter = "CSV文件(*.csv)|*.csv";
|
||||
if (dig_saveImage.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
File.Create(dig_saveImage.FileName).Close();
|
||||
string data = string.Empty;
|
||||
for (int i = 0; i <CalibSourceDataTable.Rows.Count; i++)
|
||||
{
|
||||
for (int j = 0; j < 4; j++)
|
||||
{
|
||||
data += CalibSourceDataTable.Rows[i][j];
|
||||
if (j < 3)
|
||||
data += ",";
|
||||
}
|
||||
data += Environment.NewLine;
|
||||
}
|
||||
File.AppendAllText(dig_saveImage.FileName, data, Encoding.Default);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LoggerClass.WriteLog("导出标定数据时出错", ex);
|
||||
}
|
||||
}
|
||||
|
||||
public bool ManulCalib()
|
||||
{
|
||||
try
|
||||
{
|
||||
List<double> pixelRowList = new List<double>();
|
||||
List<double> pixelColList = new List<double>();
|
||||
List<double> MechanicalXList = new List<double>();
|
||||
List<double> MechanicalYList = new List<double>();
|
||||
try
|
||||
{
|
||||
for (int i = 0; i < CalibSourceDataTable.Rows.Count; i++)
|
||||
{
|
||||
pixelRowList.Add(Convert.ToDouble(CalibSourceDataTable.Rows[i][0]));
|
||||
pixelColList.Add(Convert.ToDouble(CalibSourceDataTable.Rows[i][1]));
|
||||
MechanicalXList.Add(Convert.ToDouble(CalibSourceDataTable.Rows[i][2]));
|
||||
MechanicalYList.Add(Convert.ToDouble(CalibSourceDataTable.Rows[i][3]));
|
||||
}
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
LoggerClass.WriteLog("标定失败,标定数据异常(错误代码:12901)", ex);
|
||||
return false;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
HTuple pixelRow = new HTuple(pixelRowList.ToArray());
|
||||
HTuple pixelCol = new HTuple(pixelColList.ToArray());
|
||||
HTuple mechanicalX = new HTuple(MechanicalXList.ToArray());
|
||||
HTuple mechanicalY = new HTuple(MechanicalYList.ToArray());
|
||||
HOperatorSet.VectorToHomMat2d(pixelRow, pixelCol, mechanicalX, mechanicalY, out homMat2D);
|
||||
}
|
||||
catch(HalconException ex)
|
||||
{
|
||||
LoggerClass.WriteLog("标定失败,标定数据异常,无法确定仿射变换关系(错误代码:12902)", ex);
|
||||
return false;
|
||||
}
|
||||
HOperatorSet.HomMat2dToAffinePar(homMat2D, out _scanX, out _scanY, out _rotation, out _theta, out _translateX, out _translateY);
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LoggerClass.WriteLog("手动标定出现异常", ex);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 标定类型 四点|九点
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public enum CalibType
|
||||
{
|
||||
Four_Point = 4,
|
||||
Nine_Point = 9,
|
||||
}
|
||||
}
|
||||
19
EyeHandCalibTool/EyeHandCalibRun.cs
Normal file
19
EyeHandCalibTool/EyeHandCalibRun.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using CommonMethods.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace EyeHandCalibTool
|
||||
{
|
||||
public class EyeHandCalibRun : IToolRun
|
||||
{
|
||||
public void ToolRun(string jobName, int toolIndex, int inputItemNum, TreeNode selectNode, List<IToolInfo> L_toolList)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
106
EyeHandCalibTool/EyeHandCalibTool.csproj
Normal file
106
EyeHandCalibTool/EyeHandCalibTool.csproj
Normal file
@@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>EyeHandCalibTool</RootNamespace>
|
||||
<AssemblyName>EyeHandCalibTool</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="halcondotnet">
|
||||
<HintPath>C:\Program Files\MVTec\HALCON-19.05-Progress\bin\dotnet20\halcondotnet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI">
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="EyeHandCalib.cs" />
|
||||
<Compile Include="EyeHandCalibRun.cs" />
|
||||
<Compile Include="FormEyeHandCalib.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormEyeHandCalib.Designer.cs">
|
||||
<DependentUpon>FormEyeHandCalib.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="FormEyeHandCalib.resx">
|
||||
<DependentUpon>FormEyeHandCalib.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\CommonMethods\CommonHelper.csproj">
|
||||
<Project>{1c8d0ddc-2086-48a9-9586-f2b643e2fc54}</Project>
|
||||
<Name>CommonHelper</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\DataStruct\DataStruct.csproj">
|
||||
<Project>{df3d4d4c-02df-4f92-9fd4-0a861f64b0ef}</Project>
|
||||
<Name>DataStruct</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ImageWindow\HWindow_Tool.csproj">
|
||||
<Project>{9baa53fd-89b5-43e2-ac59-a27b006debb6}</Project>
|
||||
<Name>HWindow_Tool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolBase\ToolBase.csproj">
|
||||
<Project>{7cd50b44-bf56-4e8e-8fa1-05f6968c1835}</Project>
|
||||
<Name>ToolBase</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolLib.Log\Logger\Logger.csproj">
|
||||
<Project>{d4e052b9-e541-4b67-a1f9-273073ef1d4b}</Project>
|
||||
<Name>Logger</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
609
EyeHandCalibTool/FormEyeHandCalib.Designer.cs
generated
Normal file
609
EyeHandCalibTool/FormEyeHandCalib.Designer.cs
generated
Normal file
@@ -0,0 +1,609 @@
|
||||
namespace EyeHandCalibTool
|
||||
{
|
||||
partial class FormEyeHandCalib
|
||||
{
|
||||
/// <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()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormEyeHandCalib));
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
this.tsbtRunTool = new System.Windows.Forms.ToolStripButton();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.uiGroupBox1 = new Sunny.UI.UIGroupBox();
|
||||
this.uiLabel1 = new Sunny.UI.UILabel();
|
||||
this.chbSelectCalibType = new Sunny.UI.UIComboBox();
|
||||
this.uiPanel1 = new Sunny.UI.UIPanel();
|
||||
this.CalibDataGrid = new Sunny.UI.UIDataGridView();
|
||||
this.btnImportData = new Sunny.UI.UISymbolButton();
|
||||
this.btnExportData = new Sunny.UI.UISymbolButton();
|
||||
this.uiTabControl1 = new Sunny.UI.UITabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.tabPage2 = new System.Windows.Forms.TabPage();
|
||||
this.btnCalibAuto = new Sunny.UI.UISymbolButton();
|
||||
this.btnCalibManual = new Sunny.UI.UISymbolButton();
|
||||
this.txbTheta = new Sunny.UI.UITextBox();
|
||||
this.txbRatation = new Sunny.UI.UITextBox();
|
||||
this.txbScaleY = new Sunny.UI.UITextBox();
|
||||
this.txbScaleX = new Sunny.UI.UITextBox();
|
||||
this.txbMoveY = new Sunny.UI.UITextBox();
|
||||
this.txbMoveX = new Sunny.UI.UITextBox();
|
||||
this.uiLabel7 = new Sunny.UI.UILabel();
|
||||
this.uiLabel6 = new Sunny.UI.UILabel();
|
||||
this.uiLabel5 = new Sunny.UI.UILabel();
|
||||
this.uiLabel4 = new Sunny.UI.UILabel();
|
||||
this.uiLabel3 = new Sunny.UI.UILabel();
|
||||
this.uiLabel2 = new Sunny.UI.UILabel();
|
||||
this.toolStrip1.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.uiGroupBox1.SuspendLayout();
|
||||
this.uiPanel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.CalibDataGrid)).BeginInit();
|
||||
this.uiTabControl1.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStrip1
|
||||
//
|
||||
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(25, 25);
|
||||
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsbtRunTool});
|
||||
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStrip1.Name = "toolStrip1";
|
||||
this.toolStrip1.Size = new System.Drawing.Size(823, 32);
|
||||
this.toolStrip1.TabIndex = 5;
|
||||
this.toolStrip1.Text = "toolStrip1";
|
||||
//
|
||||
// tsbtRunTool
|
||||
//
|
||||
this.tsbtRunTool.Image = ((System.Drawing.Image)(resources.GetObject("tsbtRunTool.Image")));
|
||||
this.tsbtRunTool.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbtRunTool.Name = "tsbtRunTool";
|
||||
this.tsbtRunTool.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbtRunTool.Text = "运行工具";
|
||||
this.tsbtRunTool.Click += new System.EventHandler(this.tsbtRunTool_Click);
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.lb_RunStatus,
|
||||
this.toolStripStatusLabel1,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 500);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(823, 22);
|
||||
this.statusStrip.TabIndex = 4;
|
||||
//
|
||||
// lb_RunStatus
|
||||
//
|
||||
this.lb_RunStatus.Name = "lb_RunStatus";
|
||||
this.lb_RunStatus.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// toolStripStatusLabel1
|
||||
//
|
||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||
this.toolStripStatusLabel1.Size = new System.Drawing.Size(16, 17);
|
||||
this.toolStripStatusLabel1.Text = " ";
|
||||
//
|
||||
// lb_RunTime
|
||||
//
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// splitContainer1
|
||||
//
|
||||
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer1.Location = new System.Drawing.Point(0, 32);
|
||||
this.splitContainer1.Name = "splitContainer1";
|
||||
//
|
||||
// splitContainer1.Panel1
|
||||
//
|
||||
this.splitContainer1.Panel1.Controls.Add(this.CalibDataGrid);
|
||||
this.splitContainer1.Panel1.Controls.Add(this.uiPanel1);
|
||||
this.splitContainer1.Panel1.Controls.Add(this.uiGroupBox1);
|
||||
//
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.uiTabControl1);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(823, 468);
|
||||
this.splitContainer1.SplitterDistance = 542;
|
||||
this.splitContainer1.TabIndex = 6;
|
||||
//
|
||||
// uiGroupBox1
|
||||
//
|
||||
this.uiGroupBox1.BackColor = System.Drawing.Color.White;
|
||||
this.uiGroupBox1.Controls.Add(this.uiLabel1);
|
||||
this.uiGroupBox1.Controls.Add(this.chbSelectCalibType);
|
||||
this.uiGroupBox1.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.uiGroupBox1.FillColor = System.Drawing.Color.White;
|
||||
this.uiGroupBox1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiGroupBox1.IsScaled = false;
|
||||
this.uiGroupBox1.Location = new System.Drawing.Point(0, 0);
|
||||
this.uiGroupBox1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uiGroupBox1.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.uiGroupBox1.Name = "uiGroupBox1";
|
||||
this.uiGroupBox1.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.uiGroupBox1.Size = new System.Drawing.Size(542, 82);
|
||||
this.uiGroupBox1.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiGroupBox1.TabIndex = 26;
|
||||
this.uiGroupBox1.Text = "选择标定模式";
|
||||
this.uiGroupBox1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// uiLabel1
|
||||
//
|
||||
this.uiLabel1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel1.Location = new System.Drawing.Point(12, 38);
|
||||
this.uiLabel1.Name = "uiLabel1";
|
||||
this.uiLabel1.Size = new System.Drawing.Size(96, 23);
|
||||
this.uiLabel1.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel1.TabIndex = 26;
|
||||
this.uiLabel1.Text = "标定类型:";
|
||||
this.uiLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// chbSelectCalibType
|
||||
//
|
||||
this.chbSelectCalibType.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.chbSelectCalibType.DataSource = null;
|
||||
this.chbSelectCalibType.FillColor = System.Drawing.Color.White;
|
||||
this.chbSelectCalibType.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.chbSelectCalibType.IsScaled = false;
|
||||
this.chbSelectCalibType.Items.AddRange(new object[] {
|
||||
"四点标定",
|
||||
"九点标定"});
|
||||
this.chbSelectCalibType.Location = new System.Drawing.Point(146, 38);
|
||||
this.chbSelectCalibType.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.chbSelectCalibType.MinimumSize = new System.Drawing.Size(63, 0);
|
||||
this.chbSelectCalibType.Name = "chbSelectCalibType";
|
||||
this.chbSelectCalibType.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2);
|
||||
this.chbSelectCalibType.Size = new System.Drawing.Size(285, 29);
|
||||
this.chbSelectCalibType.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.chbSelectCalibType.TabIndex = 25;
|
||||
this.chbSelectCalibType.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.chbSelectCalibType.SelectedIndexChanged += new System.EventHandler(this.chbSelectCalibType_SelectedIndexChanged);
|
||||
//
|
||||
// uiPanel1
|
||||
//
|
||||
this.uiPanel1.Controls.Add(this.btnExportData);
|
||||
this.uiPanel1.Controls.Add(this.btnImportData);
|
||||
this.uiPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
|
||||
this.uiPanel1.FillColor = System.Drawing.Color.White;
|
||||
this.uiPanel1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiPanel1.IsScaled = false;
|
||||
this.uiPanel1.Location = new System.Drawing.Point(0, 418);
|
||||
this.uiPanel1.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uiPanel1.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.uiPanel1.Name = "uiPanel1";
|
||||
this.uiPanel1.Size = new System.Drawing.Size(542, 50);
|
||||
this.uiPanel1.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiPanel1.TabIndex = 27;
|
||||
this.uiPanel1.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// CalibDataGrid
|
||||
//
|
||||
this.CalibDataGrid.AllowUserToAddRows = false;
|
||||
dataGridViewCellStyle9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
|
||||
this.CalibDataGrid.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle9;
|
||||
this.CalibDataGrid.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
|
||||
this.CalibDataGrid.BackgroundColor = System.Drawing.Color.White;
|
||||
this.CalibDataGrid.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
|
||||
dataGridViewCellStyle10.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
|
||||
dataGridViewCellStyle10.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
|
||||
dataGridViewCellStyle10.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle10.ForeColor = System.Drawing.Color.White;
|
||||
dataGridViewCellStyle10.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle10.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
|
||||
this.CalibDataGrid.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle10;
|
||||
this.CalibDataGrid.ColumnHeadersHeight = 32;
|
||||
this.CalibDataGrid.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
|
||||
this.CalibDataGrid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.CalibDataGrid.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
|
||||
this.CalibDataGrid.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CalibDataGrid.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
|
||||
this.CalibDataGrid.Location = new System.Drawing.Point(0, 82);
|
||||
this.CalibDataGrid.Name = "CalibDataGrid";
|
||||
dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle11.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255)))));
|
||||
dataGridViewCellStyle11.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle11.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(48)))), ((int)(((byte)(48)))));
|
||||
dataGridViewCellStyle11.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(160)))), ((int)(((byte)(255)))));
|
||||
dataGridViewCellStyle11.SelectionForeColor = System.Drawing.Color.White;
|
||||
dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
|
||||
this.CalibDataGrid.RowHeadersDefaultCellStyle = dataGridViewCellStyle11;
|
||||
dataGridViewCellStyle12.BackColor = System.Drawing.Color.White;
|
||||
this.CalibDataGrid.RowsDefaultCellStyle = dataGridViewCellStyle12;
|
||||
this.CalibDataGrid.RowTemplate.Height = 23;
|
||||
this.CalibDataGrid.SelectedIndex = -1;
|
||||
this.CalibDataGrid.ShowGridLine = true;
|
||||
this.CalibDataGrid.Size = new System.Drawing.Size(542, 336);
|
||||
this.CalibDataGrid.TabIndex = 28;
|
||||
this.CalibDataGrid.RowPostPaint += new System.Windows.Forms.DataGridViewRowPostPaintEventHandler(this.CalibDataGrid_RowPostPaint);
|
||||
//
|
||||
// btnImportData
|
||||
//
|
||||
this.btnImportData.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnImportData.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnImportData.IsScaled = false;
|
||||
this.btnImportData.Location = new System.Drawing.Point(86, 6);
|
||||
this.btnImportData.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnImportData.Name = "btnImportData";
|
||||
this.btnImportData.Size = new System.Drawing.Size(114, 35);
|
||||
this.btnImportData.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnImportData.Symbol = 61568;
|
||||
this.btnImportData.TabIndex = 0;
|
||||
this.btnImportData.Text = "数据导入";
|
||||
this.btnImportData.Click += new System.EventHandler(this.btnImportData_Click);
|
||||
//
|
||||
// btnExportData
|
||||
//
|
||||
this.btnExportData.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnExportData.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnExportData.IsScaled = false;
|
||||
this.btnExportData.Location = new System.Drawing.Point(273, 6);
|
||||
this.btnExportData.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnExportData.Name = "btnExportData";
|
||||
this.btnExportData.Size = new System.Drawing.Size(114, 35);
|
||||
this.btnExportData.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnExportData.Symbol = 61584;
|
||||
this.btnExportData.TabIndex = 0;
|
||||
this.btnExportData.Text = "数据导出";
|
||||
this.btnExportData.Click += new System.EventHandler(this.btnExportData_Click);
|
||||
//
|
||||
// uiTabControl1
|
||||
//
|
||||
this.uiTabControl1.Controls.Add(this.tabPage1);
|
||||
this.uiTabControl1.Controls.Add(this.tabPage2);
|
||||
this.uiTabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.uiTabControl1.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
|
||||
this.uiTabControl1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiTabControl1.ItemSize = new System.Drawing.Size(100, 40);
|
||||
this.uiTabControl1.Location = new System.Drawing.Point(0, 0);
|
||||
this.uiTabControl1.MainPage = "";
|
||||
this.uiTabControl1.Name = "uiTabControl1";
|
||||
this.uiTabControl1.SelectedIndex = 0;
|
||||
this.uiTabControl1.Size = new System.Drawing.Size(277, 468);
|
||||
this.uiTabControl1.SizeMode = System.Windows.Forms.TabSizeMode.Fixed;
|
||||
this.uiTabControl1.TabIndex = 0;
|
||||
//
|
||||
// tabPage1
|
||||
//
|
||||
this.tabPage1.BackColor = System.Drawing.Color.White;
|
||||
this.tabPage1.Controls.Add(this.btnCalibAuto);
|
||||
this.tabPage1.Controls.Add(this.btnCalibManual);
|
||||
this.tabPage1.Controls.Add(this.txbTheta);
|
||||
this.tabPage1.Controls.Add(this.txbRatation);
|
||||
this.tabPage1.Controls.Add(this.txbScaleY);
|
||||
this.tabPage1.Controls.Add(this.txbScaleX);
|
||||
this.tabPage1.Controls.Add(this.txbMoveY);
|
||||
this.tabPage1.Controls.Add(this.txbMoveX);
|
||||
this.tabPage1.Controls.Add(this.uiLabel7);
|
||||
this.tabPage1.Controls.Add(this.uiLabel6);
|
||||
this.tabPage1.Controls.Add(this.uiLabel5);
|
||||
this.tabPage1.Controls.Add(this.uiLabel4);
|
||||
this.tabPage1.Controls.Add(this.uiLabel3);
|
||||
this.tabPage1.Controls.Add(this.uiLabel2);
|
||||
this.tabPage1.Location = new System.Drawing.Point(0, 40);
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
this.tabPage1.Size = new System.Drawing.Size(277, 428);
|
||||
this.tabPage1.TabIndex = 0;
|
||||
this.tabPage1.Text = "标定结果";
|
||||
//
|
||||
// tabPage2
|
||||
//
|
||||
this.tabPage2.Location = new System.Drawing.Point(0, 40);
|
||||
this.tabPage2.Name = "tabPage2";
|
||||
this.tabPage2.Size = new System.Drawing.Size(277, 428);
|
||||
this.tabPage2.TabIndex = 1;
|
||||
this.tabPage2.Text = "转换结果";
|
||||
this.tabPage2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// btnCalibAuto
|
||||
//
|
||||
this.btnCalibAuto.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnCalibAuto.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnCalibAuto.IsScaled = false;
|
||||
this.btnCalibAuto.Location = new System.Drawing.Point(151, 352);
|
||||
this.btnCalibAuto.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnCalibAuto.Name = "btnCalibAuto";
|
||||
this.btnCalibAuto.Size = new System.Drawing.Size(103, 35);
|
||||
this.btnCalibAuto.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnCalibAuto.Symbol = 261778;
|
||||
this.btnCalibAuto.TabIndex = 15;
|
||||
this.btnCalibAuto.Text = "自动标定";
|
||||
//
|
||||
// btnCalibManual
|
||||
//
|
||||
this.btnCalibManual.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnCalibManual.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnCalibManual.IsScaled = false;
|
||||
this.btnCalibManual.Location = new System.Drawing.Point(23, 352);
|
||||
this.btnCalibManual.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnCalibManual.Name = "btnCalibManual";
|
||||
this.btnCalibManual.Size = new System.Drawing.Size(103, 35);
|
||||
this.btnCalibManual.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnCalibManual.Symbol = 363128;
|
||||
this.btnCalibManual.TabIndex = 16;
|
||||
this.btnCalibManual.Text = "手动标定";
|
||||
this.btnCalibManual.Click += new System.EventHandler(this.btnCalibManual_Click);
|
||||
//
|
||||
// txbTheta
|
||||
//
|
||||
this.txbTheta.ButtonSymbol = 61761;
|
||||
this.txbTheta.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbTheta.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbTheta.IsScaled = false;
|
||||
this.txbTheta.Location = new System.Drawing.Point(104, 292);
|
||||
this.txbTheta.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbTheta.Maximum = 2147483647D;
|
||||
this.txbTheta.Minimum = -2147483648D;
|
||||
this.txbTheta.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbTheta.Name = "txbTheta";
|
||||
this.txbTheta.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbTheta.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbTheta.TabIndex = 9;
|
||||
this.txbTheta.Text = "0";
|
||||
this.txbTheta.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbRatation
|
||||
//
|
||||
this.txbRatation.ButtonSymbol = 61761;
|
||||
this.txbRatation.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbRatation.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbRatation.IsScaled = false;
|
||||
this.txbRatation.Location = new System.Drawing.Point(104, 242);
|
||||
this.txbRatation.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbRatation.Maximum = 2147483647D;
|
||||
this.txbRatation.Minimum = -2147483648D;
|
||||
this.txbRatation.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbRatation.Name = "txbRatation";
|
||||
this.txbRatation.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbRatation.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbRatation.TabIndex = 10;
|
||||
this.txbRatation.Text = "0";
|
||||
this.txbRatation.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbScaleY
|
||||
//
|
||||
this.txbScaleY.ButtonSymbol = 61761;
|
||||
this.txbScaleY.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbScaleY.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbScaleY.IsScaled = false;
|
||||
this.txbScaleY.Location = new System.Drawing.Point(104, 192);
|
||||
this.txbScaleY.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbScaleY.Maximum = 2147483647D;
|
||||
this.txbScaleY.Minimum = -2147483648D;
|
||||
this.txbScaleY.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbScaleY.Name = "txbScaleY";
|
||||
this.txbScaleY.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbScaleY.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbScaleY.TabIndex = 11;
|
||||
this.txbScaleY.Text = "0";
|
||||
this.txbScaleY.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbScaleX
|
||||
//
|
||||
this.txbScaleX.ButtonSymbol = 61761;
|
||||
this.txbScaleX.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbScaleX.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbScaleX.IsScaled = false;
|
||||
this.txbScaleX.Location = new System.Drawing.Point(104, 142);
|
||||
this.txbScaleX.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbScaleX.Maximum = 2147483647D;
|
||||
this.txbScaleX.Minimum = -2147483648D;
|
||||
this.txbScaleX.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbScaleX.Name = "txbScaleX";
|
||||
this.txbScaleX.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbScaleX.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbScaleX.TabIndex = 12;
|
||||
this.txbScaleX.Text = "0";
|
||||
this.txbScaleX.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbMoveY
|
||||
//
|
||||
this.txbMoveY.ButtonSymbol = 61761;
|
||||
this.txbMoveY.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbMoveY.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbMoveY.IsScaled = false;
|
||||
this.txbMoveY.Location = new System.Drawing.Point(104, 92);
|
||||
this.txbMoveY.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbMoveY.Maximum = 2147483647D;
|
||||
this.txbMoveY.Minimum = -2147483648D;
|
||||
this.txbMoveY.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbMoveY.Name = "txbMoveY";
|
||||
this.txbMoveY.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbMoveY.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbMoveY.TabIndex = 13;
|
||||
this.txbMoveY.Text = "0";
|
||||
this.txbMoveY.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbMoveX
|
||||
//
|
||||
this.txbMoveX.ButtonSymbol = 61761;
|
||||
this.txbMoveX.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbMoveX.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbMoveX.IsScaled = false;
|
||||
this.txbMoveX.Location = new System.Drawing.Point(104, 42);
|
||||
this.txbMoveX.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbMoveX.Maximum = 2147483647D;
|
||||
this.txbMoveX.Minimum = -2147483648D;
|
||||
this.txbMoveX.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbMoveX.Name = "txbMoveX";
|
||||
this.txbMoveX.Size = new System.Drawing.Size(150, 29);
|
||||
this.txbMoveX.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbMoveX.TabIndex = 14;
|
||||
this.txbMoveX.Text = "0";
|
||||
this.txbMoveX.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel7
|
||||
//
|
||||
this.uiLabel7.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel7.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel7.Location = new System.Drawing.Point(24, 292);
|
||||
this.uiLabel7.Name = "uiLabel7";
|
||||
this.uiLabel7.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel7.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel7.TabIndex = 3;
|
||||
this.uiLabel7.Text = "斜切:";
|
||||
this.uiLabel7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel6
|
||||
//
|
||||
this.uiLabel6.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel6.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel6.Location = new System.Drawing.Point(24, 242);
|
||||
this.uiLabel6.Name = "uiLabel6";
|
||||
this.uiLabel6.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel6.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel6.TabIndex = 4;
|
||||
this.uiLabel6.Text = "旋转:";
|
||||
this.uiLabel6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel5
|
||||
//
|
||||
this.uiLabel5.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel5.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel5.Location = new System.Drawing.Point(24, 192);
|
||||
this.uiLabel5.Name = "uiLabel5";
|
||||
this.uiLabel5.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel5.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel5.TabIndex = 5;
|
||||
this.uiLabel5.Text = "缩放Y:";
|
||||
this.uiLabel5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel4
|
||||
//
|
||||
this.uiLabel4.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel4.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel4.Location = new System.Drawing.Point(24, 142);
|
||||
this.uiLabel4.Name = "uiLabel4";
|
||||
this.uiLabel4.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel4.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel4.TabIndex = 6;
|
||||
this.uiLabel4.Text = "缩放X:";
|
||||
this.uiLabel4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel3
|
||||
//
|
||||
this.uiLabel3.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel3.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel3.Location = new System.Drawing.Point(24, 92);
|
||||
this.uiLabel3.Name = "uiLabel3";
|
||||
this.uiLabel3.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel3.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel3.TabIndex = 7;
|
||||
this.uiLabel3.Text = "平移Y:";
|
||||
this.uiLabel3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel2
|
||||
//
|
||||
this.uiLabel2.BackColor = System.Drawing.Color.White;
|
||||
this.uiLabel2.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel2.Location = new System.Drawing.Point(24, 42);
|
||||
this.uiLabel2.Name = "uiLabel2";
|
||||
this.uiLabel2.Size = new System.Drawing.Size(73, 23);
|
||||
this.uiLabel2.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel2.TabIndex = 8;
|
||||
this.uiLabel2.Text = "平移X:";
|
||||
this.uiLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// FormEyeHandCalib
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(823, 522);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Controls.Add(this.toolStrip1);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormEyeHandCalib";
|
||||
this.Text = "手眼标定工具";
|
||||
this.Load += new System.EventHandler(this.FormEyeHandCalib_Load);
|
||||
this.toolStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.splitContainer1.Panel1.ResumeLayout(false);
|
||||
this.splitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.uiGroupBox1.ResumeLayout(false);
|
||||
this.uiPanel1.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.CalibDataGrid)).EndInit();
|
||||
this.uiTabControl1.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||
private System.Windows.Forms.ToolStripButton tsbtRunTool;
|
||||
private System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunStatus;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunTime;
|
||||
private System.Windows.Forms.SplitContainer splitContainer1;
|
||||
private Sunny.UI.UIComboBox chbSelectCalibType;
|
||||
private Sunny.UI.UIGroupBox uiGroupBox1;
|
||||
private Sunny.UI.UILabel uiLabel1;
|
||||
private Sunny.UI.UIDataGridView CalibDataGrid;
|
||||
private Sunny.UI.UIPanel uiPanel1;
|
||||
private Sunny.UI.UISymbolButton btnExportData;
|
||||
private Sunny.UI.UISymbolButton btnImportData;
|
||||
private Sunny.UI.UITabControl uiTabControl1;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private System.Windows.Forms.TabPage tabPage2;
|
||||
private Sunny.UI.UISymbolButton btnCalibAuto;
|
||||
private Sunny.UI.UISymbolButton btnCalibManual;
|
||||
private Sunny.UI.UITextBox txbTheta;
|
||||
private Sunny.UI.UITextBox txbRatation;
|
||||
private Sunny.UI.UITextBox txbScaleY;
|
||||
public Sunny.UI.UITextBox txbScaleX;
|
||||
public Sunny.UI.UITextBox txbMoveY;
|
||||
public Sunny.UI.UITextBox txbMoveX;
|
||||
private Sunny.UI.UILabel uiLabel7;
|
||||
private Sunny.UI.UILabel uiLabel6;
|
||||
private Sunny.UI.UILabel uiLabel5;
|
||||
private Sunny.UI.UILabel uiLabel4;
|
||||
private Sunny.UI.UILabel uiLabel3;
|
||||
private Sunny.UI.UILabel uiLabel2;
|
||||
}
|
||||
}
|
||||
174
EyeHandCalibTool/FormEyeHandCalib.cs
Normal file
174
EyeHandCalibTool/FormEyeHandCalib.cs
Normal file
@@ -0,0 +1,174 @@
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
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;
|
||||
using ViewROI;
|
||||
|
||||
namespace EyeHandCalibTool
|
||||
{
|
||||
public partial class FormEyeHandCalib : Form
|
||||
{
|
||||
public EyeHandCalib myEyeHandCalib = null;
|
||||
public IToolInfo myToolInfo = new IToolInfo();
|
||||
public HWindowTool_Smart myHwindow = new HWindowTool_Smart();
|
||||
public HDrawingObject selected_drawing_object = new HDrawingObject();
|
||||
|
||||
public FormEyeHandCalib(ref object eyeHandCalib)
|
||||
{
|
||||
InitializeComponent();
|
||||
_instance = this;
|
||||
if (eyeHandCalib.GetType().FullName != "System.Object")
|
||||
{
|
||||
myToolInfo = (IToolInfo)eyeHandCalib;
|
||||
myEyeHandCalib = (EyeHandCalib)myToolInfo.tool;
|
||||
myEyeHandCalib.DispImage();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 窗体对象实例
|
||||
/// </summary>
|
||||
private static FormEyeHandCalib _instance;
|
||||
public static FormEyeHandCalib Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_instance != null)
|
||||
{
|
||||
lock (_instance)
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
object eyeHandCalib = new object();
|
||||
_instance = new FormEyeHandCalib(ref eyeHandCalib);
|
||||
}
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
object eyeHandCalib = new object();
|
||||
_instance = new FormEyeHandCalib(ref eyeHandCalib);
|
||||
return _instance;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public FormEyeHandCalib()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void chbSelectCalibType_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
CalibType oldType = myEyeHandCalib.calibType;
|
||||
myEyeHandCalib.calibType = chbSelectCalibType.SelectedItem.ToString() == "四点标定" ? CalibType.Four_Point : CalibType.Nine_Point;
|
||||
if(oldType == CalibType.Four_Point && myEyeHandCalib.calibType == CalibType.Nine_Point)
|
||||
{
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
DataRow dr = myEyeHandCalib.CalibSourceDataTable.NewRow();
|
||||
dr[0] = 0;
|
||||
dr[1] = 50;
|
||||
dr[2] = 0;
|
||||
dr[3] = 50;
|
||||
myEyeHandCalib.CalibSourceDataTable.Rows.Add(dr);
|
||||
}
|
||||
}
|
||||
else if(oldType == CalibType.Nine_Point && myEyeHandCalib.calibType == CalibType.Four_Point)
|
||||
{
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
myEyeHandCalib.CalibSourceDataTable.Rows.RemoveAt(myEyeHandCalib.CalibSourceDataTable.Rows.Count - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void FormEyeHandCalib_Load(object sender, EventArgs e)
|
||||
{
|
||||
// 若为空,表示该工具未经标定校正
|
||||
if(myEyeHandCalib.CalibSourceDataTable == null)
|
||||
{
|
||||
myEyeHandCalib.InitDataTable();
|
||||
}
|
||||
CalibDataGrid.DataSource = myEyeHandCalib.CalibSourceDataTable;
|
||||
chbSelectCalibType.SelectedItem = myEyeHandCalib.calibType == CalibType.Four_Point ? "四点标定" : "九点标定";
|
||||
txbScaleX.Text = (Convert.ToDouble(myEyeHandCalib.ScanX.ToString())).ToString("0.00");
|
||||
txbScaleY.Text = (Convert.ToDouble(myEyeHandCalib.ScanY.ToString())).ToString("0.00");
|
||||
txbRatation.Text = (Convert.ToDouble(myEyeHandCalib.Rotation.ToString())).ToString("0.00");
|
||||
txbTheta.Text = (Convert.ToDouble(myEyeHandCalib.Theta.ToString())).ToString("0.00");
|
||||
txbMoveX.Text = (Convert.ToDouble(myEyeHandCalib.TranslateX.ToString())).ToString("0.00");
|
||||
txbMoveY.Text = (Convert.ToDouble(myEyeHandCalib.TranslateY.ToString())).ToString("0.00");
|
||||
|
||||
}
|
||||
|
||||
private void CalibDataGrid_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
|
||||
{
|
||||
using (SolidBrush b = new SolidBrush(
|
||||
CalibDataGrid.RowHeadersDefaultCellStyle.ForeColor))
|
||||
{
|
||||
e.Graphics.DrawString((e.RowIndex + 1).ToString(
|
||||
System.Globalization.CultureInfo.CurrentCulture),
|
||||
CalibDataGrid.DefaultCellStyle.Font
|
||||
, b, e.RowBounds.Location.X + 10, e.RowBounds.Location.Y);
|
||||
}
|
||||
}
|
||||
|
||||
private void btnImportData_Click(object sender, EventArgs e)
|
||||
{
|
||||
myEyeHandCalib.ReadCalibData();
|
||||
CalibDataGrid.Refresh();
|
||||
}
|
||||
|
||||
private void btnExportData_Click(object sender, EventArgs e)
|
||||
{
|
||||
myEyeHandCalib.ExportCalibData();
|
||||
}
|
||||
|
||||
private void btnCalibManual_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(myEyeHandCalib.ManulCalib())
|
||||
{
|
||||
// 仿射矩阵信息
|
||||
txbScaleX.Text = (Convert.ToDouble(myEyeHandCalib.ScanX.ToString())).ToString("0.00");
|
||||
txbScaleY.Text = (Convert.ToDouble(myEyeHandCalib.ScanY.ToString())).ToString("0.00");
|
||||
txbRatation.Text = (Convert.ToDouble(myEyeHandCalib.Rotation.ToString())).ToString("0.00");
|
||||
txbTheta.Text = (Convert.ToDouble(myEyeHandCalib.Theta.ToString())).ToString("0.00");
|
||||
txbMoveX.Text = (Convert.ToDouble(myEyeHandCalib.TranslateX.ToString())).ToString("0.00");
|
||||
txbMoveY.Text = (Convert.ToDouble(myEyeHandCalib.TranslateY.ToString())).ToString("0.00");
|
||||
// 映射成功,则保存矩阵
|
||||
HOperatorSet.WriteTuple(myEyeHandCalib.homMat2D, myEyeHandCalib.homMat2DName + ".tup");
|
||||
MessageBox.Show("仿射矩阵已经保存成功!");
|
||||
}
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 设定工具运行状态
|
||||
/// </summary>`
|
||||
/// <param name="msg">运行中的信息</param>
|
||||
/// <param name="status">运行状态</param>
|
||||
public void SetToolStatus(string msg, ToolRunStatu status)
|
||||
{
|
||||
if (myEyeHandCalib != null)
|
||||
{
|
||||
myEyeHandCalib.runMessage = msg;
|
||||
myEyeHandCalib.toolRunStatu = status;
|
||||
lb_RunStatus.Text = myEyeHandCalib.toolRunStatu == ToolRunStatu.Succeed ? "工具运行成功!" : $"工具运行异常, 异常原因:{myEyeHandCalib.runMessage}";
|
||||
lb_RunTime.Text = myEyeHandCalib.runTime;
|
||||
statusStrip.BackColor = myEyeHandCalib.toolRunStatu == ToolRunStatu.Succeed ? Color.LimeGreen : Color.Red;
|
||||
}
|
||||
}
|
||||
|
||||
private void tsbtRunTool_Click(object sender, EventArgs e)
|
||||
{
|
||||
myEyeHandCalib.Run(SoftwareRunState.Debug);
|
||||
}
|
||||
}
|
||||
}
|
||||
384
EyeHandCalibTool/FormEyeHandCalib.resx
Normal file
384
EyeHandCalibTool/FormEyeHandCalib.resx
Normal file
@@ -0,0 +1,384 @@
|
||||
<?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>
|
||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>40, 19</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="tsbtRunTool.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>150, 19</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAIAEBAAAAEAIABoBAAAJgAAADAwAAABACAAqCUAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAADAE
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAED/LAA+/3QAPf+fAD3/nwA+
|
||||
/3MAO/8rAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO/8NAD7/oQA9//4aUf//RHH//0Rx
|
||||
//8ZUP//AD3//gA9/58AQP8MAAAAAAAAAAAAAAAAAAAAAAAAAAAAO/8NAD7/zxtS//+vwv///f3/////
|
||||
/////////f3//63B//8aUf//AD3/zgBA/wwAAAAAAAAAAAAAAAAAAAAAAD3/ohpR///i6f//2eL//1B6
|
||||
//8NR///DUf//1F7///b5P//4ej//xhP//8APf+eAAAAAAAAAAAAAAAAAED/KAA9//2xxP//1+H//xBJ
|
||||
//8sXv//kqz//5Gr//8qXf//EEn//9ni//+twf//AD3//QA8/yYAAAAAAAAAAAA8/3sbUv///v7//095
|
||||
//8uYP//+Pr//9Db///R3P//+Pr//yxe//9Re////f3//xlQ//8APv94AAAAAAAAAAAAPf+fSXX/////
|
||||
//8MRv//k63//8/a//8HPvD/CD7t/9Db//+Rq///Dkj///////9IdP//AD3/ngAAAAAAAAAAAD3/n0l1
|
||||
////////DUf//5Gr///P2v//CT/r/zlFb//DzOn/j6r//w9I////////R3P//wA9/54AAAAAAAAAAAA+
|
||||
/3wbUv///v7//095//8uYP//+Pr//9Db///AyOT/f3tw/y9c7v9Re////f3//xlQ//8APf95AAAAAAAA
|
||||
AAAAPv8tAD3//rHE///X4f//EEn//yxe//+SrP//kav//y9a5P89SHD/zdTu/63B//8APf/+ADv/KwAA
|
||||
AAAAAAAAAAAAAAA9/6waUf//4un//9ni//9Qev//FEz//xRM//9Re///yM3h/8WIPf+nclH/TFGtwAAA
|
||||
AAAAAAAAAAAAAAAAAAAAQP8QAD3/0RtS//+vwv///f3//////////////f3//63B//+jbU3/0o88/813
|
||||
IfjRdBchAAAAAAAAAAAAAAAAAAAAAABA/xAAPP+tAD3//xpR//9Ecf//RHH//xlQ//8APf/+UlWlxMh1
|
||||
H/pkUje9TkM3FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8/y8APf+CAD3/pAA9/6QAPf+BAD3/LgAA
|
||||
AADPeBggUkczGVVJPRUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD+fwAA8A8AAOAHAADAAwAAwAMAAMADAACAAQAAgAEAAMAD
|
||||
AADAAwAAwAMAAOADAADwAwAA/D8AAP//AAAoAAAAMAAAAGAAAAABACAAAAAAAFAlAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAP8CAD3/NgA+/3QAPf+oAD3/0gA9/+4APf//AD3//wA9/+4APf/RAD3/qAA+/3MAP/81AAD/AgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAED/HAA9/4kAPv/kAD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3/4wA+/4gAOf8bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAA5/xIAPf+TAD3/+AA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf/4AD7/kQA8/xEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAD7/VgA9/+oAPf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9/+kAPf9UAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAr/wYAPv+ZAD3//wA9//8APf//AD3//wA9//8APf//EUr//16F
|
||||
//+ht///ytf//+jt///8/f///P3//+jt///J1v//oLf//1yD//8QSf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3/lgAz/wUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAED/DAA8/7oAPf//AD3//wA9//8APf//AD3//xpR
|
||||
//+dtP//+Pr////////////////////////////////////////////////////////3+f//m7P//xlQ
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9/7cARv8LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVf8DAD7/rgA9//8APf//AD3//wA9
|
||||
//8GQv//fp3///T3////////////////////////////////////////////////////////////////
|
||||
//////////////P2//98m///BkL//wA9//8APf//AD3//wA9//8APP+tAAD/AgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPf+XAD3//wA9
|
||||
//8APf//AD3//xJL//+8zP//////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////usv//xJL//8APf//AD3//wA9//8APf//AD3/kgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9
|
||||
/1gAPf//AD3//wA9//8APf//LmD//+Lp/////////////////////////////+Xr//+Urv//RnL//yFW
|
||||
//8HQv//B0L//yJX//9Gcv//la7//+bs/////////////////////////////+Dn//8sXv//AD3//wA9
|
||||
//8APf//AD3//wA9/1QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAADf/DgA9/+YAPf//AD3//wA9//8UTP//3eX////////////////////////r8P//d5j//whD
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//whD//93mP//6/D/////////////////////
|
||||
///c5P//E0v//wA9//8APf//AD3//wA9/+UAO/8NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAD7/lQA9//8APf//AD3//wlE///L1////////////////////////6q+
|
||||
//8KRf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//C0X//6zA
|
||||
////////////////////////yNX//whD//8APf//AD3//wA9//8APP+QAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQP8YAD3/9gA9//8APf//AD3//4+q////////////////
|
||||
////////i6f//wE+//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wE+//+NqP///////////////////////4Sh//8APf//AD3//wA9//8APf/1ADr/FgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPv+IAD3//wA9//8APf//J1v///v8
|
||||
//////////////////+uwf//AT7//wA9//8APf//AD3//wA9//8tX///kKv//9Xf///3+f//9/n//9Xf
|
||||
//+Pqv//LF7//wA9//8APf//AD3//wA9//8CP///sMP///////////////////T3//8ZUP//AD3//wA9
|
||||
//8APf//AD3/hQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wIAPf/iAD3//wA9
|
||||
//8APf//nrX//////////////////+Pq//8MRv//AD3//wA9//8APf//CUT//5ix///9/f//////////
|
||||
/////////////////////////P3//5ew//8IQ///AD3//wA9//8APf//DUf//+Xr////////////////
|
||||
//+XsP//AD3//wA9//8APf//AD3/3QAA/wEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+
|
||||
/zoAPf//AD3//wA9//8PSP//9vj//////////////////2CG//8APf//AD3//wA9//8JRP//x9T/////
|
||||
///////////////////////////////////////////////////F0///CEP//wA9//8APf//AD3//2KI
|
||||
///////////////////09///DEb//wA9//8APf//AD3//wA9/zYAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAA8/3sAPf//AD3//wA9//9bgv//////////////////3+f//wI///8APf//AD3//wA9
|
||||
//+dtP//////////////////////////////////////////////////////////////////mbH//wA9
|
||||
//8APf//AD3//wM////h6P//////////////////Vn7//wA9//8APf//AD3//wA8/3cAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/6wAPf//AD3//wA9//+ctP//////////////////kKv//wA9
|
||||
//8APf//AD3//y1f///9/f//////////////////1+H//054//8NR///DUf//095///Y4f//////////
|
||||
/////////f3//yxe//8APf//AD3//wA9//+Trf//////////////////mLH//wA9//8APf//AD3//wA+
|
||||
/6oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/9QAPf//AD3//wA9///K1///////////
|
||||
////////R3P//wA9//8APf//AD3//5Ks///////////////////V3///Dkj//wA9//8APf//AD3//wA9
|
||||
//8PSP//1+H//////////////////4+q//8APf//AD3//wA9//9Jdf//////////////////x9T//wA9
|
||||
//8APf//AD3//wA9/9IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/+0APf//AD3//wA9
|
||||
///r8P//////////////////JVn//wA9//8APf//AD3//9fh//////////////////9NeP//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//T3n//////////////////9Xf//8APf//AD3//wA9//8nW///////////
|
||||
////////6e7//wA9//8APf//AD3//wA9/+sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9
|
||||
//oAPf//AD3//wA9///6+///////////////////C0X//wA9//8APf//AD3///T3////////////////
|
||||
//8LRf//AD3//wA9//88RWj/PkRj/wY+7/8APf//DUf///////////////////L1//8APf//AD3//wA9
|
||||
//8NR///////////////////+Pr//wA9//8APf//AD3//wA9//gAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAA9//kAPf//AD3//wA9///5+v//////////////////DUf//wA9//8APf//AD3///P2
|
||||
//////////////////8MRv//AD3//wA9//8/RWH/T0c3/0FFW/8GPu//Dkj///////////////////H0
|
||||
//8APf//AD3//wA9//8OSP//////////////////9/n//wA9//8APf//AD3//wA9//gAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/+0APf//AD3//wA9///r8P//////////////////JVn//wA9
|
||||
//8APf//AD3//9fh//////////////////9NeP//AD3//wA9//8IPuv/Q0VW/09HN/8+RWH/T3bz////
|
||||
/////////////9Te//8APf//AD3//wA9//8oW///////////////////6e7//wA9//8APf//AD3//wA9
|
||||
/+sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/9QAPf//AD3//wA9///K1///////////
|
||||
////////R3P//wA9//8APf//AD3//5Ks///////////////////V3///DUf//wA9//8APf//CD7r/0NF
|
||||
Vv9PRzf/bGhh//X08////////////4+q//8APf//AD3//wA9//9Jdf//////////////////x9T//wA9
|
||||
//8APf//AD3//wA9/9IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9/68APf//AD3//wA9
|
||||
//+ctP//////////////////kKv//wA9//8APf//AD3//y1f///9/f//////////////////z9r//0t2
|
||||
//8UTP//FEz//0xy6/9jXVb/T0c3/3RuYf/19PP//f3//yxe//8APf//AD3//wA9//+Trf//////////
|
||||
////////mLH//wA9//8APf//AD3//wA9/6wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8
|
||||
/3sAPf//AD3//wA9//9bgv//////////////////3+f//wI///8APf//AD3//wA9//+dtP//////////
|
||||
///////////////////////////////////t7Ov/amNW/09HN/90bmH/lavz/wA9//8APf//AD3//wM/
|
||||
///h6P//////////////////Vn7//wA9//8APf//AD3//wA8/3cAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAA+/zoAPf//AD3//wA9//8PSP//9vj//////////////////2CG//8APf//AD3//wA9
|
||||
//8JRP//x9T/////////////////////////////////////////////7ezr/2pjVv9PRzf/QEZh/wU9
|
||||
8/8APf//AD3//2KI///////////////////09///DEb//wA9//8APf//AD3//wA9/zYAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAz/wUAPP/oAD3//wA9//8APf//nrX//////////////////+Pq
|
||||
//8MRv//AD3//wA9//8APf//CUT//5ix///9/f///////////////////////////////////P3//5Cl
|
||||
6/9ERlb/T0c3/z5FYf8FPfP/DUf//+Xr//////////////////+XsP//AD3//wA9//8APf//AD3/5QBV
|
||||
/wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPv+IAD3//wA9//8APf//J1v///v8
|
||||
//////////////////+uwf//AT7//wA9//8APf//AD3//wA9//8tX///kKv//9Te///r8P//6/D//9Te
|
||||
//+Pqv//LF7//wA9//8IPuv/Q0VW/09HN/8+RWH/q7zz//////////////////T3//8ZUP//AD3//wA9
|
||||
//8APf//AD3/hQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOv8jAD3//AA9
|
||||
//8APf//AD3//4+q////////////////////////i6f//wE+//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf//CD7r/0NFVv9PRzf/dG1f//X08////////////4Sh
|
||||
//8APf//AD3//wA9//8APf/6ADr/HwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAD7/nQA9//8APf//AD3//wlE///L1////////////////////////6q+//8KRf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//C0X//6Kz6/9pYVP/XlA4/86O
|
||||
P//cnFr/zaeQ/zJOz/8CPv3/AD3//wA9//8APv+ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAADn/GwA9//EAPf//AD3//wA9//8eVP//6O3/////////////////////
|
||||
///a4///VX7//wI///8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wI///9Vfv//2+T/////
|
||||
///t7Ov/woc9//WlQv/nnUH/0Xoh/9J2Gf/Ccir/eF57/xZD5/AAN/8XAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+/1oAPf//AD3//wA9//8APf//LmD//+Tq
|
||||
/////////////////////////////+Xr//+Urv//RnL//yhb//8UTP//FEz//ylc//9Gcv//la7//+bs
|
||||
////////////////////////0ZRT/9mUP//1pUL/45pA/9B5IP/Sdhn/0nYZ/8x1IPLSeBciAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPv+hAD3//wA9
|
||||
//8APf//AD3//yBV///T3v//////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////0qeG/8h1H//ZlD//9aVC/+OaQP/QeSD/0nYZ/9J2
|
||||
Gf/RdhnPv4AABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAARv8LAD7/xwA9//8APf//AD3//wA9//8LRf//lK7///z9////////////////////////////////
|
||||
//////////////////////////////////////////////z9//+Rq///PFHG/9J2Gf/IdR//2ZQ///Wl
|
||||
Qv/jmkD/0Hkg/9J2Gf/Sdhn/0ncZZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAED/DAA8/7oAPf//AD3//wA9//8APf//AD3//yxe//+kuv//+Pr/////
|
||||
///////////////////////////////////////////////////3+f//orj//ypd//8APf//BD76/8dz
|
||||
Jf/Sdhn/x3Qe/9SRP//1pUL/551B/9F5If/Sdhn/0nYa0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAr/wYAPv+ZAD3//wA9//8APf//AD3//wA9
|
||||
//8APf//EUr//16F//+ht///ytf//+jt///u8v//7vL//+jt///J1v//oLf//1yD//8QSf//AD3//wA9
|
||||
//8APf//AD3//4Bgcv/Sdhn/0nYZ/8h1H//ZlD//zo8//1hNN8tVRDMPAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7/VgA9
|
||||
/+oAPf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//xlE5OvMdSDy0nYZ/9J2Gf/Hcx7/V0s32U9HN/9PRzfJVUQzDwAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAA5/xIAPf+TAD3/+AA9//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf/4AD7/kQA8/xHPdRwl0nYZ1NJ2Gf/Sdhn/VUk9FU9H
|
||||
N9FPRzf/T0c3yQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAED/HAA9/4kAPv/kAD3//wA9//8APf//AD3//wA9
|
||||
//8APf//AD3//wA9//8APf//AD3//wA9//8APf//AD3/4wA+/4gAOf8bAAAAAAAAAAAAAAAAzGYABdJ3
|
||||
GWfSdRnKAAAAAFVJPRVPRzfJTkY2wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8CAD3/NgA+
|
||||
/3QAPf+oAD3/0gA9/+4APf/uAD3/7gA9/+4APf/RAD3/qAA+/3MAP/81AAD/AgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP//
|
||||
/////wAA////////AAD///AP//8AAP//AAD//wAA//wAAD//AAD/+AAAH/8AAP/gAAAH/wAA/8AAAAP/
|
||||
AAD/gAAAAf8AAP8AAAAA/wAA/wAAAAD/AAD+AAAAAH8AAPwAAAAAPwAA/AAAAAA/AAD4AAAAAB8AAPgA
|
||||
AAAAHwAA+AAAAAAfAAD4AAAAAB8AAPAAAAAADwAA8AAAAAAPAADwAAAAAA8AAPAAAAAADwAA8AAAAAAP
|
||||
AADwAAAAAA8AAPAAAAAADwAA8AAAAAAPAAD4AAAAAB8AAPgAAAAAHwAA+AAAAAAfAAD4AAAAAB8AAPwA
|
||||
AAAAPwAA/AAAAAA/AAD+AAAAAH8AAP8AAAAAfwAA/wAAAAA/AAD/gAAAAD8AAP/AAAAAHwAA/+AAAAB/
|
||||
AAD/+AAAAD8AAP/8AAAxHwAA//8AAP2fAAD///AP//8AAP///////wAA////////AAD///////8AAP//
|
||||
/////wAA
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
36
EyeHandCalibTool/Properties/AssemblyInfo.cs
Normal file
36
EyeHandCalibTool/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// 有关程序集的一般信息由以下
|
||||
// 控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("EyeHandCalibTool")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("EyeHandCalibTool")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2022")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
//将 ComVisible 设置为 false 将使此程序集中的类型
|
||||
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
|
||||
//请将此类型的 ComVisible 特性设置为 true。
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||
[assembly: Guid("46ee89bb-5ec9-4ead-9e32-3e57288a0bf7")]
|
||||
|
||||
// 程序集的版本信息由下列四个值组成:
|
||||
//
|
||||
// 主版本
|
||||
// 次版本
|
||||
// 生成号
|
||||
// 修订号
|
||||
//
|
||||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
63
EyeHandCalibTool/Properties/Resources.Designer.cs
generated
Normal file
63
EyeHandCalibTool/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace EyeHandCalibTool.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 一个强类型的资源类,用于查找本地化的字符串等。
|
||||
/// </summary>
|
||||
// 此类是由 StronglyTypedResourceBuilder
|
||||
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
|
||||
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
|
||||
// (以 /str 作为命令选项),或重新生成 VS 项目。
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 返回此类使用的缓存的 ResourceManager 实例。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("EyeHandCalibTool.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 使用此强类型资源类,为所有资源查找
|
||||
/// 重写当前线程的 CurrentUICulture 属性。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
120
EyeHandCalibTool/Properties/Resources.resx
Normal file
120
EyeHandCalibTool/Properties/Resources.resx
Normal 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>
|
||||
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using HalconDotNet;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
using ToolBase;
|
||||
using CommonMethods;
|
||||
using ViewROI;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using HalconDotNet;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
using ToolBase;
|
||||
using CommonMethods;
|
||||
using System.Diagnostics;
|
||||
@@ -15,20 +15,12 @@ namespace FindLineTool
|
||||
/// <summary>
|
||||
/// 输入姿态
|
||||
/// </summary>
|
||||
public PosXYU inputPose = new PosXYU();
|
||||
/// <summary>
|
||||
/// 输入姿态
|
||||
/// </summary>
|
||||
public HTuple inputPoseHomMat2D = new HTuple();
|
||||
/// <summary>
|
||||
/// 位置修正姿态
|
||||
/// </summary>
|
||||
public HTuple changePoseHomMat2D = new HTuple();
|
||||
/// <summary>
|
||||
/// 制作模板时的位姿
|
||||
/// </summary>
|
||||
public PosXYU templatePose = new PosXYU();
|
||||
/// <summary>
|
||||
/// 修改的位姿
|
||||
/// </summary>
|
||||
public HTuple changedPose = new HTuple();
|
||||
|
||||
@@ -25,7 +25,7 @@ using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using ToolLib.VisionJob;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
|
||||
namespace FindLineTool
|
||||
{
|
||||
|
||||
46
FormLib/FormInputInfo.Designer.cs
generated
Normal file
46
FormLib/FormInputInfo.Designer.cs
generated
Normal file
@@ -0,0 +1,46 @@
|
||||
namespace FormLib
|
||||
{
|
||||
partial class FormInputInfo
|
||||
{
|
||||
/// <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.SuspendLayout();
|
||||
//
|
||||
// FormInputInfo
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(553, 189);
|
||||
this.Name = "FormInputInfo";
|
||||
this.Text = "InputForm";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
21
FormLib/FormInputInfo.cs
Normal file
21
FormLib/FormInputInfo.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using Sunny.UI;
|
||||
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 FormLib
|
||||
{
|
||||
public partial class FormInputInfo :UIForm
|
||||
{
|
||||
public FormInputInfo()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
120
FormLib/FormInputInfo.resx
Normal file
120
FormLib/FormInputInfo.resx
Normal 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>
|
||||
@@ -37,6 +37,14 @@
|
||||
<Reference Include="halcondotnet">
|
||||
<HintPath>C:\Program Files\MVTec\HALCON-19.05-Progress\bin\dotnet20\halcondotnet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI, Version=3.0.9.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI.Common, Version=3.0.9.0, Culture=neutral, PublicKeyToken=5a271fb7ba597231, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.Common.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
@@ -64,15 +72,33 @@
|
||||
<Compile Include="FormLog.Designer.cs">
|
||||
<DependentUpon>FormLog.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="FormInputInfo.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormInputInfo.Designer.cs">
|
||||
<DependentUpon>FormInputInfo.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="ToolBaseForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ToolBaseForm.Designer.cs">
|
||||
<DependentUpon>ToolBaseForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="FormImageWindow.cs.resx">
|
||||
<DependentUpon>FormImageWindow.cs.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormInputInfo.resx">
|
||||
<DependentUpon>FormInputInfo.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormLog.resx">
|
||||
<DependentUpon>FormLog.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ToolBaseForm.resx">
|
||||
<DependentUpon>ToolBaseForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\CommonMethods\CommonHelper.csproj">
|
||||
|
||||
116
FormLib/ToolBaseForm.Designer.cs
generated
Normal file
116
FormLib/ToolBaseForm.Designer.cs
generated
Normal file
@@ -0,0 +1,116 @@
|
||||
namespace FormLib
|
||||
{
|
||||
partial class ToolBaseForm
|
||||
{
|
||||
/// <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()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ToolBaseForm));
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
this.tsbtRunTool = new System.Windows.Forms.ToolStripButton();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStrip1.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStrip1
|
||||
//
|
||||
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(25, 25);
|
||||
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsbtRunTool});
|
||||
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStrip1.Name = "toolStrip1";
|
||||
this.toolStrip1.Size = new System.Drawing.Size(920, 32);
|
||||
this.toolStrip1.TabIndex = 3;
|
||||
this.toolStrip1.Text = "toolStrip1";
|
||||
//
|
||||
// tsbtRunTool
|
||||
//
|
||||
this.tsbtRunTool.Image = ((System.Drawing.Image)(resources.GetObject("tsbtRunTool.Image")));
|
||||
this.tsbtRunTool.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbtRunTool.Name = "tsbtRunTool";
|
||||
this.tsbtRunTool.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbtRunTool.Text = "运行工具";
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.lb_RunStatus,
|
||||
this.toolStripStatusLabel1,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 563);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(920, 22);
|
||||
this.statusStrip.TabIndex = 2;
|
||||
//
|
||||
// lb_RunStatus
|
||||
//
|
||||
this.lb_RunStatus.Name = "lb_RunStatus";
|
||||
this.lb_RunStatus.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// toolStripStatusLabel1
|
||||
//
|
||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||
this.toolStripStatusLabel1.Size = new System.Drawing.Size(16, 17);
|
||||
this.toolStripStatusLabel1.Text = " ";
|
||||
//
|
||||
// lb_RunTime
|
||||
//
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// ToolBaseForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(920, 585);
|
||||
this.Controls.Add(this.toolStrip1);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Name = "ToolBaseForm";
|
||||
this.Text = "工具";
|
||||
this.toolStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||
private System.Windows.Forms.ToolStripButton tsbtRunTool;
|
||||
private System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunStatus;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunTime;
|
||||
}
|
||||
}
|
||||
20
FormLib/ToolBaseForm.cs
Normal file
20
FormLib/ToolBaseForm.cs
Normal 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 FormLib
|
||||
{
|
||||
public partial class ToolBaseForm : Form
|
||||
{
|
||||
public ToolBaseForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
199
FormLib/ToolBaseForm.resx
Normal file
199
FormLib/ToolBaseForm.resx
Normal file
@@ -0,0 +1,199 @@
|
||||
<?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>
|
||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>1, 19</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="tsbtRunTool.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>111, 19</value>
|
||||
</metadata>
|
||||
</root>
|
||||
259
HDevEngineTool/FormHDevEngineTool.Designer.cs
generated
Normal file
259
HDevEngineTool/FormHDevEngineTool.Designer.cs
generated
Normal file
@@ -0,0 +1,259 @@
|
||||
namespace HDevEngineTool
|
||||
{
|
||||
partial class FormHDevEngineTool
|
||||
{
|
||||
/// <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()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormHDevEngineTool));
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
this.tsbtRunTool = new System.Windows.Forms.ToolStripButton();
|
||||
this.tsbReadHdev = new System.Windows.Forms.ToolStripButton();
|
||||
this.tsbSaveHdev = new System.Windows.Forms.ToolStripButton();
|
||||
this.tsbReLoad = new System.Windows.Forms.ToolStripButton();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.uiSplitContainer1 = new Sunny.UI.UISplitContainer();
|
||||
this.panelHImageWindow = new System.Windows.Forms.Panel();
|
||||
this.uiTabControl1 = new Sunny.UI.UITabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.txbCodeText = new Sunny.UI.UIRichTextBox();
|
||||
this.tabPage2 = new System.Windows.Forms.TabPage();
|
||||
this.toolStrip1.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.uiSplitContainer1)).BeginInit();
|
||||
this.uiSplitContainer1.Panel1.SuspendLayout();
|
||||
this.uiSplitContainer1.Panel2.SuspendLayout();
|
||||
this.uiSplitContainer1.SuspendLayout();
|
||||
this.uiTabControl1.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStrip1
|
||||
//
|
||||
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(25, 25);
|
||||
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsbtRunTool,
|
||||
this.tsbReadHdev,
|
||||
this.tsbSaveHdev,
|
||||
this.tsbReLoad});
|
||||
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStrip1.Name = "toolStrip1";
|
||||
this.toolStrip1.Size = new System.Drawing.Size(1277, 32);
|
||||
this.toolStrip1.TabIndex = 5;
|
||||
this.toolStrip1.Text = "toolStrip1";
|
||||
//
|
||||
// tsbtRunTool
|
||||
//
|
||||
this.tsbtRunTool.Image = ((System.Drawing.Image)(resources.GetObject("tsbtRunTool.Image")));
|
||||
this.tsbtRunTool.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbtRunTool.Name = "tsbtRunTool";
|
||||
this.tsbtRunTool.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbtRunTool.Text = "运行工具";
|
||||
this.tsbtRunTool.Click += new System.EventHandler(this.tsbtRunTool_Click);
|
||||
//
|
||||
// tsbReadHdev
|
||||
//
|
||||
this.tsbReadHdev.Image = ((System.Drawing.Image)(resources.GetObject("tsbReadHdev.Image")));
|
||||
this.tsbReadHdev.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbReadHdev.Name = "tsbReadHdev";
|
||||
this.tsbReadHdev.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbReadHdev.Text = "代码读取";
|
||||
this.tsbReadHdev.Click += new System.EventHandler(this.tsbReadHdev_Click);
|
||||
//
|
||||
// tsbSaveHdev
|
||||
//
|
||||
this.tsbSaveHdev.Image = ((System.Drawing.Image)(resources.GetObject("tsbSaveHdev.Image")));
|
||||
this.tsbSaveHdev.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbSaveHdev.Name = "tsbSaveHdev";
|
||||
this.tsbSaveHdev.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbSaveHdev.Text = "程序保存";
|
||||
this.tsbSaveHdev.Click += new System.EventHandler(this.tsbSaveHdev_Click);
|
||||
//
|
||||
// tsbReLoad
|
||||
//
|
||||
this.tsbReLoad.Image = ((System.Drawing.Image)(resources.GetObject("tsbReLoad.Image")));
|
||||
this.tsbReLoad.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbReLoad.Name = "tsbReLoad";
|
||||
this.tsbReLoad.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbReLoad.Text = "重新载入";
|
||||
this.tsbReLoad.Click += new System.EventHandler(this.tsbReLoad_Click);
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.lb_RunStatus,
|
||||
this.toolStripStatusLabel1,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 601);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(1277, 22);
|
||||
this.statusStrip.TabIndex = 4;
|
||||
//
|
||||
// lb_RunStatus
|
||||
//
|
||||
this.lb_RunStatus.Name = "lb_RunStatus";
|
||||
this.lb_RunStatus.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// toolStripStatusLabel1
|
||||
//
|
||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||
this.toolStripStatusLabel1.Size = new System.Drawing.Size(16, 17);
|
||||
this.toolStripStatusLabel1.Text = " ";
|
||||
//
|
||||
// lb_RunTime
|
||||
//
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// uiSplitContainer1
|
||||
//
|
||||
this.uiSplitContainer1.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.uiSplitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.uiSplitContainer1.Location = new System.Drawing.Point(0, 32);
|
||||
this.uiSplitContainer1.Name = "uiSplitContainer1";
|
||||
//
|
||||
// uiSplitContainer1.Panel1
|
||||
//
|
||||
this.uiSplitContainer1.Panel1.Controls.Add(this.panelHImageWindow);
|
||||
//
|
||||
// uiSplitContainer1.Panel2
|
||||
//
|
||||
this.uiSplitContainer1.Panel2.Controls.Add(this.uiTabControl1);
|
||||
this.uiSplitContainer1.Size = new System.Drawing.Size(1277, 569);
|
||||
this.uiSplitContainer1.SplitterDistance = 630;
|
||||
this.uiSplitContainer1.SplitterWidth = 11;
|
||||
this.uiSplitContainer1.TabIndex = 6;
|
||||
//
|
||||
// panelHImageWindow
|
||||
//
|
||||
this.panelHImageWindow.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.panelHImageWindow.Location = new System.Drawing.Point(0, 0);
|
||||
this.panelHImageWindow.Name = "panelHImageWindow";
|
||||
this.panelHImageWindow.Size = new System.Drawing.Size(630, 569);
|
||||
this.panelHImageWindow.TabIndex = 0;
|
||||
//
|
||||
// uiTabControl1
|
||||
//
|
||||
this.uiTabControl1.Controls.Add(this.tabPage1);
|
||||
this.uiTabControl1.Controls.Add(this.tabPage2);
|
||||
this.uiTabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.uiTabControl1.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
|
||||
this.uiTabControl1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiTabControl1.ItemSize = new System.Drawing.Size(150, 40);
|
||||
this.uiTabControl1.Location = new System.Drawing.Point(0, 0);
|
||||
this.uiTabControl1.MainPage = "";
|
||||
this.uiTabControl1.Name = "uiTabControl1";
|
||||
this.uiTabControl1.SelectedIndex = 0;
|
||||
this.uiTabControl1.Size = new System.Drawing.Size(636, 569);
|
||||
this.uiTabControl1.SizeMode = System.Windows.Forms.TabSizeMode.Fixed;
|
||||
this.uiTabControl1.TabIndex = 0;
|
||||
//
|
||||
// tabPage1
|
||||
//
|
||||
this.tabPage1.Controls.Add(this.txbCodeText);
|
||||
this.tabPage1.Location = new System.Drawing.Point(0, 40);
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
this.tabPage1.Size = new System.Drawing.Size(636, 529);
|
||||
this.tabPage1.TabIndex = 0;
|
||||
this.tabPage1.Text = "工具代码";
|
||||
this.tabPage1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// txbCodeText
|
||||
//
|
||||
this.txbCodeText.AutoWordSelection = true;
|
||||
this.txbCodeText.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.txbCodeText.FillColor = System.Drawing.Color.White;
|
||||
this.txbCodeText.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbCodeText.IsScaled = false;
|
||||
this.txbCodeText.Location = new System.Drawing.Point(0, 0);
|
||||
this.txbCodeText.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbCodeText.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.txbCodeText.Name = "txbCodeText";
|
||||
this.txbCodeText.Padding = new System.Windows.Forms.Padding(2);
|
||||
this.txbCodeText.Size = new System.Drawing.Size(636, 529);
|
||||
this.txbCodeText.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbCodeText.TabIndex = 0;
|
||||
this.txbCodeText.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.txbCodeText.WordWrap = true;
|
||||
//
|
||||
// tabPage2
|
||||
//
|
||||
this.tabPage2.Location = new System.Drawing.Point(0, 40);
|
||||
this.tabPage2.Name = "tabPage2";
|
||||
this.tabPage2.Size = new System.Drawing.Size(636, 529);
|
||||
this.tabPage2.TabIndex = 1;
|
||||
this.tabPage2.Text = "其他";
|
||||
this.tabPage2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// FormHDevEngineTool
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1277, 623);
|
||||
this.Controls.Add(this.uiSplitContainer1);
|
||||
this.Controls.Add(this.toolStrip1);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Name = "FormHDevEngineTool";
|
||||
this.Text = "FormHDevEngineTool";
|
||||
this.Load += new System.EventHandler(this.FormHDevEngineTool_Load);
|
||||
this.toolStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.uiSplitContainer1.Panel1.ResumeLayout(false);
|
||||
this.uiSplitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.uiSplitContainer1)).EndInit();
|
||||
this.uiSplitContainer1.ResumeLayout(false);
|
||||
this.uiTabControl1.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||
private System.Windows.Forms.ToolStripButton tsbtRunTool;
|
||||
private System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunStatus;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunTime;
|
||||
private Sunny.UI.UISplitContainer uiSplitContainer1;
|
||||
private System.Windows.Forms.Panel panelHImageWindow;
|
||||
private Sunny.UI.UITabControl uiTabControl1;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private Sunny.UI.UIRichTextBox txbCodeText;
|
||||
private System.Windows.Forms.TabPage tabPage2;
|
||||
private System.Windows.Forms.ToolStripButton tsbReadHdev;
|
||||
private System.Windows.Forms.ToolStripButton tsbSaveHdev;
|
||||
private System.Windows.Forms.ToolStripButton tsbReLoad;
|
||||
}
|
||||
}
|
||||
128
HDevEngineTool/FormHDevEngineTool.cs
Normal file
128
HDevEngineTool/FormHDevEngineTool.cs
Normal file
@@ -0,0 +1,128 @@
|
||||
using CommonMethods;
|
||||
using FormLib;
|
||||
using HalconDotNet;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using ViewROI;
|
||||
|
||||
namespace HDevEngineTool
|
||||
{
|
||||
public partial class FormHDevEngineTool : Form
|
||||
{
|
||||
private HDevEngineCode myHDevEngine = new HDevEngineCode();
|
||||
public IToolInfo myToolInfo = new IToolInfo();
|
||||
public HWindowTool_Smart myHwindow = new HWindowTool_Smart();
|
||||
|
||||
public FormHDevEngineTool(ref object hdevEngine)
|
||||
{
|
||||
InitializeComponent();
|
||||
_instance = this;
|
||||
if (hdevEngine.GetType().FullName != "System.Object")
|
||||
{
|
||||
myToolInfo = (IToolInfo)hdevEngine;
|
||||
myHDevEngine = (HDevEngineCode)myToolInfo.tool;
|
||||
myHDevEngine.toolName = myToolInfo.FormToolName;
|
||||
myHDevEngine.DispImage();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 窗体对象实例
|
||||
/// </summary>
|
||||
private static FormHDevEngineTool _instance;
|
||||
public static FormHDevEngineTool Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_instance != null)
|
||||
{
|
||||
lock (_instance)
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
object hdevEngine = new object();
|
||||
_instance = new FormHDevEngineTool(ref hdevEngine);
|
||||
}
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
object hdevEngine = new object();
|
||||
_instance = new FormHDevEngineTool(ref hdevEngine);
|
||||
return _instance;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void FormHDevEngineTool_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.panelHImageWindow.Controls.Add(myHwindow);
|
||||
myHwindow.Dock = DockStyle.Fill;
|
||||
}
|
||||
|
||||
public void InitTool()
|
||||
{
|
||||
txbCodeText.Text = myHDevEngine.CodeText;
|
||||
}
|
||||
|
||||
private void tsbReadHdev_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog myDia = new OpenFileDialog();
|
||||
myDia.Filter = "Halcon程序(*.hdev)|*.hdev";
|
||||
myDia.Title = "打开Halcon程序";
|
||||
if (myDia.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
string filePath = myDia.FileName;
|
||||
myHDevEngine.CodeFilePath = filePath;
|
||||
string hdevText = FileOperate.ReadFile(filePath);
|
||||
txbCodeText.Text = hdevText;
|
||||
}
|
||||
}
|
||||
|
||||
private void tsbSaveHdev_Click(object sender, EventArgs e)
|
||||
{
|
||||
SaveFileDialog myDia = new SaveFileDialog();
|
||||
myDia.Filter = "Halcon程序(*.hdev)|*.hdev";
|
||||
if (myDia.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
string path = myDia.FileName;
|
||||
myHDevEngine.CodeFilePath = path;
|
||||
FileOperate.WriteFile(path, txbCodeText.Text);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void tsbReLoad_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (File.Exists(myHDevEngine.CodeFilePath))
|
||||
{
|
||||
FileInfo myFileInfo = new FileInfo(myHDevEngine.CodeFilePath);
|
||||
myHDevEngine.MyEngine.SetProcedurePath(myFileInfo.DirectoryName);
|
||||
|
||||
myHDevEngine.MyProgram.LoadProgram(myHDevEngine.CodeFilePath);
|
||||
myHDevEngine.ProgramCall = new HDevProgramCall(myHDevEngine.MyProgram);
|
||||
myHDevEngine.MyEngine.SetHDevOperators(new HDevOpMultiWindowImpl(myHwindow.SmartWindow.HalconWindow));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void tsbtRunTool_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(myHDevEngine.ProgramCall != null)
|
||||
{
|
||||
myHDevEngine.ProgramCall.Execute();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
265
HDevEngineTool/FormHDevEngineTool.resx
Normal file
265
HDevEngineTool/FormHDevEngineTool.resx
Normal file
@@ -0,0 +1,265 @@
|
||||
<?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>
|
||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>225, 19</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="tsbtRunTool.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsbReadHdev.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQcSURBVGhD7ZnZTxNRFMZ58dnEB1/0zQefjA/8AU0Xatsh
|
||||
YpkhRAkxaFzwxS0GE1HcEvFB44IabaImGKOggIBbcBdXQBYJm7uCUUyoC7IKx3vunLG1DsiddgpN+ktO
|
||||
mjkzc+/33XvudNqbECcWSEryznR4lC12j1Jul1JrIxk2j3LDLsmn2Ocqi8s7m7qMHI5k2e5YoPgdkgLm
|
||||
R8oQG6RjTqcyg7oPD6srfY5F8vZi4/LiLDhQcBzOFZdGLBalL+XCl2evA8m75I8Rq9v72u5W5pEM49gl
|
||||
pQAbTM9cAX7/V4g0GcuyueDrVbehv3+Am3KlpPOcxS132SRlFkkxBqv7Rmys8GwxdRlZgg1otLS2w0Il
|
||||
k+dxzZEUY7DF9Sa0g0iybPVaLrS4tIIyKteqbvE8hlNKSyQ54phtYHf+fi5yzbocGB7+RVmAkZERSMtY
|
||||
rprwyHtJjjhmG2hqboGk5DQudH3ONrhb/Qjq6ht55OTu4nm2DqpJjjhmG0DOFpWoIz1GWFyL3pEccaJh
|
||||
AHlSUwcbN+f99SjFwNmxeeSjJEecaBkYC7YWKkmKMeIGwmB0dBSuXb/1NKz3o8k0cPveA74O2NvAXZIj
|
||||
zmQauFRxVV3MHqWZ5IgTNxAGMW+gjAzYXMpzkiNO3ACjdwhgxxOAQw2UmCBTxsD9LoD19wC2PqLEBCkt
|
||||
v8INWKXUJpIjzkQN+AcA6j6zb85RSgRR0KgaON+hHuMl7T3qzIxH1Ax8+AGQ91gVWcNMBPNtEGADy+M5
|
||||
FI3UsmvwePdTgC99ak6PqBhoZaI2P1AFbXkI0B0iSCufXFY+2ux09QbuwbJ6zwZAj5JLl7kB/FlLcsQZ
|
||||
z8DjTwAb76tCdrJF+vknnQgitHw0OpmJ7TRraAYHIhRTDfSwmtdKYxcrBSyVUL4HlU+bjkBcN3gvnt9U
|
||||
/W8bmgG7W2kgOeKMZWB4BGDfM7VzFHnzA50IQq98grnTGTC4pxZgMPCTmGOqAaSfdXi0SRWAgWUSLHSs
|
||||
8sFLyl4F7jtQr/9EMt0A8oupKWwNiMEnDILlo62P0PLRnkIYvmY28mw29bhYVskN2KTUepIjzv8MIDii
|
||||
lW8A8lkZfKKFXP1RFahXPp3sqYPXlrzULy2NqBnQ4zCVT9ELShhgUg3gdwIa6PBTwgAXSiu4ARbPSI44
|
||||
Rg28+MpeLbrpwCCTaiASxLwB/MOXG3ArdSRHnLiBMIh9AyXl3ABuBJIccWLeAL7KYiNmbTGNx8EjJ7QS
|
||||
qiI54uBf29hIRlY2/Owb5+dThGluaYNkOUOdAY+SS3LEsS5Q5lqcKYPYEG6F+k4Wgu/UGdPimO8035nR
|
||||
dm1YvHU40qaTHGOwMsrEDWhqMGphleQWHECSER5OyTufLSYf1qOpIclXedl65NTExJXTqPs4U5iEhN9b
|
||||
v3y1RkE/lQAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsbSaveHdev.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQwSURBVGhD7ZlrTxNREIb5H+oP8aP+GS+ticZrYjR+8oI0
|
||||
3hJAlBaxpWjRqCjR0hYptFCUS9GiQou0XkCLBRRCuDnOTPeUw7alhXaXD+4kb3bPnt2Z91nmnCVQYYQR
|
||||
RmTH5SN1u6+a649VmW2XhSxmW3WlyRaoNDX0lFsWzEv58XjUcqBhl2Jje1F1yLrnysG6OUwIOyKT7fc1
|
||||
0729ip2tB715SvSyfRT8/ZMZNd/t4gLt40sbNDS1BoEvK3zeGV+G2AzA+GxaYymAjollnutOLMO4NCeL
|
||||
8lJ+ty8G18/YVy0H6+a3DYFv4AIllM3nAwh9W4H+yVU+935egk+//q4bQ7PdCpgPIcZSOIfXgqEEeF6O
|
||||
QCQxnwVAdbzdcbh51rVqOdKweNVs3a/YKj6KBfDjGx3+sZYZv0uurZtHvfmeBvMg2Mh0Guyps49zkG6d
|
||||
tGcgZABSSRDFAPjQVGR6jY807kOzsnmCEWADP9bnbp6ww/MaK0yF73Aud1uEr6sBSNuGKARAb/Q9GqR+
|
||||
J4PU/zHFIOkjthHdQ3O92GLiujAadNUDJNMAbY8Hua1yAZBkCNQ+xeLmUQhgcGoVgkpvv6belhZmFM9f
|
||||
K2DUYvKCzgdArZYPgOTxT6QXNu5OtL0rNvNHIYABBCCDHtQHadHST0GA+SaWYJQWrTInpAZ44hrg+zcD
|
||||
ILV3RPke9HZUsZk/CgG0K+0xiAtYNieDUYvJc0L0vAzgcLwtCoBE95A3xWb+KAiABdW9HUHDZJzmaFuV
|
||||
52TxIq6th2QkDeB0DesP0KX6INHeL3ajnq8bwdSSt9EbCPNieEZ/AP4gKYaiKLEb0eJVL9os4bwbF2Xz
|
||||
43cZ87oBPGzs4STh0dmMoRC+cTJA2+aGr3Aeya0m1PrmJ+d1NfZm1ZRVMoDH/5l7mBOVWTeO2zm/uqYs
|
||||
vrcUABIVabH3wgNboGyifIXMk8oCsJMyAEi+QBweOfqgqa5TE1HujmAiZ+2SATxduIhPNqUTaahbp5rw
|
||||
l7iJrPo8XwoAbXN0PT48BMsz45ooHh7iGi5c2Or6JQOID1muwuUU1cj1UTMAcgGknA5IVtcUpVSzg59Z
|
||||
CPdAsrY267qQrgALQ0H4E/AUpYVwgJ9Z+jaCY2/WdSFdAbSQrgBbaSFZ6raRpSvAVlpIlrptZOkKoIUM
|
||||
AAOgROkCEPH3wv1LLZmiHrubJcb3L7pgxB/i8+lYBO6cc/KRxoWe1R4gFQP/Azefz3/pZzkrH7LEmOY6
|
||||
nW18Phrw85iONKbruZ5dnHzPuWlOU4C5sW4YeNYK1vMOmPnoY7243cIS4/rzduhvbeXzRMgN1aca+Ujj
|
||||
zZ6di6ZraAogCmslA0D8i8ntjW5IsJMAr7xjAqDwH3d3/J98eUSeivrzOgXdaDFbzRaT9bRQ1WFrjeWw
|
||||
tU0PcS2pNnkp2rwRRvxXUVHxD9G/toxhXUTIAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="tsbReLoad.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK+SURBVGhD7ZXPaxNBGIZzUK/in+DBqxGzpY0ICWkISTbr
|
||||
joUFLz0JPXkTvEhJPGhSi+hFtBUUtIiGZFdFD3pRQRTUk39AD4IigiD0Ivhj3C/9lJq+2XxTmy7ovvBA
|
||||
2J1559nd7GwqSZIk/0ls/7BXC5TeCmgtXnZzYnem9lQDZwUtNhqcz85dZzcv/3fJLMxsrwbuSyouXC3p
|
||||
vbP7R0rhWql3EXbgPss9zm1jjY0nLGpQYfmWrffVLbjoZpJuWLp821l9Er6qs8bGEhbkKoHz3fZdbbUm
|
||||
4IKjYGwuS09A1zrqa/j0D7COWez79q5qR72lO3HwYh4uNEpyC4XeU6h01XKx7e1kLXlqgbtEBcXrZZ2e
|
||||
zcBFRkm6ntGlm1V+qd0l1pJndaIck/cj3cjAjihYSx5UEsVYKwtlETQWdUTBWvKgkihyi5NQFpG/Mgk7
|
||||
omAteVBJFHY33KnOjEPhtVjN8fBLG+4woCMK1pIHlQyjEu7fJIjECas5oatt3uMNYS15UIkEurv5xWLv
|
||||
u0E7CWE1s+Hfphh+mMzv/C9YSx5UEiesJQ8qiRPWkgeVxAlryYNK4oS15EElccJa8qASE17rC3+AxpjA
|
||||
WvKgEhOSC+iDteRBJSYkF9AHa8mDSkxILqAP1pIHlQzi8vKJdcLDuBTOQV2DYC15UMkgnDtK33h3Eooi
|
||||
aCzNQV2DYC15UEkU6t6UDj6dgsJroTE0FnVEwVryoJJheA88/XClCcUJOkdj0NxhsJY8qETC9KMj+umX
|
||||
+XXydIzOoTkSWEseVCJl5sm0fv7t3G95+k3H0FgprCUPKjHh+Iuj+tWP8z3oNxpjAmvJg0pMOf3mWA90
|
||||
zhTWkgeVxAlryYNK4oS15Kl01AdUFA/Oe9aSxw7cs7gsBnzVYi15vLa3w/bVfC049BGWbgnh2l01Ry6s
|
||||
lSRJkn8rqdRPZ0b7i/SIonMAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>335, 19</value>
|
||||
</metadata>
|
||||
</root>
|
||||
62
HDevEngineTool/HDevEngineCode.cs
Normal file
62
HDevEngineTool/HDevEngineCode.cs
Normal file
@@ -0,0 +1,62 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using ToolBase;
|
||||
using ViewROI;
|
||||
using HalconDotNet;
|
||||
using System.IO;
|
||||
using Logger;
|
||||
|
||||
namespace HDevEngineTool
|
||||
{
|
||||
[Serializable]
|
||||
public class HDevEngineCode : IToolBase
|
||||
{
|
||||
public string uniqueName { get; set; } = Guid.NewGuid().ToString();
|
||||
public string toolName { get; set; } = string.Empty;
|
||||
[NonSerialized]
|
||||
public HDevProgramCall ProgramCall;
|
||||
[NonSerialized]
|
||||
public HDevEngine MyEngine = new HDevEngine();
|
||||
[NonSerialized]
|
||||
public HDevProgram MyProgram = new HDevProgram();
|
||||
public string CodeText { get; set; } = string.Empty;
|
||||
public string CodeFilePath { get; set; } = string.Empty;
|
||||
public override void DispImage()
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void DispMainWindow(HWindowTool_Smart window)
|
||||
{
|
||||
// throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public override void Run(SoftwareRunState softwareRunState)
|
||||
{
|
||||
if (File.Exists(CodeFilePath))
|
||||
{
|
||||
if(MyProgram != null)
|
||||
{
|
||||
if(MyProgram.IsLoaded())
|
||||
{
|
||||
LoggerClass.WriteLog("程序已加载,准备运行!");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
FileInfo myFileInfo = new FileInfo(CodeFilePath);
|
||||
MyEngine.SetProcedurePath(myFileInfo.DirectoryName);
|
||||
|
||||
MyProgram.LoadProgram(CodeFilePath);
|
||||
ProgramCall = new HDevProgramCall(MyProgram);
|
||||
MyEngine.SetHDevOperators(new HDevOpMultiWindowImpl(FormHDevEngineTool.Instance.myHwindow.SmartWindow.HalconWindow));
|
||||
}
|
||||
ProgramCall.Execute();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
118
HDevEngineTool/HDevEngineTool.csproj
Normal file
118
HDevEngineTool/HDevEngineTool.csproj
Normal file
@@ -0,0 +1,118 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{6112406A-A986-4A68-9D22-F0D7F0F81E02}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>HDevEngineTool</RootNamespace>
|
||||
<AssemblyName>HDevEngineTool</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="halcondotnet, Version=19.5.0.0, Culture=neutral, PublicKeyToken=4973bed59ddbf2b8, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files\MVTec\HALCON-19.05-Progress\bin\dotnet20\halcondotnet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="hdevenginedotnet">
|
||||
<HintPath>C:\Program Files\MVTec\HALCON-19.05-Progress\bin\dotnet20\hdevenginedotnet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI, Version=3.0.9.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>bin\Debug\SunnyUI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI.Common, Version=3.0.9.0, Culture=neutral, PublicKeyToken=5a271fb7ba597231" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Design" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Web.Extensions" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FormHDevEngineTool.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormHDevEngineTool.Designer.cs">
|
||||
<DependentUpon>FormHDevEngineTool.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="HDevEngineCode.cs" />
|
||||
<Compile Include="HDevEngineToolRun.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\CommonMethods\CommonHelper.csproj">
|
||||
<Project>{1c8d0ddc-2086-48a9-9586-f2b643e2fc54}</Project>
|
||||
<Name>CommonHelper</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\FormLib\FormLib.csproj">
|
||||
<Project>{8c6fc8c6-8874-494b-8260-071f291aa33d}</Project>
|
||||
<Name>FormLib</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ImageWindow\HWindow_Tool.csproj">
|
||||
<Project>{9baa53fd-89b5-43e2-ac59-a27b006debb6}</Project>
|
||||
<Name>HWindow_Tool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolBase\ToolBase.csproj">
|
||||
<Project>{7cd50b44-bf56-4e8e-8fa1-05f6968c1835}</Project>
|
||||
<Name>ToolBase</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolLib.Log\Logger\Logger.csproj">
|
||||
<Project>{d4e052b9-e541-4b67-a1f9-273073ef1d4b}</Project>
|
||||
<Name>Logger</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolLib.VisionJob\ToolLib.VisionJob.csproj">
|
||||
<Project>{16e8ff17-98a8-4452-ab9e-c433dc9c21f7}</Project>
|
||||
<Name>ToolLib.VisionJob</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="FormHDevEngineTool.resx">
|
||||
<DependentUpon>FormHDevEngineTool.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
19
HDevEngineTool/HDevEngineToolRun.cs
Normal file
19
HDevEngineTool/HDevEngineToolRun.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using CommonMethods.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace HDevEngineTool
|
||||
{
|
||||
public class HDevEngineToolRun : IToolRun
|
||||
{
|
||||
public void ToolRun(string jobName, int toolIndex, int inputItemNum, TreeNode selectNode, List<IToolInfo> L_toolList)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
36
HDevEngineTool/Properties/AssemblyInfo.cs
Normal file
36
HDevEngineTool/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// 有关程序集的一般信息由以下
|
||||
// 控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("HDevEngineTool")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("HDevEngineTool")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2022")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
//将 ComVisible 设置为 false 将使此程序集中的类型
|
||||
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
|
||||
//请将此类型的 ComVisible 特性设置为 true。
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||
[assembly: Guid("6112406a-a986-4a68-9d22-f0d7f0f81e02")]
|
||||
|
||||
// 程序集的版本信息由下列四个值组成:
|
||||
//
|
||||
// 主版本
|
||||
// 次版本
|
||||
// 生成号
|
||||
// 修订号
|
||||
//
|
||||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
63
HDevEngineTool/Properties/Resources.Designer.cs
generated
Normal file
63
HDevEngineTool/Properties/Resources.Designer.cs
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace HDevEngineTool.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 一个强类型的资源类,用于查找本地化的字符串等。
|
||||
/// </summary>
|
||||
// 此类是由 StronglyTypedResourceBuilder
|
||||
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
|
||||
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
|
||||
// (以 /str 作为命令选项),或重新生成 VS 项目。
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 返回此类使用的缓存的 ResourceManager 实例。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("HDevEngineTool.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 使用此强类型资源类,为所有资源查找
|
||||
/// 重写当前线程的 CurrentUICulture 属性。
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
120
HDevEngineTool/Properties/Resources.resx
Normal file
120
HDevEngineTool/Properties/Resources.resx
Normal 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>
|
||||
501
HalconTool/FormHalconTool.Designer.cs
generated
501
HalconTool/FormHalconTool.Designer.cs
generated
@@ -30,31 +30,39 @@ namespace HalconTool
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormHalconTool));
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.tabGrabImage = new Sunny.UI.UITabControl();
|
||||
this.grabFile = new System.Windows.Forms.TabPage();
|
||||
this.gbMultImg = new Sunny.UI.UIGroupBox();
|
||||
this.gbSignalImg = new Sunny.UI.UIGroupBox();
|
||||
this.chbRGB2Gray = new Sunny.UI.UICheckBox();
|
||||
this.uiLabel1 = new Sunny.UI.UILabel();
|
||||
this.btnRun = new Sunny.UI.UISymbolButton();
|
||||
this.txbFilePath = new Sunny.UI.UITextBox();
|
||||
this.btnSelectFilePath = new Sunny.UI.UISymbolButton();
|
||||
this.camera = new System.Windows.Forms.TabPage();
|
||||
this.uiMarkLabel2 = new Sunny.UI.UIMarkLabel();
|
||||
this.gbImageDisp = new Sunny.UI.UIGroupBox();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_Split = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.tabGrabImage = new Sunny.UI.UITabControl();
|
||||
this.grabFile = new System.Windows.Forms.TabPage();
|
||||
this.camera = new System.Windows.Forms.TabPage();
|
||||
this.gbImageDisp = new Sunny.UI.UIGroupBox();
|
||||
this.uiMarkLabel2 = new Sunny.UI.UIMarkLabel();
|
||||
this.uiLabel1 = new Sunny.UI.UILabel();
|
||||
this.txbFilePath = new Sunny.UI.UITextBox();
|
||||
this.btnSelectFilePath = new Sunny.UI.UISymbolButton();
|
||||
this.btnRun = new Sunny.UI.UISymbolButton();
|
||||
this.uiGroupBox2 = new Sunny.UI.UIGroupBox();
|
||||
this.uiGroupBox3 = new Sunny.UI.UIGroupBox();
|
||||
this.chbRGB2Gray = new Sunny.UI.UICheckBox();
|
||||
this.uiCheckBox1 = new Sunny.UI.UICheckBox();
|
||||
this.uiLabel2 = new Sunny.UI.UILabel();
|
||||
this.tbxImageDirectory = new Sunny.UI.UITextBox();
|
||||
this.btnSelectDir = new Sunny.UI.UISymbolButton();
|
||||
this.btnNext = new Sunny.UI.UISymbolButton();
|
||||
this.btnOld = new Sunny.UI.UISymbolButton();
|
||||
this.lbImageName = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
this.tabGrabImage.SuspendLayout();
|
||||
this.grabFile.SuspendLayout();
|
||||
this.gbMultImg.SuspendLayout();
|
||||
this.gbSignalImg.SuspendLayout();
|
||||
this.camera.SuspendLayout();
|
||||
this.uiGroupBox2.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer1
|
||||
@@ -72,10 +80,202 @@ namespace HalconTool
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.gbImageDisp);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1111, 517);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1111, 457);
|
||||
this.splitContainer1.SplitterDistance = 605;
|
||||
this.splitContainer1.TabIndex = 1;
|
||||
//
|
||||
// tabGrabImage
|
||||
//
|
||||
this.tabGrabImage.Controls.Add(this.grabFile);
|
||||
this.tabGrabImage.Controls.Add(this.camera);
|
||||
this.tabGrabImage.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tabGrabImage.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
|
||||
this.tabGrabImage.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.tabGrabImage.ItemSize = new System.Drawing.Size(150, 40);
|
||||
this.tabGrabImage.Location = new System.Drawing.Point(0, 0);
|
||||
this.tabGrabImage.MainPage = "";
|
||||
this.tabGrabImage.Name = "tabGrabImage";
|
||||
this.tabGrabImage.SelectedIndex = 0;
|
||||
this.tabGrabImage.Size = new System.Drawing.Size(605, 457);
|
||||
this.tabGrabImage.SizeMode = System.Windows.Forms.TabSizeMode.Fixed;
|
||||
this.tabGrabImage.TabIndex = 0;
|
||||
//
|
||||
// grabFile
|
||||
//
|
||||
this.grabFile.Controls.Add(this.gbMultImg);
|
||||
this.grabFile.Controls.Add(this.gbSignalImg);
|
||||
this.grabFile.Location = new System.Drawing.Point(0, 40);
|
||||
this.grabFile.Name = "grabFile";
|
||||
this.grabFile.Size = new System.Drawing.Size(605, 417);
|
||||
this.grabFile.TabIndex = 0;
|
||||
this.grabFile.Text = "本地读取";
|
||||
this.grabFile.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// gbMultImg
|
||||
//
|
||||
this.gbMultImg.Controls.Add(this.lbImageName);
|
||||
this.gbMultImg.Controls.Add(this.btnOld);
|
||||
this.gbMultImg.Controls.Add(this.btnNext);
|
||||
this.gbMultImg.Controls.Add(this.uiCheckBox1);
|
||||
this.gbMultImg.Controls.Add(this.uiLabel2);
|
||||
this.gbMultImg.Controls.Add(this.tbxImageDirectory);
|
||||
this.gbMultImg.Controls.Add(this.btnSelectDir);
|
||||
this.gbMultImg.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.gbMultImg.FillColor = System.Drawing.Color.White;
|
||||
this.gbMultImg.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.gbMultImg.IsScaled = false;
|
||||
this.gbMultImg.Location = new System.Drawing.Point(0, 188);
|
||||
this.gbMultImg.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.gbMultImg.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.gbMultImg.Name = "gbMultImg";
|
||||
this.gbMultImg.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.gbMultImg.Size = new System.Drawing.Size(605, 229);
|
||||
this.gbMultImg.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.gbMultImg.TabIndex = 4;
|
||||
this.gbMultImg.Text = "多组图像";
|
||||
this.gbMultImg.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.gbMultImg.Click += new System.EventHandler(this.ImageSource_Click);
|
||||
//
|
||||
// gbSignalImg
|
||||
//
|
||||
this.gbSignalImg.Controls.Add(this.chbRGB2Gray);
|
||||
this.gbSignalImg.Controls.Add(this.uiLabel1);
|
||||
this.gbSignalImg.Controls.Add(this.btnRun);
|
||||
this.gbSignalImg.Controls.Add(this.txbFilePath);
|
||||
this.gbSignalImg.Controls.Add(this.btnSelectFilePath);
|
||||
this.gbSignalImg.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.gbSignalImg.FillColor = System.Drawing.Color.White;
|
||||
this.gbSignalImg.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.gbSignalImg.IsScaled = false;
|
||||
this.gbSignalImg.Location = new System.Drawing.Point(0, 0);
|
||||
this.gbSignalImg.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.gbSignalImg.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.gbSignalImg.Name = "gbSignalImg";
|
||||
this.gbSignalImg.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.gbSignalImg.Size = new System.Drawing.Size(605, 188);
|
||||
this.gbSignalImg.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.gbSignalImg.TabIndex = 3;
|
||||
this.gbSignalImg.Text = "单张图像";
|
||||
this.gbSignalImg.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.gbSignalImg.Click += new System.EventHandler(this.ImageSource_Click);
|
||||
//
|
||||
// chbRGB2Gray
|
||||
//
|
||||
this.chbRGB2Gray.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.chbRGB2Gray.Checked = true;
|
||||
this.chbRGB2Gray.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.chbRGB2Gray.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.chbRGB2Gray.IsScaled = false;
|
||||
this.chbRGB2Gray.Location = new System.Drawing.Point(378, 135);
|
||||
this.chbRGB2Gray.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.chbRGB2Gray.Name = "chbRGB2Gray";
|
||||
this.chbRGB2Gray.Padding = new System.Windows.Forms.Padding(22, 0, 0, 0);
|
||||
this.chbRGB2Gray.Size = new System.Drawing.Size(111, 29);
|
||||
this.chbRGB2Gray.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.chbRGB2Gray.TabIndex = 3;
|
||||
this.chbRGB2Gray.Text = "彩色转灰度";
|
||||
this.chbRGB2Gray.CheckedChanged += new System.EventHandler(this.chbRGB2Gray_CheckedChanged);
|
||||
//
|
||||
// uiLabel1
|
||||
//
|
||||
this.uiLabel1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel1.Location = new System.Drawing.Point(27, 45);
|
||||
this.uiLabel1.Name = "uiLabel1";
|
||||
this.uiLabel1.Size = new System.Drawing.Size(100, 23);
|
||||
this.uiLabel1.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel1.TabIndex = 0;
|
||||
this.uiLabel1.Text = "图像路径:";
|
||||
this.uiLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// btnRun
|
||||
//
|
||||
this.btnRun.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnRun.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnRun.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnRun.IsScaled = false;
|
||||
this.btnRun.Location = new System.Drawing.Point(210, 129);
|
||||
this.btnRun.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnRun.Name = "btnRun";
|
||||
this.btnRun.Size = new System.Drawing.Size(133, 35);
|
||||
this.btnRun.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnRun.Symbol = 61515;
|
||||
this.btnRun.TabIndex = 2;
|
||||
this.btnRun.Text = "运行工具";
|
||||
this.btnRun.Click += new System.EventHandler(this.btnRun_Click);
|
||||
//
|
||||
// txbFilePath
|
||||
//
|
||||
this.txbFilePath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txbFilePath.ButtonSymbol = 61761;
|
||||
this.txbFilePath.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbFilePath.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbFilePath.IsScaled = false;
|
||||
this.txbFilePath.Location = new System.Drawing.Point(183, 42);
|
||||
this.txbFilePath.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbFilePath.Maximum = 2147483647D;
|
||||
this.txbFilePath.Minimum = -2147483648D;
|
||||
this.txbFilePath.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbFilePath.Name = "txbFilePath";
|
||||
this.txbFilePath.Size = new System.Drawing.Size(405, 35);
|
||||
this.txbFilePath.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.txbFilePath.TabIndex = 1;
|
||||
this.txbFilePath.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.txbFilePath.TextChanged += new System.EventHandler(this.txbFilePath_TextChanged);
|
||||
//
|
||||
// btnSelectFilePath
|
||||
//
|
||||
this.btnSelectFilePath.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnSelectFilePath.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnSelectFilePath.IsScaled = false;
|
||||
this.btnSelectFilePath.Location = new System.Drawing.Point(31, 129);
|
||||
this.btnSelectFilePath.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnSelectFilePath.Name = "btnSelectFilePath";
|
||||
this.btnSelectFilePath.Size = new System.Drawing.Size(133, 35);
|
||||
this.btnSelectFilePath.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnSelectFilePath.Symbol = 61462;
|
||||
this.btnSelectFilePath.TabIndex = 2;
|
||||
this.btnSelectFilePath.Text = "选择图像";
|
||||
this.btnSelectFilePath.Click += new System.EventHandler(this.btnSelectFilePath_Click);
|
||||
//
|
||||
// camera
|
||||
//
|
||||
this.camera.Controls.Add(this.uiMarkLabel2);
|
||||
this.camera.Location = new System.Drawing.Point(0, 40);
|
||||
this.camera.Name = "camera";
|
||||
this.camera.Size = new System.Drawing.Size(605, 477);
|
||||
this.camera.TabIndex = 2;
|
||||
this.camera.Text = "相机";
|
||||
this.camera.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// uiMarkLabel2
|
||||
//
|
||||
this.uiMarkLabel2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiMarkLabel2.Location = new System.Drawing.Point(209, 206);
|
||||
this.uiMarkLabel2.Name = "uiMarkLabel2";
|
||||
this.uiMarkLabel2.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0);
|
||||
this.uiMarkLabel2.Size = new System.Drawing.Size(189, 50);
|
||||
this.uiMarkLabel2.TabIndex = 1;
|
||||
this.uiMarkLabel2.Text = "该功能暂未实现";
|
||||
this.uiMarkLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// gbImageDisp
|
||||
//
|
||||
this.gbImageDisp.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.gbImageDisp.FillColor = System.Drawing.Color.White;
|
||||
this.gbImageDisp.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.gbImageDisp.IsScaled = false;
|
||||
this.gbImageDisp.Location = new System.Drawing.Point(0, 0);
|
||||
this.gbImageDisp.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.gbImageDisp.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.gbImageDisp.Name = "gbImageDisp";
|
||||
this.gbImageDisp.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.gbImageDisp.Size = new System.Drawing.Size(502, 457);
|
||||
this.gbImageDisp.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.gbImageDisp.TabIndex = 0;
|
||||
this.gbImageDisp.Text = "显示图像";
|
||||
this.gbImageDisp.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.BackColor = System.Drawing.Color.White;
|
||||
@@ -84,7 +284,7 @@ namespace HalconTool
|
||||
this.lb_RunStatus,
|
||||
this.lb_Split,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 518);
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 458);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(1111, 24);
|
||||
this.statusStrip.TabIndex = 95;
|
||||
@@ -106,190 +306,110 @@ namespace HalconTool
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 19);
|
||||
//
|
||||
// tabGrabImage
|
||||
// uiCheckBox1
|
||||
//
|
||||
this.tabGrabImage.Controls.Add(this.grabFile);
|
||||
this.tabGrabImage.Controls.Add(this.camera);
|
||||
this.tabGrabImage.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tabGrabImage.DrawMode = System.Windows.Forms.TabDrawMode.OwnerDrawFixed;
|
||||
this.tabGrabImage.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.tabGrabImage.ItemSize = new System.Drawing.Size(150, 40);
|
||||
this.tabGrabImage.Location = new System.Drawing.Point(0, 0);
|
||||
this.tabGrabImage.MainPage = "";
|
||||
this.tabGrabImage.Name = "tabGrabImage";
|
||||
this.tabGrabImage.SelectedIndex = 0;
|
||||
this.tabGrabImage.Size = new System.Drawing.Size(605, 517);
|
||||
this.tabGrabImage.SizeMode = System.Windows.Forms.TabSizeMode.Fixed;
|
||||
this.tabGrabImage.TabIndex = 0;
|
||||
this.uiCheckBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.uiCheckBox1.Checked = true;
|
||||
this.uiCheckBox1.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.uiCheckBox1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiCheckBox1.IsScaled = false;
|
||||
this.uiCheckBox1.Location = new System.Drawing.Point(466, 102);
|
||||
this.uiCheckBox1.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.uiCheckBox1.Name = "uiCheckBox1";
|
||||
this.uiCheckBox1.Padding = new System.Windows.Forms.Padding(22, 0, 0, 0);
|
||||
this.uiCheckBox1.Size = new System.Drawing.Size(111, 29);
|
||||
this.uiCheckBox1.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiCheckBox1.TabIndex = 8;
|
||||
this.uiCheckBox1.Text = "彩色转灰度";
|
||||
//
|
||||
// grabFile
|
||||
// uiLabel2
|
||||
//
|
||||
this.grabFile.Controls.Add(this.uiGroupBox3);
|
||||
this.grabFile.Controls.Add(this.uiGroupBox2);
|
||||
this.grabFile.Location = new System.Drawing.Point(0, 40);
|
||||
this.grabFile.Name = "grabFile";
|
||||
this.grabFile.Size = new System.Drawing.Size(605, 477);
|
||||
this.grabFile.TabIndex = 0;
|
||||
this.grabFile.Text = "本地读取";
|
||||
this.grabFile.UseVisualStyleBackColor = true;
|
||||
this.uiLabel2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel2.Location = new System.Drawing.Point(27, 62);
|
||||
this.uiLabel2.Name = "uiLabel2";
|
||||
this.uiLabel2.Size = new System.Drawing.Size(116, 23);
|
||||
this.uiLabel2.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiLabel2.TabIndex = 4;
|
||||
this.uiLabel2.Text = "图像夹路径:";
|
||||
this.uiLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// camera
|
||||
// tbxImageDirectory
|
||||
//
|
||||
this.camera.Controls.Add(this.uiMarkLabel2);
|
||||
this.camera.Location = new System.Drawing.Point(0, 40);
|
||||
this.camera.Name = "camera";
|
||||
this.camera.Size = new System.Drawing.Size(605, 477);
|
||||
this.camera.TabIndex = 2;
|
||||
this.camera.Text = "相机";
|
||||
this.camera.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// gbImageDisp
|
||||
//
|
||||
this.gbImageDisp.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.gbImageDisp.FillColor = System.Drawing.Color.White;
|
||||
this.gbImageDisp.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.gbImageDisp.IsScaled = false;
|
||||
this.gbImageDisp.Location = new System.Drawing.Point(0, 0);
|
||||
this.gbImageDisp.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.gbImageDisp.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.gbImageDisp.Name = "gbImageDisp";
|
||||
this.gbImageDisp.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.gbImageDisp.Size = new System.Drawing.Size(502, 517);
|
||||
this.gbImageDisp.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.gbImageDisp.TabIndex = 0;
|
||||
this.gbImageDisp.Text = "显示图像";
|
||||
this.gbImageDisp.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// uiMarkLabel2
|
||||
//
|
||||
this.uiMarkLabel2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiMarkLabel2.Location = new System.Drawing.Point(209, 206);
|
||||
this.uiMarkLabel2.Name = "uiMarkLabel2";
|
||||
this.uiMarkLabel2.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0);
|
||||
this.uiMarkLabel2.Size = new System.Drawing.Size(189, 50);
|
||||
this.uiMarkLabel2.TabIndex = 1;
|
||||
this.uiMarkLabel2.Text = "该功能暂未实现";
|
||||
this.uiMarkLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// uiLabel1
|
||||
//
|
||||
this.uiLabel1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiLabel1.Location = new System.Drawing.Point(27, 45);
|
||||
this.uiLabel1.Name = "uiLabel1";
|
||||
this.uiLabel1.Size = new System.Drawing.Size(100, 23);
|
||||
this.uiLabel1.TabIndex = 0;
|
||||
this.uiLabel1.Text = "图像路径:";
|
||||
this.uiLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// txbFilePath
|
||||
//
|
||||
this.txbFilePath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
this.tbxImageDirectory.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txbFilePath.ButtonSymbol = 61761;
|
||||
this.txbFilePath.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.txbFilePath.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.txbFilePath.IsScaled = false;
|
||||
this.txbFilePath.Location = new System.Drawing.Point(183, 42);
|
||||
this.txbFilePath.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.txbFilePath.Maximum = 2147483647D;
|
||||
this.txbFilePath.Minimum = -2147483648D;
|
||||
this.txbFilePath.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.txbFilePath.Name = "txbFilePath";
|
||||
this.txbFilePath.Size = new System.Drawing.Size(405, 35);
|
||||
this.txbFilePath.TabIndex = 1;
|
||||
this.txbFilePath.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.txbFilePath.TextChanged += new System.EventHandler(this.txbFilePath_TextChanged);
|
||||
this.tbxImageDirectory.ButtonSymbol = 61761;
|
||||
this.tbxImageDirectory.Cursor = System.Windows.Forms.Cursors.IBeam;
|
||||
this.tbxImageDirectory.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.tbxImageDirectory.IsScaled = false;
|
||||
this.tbxImageDirectory.Location = new System.Drawing.Point(183, 59);
|
||||
this.tbxImageDirectory.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.tbxImageDirectory.Maximum = 2147483647D;
|
||||
this.tbxImageDirectory.Minimum = -2147483648D;
|
||||
this.tbxImageDirectory.MinimumSize = new System.Drawing.Size(1, 16);
|
||||
this.tbxImageDirectory.Name = "tbxImageDirectory";
|
||||
this.tbxImageDirectory.Size = new System.Drawing.Size(405, 35);
|
||||
this.tbxImageDirectory.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.tbxImageDirectory.TabIndex = 5;
|
||||
this.tbxImageDirectory.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// btnSelectFilePath
|
||||
// btnSelectDir
|
||||
//
|
||||
this.btnSelectFilePath.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnSelectFilePath.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnSelectFilePath.IsScaled = false;
|
||||
this.btnSelectFilePath.Location = new System.Drawing.Point(31, 129);
|
||||
this.btnSelectFilePath.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnSelectFilePath.Name = "btnSelectFilePath";
|
||||
this.btnSelectFilePath.Size = new System.Drawing.Size(133, 35);
|
||||
this.btnSelectFilePath.Symbol = 61462;
|
||||
this.btnSelectFilePath.TabIndex = 2;
|
||||
this.btnSelectFilePath.Text = "选择图像";
|
||||
this.btnSelectFilePath.Click += new System.EventHandler(this.btnSelectFilePath_Click);
|
||||
this.btnSelectDir.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnSelectDir.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnSelectDir.IsScaled = false;
|
||||
this.btnSelectDir.Location = new System.Drawing.Point(31, 157);
|
||||
this.btnSelectDir.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnSelectDir.Name = "btnSelectDir";
|
||||
this.btnSelectDir.Size = new System.Drawing.Size(133, 35);
|
||||
this.btnSelectDir.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnSelectDir.Symbol = 61462;
|
||||
this.btnSelectDir.TabIndex = 7;
|
||||
this.btnSelectDir.Text = "选择文件夹";
|
||||
this.btnSelectDir.Click += new System.EventHandler(this.btnSelectDir_Click);
|
||||
//
|
||||
// btnRun
|
||||
// btnNext
|
||||
//
|
||||
this.btnRun.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.btnRun.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnRun.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnRun.IsScaled = false;
|
||||
this.btnRun.Location = new System.Drawing.Point(440, 129);
|
||||
this.btnRun.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnRun.Name = "btnRun";
|
||||
this.btnRun.Size = new System.Drawing.Size(133, 35);
|
||||
this.btnRun.Symbol = 61515;
|
||||
this.btnRun.TabIndex = 2;
|
||||
this.btnRun.Text = "运行工具";
|
||||
this.btnRun.Click += new System.EventHandler(this.btnRun_Click);
|
||||
this.btnNext.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnNext.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnNext.IsScaled = false;
|
||||
this.btnNext.Location = new System.Drawing.Point(361, 157);
|
||||
this.btnNext.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnNext.Name = "btnNext";
|
||||
this.btnNext.Size = new System.Drawing.Size(121, 35);
|
||||
this.btnNext.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnNext.Symbol = 61518;
|
||||
this.btnNext.TabIndex = 9;
|
||||
this.btnNext.Text = "下一张";
|
||||
this.btnNext.Click += new System.EventHandler(this.btnNext_Click);
|
||||
//
|
||||
// uiGroupBox2
|
||||
// btnOld
|
||||
//
|
||||
this.uiGroupBox2.Controls.Add(this.chbRGB2Gray);
|
||||
this.uiGroupBox2.Controls.Add(this.uiLabel1);
|
||||
this.uiGroupBox2.Controls.Add(this.btnRun);
|
||||
this.uiGroupBox2.Controls.Add(this.txbFilePath);
|
||||
this.uiGroupBox2.Controls.Add(this.btnSelectFilePath);
|
||||
this.uiGroupBox2.Dock = System.Windows.Forms.DockStyle.Top;
|
||||
this.uiGroupBox2.FillColor = System.Drawing.Color.White;
|
||||
this.uiGroupBox2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiGroupBox2.IsScaled = false;
|
||||
this.uiGroupBox2.Location = new System.Drawing.Point(0, 0);
|
||||
this.uiGroupBox2.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uiGroupBox2.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.uiGroupBox2.Name = "uiGroupBox2";
|
||||
this.uiGroupBox2.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.uiGroupBox2.Size = new System.Drawing.Size(605, 188);
|
||||
this.uiGroupBox2.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiGroupBox2.TabIndex = 3;
|
||||
this.uiGroupBox2.Text = "单张图像";
|
||||
this.uiGroupBox2.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.btnOld.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnOld.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnOld.IsScaled = false;
|
||||
this.btnOld.Location = new System.Drawing.Point(232, 157);
|
||||
this.btnOld.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.btnOld.Name = "btnOld";
|
||||
this.btnOld.Size = new System.Drawing.Size(121, 35);
|
||||
this.btnOld.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.btnOld.Symbol = 61514;
|
||||
this.btnOld.TabIndex = 9;
|
||||
this.btnOld.Text = "上一张";
|
||||
this.btnOld.Click += new System.EventHandler(this.btnOld_Click);
|
||||
//
|
||||
// uiGroupBox3
|
||||
// lbImageName
|
||||
//
|
||||
this.uiGroupBox3.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.uiGroupBox3.FillColor = System.Drawing.Color.White;
|
||||
this.uiGroupBox3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.uiGroupBox3.IsScaled = false;
|
||||
this.uiGroupBox3.Location = new System.Drawing.Point(0, 188);
|
||||
this.uiGroupBox3.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5);
|
||||
this.uiGroupBox3.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.uiGroupBox3.Name = "uiGroupBox3";
|
||||
this.uiGroupBox3.Padding = new System.Windows.Forms.Padding(0, 32, 0, 0);
|
||||
this.uiGroupBox3.Size = new System.Drawing.Size(605, 289);
|
||||
this.uiGroupBox3.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.uiGroupBox3.TabIndex = 4;
|
||||
this.uiGroupBox3.Text = "多组图像";
|
||||
this.uiGroupBox3.TextAlignment = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// chbRGB2Gray
|
||||
//
|
||||
this.chbRGB2Gray.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.chbRGB2Gray.Checked = true;
|
||||
this.chbRGB2Gray.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.chbRGB2Gray.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.chbRGB2Gray.IsScaled = false;
|
||||
this.chbRGB2Gray.Location = new System.Drawing.Point(300, 133);
|
||||
this.chbRGB2Gray.MinimumSize = new System.Drawing.Size(1, 1);
|
||||
this.chbRGB2Gray.Name = "chbRGB2Gray";
|
||||
this.chbRGB2Gray.Padding = new System.Windows.Forms.Padding(22, 0, 0, 0);
|
||||
this.chbRGB2Gray.Size = new System.Drawing.Size(111, 29);
|
||||
this.chbRGB2Gray.Style = Sunny.UI.UIStyle.Custom;
|
||||
this.chbRGB2Gray.TabIndex = 3;
|
||||
this.chbRGB2Gray.Text = "彩色转灰度";
|
||||
this.chbRGB2Gray.CheckedChanged += new System.EventHandler(this.chbRGB2Gray_CheckedChanged);
|
||||
this.lbImageName.AutoSize = true;
|
||||
this.lbImageName.Location = new System.Drawing.Point(183, 103);
|
||||
this.lbImageName.Name = "lbImageName";
|
||||
this.lbImageName.Size = new System.Drawing.Size(0, 21);
|
||||
this.lbImageName.TabIndex = 10;
|
||||
//
|
||||
// FormHalconTool
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1111, 542);
|
||||
this.ClientSize = new System.Drawing.Size(1111, 482);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
@@ -300,12 +420,14 @@ namespace HalconTool
|
||||
this.splitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.tabGrabImage.ResumeLayout(false);
|
||||
this.grabFile.ResumeLayout(false);
|
||||
this.gbMultImg.ResumeLayout(false);
|
||||
this.gbMultImg.PerformLayout();
|
||||
this.gbSignalImg.ResumeLayout(false);
|
||||
this.camera.ResumeLayout(false);
|
||||
this.uiGroupBox2.ResumeLayout(false);
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@@ -327,8 +449,15 @@ namespace HalconTool
|
||||
private Sunny.UI.UILabel uiLabel1;
|
||||
private Sunny.UI.UISymbolButton btnSelectFilePath;
|
||||
private Sunny.UI.UISymbolButton btnRun;
|
||||
private Sunny.UI.UIGroupBox uiGroupBox2;
|
||||
private Sunny.UI.UIGroupBox uiGroupBox3;
|
||||
private Sunny.UI.UIGroupBox gbSignalImg;
|
||||
private Sunny.UI.UIGroupBox gbMultImg;
|
||||
private Sunny.UI.UICheckBox chbRGB2Gray;
|
||||
private Sunny.UI.UICheckBox uiCheckBox1;
|
||||
private Sunny.UI.UILabel uiLabel2;
|
||||
private Sunny.UI.UITextBox tbxImageDirectory;
|
||||
private Sunny.UI.UISymbolButton btnSelectDir;
|
||||
private System.Windows.Forms.Label lbImageName;
|
||||
public Sunny.UI.UISymbolButton btnNext;
|
||||
public Sunny.UI.UISymbolButton btnOld;
|
||||
}
|
||||
}
|
||||
@@ -12,6 +12,7 @@ using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
using ViewROI;
|
||||
using Sunny.UI;
|
||||
|
||||
namespace HalconTool
|
||||
{
|
||||
@@ -195,8 +196,20 @@ namespace HalconTool
|
||||
// 窗体载入时还原参数
|
||||
public void InitTool()
|
||||
{
|
||||
txbFilePath.Text = myHalconTool.imagePath;
|
||||
chbRGB2Gray.Checked = myHalconTool.RGBToGray;
|
||||
if(myHalconTool.workMode == WorkMode.ReadOneImage)
|
||||
{
|
||||
gbSignalImg.Enabled = true;
|
||||
gbMultImg.Enabled = false;
|
||||
txbFilePath.Text = myHalconTool.imagePath;
|
||||
}
|
||||
else
|
||||
{
|
||||
gbSignalImg.Enabled = false;
|
||||
gbMultImg.Enabled = true;
|
||||
tbxImageDirectory.Text = myHalconTool.imageDirectoryPath;
|
||||
lbImageName.Text = myHalconTool.currentImageName;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 将数据传递给HalconToolInterface
|
||||
@@ -245,5 +258,98 @@ namespace HalconTool
|
||||
{
|
||||
myHalconTool.RGBToGray = chbRGB2Gray.Checked;
|
||||
}
|
||||
|
||||
private void ImageSource_Click(object sender, EventArgs e)
|
||||
{
|
||||
UIGroupBox myGroupBox = (UIGroupBox)sender;
|
||||
if (myGroupBox.Text == "单张图像")
|
||||
{
|
||||
if(myGroupBox.Enabled == true)
|
||||
{
|
||||
gbSignalImg.Enabled = false;
|
||||
gbMultImg.Enabled = true;
|
||||
myHalconTool.workMode = WorkMode.ReadMultImage;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (myGroupBox.Enabled == true)
|
||||
{
|
||||
gbSignalImg.Enabled = true;
|
||||
gbMultImg.Enabled = false;
|
||||
myHalconTool.workMode = WorkMode.ReadOneImage;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void btnSelectDir_Click(object sender, EventArgs e)
|
||||
{
|
||||
FolderBrowserDialog folderBrowseDialog = new FolderBrowserDialog();
|
||||
if (Directory.Exists(myHalconTool.imageDirectoryPath))
|
||||
folderBrowseDialog.SelectedPath = myHalconTool.imageDirectoryPath;
|
||||
folderBrowseDialog.Description = "请选择图像文件夹路径";
|
||||
if (folderBrowseDialog.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
myHalconTool.imageDirectoryPath = folderBrowseDialog.SelectedPath;
|
||||
this.tbxImageDirectory.Text = myHalconTool.imageDirectoryPath;
|
||||
myHalconTool.L_imageFile.Clear();
|
||||
string[] files = Directory.GetFiles(folderBrowseDialog.SelectedPath);
|
||||
for (int i = 0; i < files.Length; i++)
|
||||
{
|
||||
FileInfo fileInfo = new FileInfo(files[i]);
|
||||
if (fileInfo.Extension == ".jpg" || fileInfo.Extension == ".bmp" || fileInfo.Extension == ".png" || fileInfo.Extension == ".tif")
|
||||
myHalconTool.L_imageFile.Add(files[i]);
|
||||
}
|
||||
if (myHalconTool.L_imageFile.Count > 0)
|
||||
{
|
||||
myHalconTool.currentImageIndex = 0;
|
||||
myHalconTool.outputImageFilePath = myHalconTool.L_imageFile[myHalconTool.currentImageIndex];
|
||||
myHalconTool.DispImage();
|
||||
myHalconTool.currentImageName = Path.GetFileName(myHalconTool.L_imageFile[myHalconTool.currentImageIndex]);
|
||||
lbImageName.Text = myHalconTool.currentImageName;
|
||||
|
||||
}
|
||||
// lbl_imageNum.Text = "共" + myHalconTool.L_imageFile.Count + "张";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public void btnNext_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (myHalconTool.L_imageFile.Count > 0)
|
||||
{
|
||||
int oldIndex = myHalconTool.currentImageIndex;
|
||||
if(++myHalconTool.currentImageIndex < myHalconTool.L_imageFile.Count)
|
||||
{
|
||||
myHalconTool.outputImageFilePath = myHalconTool.L_imageFile[myHalconTool.currentImageIndex];
|
||||
myHalconTool.Run(SoftwareRunState.Debug);
|
||||
myHalconTool.currentImageName = Path.GetFileName(myHalconTool.L_imageFile[myHalconTool.currentImageIndex]);
|
||||
lbImageName.Text = myHalconTool.currentImageName;
|
||||
}
|
||||
else
|
||||
{
|
||||
myHalconTool.currentImageIndex = oldIndex;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void btnOld_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (myHalconTool.L_imageFile.Count > 0)
|
||||
{
|
||||
int oldIndex = myHalconTool.currentImageIndex;
|
||||
if (--myHalconTool.currentImageIndex >= 0)
|
||||
{
|
||||
myHalconTool.outputImageFilePath = myHalconTool.L_imageFile[myHalconTool.currentImageIndex];
|
||||
myHalconTool.Run(SoftwareRunState.Debug);
|
||||
myHalconTool.currentImageName = Path.GetFileName(myHalconTool.L_imageFile[myHalconTool.currentImageIndex]);
|
||||
lbImageName.Text = myHalconTool.currentImageName;
|
||||
}
|
||||
else
|
||||
{
|
||||
myHalconTool.currentImageIndex = oldIndex;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ using HalconDotNet;
|
||||
using ToolBase;
|
||||
using System.Diagnostics;
|
||||
using ViewROI;
|
||||
using System.IO;
|
||||
|
||||
namespace HalconTool
|
||||
{
|
||||
@@ -91,7 +92,23 @@ namespace HalconTool
|
||||
Stopwatch sw = new Stopwatch();
|
||||
sw.Restart();
|
||||
softwareRunState = softwareState;
|
||||
DispImage();
|
||||
if(workMode == WorkMode.ReadOneImage)
|
||||
{
|
||||
DispImage();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (currentImageIndex <= L_imageFile.Count)
|
||||
{
|
||||
currentImageIndex = currentImageIndex == L_imageFile.Count ? 0 : currentImageIndex;
|
||||
outputImageFilePath = L_imageFile[currentImageIndex];
|
||||
DispImage();
|
||||
currentImageName = Path.GetFileName(L_imageFile[currentImageIndex]);
|
||||
if(softwareState == SoftwareRunState.Release)
|
||||
currentImageIndex++;
|
||||
}
|
||||
}
|
||||
|
||||
SetToolStatusDisp();
|
||||
sw.Stop();
|
||||
runTime = $"工具运行时间:{sw.ElapsedMilliseconds.ToString()} ms";
|
||||
|
||||
@@ -19,7 +19,7 @@ using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using ToolBase;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
using System.Windows.Forms;
|
||||
using Logger;
|
||||
using System.Diagnostics;
|
||||
|
||||
@@ -25,7 +25,7 @@ using System.Text.RegularExpressions;
|
||||
using HalconDotNet;
|
||||
using FormLib;
|
||||
using Logger;
|
||||
using static DataStruct.DataStruct;
|
||||
using static DataStruct.DataStructClass;
|
||||
|
||||
namespace PMAlignTool
|
||||
{
|
||||
|
||||
274
SDKCameraTool/BaslerCamera.cs
Normal file
274
SDKCameraTool/BaslerCamera.cs
Normal file
@@ -0,0 +1,274 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SDKCameraTool
|
||||
{
|
||||
public class BaslerCamera : ICamera
|
||||
{
|
||||
public bool bGammaEnable
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public Bitmap bmpImage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int cameraID
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string cameraName
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public CamereaCompanyType CompanyType
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string CxpFilePath
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public float fExpTime
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public float fGain
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int Height
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public float iGamma
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public bool isFlowAcq
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public bool IsNeedCalibration
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int OffsetX
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int OffsetY
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string sSerialNumber
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int TriggerCount
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int TriggerDelay
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public TriggerMode triggerMode
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public TriggerSouce triggerSource
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public int Width
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public event EventHandler<EventImageTrigger> ImageTrigger;
|
||||
|
||||
public int CloseCam()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public int OpenCam(CaptureMode captureMode)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public int Snap()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
134
SDKCameraTool/FormSDKCameraTool.Designer.cs
generated
Normal file
134
SDKCameraTool/FormSDKCameraTool.Designer.cs
generated
Normal file
@@ -0,0 +1,134 @@
|
||||
namespace SDKCameraTool
|
||||
{
|
||||
partial class FormSDKCameraTool
|
||||
{
|
||||
/// <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()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormSDKCameraTool));
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
this.tsbtRunTool = new System.Windows.Forms.ToolStripButton();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.uiSplitContainer1 = new Sunny.UI.UISplitContainer();
|
||||
this.toolStrip1.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.uiSplitContainer1)).BeginInit();
|
||||
this.uiSplitContainer1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// toolStrip1
|
||||
//
|
||||
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(25, 25);
|
||||
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.tsbtRunTool});
|
||||
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStrip1.Name = "toolStrip1";
|
||||
this.toolStrip1.Size = new System.Drawing.Size(1092, 32);
|
||||
this.toolStrip1.TabIndex = 5;
|
||||
this.toolStrip1.Text = "toolStrip1";
|
||||
//
|
||||
// tsbtRunTool
|
||||
//
|
||||
this.tsbtRunTool.Image = ((System.Drawing.Image)(resources.GetObject("tsbtRunTool.Image")));
|
||||
this.tsbtRunTool.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.tsbtRunTool.Name = "tsbtRunTool";
|
||||
this.tsbtRunTool.Size = new System.Drawing.Size(85, 29);
|
||||
this.tsbtRunTool.Text = "运行工具";
|
||||
//
|
||||
// statusStrip
|
||||
//
|
||||
this.statusStrip.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.lb_RunStatus,
|
||||
this.toolStripStatusLabel1,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 618);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(1092, 22);
|
||||
this.statusStrip.TabIndex = 4;
|
||||
//
|
||||
// lb_RunStatus
|
||||
//
|
||||
this.lb_RunStatus.Name = "lb_RunStatus";
|
||||
this.lb_RunStatus.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// toolStripStatusLabel1
|
||||
//
|
||||
this.toolStripStatusLabel1.Name = "toolStripStatusLabel1";
|
||||
this.toolStripStatusLabel1.Size = new System.Drawing.Size(16, 17);
|
||||
this.toolStripStatusLabel1.Text = " ";
|
||||
//
|
||||
// lb_RunTime
|
||||
//
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 17);
|
||||
//
|
||||
// uiSplitContainer1
|
||||
//
|
||||
this.uiSplitContainer1.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.uiSplitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.uiSplitContainer1.Location = new System.Drawing.Point(0, 32);
|
||||
this.uiSplitContainer1.Name = "uiSplitContainer1";
|
||||
this.uiSplitContainer1.Size = new System.Drawing.Size(1092, 586);
|
||||
this.uiSplitContainer1.SplitterDistance = 632;
|
||||
this.uiSplitContainer1.SplitterWidth = 11;
|
||||
this.uiSplitContainer1.TabIndex = 6;
|
||||
//
|
||||
// FormSDKCameraTool
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1092, 640);
|
||||
this.Controls.Add(this.uiSplitContainer1);
|
||||
this.Controls.Add(this.toolStrip1);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Name = "FormSDKCameraTool";
|
||||
this.Text = "FormSDKCameraTool";
|
||||
this.toolStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.uiSplitContainer1)).EndInit();
|
||||
this.uiSplitContainer1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||
private System.Windows.Forms.ToolStripButton tsbtRunTool;
|
||||
private System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunStatus;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1;
|
||||
private System.Windows.Forms.ToolStripStatusLabel lb_RunTime;
|
||||
private Sunny.UI.UISplitContainer uiSplitContainer1;
|
||||
}
|
||||
}
|
||||
20
SDKCameraTool/FormSDKCameraTool.cs
Normal file
20
SDKCameraTool/FormSDKCameraTool.cs
Normal 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 SDKCameraTool
|
||||
{
|
||||
public partial class FormSDKCameraTool : Form
|
||||
{
|
||||
public FormSDKCameraTool()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
199
SDKCameraTool/FormSDKCameraTool.resx
Normal file
199
SDKCameraTool/FormSDKCameraTool.resx
Normal file
@@ -0,0 +1,199 @@
|
||||
<?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>
|
||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>225, 19</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="tsbtRunTool.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
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
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>335, 19</value>
|
||||
</metadata>
|
||||
</root>
|
||||
174
SDKCameraTool/ICamera.cs
Normal file
174
SDKCameraTool/ICamera.cs
Normal file
@@ -0,0 +1,174 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SDKCameraTool
|
||||
{
|
||||
public interface ICamera
|
||||
{
|
||||
/// <summary>
|
||||
/// CaemraID
|
||||
/// </summary>
|
||||
[CategoryAttribute("CaemraID")]
|
||||
int cameraID { get; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
CamereaCompanyType CompanyType { get; }
|
||||
/// <summary>
|
||||
/// 相机名称
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机名称")]
|
||||
string cameraName { get; set; }
|
||||
/// <summary>
|
||||
/// bmp图像
|
||||
/// </summary>
|
||||
[CategoryAttribute("获取的图像")]
|
||||
Bitmap bmpImage { get; }
|
||||
/// <summary>
|
||||
/// 曝光值
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机曝光")]
|
||||
float fExpTime { get; set; }
|
||||
/// <summary>
|
||||
/// 触发方式
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机触发模式")]
|
||||
TriggerMode triggerMode { get; set; }
|
||||
/// <summary>
|
||||
/// 触发源
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机触发源")]
|
||||
TriggerSouce triggerSource { get; set; }
|
||||
/// <summary>
|
||||
/// 相机序列号,相机调用唯一标识
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机序列号")]
|
||||
string sSerialNumber { get; set; }
|
||||
/// <summary>
|
||||
/// 增益
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机增益")]
|
||||
float fGain { get; set; }
|
||||
/// <summary>
|
||||
/// 伽马
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机伽马值")]
|
||||
float iGamma { get; set; }
|
||||
/// <summary>
|
||||
/// 伽马使能
|
||||
/// </summary>
|
||||
[CategoryAttribute("相机伽马使能")]
|
||||
bool bGammaEnable { get; set; }
|
||||
/// <summary>
|
||||
/// 感兴趣区域宽度
|
||||
/// </summary>
|
||||
[CategoryAttribute("ROI宽")]
|
||||
int Width { get; set; }
|
||||
/// <summary>
|
||||
/// 感兴趣区域高度
|
||||
/// </summary>
|
||||
[CategoryAttribute("ROI高")]
|
||||
int Height { get; set; }
|
||||
/// <summary>
|
||||
/// X偏移
|
||||
/// </summary>
|
||||
[CategoryAttribute("X偏移")]
|
||||
int OffsetX { get; set; }
|
||||
/// <summary>
|
||||
/// Y偏移
|
||||
/// </summary>
|
||||
[CategoryAttribute("Y偏移")]
|
||||
int OffsetY { get; set; }
|
||||
/// <summary>
|
||||
/// 触发拍照延时
|
||||
/// </summary>
|
||||
int TriggerDelay { get; set; }
|
||||
/// <summary>
|
||||
/// 是否作为飞拍使用
|
||||
/// </summary>
|
||||
bool isFlowAcq { get; set; }
|
||||
/// <summary>
|
||||
/// 该相机触发次数
|
||||
/// </summary>
|
||||
int TriggerCount { get; set; }
|
||||
/// <summary>
|
||||
/// 该相机出来的图像是否需要经过标定
|
||||
/// </summary>
|
||||
bool IsNeedCalibration { get; set; }
|
||||
string CxpFilePath { get; set; }
|
||||
/// <summary>
|
||||
/// 打开相机
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
int OpenCam(CaptureMode captureMode);
|
||||
/// <summary>
|
||||
/// 关闭相机
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
int CloseCam();
|
||||
/// <summary>
|
||||
/// 取图
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
int Snap();
|
||||
/// <summary>
|
||||
/// 被动触发事件
|
||||
/// </summary>
|
||||
event EventHandler<EventImageTrigger> ImageTrigger;
|
||||
}
|
||||
|
||||
public enum CamereaCompanyType
|
||||
{
|
||||
HIKVision,
|
||||
HIKVision_CXP,
|
||||
Ajhua,
|
||||
Basler,
|
||||
FLIR,
|
||||
File,
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class EventImageTrigger : EventArgs
|
||||
{
|
||||
public string cameraName { get; set; }
|
||||
public Bitmap image { get; set; }
|
||||
public int TriggerCount { get; set; }
|
||||
}
|
||||
public class EventIntPtrImageTrigger : EventArgs
|
||||
{
|
||||
public string cameraName { get; set; }
|
||||
public IntPtr pImage { get; set; }
|
||||
public int imageWidth { get; set; }
|
||||
public int imageHeight { get; set; }
|
||||
}
|
||||
public enum TriggerMode
|
||||
{
|
||||
Off = 0,
|
||||
On
|
||||
}
|
||||
|
||||
public enum TriggerSouce
|
||||
{
|
||||
HIKLine0 = 0,
|
||||
HIKSoftWare = 1,
|
||||
FLIRLine0 = 2,
|
||||
FLIRSoftWare = 3,
|
||||
SoftWareHIK = 7
|
||||
}
|
||||
public enum CaptureMode
|
||||
{
|
||||
Positive,
|
||||
CallBack
|
||||
}
|
||||
/// <summary>
|
||||
/// 每次需从相机读取的参数
|
||||
/// </summary>
|
||||
public class CameraInfo
|
||||
{
|
||||
}
|
||||
}
|
||||
36
SDKCameraTool/Properties/AssemblyInfo.cs
Normal file
36
SDKCameraTool/Properties/AssemblyInfo.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// 有关程序集的一般信息由以下
|
||||
// 控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("SDKCameraTool")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("SDKCameraTool")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2022")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
//将 ComVisible 设置为 false 将使此程序集中的类型
|
||||
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
|
||||
//请将此类型的 ComVisible 特性设置为 true。
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||
[assembly: Guid("1c61f57d-1a36-4a98-b7dd-a65f2dbbe468")]
|
||||
|
||||
// 程序集的版本信息由下列四个值组成:
|
||||
//
|
||||
// 主版本
|
||||
// 次版本
|
||||
// 生成号
|
||||
// 修订号
|
||||
//
|
||||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||
// 方法是按如下所示使用“*”: :
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
71
SDKCameraTool/SDKCameraTool.csproj
Normal file
71
SDKCameraTool/SDKCameraTool.csproj
Normal file
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>SDKCameraTool</RootNamespace>
|
||||
<AssemblyName>SDKCameraTool</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="SunnyUI">
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="BaslerCamera.cs" />
|
||||
<Compile Include="FormSDKCameraTool.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormSDKCameraTool.Designer.cs">
|
||||
<DependentUpon>FormSDKCameraTool.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ICamera.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="FormSDKCameraTool.resx">
|
||||
<DependentUpon>FormSDKCameraTool.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
1
ToolLib.VisionJob/FormJobManage.Designer.cs
generated
1
ToolLib.VisionJob/FormJobManage.Designer.cs
generated
@@ -91,6 +91,7 @@ namespace ToolLib.VisionJob
|
||||
this.picNewJob.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
|
||||
this.picNewJob.TabIndex = 2;
|
||||
this.picNewJob.TabStop = false;
|
||||
this.picNewJob.Click += new System.EventHandler(this.picNewJob_Click);
|
||||
//
|
||||
// FormJobManage
|
||||
//
|
||||
|
||||
@@ -8,6 +8,7 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using Sunny.UI;
|
||||
|
||||
namespace ToolLib.VisionJob
|
||||
{
|
||||
@@ -42,5 +43,24 @@ namespace ToolLib.VisionJob
|
||||
string jobName = tabJobUnion.SelectedTab.Text;
|
||||
VisionJobParams.pVisionProject.Project[jobName].Run();
|
||||
}
|
||||
|
||||
private void picNewJob_Click(object sender, EventArgs e)
|
||||
{
|
||||
UIInputForm myUIInputForm = new UIInputForm();
|
||||
myUIInputForm.Label.Text = "输入新建Job名称";
|
||||
if (myUIInputForm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
string newJobName = myUIInputForm.Editor.Text;
|
||||
if(VisionJobParams.pVisionProject.Project.ContainsKey(newJobName))
|
||||
{
|
||||
MessageBox.Show("新建流程名称重复,请重新建立!");
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
OperateProject.Instance.CreateNewJob(newJobName, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
97
ToolLib.VisionJob/FormToolBox.Designer.cs
generated
97
ToolLib.VisionJob/FormToolBox.Designer.cs
generated
@@ -30,9 +30,9 @@ namespace ToolLib.VisionJob
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.Windows.Forms.TreeNode treeNode1 = new System.Windows.Forms.TreeNode("流程", 1, 1);
|
||||
System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("Halcon窗口", 3, 3);
|
||||
System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("Basler");
|
||||
System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("HIKVision");
|
||||
System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("Halcon本地", 3, 3);
|
||||
System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("Basler相机");
|
||||
System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("HIKVision相机");
|
||||
System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("获取图像", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode2,
|
||||
treeNode3,
|
||||
@@ -51,13 +51,19 @@ namespace ToolLib.VisionJob
|
||||
treeNode10,
|
||||
treeNode11,
|
||||
treeNode12});
|
||||
System.Windows.Forms.TreeNode treeNode14 = new System.Windows.Forms.TreeNode("找线");
|
||||
System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("找圆");
|
||||
System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("卡尺");
|
||||
System.Windows.Forms.TreeNode treeNode17 = new System.Windows.Forms.TreeNode("几何", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode14,
|
||||
treeNode15,
|
||||
treeNode16});
|
||||
System.Windows.Forms.TreeNode treeNode14 = new System.Windows.Forms.TreeNode("手眼标定");
|
||||
System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("标定与校准", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode14});
|
||||
System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("找线");
|
||||
System.Windows.Forms.TreeNode treeNode17 = new System.Windows.Forms.TreeNode("找圆");
|
||||
System.Windows.Forms.TreeNode treeNode18 = new System.Windows.Forms.TreeNode("卡尺");
|
||||
System.Windows.Forms.TreeNode treeNode19 = new System.Windows.Forms.TreeNode("几何", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode16,
|
||||
treeNode17,
|
||||
treeNode18});
|
||||
System.Windows.Forms.TreeNode treeNode20 = new System.Windows.Forms.TreeNode("Halcon引擎");
|
||||
System.Windows.Forms.TreeNode treeNode21 = new System.Windows.Forms.TreeNode("脚本", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode20});
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormToolBox));
|
||||
this.tvw_ToolBox = new System.Windows.Forms.TreeView();
|
||||
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
|
||||
@@ -87,15 +93,15 @@ namespace ToolLib.VisionJob
|
||||
treeNode2.Name = "节点1";
|
||||
treeNode2.SelectedImageIndex = 3;
|
||||
treeNode2.Tag = "HalconTool";
|
||||
treeNode2.Text = "Halcon窗口";
|
||||
treeNode2.Text = "Halcon本地";
|
||||
treeNode3.ImageKey = "图像.png";
|
||||
treeNode3.Name = "节点2";
|
||||
treeNode3.SelectedImageIndex = 3;
|
||||
treeNode3.Text = "Basler";
|
||||
treeNode3.Text = "Basler相机";
|
||||
treeNode4.ImageKey = "图像.png";
|
||||
treeNode4.Name = "节点3";
|
||||
treeNode4.SelectedImageIndex = 3;
|
||||
treeNode4.Text = "HIKVision";
|
||||
treeNode4.Text = "HIKVision相机";
|
||||
treeNode5.ImageKey = "相机.png";
|
||||
treeNode5.Name = "节点0";
|
||||
treeNode5.SelectedImageKey = "相机.png";
|
||||
@@ -122,30 +128,50 @@ namespace ToolLib.VisionJob
|
||||
treeNode13.ImageKey = "文件夹.png";
|
||||
treeNode13.Name = "节点8";
|
||||
treeNode13.Text = "匹配";
|
||||
treeNode14.ImageKey = "Line.png";
|
||||
treeNode14.Name = "FindLine";
|
||||
treeNode14.SelectedImageKey = "Line.png";
|
||||
treeNode14.Tag = "FindLine";
|
||||
treeNode14.Text = "找线";
|
||||
treeNode15.ImageKey = "Circle.png";
|
||||
treeNode15.Name = "FindCircle";
|
||||
treeNode15.SelectedImageKey = "Circle.png";
|
||||
treeNode15.Text = "找圆";
|
||||
treeNode16.ImageKey = "卡尺.png";
|
||||
treeNode16.Name = "Caliper";
|
||||
treeNode16.SelectedImageKey = "卡尺.png";
|
||||
treeNode16.Tag = "Caliper";
|
||||
treeNode16.Text = "卡尺";
|
||||
treeNode17.ImageKey = "几何_32.png";
|
||||
treeNode17.Name = "节点0";
|
||||
treeNode17.SelectedImageKey = "几何_32.png";
|
||||
treeNode17.Text = "几何";
|
||||
treeNode14.ImageKey = "校准_48.png";
|
||||
treeNode14.Name = "节点2";
|
||||
treeNode14.SelectedImageKey = "校准_48.png";
|
||||
treeNode14.Tag = "EyeHandCalib";
|
||||
treeNode14.Text = "手眼标定";
|
||||
treeNode15.ImageKey = "icons8_workflow_48.png";
|
||||
treeNode15.Name = "节点1";
|
||||
treeNode15.SelectedImageKey = "icons8_workflow_48.png";
|
||||
treeNode15.Text = "标定与校准";
|
||||
treeNode16.ImageKey = "Line.png";
|
||||
treeNode16.Name = "FindLine";
|
||||
treeNode16.SelectedImageKey = "Line.png";
|
||||
treeNode16.Tag = "FindLine";
|
||||
treeNode16.Text = "找线";
|
||||
treeNode17.ImageKey = "Circle.png";
|
||||
treeNode17.Name = "FindCircle";
|
||||
treeNode17.SelectedImageKey = "Circle.png";
|
||||
treeNode17.Text = "找圆";
|
||||
treeNode18.ImageKey = "卡尺.png";
|
||||
treeNode18.Name = "Caliper";
|
||||
treeNode18.SelectedImageKey = "卡尺.png";
|
||||
treeNode18.Tag = "Caliper";
|
||||
treeNode18.Text = "卡尺";
|
||||
treeNode19.ImageKey = "几何_32.png";
|
||||
treeNode19.Name = "节点0";
|
||||
treeNode19.SelectedImageKey = "几何_32.png";
|
||||
treeNode19.Text = "几何";
|
||||
treeNode20.ImageKey = "halcon_Icon.png";
|
||||
treeNode20.Name = "HDevEngine";
|
||||
treeNode20.SelectedImageKey = "halcon_Icon.png";
|
||||
treeNode20.Tag = "HDevEngineTool";
|
||||
treeNode20.Text = "Halcon引擎";
|
||||
treeNode21.ImageKey = "脚本1";
|
||||
treeNode21.Name = "脚本";
|
||||
treeNode21.SelectedImageKey = "脚本1";
|
||||
treeNode21.Text = "脚本";
|
||||
this.tvw_ToolBox.Nodes.AddRange(new System.Windows.Forms.TreeNode[] {
|
||||
treeNode1,
|
||||
treeNode5,
|
||||
treeNode9,
|
||||
treeNode13,
|
||||
treeNode17});
|
||||
treeNode15,
|
||||
treeNode19,
|
||||
treeNode21});
|
||||
this.tvw_ToolBox.SelectedImageIndex = 4;
|
||||
this.tvw_ToolBox.Size = new System.Drawing.Size(417, 543);
|
||||
this.tvw_ToolBox.TabIndex = 1;
|
||||
@@ -175,6 +201,11 @@ namespace ToolLib.VisionJob
|
||||
this.imageList1.Images.SetKeyName(15, "几何_32.png");
|
||||
this.imageList1.Images.SetKeyName(16, "图像预处理_32.png");
|
||||
this.imageList1.Images.SetKeyName(17, "相机.png");
|
||||
this.imageList1.Images.SetKeyName(18, "脚本1");
|
||||
this.imageList1.Images.SetKeyName(19, "脚本2");
|
||||
this.imageList1.Images.SetKeyName(20, "halcon_Icon.png");
|
||||
this.imageList1.Images.SetKeyName(21, "icons8_workflow_48.png");
|
||||
this.imageList1.Images.SetKeyName(22, "校准_48.png");
|
||||
//
|
||||
// richTextBoxEx1
|
||||
//
|
||||
@@ -208,6 +239,8 @@ namespace ToolLib.VisionJob
|
||||
this.imageListTool.Images.SetKeyName(9, "匹配.ico");
|
||||
this.imageListTool.Images.SetKeyName(10, "模板.ico");
|
||||
this.imageListTool.Images.SetKeyName(11, "相机.png");
|
||||
this.imageListTool.Images.SetKeyName(12, "脚本");
|
||||
this.imageListTool.Images.SetKeyName(13, "脚本2");
|
||||
//
|
||||
// splitContainer1
|
||||
//
|
||||
|
||||
@@ -118,15 +118,15 @@
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
<value>157, 17</value>
|
||||
</metadata>
|
||||
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADS
|
||||
LgAAAk1TRnQBSQFMAgEBEgEAAXABAAFwAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABgAMAAaADAAEBAQABCAYAAVAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACY
|
||||
PQAAAk1TRnQBSQFMAgEBFwEAAYgBAAGIAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABgAMAAcADAAEBAQABCAYAAWAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||
@@ -153,368 +153,454 @@
|
||||
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/yIAH2dgAAH0AWcdmAFn
|
||||
YAAB7QFnHZgBZ2AAAe0BZwyYAW0DZwHrDJgBZ0QAAf8BFgFqCI8BZwFKCDgBWQGaAf8EAAHtAWcKmAHs
|
||||
B2cBkgqYAWdEAAEWCo8BZwFKCjgBmgQAAe0BZwmYA2cF/wJnAesJmAFnRAABagqPAWcBSgo4AVkEAAHt
|
||||
AWcJmAFnAfcH/wJnCZgBZ0QAC48BZwFKCzgEAAHtAWcImAJnCf8CZwiYAWdEAAuPAWcBSgs4BAAB7QFn
|
||||
B5gB6wFnBP8B8wHtAfQE/wFnCJgBZ0QAC48BZwFKCzgEAAHtAWcHmAJnA/8FZwP/AmcHmAFnRAALjwFn
|
||||
AUoLOAQAAe0BZweYAWcD/wFtAWcCmAHtAWcBBwP/AWcHmAFnRAALjwFnAUoLOAQAAe0BZweYAWcD/wFn
|
||||
AewDmAJnA/8BZweYAWdEAAuPAWcBSgtSBAAB7QFnB5gBZwP/AWcFmAFnA/8BZweYAWdEAAuPAWcMQwQA
|
||||
Ae0BZweYAWcD/wFnBZgBZwP/AWcHmAFnRAALjwFnAUkLcQQAAe0BZweYAWcD/wFnAZIDmAHqAWcD/wFn
|
||||
B5gBZ0QAC48BZwFJC3EEAAHtAWcHmAFnA/8CZwOYAWcBjQP/AWcHmAFnRAALjwFnAUkLcQQAAe0BZweY
|
||||
AWcB6wP/BWcD/wJnB5gBZ0QAC48BZwFJC3EEAAHtAWcHmAHrAWcE/wH3AWcBvAT/AWcImAFnRAAMQwFJ
|
||||
C3EEAAHtAWcImAFnAW0J/wJnCJgBZ0QAC6MBZgFJC3EEAAHtAWcImAHsAWcB8wf/AZIBZwOYBWcBmAFn
|
||||
RAALxgFnAUkLcQQAAe0BZwmYA2cF/wNnA5gFZwGYAWdEAAvGAWcBSQtxBAAB7QFnCpgBbQdnAewEmAFn
|
||||
A+MBZwGYAWdEAAvGAWcBSQtxBAAB7QFnDJgFZwaYBWcBmAFnRAALxgFnAUkLcQQAAe0BZxeYAW0DZwHs
|
||||
AZgBZ0QAC8YBZwFJC3EEAAHwAWcdmAFnRAALxgFnAUkKcQFWBQAfZ0QAAbAKxgFnAUkKcQF4BgAFBwJn
|
||||
D24BZwHsBQdFAAH/AbABgAjGAWcBSQhxAVYBeAH0CwAB8AFnD5oBZwH/bgABZw+aAWdvAAFnD5oBZ28A
|
||||
EWdvAAH0D2cB/1MAAfQGVQF3Af82AAolAW80AA1VMgAPJTAAB1UBlwGYAXcGVQF3EgAL9BEACSUBTAgl
|
||||
AW8tAARVAZgJAAF3BFUPAA/rDgAFJQFvCQABRgUlKgAB9ANVAZ0NAAGXA1UB/wwAAusB8gsAAQcC6wwA
|
||||
BCUBTA0ABSUTAAL0EwAB/wNVEAAB/wNVDAAB6wHtDQAC6wsABCUQAAH0BCUSAAL/EwADVRIAAf8DVQsA
|
||||
AesB8gEAAusCAAHyAesDAAHrAewBAAHsAesKAAQlEgAB/wMlAW8FAAH0AfEB/wkAAv8JAAH/AfEB9AYA
|
||||
A1UUAAH0AlUBlwoAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesJAAH/AyUUAAH0AyUFAAH/AbwBcwHx
|
||||
Af8HAAL0BwAB/wHxAXMBvAH/BQAB/wJVAQgHAAHxDQABdwJVCgAB6wH0AQAC6wIAAfIB6wMAAesB7AEA
|
||||
AZIB6wkAAyUBFhUAAUYDJQYAAf8BBwEcAfMB/wUAAv8FAAH/AfMBHAEHAf8HAANVCAACVQ0AAlUBdwkA
|
||||
AesB9AEAAusCAAHyAesDAAHrAewBAAGSAesIAAH/AyUFAAz/BgADJQgAAf8BBwEcAfMB/wMAAvQDAAH/
|
||||
AfMBHAEHAf8JAAJVAfQIAANVDAABdwJVCQAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wgAAyUB8wUA
|
||||
AW8LJQYAAUYCJQFvAwAB8wFyARwB8wIAAf8BBwEcAfMB/wEAAvQBAAH/AfMBHAEHAf8CAAG8AfIBHAH0
|
||||
BAABCAJVCQAEVQHxCwACVQH/CAAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wgAAyUGAAFvCyUHAAMl
|
||||
AwAB/wEcAfMFAAH/AQcBHAHzAv8B8wEcAQcB/wQAAf8BcwG8BQADVQkABlUKAAJVAXcIAAHrAfQBAALr
|
||||
AgAB8gHrAwAB6wHsAQABkgHrCAADJQYAAW8LJQcAAyUDAAH/AfQBcwH/BgAB/wG8AnMBvAH/BgAB9AEc
|
||||
Ae8FAAJVAZcJAAdVCQADVQgAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesHAAH/AyUGAAFvCyUHAAMl
|
||||
AwAB9AIHAfQHAATwBwAB8AH0AfAB9AQAAlUB8wkACFUBCAcAA1UIAAHrAfQBAALrAgAB8gHrAwAB6wHs
|
||||
AQABkgHrBwABlAIlARoGAAFvCyUHAAMlCgAC/wHxAf8BAALxAQAB/wHxAv8LAAJVAfQJAAlVBwABnQJV
|
||||
CAAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wcAAUYCJQH0BgABbwslBwABbwIlCQAB9AH/AfMDAALx
|
||||
AwAB8wH/AfQKAAJVAfMJAAhVCAADVQgAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesHAAGTAiUBGgYA
|
||||
AW8LJQcAAyUHAAP0BQAC8QUAA/QIAAJVAZcJAAZVAQgJAANVCAAB6wH0AQAC6wIAAfIB6wMAAesB7AEA
|
||||
AZIB6wcAAf8CJQFMBgABbwslBwADJQcAAv8GAALxBgAC/wgAA1UJAAVVAf8KAANVCAAB6wH0AQAC6wIA
|
||||
AfIB6wMAAesB7AEAAZIB6wgAAyUGAAFvCyUHAAMlDwAC8RAAAZgCVQkABFUMAAJVAfQIAAHrAfQBAALr
|
||||
AgAB8gHrAwAB6wHsAQABkgHrCAADJQYAAW8LJQcAAyUPAALxEQACVQH/CAACVQEIDAABlwJVCQAB6wH0
|
||||
DQABkgHrCAADJQH/BQABbwslBgABFgMlDwAC8REAA1UIAAFVDgADVQcAAv8B6wHwDf8B7AHrAv8GAAH0
|
||||
AyUFAAEWC0YGAAMlAf8PAALxEQAB9AJVAfMVAAGXAlUIABXrBwADJQHzFQABbwMlEAAC8RIAA1UVAANV
|
||||
CAAV6wcAARoDJRUAAyURAALxEwADVRMAA1UJABXrCAAEJRMABCURAALxAgAB/xAAAfIDVREAA1UPAALr
|
||||
BwAB6wHsDgAEJREABCUSAALxAgABHBEAAQgDVQHyDQABmANVAfQPAALrAfQFAAG8AesB7w8ABCUB8w0A
|
||||
AZMEJRMAAvEBAAH/AXIB9BEAAfIEVQH/CQAB8gRVEgAJ6xEABSUB/wkAAfMFJRQAAvEBAAEIAfABHBMA
|
||||
BlUBlwHxAfQB8QdVFAAB8QWSAfQTAAclAW8BGwH0ARoBRgclFQAC/wEAAfIB/wHzAf8TAAH0DVUB/zAA
|
||||
ARoPJQH/MwABmAdVAfA1AAH0CyUB/3cAAf8BkwFGAZMB/3AAAZcDVQEIIQABwghaAfNPAAHCBlUB9B0A
|
||||
AfMMWgH0TQAJVQH/GgAQWg4AAfQDBwHyDgAB9AMHAfImAApVAZcYAAZaAQgEAAGeBVoNAAH0AXMB8gLz
|
||||
AfQOAAH/A/MBBwHyBgABvBkUBQAMVQHCFQAFWgH/CAAB/wNaDQAB8wEHFgAB8wEHBgABvAEUBLgBkA0U
|
||||
BLgBkAEUBQAOVQH/EgABngRaDAAB5AH/DQAB8wEHAgAB/wLzAvQB/wIAAv8CAAH/AwAB/wMAAfMBBwYA
|
||||
AbwBFAG4A5ABbAcUAYsBkAQUA5ABuAGQARQFABBVEQAEWhwAAfMBBwUAAf8B8wHwAgAB8wFyAbwCBwEA
|
||||
Af8CBwMAAfMBBwYAAbwBFAG4CRQBbAPZAWwGFAG4AZABFAUAEVUBmA4ABFodAAH/AfQCAAHzAgcBvAH0
|
||||
AgAB8AH/AfQB8QHzAf8B8wHvAfIB/wHyAf8BAAH/AfQGAAG8ARQBuAgUAZAC2QGzApACuAGQAxQBuAGQ
|
||||
ARQFABNVAfIMAANaAf8jAAH/AfQBcwEcAf8B9AEcAQAB8AIAAXMB9AH/AXMBBwH/CQABvAEUAbgHFAGQ
|
||||
AtkBbAGQBNkBkAMUAbgBkAEUBQAVVQH/CQABngNaIQAB/wMHAfEB9gHyAe8B9AHyARwB/wHwAf8BBwHy
|
||||
AfQBBwsAAbwIFAFsAtkBbAGyAdkBuAKLAbMBkAYUBQAWVQGXCAADWgH/JAAB/wG8AXMB/wH0AXIB/wHv
|
||||
AfICAAH/AQcBAAEHCwABvAgUAbgB2QFsAZAB2QG4ARQBkALZAbIGFAUAGFUBmAYAA1oUAANaCQAIBwHv
|
||||
DwcHAAEZGd8FABpVAfQEAANaEwABCARaLwABGgFZARsBGgFZAfQBGgFZAZoBAAGaAVkBGgoAG1UBmAIA
|
||||
Af8DWhIAAf8GWggAAfQB8gH0AfIC8wH0Af8B8wH0AfMB9ALzAfQB8wH0AfMB9AHzAfQB8xAAAZoBWQH0
|
||||
AXoBmgH/AnoB9gGaAXoBGgH/CgAcVQH/AQABngJaAZ4SAAdaAQgHAAHzAQcB8wEHAfMBCAIAAfIBvAHy
|
||||
AbwB8gG8AfMBBwHzAQcB8wG8AfMBBxAAAZoBWQH/AVkBGgEbAVkB/wHzAVkBmgH/AZoKABxVAZgBAANa
|
||||
AcIRAAlaAf8GAAH/AfQB8wHvAfMBHAH/AfMB9AFzAfYB9AHwAvIB8AH/AfQB8gHwAfIBvA0AAvQBAAGa
|
||||
AXoB/wFZAhoBegEAAZoBegH0AnoKABxVARsBAAGeAloBnhAAC1oB/wcAAfQBcwH2AXID/wG8AXMB7wEc
|
||||
AQABBwL/AQABvAH0AfAB8w0AAnoBAAGaAVkB/wFZAXoB/wH2AfQBWQEaARsBWQEaCgAcVQIAAf8DWg8A
|
||||
BFoBngNaAf8EWgYAAQcB/wFzAfQBHAHzAvQB/wH0AfMB9gHwAQcB/wEHAQABBwH/AQcB/w0AAZoBegH/
|
||||
ARoBWQHzARsCegEaAXoBmgH/AZoBegH/CgAaVQGXBAADWg8ABFoBAANaAQAB/wNaBgABBwHyAfMBvAH/
|
||||
ARwB/wH0AfEB9gEHAXMBBwH/Ae8B8AH0AQcB/wEHDgABGwFZARsB9gFZAXoB/wEbAXoBWQF6Af8BmgFZ
|
||||
ARsLABlVAf8FAANaDwADWgIAA1oCAAHAAloGAAH/Ae8C/wEAAfMBHAHzAv8B8wL0AQcBvAH0AXMB9AEH
|
||||
AfEOAAH/AnoB/wHzAnoBGwH/AvQBmgFZARoB/wsAF1UB8QcAA1oQAAEbAgAB8wNaAwAB/wgAAbwB8AEA
|
||||
AvQB/wHvAXIBHAEHAnMB9AH/ARwB9AHzAXMB/w8AARoBWQEaAQAB/wF6BVkBmgH/DAAVVgGYCQABfANa
|
||||
EgADWgGeDAAB/wEcAfIB/wEHAbwB9AH2AvMB9AH/AfABHAHzAQABBwH/EAAB9gJ6ARoC/wHzAxoB9A4A
|
||||
FFYB/wsAA1oRAAH/A1oJAAH0AfIEAAEcAfAB/wHzAnMCHAFzAVAB8AcAAfQB8ggAAfcEAAH/AXoBWQF6
|
||||
AfMB/woAAfcB8QYAElYB9A0ABFoQAARaCQAB8wEHBAAB/wG8Ae8B8gH/AfQC8wH0Af8B8wEIAf8FAAHz
|
||||
AQcIAAH3BQAB/wEaAXoBWQJ6AZoBGgcAAfcB8QYAEFYBCBAABFoOAARaCgAB8wEHBgAB/wEHAXIBcwEc
|
||||
Ae8BHAFQARwB9AYAAfMBBwgAAfcHAAH/ARsBmgF6AVkBGgcAAfcB8QYADlYBlxIABVoMAARaAZ4KAAHz
|
||||
AQcIAAH/AfQC8wH0Af8IAAHzAQcIAAH3A/EB9A0AA/EB9wHxBgANVgH/FAAFWgoABVoLAAH/AVAB7wIH
|
||||
AfIOAAH0AwcBcwH0CAAE9wHxDQAE9wHxBgALVgH0FwAGWgYABloNAAH/A/MB9A4AAf8D8wH0JgAJVgEI
|
||||
GgAQWkwAAZgGVgGXHQAB5AxaAZ5OAAVWAf8gAApaUQACCAH/JQAB9AKeAf//ADMAAfMDWigAAfMDWjAA
|
||||
AfYbWQQAAfMBWgEAAVomAARaAQAEWhQAAWwB9AHzFgAdWQMAAfMDWiMAAf8CWgH0AQAB8wNaAgABCAJa
|
||||
EQABbAH0AWYXAB1ZBAAC8wHCAVohAAGeAVoB/wQAA/MEAAHCAVoB/w4AAWwC9AH/AwAB/wGuEgAdWQcA
|
||||
AfQBWh8AAloPAAFaAcIMAAFsAvQBZgQAAWwBtRIAHVkIAAH/AVodAAHkAVoRAAFaAf8KAAFsAvQBZgQA
|
||||
AfIB9AGREgAdWQkAAf8BWhsAAf8BWhMAAVoJAAG8AvQBrgUAAe0B9AFmEgAdWQoAAfQBWhoAAVoUAAHC
|
||||
AVoIAAH3AvQBZgQAAewC9AHzEgAdWQsAAfQBWhgAAf8BWhUAAVoHAAFsBPQBvAH3AgABZgL0EwAdWQwA
|
||||
Af8BWhcAAVoWAAEIAVoGAAT0AfcBbAHzAWwBZgEJAWYBrhMAHVkNAAH/AVoWAAFaFwABWgUAAa4B8wX0
|
||||
AfMBbAH/AfECCQFsEgAdWQ4AAfQBWhUAAVoXAAFaBgABZgL0AWwE9AG8Aa4B/wGuAQkBkQG8EAAdWQ8A
|
||||
AfQBWhIAAfMDWhQAAfMDWgQAAf8B9AFmAgABbAGRAvQB8AH0Aa4B8QH/Aa4BCQFsAW0BuwHtDAAdWRAA
|
||||
Af8BWhEAAfMBWgEAAVoUAAHzAVoBAAFaBAABbAHxAgABBwEJAbsBbAP0Aa4B9AFmAv8CCQJmDAAdWREA
|
||||
Af8BWhAAAfMDWhQAAfMDWgMAAfMBZgH/AgACkQEAAWYBbAEJAWYC9AGuAQcBZgH/Ae8BbAG7AfcLAB1Z
|
||||
EgAB9AFaEAAB8wFaAfMVAAHzAVoB8wcAAfMBCQEHAgABbQH0AWwBuwGuAvQBtQFsAfcB/wGuAfALAB1Z
|
||||
EwAB9AFaEAABWhcAAVoIAAHzAWwFAAFmAf8BkQGuAQcC9AHzA2YLAB1ZFAAB/wFaDwABWhYAAfQBWg0A
|
||||
AZIB/wFmAf8BbAH/AQkBZgT0AfABbAFmCQABMRtZATEVAAH/AVoOAAGeAVoVAAFaDwABZgH/AgAB9wG8
|
||||
Ae0BCQFmAfQB8gP0AZEB8AcAAzEBWBX/BDEWAAH0AVoOAAFaFAAB/wFaFQABbAH/AWwBrgb0AWwB/wUA
|
||||
AzEBWBX/BDEXAAH0AVoNAAEbAVoTAAFaAf8WAAH/AfMBAAGuAfAG9AFsBAAdMRgAAf8BWg0AAloRAAFa
|
||||
AZ4cAAFmBvQB8gGuAgAbMQF5GgAB/wFaDQACWg8AAlofAAFsBfQBZgIAEjElAAH0AVoNAAJaDQABWgHk
|
||||
IQABvAGSAvQB8wMAETEBmSYAAcIDWgsAARsCWgIAAfMDWgMAAloB/yQAAWwB9AFsAwARMScAAfMBWgEA
|
||||
AVoNAAGeBFoBAARaAf9kAAHzA1oQAAHzA1ppAAPzEQAD8/8ANgABsxAAAf8Bu20AAbIRAAGybAABsgEJ
|
||||
AbICCQGzAgkBugIJAbsHCQG6AbNqAAL/AQABswIAAQkCAAHzAgAB/wgAAQlqAAH/AgABswIAAQkCAAHz
|
||||
AgAB/wgAARkJAAH/BQkB9AIAARkFCQH/AgAGCRQAC7IBswYAHfQGAAH/AgABswIAAQkCAAHzAgAB/wgA
|
||||
ARkJAAH/BQkB9AIAARkFCQH/AgAGCRMAAQkMsgUAH4oFAAH/ArMBshKzCQAB/wIJAf8CCQH0AgABGQEJ
|
||||
ARkB/wIJAf8CAAMJAf8B8gEJCgABswqyAfQIAAG6AbIEAAG0AYoBZQK7GhkBigUAAf8UAAEZCQAB/wIJ
|
||||
AQACCQH0AgABGQEJAfMBAAIJAf8CAAMJAQAB8wEJCQAB8wGzCAABugGyAfQIAAG6AbIEAAGzAYoCZQK7
|
||||
GRkBigUAAf8UAAEZCQAB/wUJAfQCAAEZBQkB/wIABgkJAAG6AfQIAAEJDLIEAAGzAYoBuwJlAbsBCRgZ
|
||||
AYoFAAH/FAABGQkAAf8FCQH0AgABGQUJAf8CAAYJCQABugH0CQAMsgQAAbMBigG7ARkCZQG7AQkJGQEJ
|
||||
DBkBuwGKBQAB/xQAARkKAAH/AgkC/wMAAv8DCQH/AwAC/wIJAfMB/wkAAboB9BkAAbMBigG7AhkCZQG7
|
||||
CBkCuwsZAQkBZQGKBQAB/xQAARkLAAIJBwADCQYAAgkB9AoAAboB9BkAAbMBigG7AxkCZQG7BhkBuwJl
|
||||
AbsKGQJlAYoFAAH/FAABGQsAAgkH/wMJBv8CCQH0CgABugH0CQALsgGzBAABswGKAbsEGQJlAbsFGQFm
|
||||
AmUBZgEJCBkBuwFlARkBigUAAf8UAAEZCwAUCQH0CgABugH0CAABCQyyBAABswGKAbsFGQJlAbsDGQG7
|
||||
AWUBZgGRAWUBuwcZAQkCZQEZAYoFAAH/FAABGQsAFAkB9AoAAboB9AQABPQBswGyAfQIAAG6AbIEAAGz
|
||||
AYoBuwYZAWUBZgG7AQkBuwJlAhkBZQFmAQkGGQFmAWUCGQGKBQAB/xWyFAAB8wIJEwABugH0AgAIsgH0
|
||||
CAABugGyBAABswGKAbsGGQG7AmUBuwJlAxkBCQFlAbsFGQG7AWUBbAIZAYoFAAH/AgABswIAAQkCAAHz
|
||||
AgAB/wgAARkUAAHzAgkTAAG6AfQCAAGyBQABCQyyBAABswGKAbsHGQG1A2UFGQJlAbsDGQEJAmUDGQGK
|
||||
BQAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZDQAH/wEZAgkH/wwAAboB9AIAAbIGAAyyBAABswGKAbsQGQEJ
|
||||
AWUBuwMZAa4BZQQZAYoFAAH/AgABswIAAQkCAAHzAgAB/wgAARkMAAHzEgkLAAG6AfQCAAGyFgABswGK
|
||||
AbsCGQFmAmUMGQJlAbsBGQG7AmUEGQGKBQAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZDAAB8wEJDv8DCQsA
|
||||
AboB9AIAAbIWAAGzAYoBuwEZAWUBiwIZAWUMGQFlArsCZQUZAYoEAAH/AbIVtAGyCwAB8wEJDgADCQoA
|
||||
B7IBswQAC7IBswQAAbMBigG7ARkBZQG7AhkBZQwZBGUBkQUZAYoEAAGyFwABsgoAAfMBCQMAAgkJAAMJ
|
||||
CQABCQiyAwABCQyyBAABswGKAbsBGQFlAbsCCQFlDhkBtQcZAYoEAAGyF7MBsgoAAfMBCQMAAgkJAAMJ
|
||||
CQABugGyAfQEAAG6AbID9AGzAbIB9AgAAboBsgQAAbMBigG7AhkDZQG7FhkBigQAAboXAAGyCgAB8wEJ
|
||||
DgADCQkAAboBsgH0BAABugayAfQIAAG6AbIEAAGzAYoBuxwZAYoEAAG6FwABsgoAAfMBCQ4AAwkJAAEJ
|
||||
CLIDAAEJDLIEAAGzAYoduwGKBAABuhcAAbIKAAHzEgkKAAiyBAAMsgUAH4oEAAG6BAABsgH0CwABCQGy
|
||||
BAABsgoAAf8RCQHzJwAB/xytAbQFAAG6AwABsgEAAbMLAAEJAQABsgMAAbJnAAG6AgABsgMAAbIJAAGy
|
||||
AwABswIAAbJnAAG6AbMBugQAAboIAALzAwAB/wG6AbMBCW8AAbIBCQUAAboBs3kAAboDsgEJbQABQgFN
|
||||
AT4HAAE+AwABKAMAAYADAAGgAwABAQEAAQEGAAEKFgAD/wEABP8BgAsABP8MAAT/DAAE/wwAAfACAAEP
|
||||
DAAB8AIAAQ8MAAHwAgABDwwAAfACAAEPDAAB8AIAAQ8MAAHwAgABDwwAAfACAAEPDAAB8AIAAQ8MAAHw
|
||||
AgABDwwAAfACAAEPDAAB8AIAAQ8MAAHwAgABDwwAAfACAAEPDAAB8AIAAQ8MAAHwAgABDwwAAfACAAEP
|
||||
DAAB8AIAAQ8MAAHwAgABDwwAAfACAAEPDAAB8AIAAQ8MAAHwAgABDwwAAfACAAEPAYALAAHwAgABDwHA
|
||||
AgABAQgAAfACAAEPAf4CAAE/CAAF/wIAAX8IAAX/AgABfwgABf8CAAF/CAAF/wIAAX8IAAH/AfABBwb/
|
||||
AeABAwb/AcABAQb/AYABAAb/AgABfwH/AeABAwH/Af4CAAE/BP8B/gEPAfgBPwH/AYABAAH/AfwBDwH4
|
||||
AR8E/wH4AT8B/gEPAf8BHwH8AX8B+AE/Af4BDwH/Af4BfwH/AfAC/wEPAf8BPwH+AX8B8AL/AQcB/wH+
|
||||
AX8B/wHxAv8BhwH/ASYBcgF/AeEC/wGDAeMB/gF/AccB4wL/AcMB/wEmAXIBfwHDAv8BwwHgAf4BfwEH
|
||||
AcMB+wH/AeMB/wEmAXIBfwHDAv8B4QH4AT4BfAEfAccB+QH/AfEB/wEmAXIBfwGHAcABAwHxAf4BDgFw
|
||||
AX8BxwH4Af8B8QH/ASYBcgF/AYcBwAEDAfAB4QGCAUEBhwGPAfgBPwH4Af8BJgFyAX8BjwHAAQMB+AHj
|
||||
AeABBwKPAfgBHwH4Af8BJgFyAX8BjwHAAQMB+AHhAfgBHwKPAfgBDwH4Af8BJgFyAX8BDwHAAQMB+AHh
|
||||
AfwBPwGHAY8B+AEDAfgB/wEmAXIBfwEPAcABAwH4Af8BwgFDAf8BjwH4AQMB+AH/ASYBcgF/AQ8BwAED
|
||||
AfgB/wGOAXEB/wGPAfgBBwH4Af8BJgFyAX8BDwHAAQMB+AH+AT4BfAF/AY8B+AEPAfgB/wEmAXIBfwEP
|
||||
AcABAwH4Af4CfgF/AY8B+AEfAfgB/wEmAXIBfwGPAcABAwH4Af8B/gF/Af8BjwH4AX8B+AH/ASYBcgF/
|
||||
AY8BwAEDAfgB/wH+AX8B/wHHAfgB/wHxAf8BPwH+AX8BhwHAAQMB8AH/Af4BfwH/AccB+wH/AfEB/AIA
|
||||
AR8BhwHAAQMB8AH/Af4BfwH/AcMC/wHjAfwCAAEfAcMC/wHhAf8B/gF/Af8B4wL/AeMB/AIAAR8BwwL/
|
||||
AeMB/wH+AX8B/wHxAv8BxwH8AgABHwHhAv8BwwH/Af4BbwH/AfAC/wGPAf8B5wHzAf8B8AL/AYcB/wH+
|
||||
AW8B/wH4AT8B/gEPAf8C4wH/AfgBPwH+AQ8B/wH+AUcB/wH8AQ8B+AE/Af8B8AEHAf8B/AEPAfgBHwH/
|
||||
Af4BRwL/AgABfwH/AfgBDwH/Af4CAAE/Af8B/gFDAv8BgAEABv8CAAF/Bf8B8AEHBv8BwAEBDv8B/AEf
|
||||
Df8B4AT/AYABHwn/AcABPwL/Af4BAAEHCf8BwAEPAv8B/AEAAQMB/wHwAX8B/gEPBP8BwAEHAv8B+AEP
|
||||
AQMB/wHgAX8B/gEHAeACAAEHAcABAQL/AfABPwHDAf8B5wL/AecB4AIAAQcBwAEAAX8B/wHgAf8B8wH/
|
||||
AeYBBgFuAecB4AIAAQcBwAEAAT8B/wHhA/8B5wHGAQgB5wHgAgABBwHAAQABDwH/AcMD/wHmAQwBAAEn
|
||||
AeACAAEHAcABAAEDAf8BwwT/AYABsAE/AeACAAEHAcACAAH/AYcD/wH8AgAB/wHgAgABBwHAAgABfwGH
|
||||
BP8BgAEyAf8B4AIAAQcBwAIAAR8BjwL/AR8B8AIAAQ8B4AIAAQcBwAIAAQcBjwH/Af4BDwX/AeABCAH/
|
||||
AcACAAEDAQ8B/wH8AQcB+AIAAR8B/wHgAQAB/wHAAgABAQEPAf8B/AEDAfgBGAEAAR8B/wHgAQAB/wHA
|
||||
AgABAQEPAf8B+AEBAfgCAAEfAf8CIAH/AcACAAEBAQ8B/wHwAQAB/gEAASIBHwH/ASABAAH/AcACAAED
|
||||
AQ8B/wHgAQAB/AEAAQIBHwH/AgAB/wHAAgABBwGPAf8B4QEQAfwCAAE/Af8BAAEBAf8BwAIAAQ8BjwH/
|
||||
AeMBGAH8ASABAAE/Af8BAAEBAf8BwAIAAT8BjwH/AfYBHQH+AUABAAE/Af8BiAEDAf8BwAIAAf8BhwH/
|
||||
Af4BHwH+AQABAgF/Af8BgAEPAf8BwAEAAQEB/wHHAf8B/AE/AecBgAEPAecB+wHAAf8BzwHAAQABBwH/
|
||||
AcMB/wH8AT8B5wGAAQMB5wH7AeABHwHPAcABAAEfAf8B4QH/AfgBfwHnAeABBwHnAfsB+AEfAc8BwAEA
|
||||
AX8B/wHgAf8B8AF/AecB+AEfAecB+AE/Af4BDwHAAQAC/wHwAX8B4AH/AeABfwH+AQcB+AE/Af4BDwHA
|
||||
AQMC/wH4AR8BgQH/AfABfwH+AQ8E/wHAAQ8C/wH8AQABAwn/AcABPwL/Af4BAAEHCf8B4AF/A/8BgAEf
|
||||
Cf8B8QT/AfAm/wHDBP8B/AE/Bf8BwAIAAQMBywT/AfABhwL/AY8C/wHAAgABAQHDBP8BhAExAv8BHwL/
|
||||
AcACAAEBAeEE/wEeATwBfwH+ARwC/wHAAgABAQH8A/8B/gF/Af8BPwH8ATwC/wHAAgABAQH+AX8C/wH8
|
||||
Av8BnwH4AXgC/wHAAgABAQH/AT8C/wH5Av8B3wHwAfgC/wHAAgABAQH/AZ8C/wH7Av8BzwLwAv8BwAIA
|
||||
AQEB/wHPAv8B8wL/Ae8B4AExAv8BwAIAAQEB/wHnAv8B9wL/AecB4AEBAv8BwAIAAQEB/wHzAv8B9wL/
|
||||
AfcBwAEAAv8BwAIAAQEB/wH5Av8B9wL/AfcB4AEAAT8B/wHAAgABAQH/AfwC/wHDAv8BwwHGAQABAwH/
|
||||
AcACAAEBAf8B/gF/Af8BywL/AcsBzAEAAQMB/wHAAgABAQL/AT8B/wHDAv8BwwGMAYABAQH/AcACAAEB
|
||||
Av8BnwH/AeMC/wHjAfgBwAEBAf8BwAIAAQEC/wHPAf8B9wL/AfcB+QHwAQEB/wHAAgABAQL/AecB/wH3
|
||||
Av8B5wH/AcABAAF/AcACAAEBAv8B8wH/AfMC/wHvAf8B5gEAAR8BwAIAAQEC/wH5Af8B+wL/Ac8C/wGA
|
||||
AQcBwAIAAQEC/wH8Af8B+QL/Ac8C/wHIAQMBwAIAAQEC/wH+AX8B/AL/AZ8C/wH+AQABwAIAAQMD/wE/
|
||||
Af4BfwH/AT8D/wGAAcABAAEPBP8BnwH/AT8B/gF/A/8BwQHAAQABDwT/AcMB/wGMATgE/wHxAcABAAEf
|
||||
BP8BywH/AeABgwz/AcMB/wH8AT8M/wHjAf8B/gE/Jf8B/gL/AT8M/wH+Av8Bvwz/AfwCAAEfDP8B+QFt
|
||||
Ab8B3wz/AfsBbQG/Ad8B8AEYAQwBDwL/AQABDwHAAgABAQH7AW0BvwHfAfABGAEMAQ8B/wH+AQABDwGA
|
||||
AwAB+AIAAR8B8AEYAQwBDwH8AQABPwHPBAAB+wL/Ad8B8QEYAYwBTwH5Af4BPwHPBAAB+wL/Ad8B8AEY
|
||||
AQwBDwH5Af4BAAEPBAAB+wL/Ad8B8AEYAQwBDwH5Af8BAAEPBAAB+wL/Ad8B+AE4ARwBDwH5A/8EAAH7
|
||||
Av8B3wH8Af4BPwEfAfkD/wQAAfsC/wHfAfwCAAEfAfkB/wEAAQ8EAAH7Av8B3wH8AgABHwH5Af4BAAEP
|
||||
BAAB+wL/Ad8B/AIAAR8B+QHgAT8BzwQAAfgCAAEfAf8B/gE/Af8B+QGAAT8BzwQAAfsBbQG/Ad8B/wH+
|
||||
AT8B/wH5Ab4BAAEPBAAB+wFtAb8B3wH/AgABfwH5Ab8BAAEPBAAB+wFtAb8B3wH+AgABPwH5Ab8C/wQA
|
||||
AfsBbQG/Ad8B/gIAAT8B+QG/Av8EAAHwAgABDwH+AX8B/gE/AfABDwEAAQ8EAAH3Av8B9wH+AXMB/gE/
|
||||
AeABDgEAAQ8EAAHwAgABBwH+AXMB/gE/AeMBwAE/Ac8EAAH3Av8B9wH+AX8B/gE/AeMBwAE/Ac8EAAH3
|
||||
Av8B9wH+AX8B/gE/AeABDgEAAQ8EAAH3Av8B9wH+AgABPwHwAQ8BAAEPAYADAAH3AZ8B/AH3Af4CAAE/
|
||||
BP8BgAIAAQEB9wFfAf0Bdwz/AfYB7wH7AbcM/wHxAe8B8wGHDf8B8wHnDv8B/AEfDf8L
|
||||
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEADPQCdQJTAXUBUwJ1
|
||||
AfML9GAACfQB8wpTAXUBUwF1CfQXAAH/AfMB/0YACPQQUwHzB/QCAAH/CvQB/wgAAf8BBwGRAfcB9BAA
|
||||
Av8B8wEaAb0CGgEbAfUB/ysAB/QQUwF6AVMBdQb0AQAB/wuNAfMHAAH/AfcB7QGdAZEBjQH0DgAB/wF1
|
||||
CCYBTQEbKgAG9BJTAXUCUwX0AQAB/wHvAbQE2wPcAbsBjQH0BgAB/wEHAe0DnQGRAfcB9AsAAfUBlAwm
|
||||
AXUBGygABfQWUwF1BPQCAAH/AY0E2wPcAbUB8AYAAf8B9wHtBZ0BkQGNAfQJAAEbBSYBlAG9AfUB/wEb
|
||||
AZoBTQQmAZoB/yYABPQBdRdTBPQDAAG8AbUD2wLcAbsB7wG8Av8B8wEAAfIBAAEHAZIHnQGRAfcB/wYA
|
||||
Af8BGgFNAiYBTQGaCP8BGgF1AyYBlAH/JQAD9AEaGFMBdQP0AwAB9AGNAboC2wLcAY0B8gGNAvQB7gEA
|
||||
Ae8BAAH3CZ0B7AHzBgABGwMmAXUM/wG9AyYBmiUAA/QaUwGaAvQEAAHxAbUC2wHcAbUB7wH/AfMC/wH0
|
||||
AQAB9AEAAfAB7QedAZEB7wH/BQAB/wFNAiYBlAP/Ab0BdQFNAiYCTQGaAfYC/wG9AyYBGyQAAvQB8wJT
|
||||
A/8EUwP/AnoC/wVTARoD/wJTAvQFAAHvAboB2wHcAY0B/wgAAf8B7gHtBZ0BkQGSAf8GAAGaAiYBdQP/
|
||||
AXUJJgEbAv8BvQImAXUkAAL0A1MD/wRTA/8B9gFTAv8FUwT/AlMC9AUAAfMBjQHbAbUBvAoAAf8BvAHt
|
||||
A50BkQHvAf8GAAH1AyYB9AH/AfYBTQMmAU0DdQMmAU0BGwL/AXUCJgEbIwAC9ANTA/8FUwP/AVMK/wGa
|
||||
A1MB9AUAAf8CtQGNAfULAAH/Ae4B7QGdAZEBjQH/BwABGgImAZoC/wF1AyYBvQX/AeMDJgH1Af8BGgIm
|
||||
AU0B/yIAAvQDUwP/BVMD/wFTA/8BUwb/BFMB9AYAAf8B9wHzDQAB/wHwAY0BBwH/CAABlAEmAU0C/wH2
|
||||
AU0BJgFNAfQG/wH1AeMCJgGUAv8BTQImAfUiAAH0ARoDUwP/BVMD/wFTCv8EUwH0BwAB7w8AAfQBjQHw
|
||||
CQABTQEmAU0C/wGUAiYBlAL/ARsBTQEmAZQD/wImAU0C/wGaAiYBGyIAAfQBmgNTC/8BUwT/AlMBegP/
|
||||
BFMB9AUAAv8B7wEAAf8MAAHzAe8BjQH3AfAB/wcAAU0BJgF1Av8BTQImARsB/wG9BCYBlAL/AXUBJgFN
|
||||
Av8BGwImARoiAAH0AXoDUwGaCv8CUwT/AVME/wRTAfQFAAEHAbwB7wH0AfcMAAHvAfQBjQHzAfcB9AcA
|
||||
AiYBdQL/AyYC/wGUASYBRgFEAiYC/wF1AiYD/wImAb0iAAH0AZoEUwr/AZoBUwT/AVMD/wVTAfQFAAH1
|
||||
Ae8BjQGSAfMOAAGNAfQJAAImAXUC/wFNAiYB9QH/AZoBJgElARQBRAFNAv8BdQImAv8B9QImARoiAAH0
|
||||
ARoBdQNTA/8EUwGaA/8CUwf/BVMB9AcAAQcB9A0AAf8B8AGNAQcB9AH/BwABTQEmAXUC/wFNAiYBvQH/
|
||||
AfQDJgEUAW0C/wFNASYBTQL/Ab0CJgEaIgAC9AF1A1MD/wVTA/8CUwT/AVMC/wVTAfQCAAHwBfcEkgHv
|
||||
Af8GAAH/AQcBjQOOAY0B7wHzAf8FAAHjASYBTQL/Ab0CJgF1Av8B9AGaAZQBkwESAewBvQImAXUC/wF1
|
||||
AiYB8yIAAvQEUwP/BVMD/wJTAfYG/wVTAfQCAAGNAbwDGwHDBJoBjQH0BQAB/wGNAY4FlAGOAY0B8wUA
|
||||
AZQCJgH2Av8BTQImAb0F/wHzARIBRAImAb0C/wMmAf8iAAL0BFMD/wVTA/8DUwT/AVMB9gRTAvQCAAGN
|
||||
AbwDGwHDBJoBjQH0AQAB/wH1AgABvAGOAZQFsQGUAY4B7wH/BAABGgImAXUC/wGaAyYBdQG9AfUB9gEb
|
||||
AZQBTAEUAUQBdQL/AZoCJgF1Af8iAAL0AfMBdQJTA/8BwwRTA/8DUwX/BVMC9AIAAY0BvAMbAcMEmgGN
|
||||
AfQBAAHzAY0B9AEAAfcClAaxAZQBjgHzBAAB/wMmAb0C/wGUCiYBFAFtAv8BTQImAfUjAAP0GlMBmgL0
|
||||
AgABjQG8AxsBwwSaAY0B8gL0AQcB7wH0AY0BlAexAZQBjgHuBQABGgImAU0B9QL/AZoBTQcmAXUBBwGL
|
||||
AbMBtAFuAUYBlCQAA/QBmgF1GFMD9AIAAY0BvAMbAcMEmgaNAQcBjgGUB7EBlAGOAQcGAAGUAiYBTQH1
|
||||
A/8BvQJNASYBTQGUAfUC/wG0ArMCrQEJJAAE9BhTBPQCAAGNAbwDGwHDBJoBjQH0AQAB/wIHAf8BjQGU
|
||||
B7EBlAGOAfAGAAH1AU0CJgFNAb0K/wH0AewBrQKzAa0BswH0IwAF9BZTAXUE9AIAAY0BvAMbAcMEmgGN
|
||||
AfQBAAH0AQcB/wEAAe8ClAaxAZQBjQH/BwAB/wFNAyYBdQj/AZoCJgKtArMBrQG0IwAG9AF1E1MBdQX0
|
||||
AgABjQG8AxsBwwSaAY0B9AUAAfEBjQKUBLEBlAGOAQcJAAH1AZQEJgFNBHUB4wFNAyYBrgKtAZEB9wH/
|
||||
IwAH9BJTAXUG9AIAAY0BvAMbAcMDmgEaAY0B9AUAAf8BBwGNBZQBjgGNAf8LAAEbDCYBmgH/AbQBrQH/
|
||||
AeoB7CMACPQBUwF1DlMBGgf0AgAB8wEHCO8B8AH/BgAB/wHxAe8BjQGOAY0B9wG8Af8NAAH/ARoBlAF1
|
||||
AU0CJgJNAZQBGgH1AgAB/wHzAQAB8wHxIwAJ9AHzDVMJ9BcAAf8B9AH/RgAM9AF1AVMBdQNTAXUBUwEa
|
||||
C/RgACD0gQAfZ2AAAfQBZx2YAWdgAAHtAWcdmAFnYAAB7QFnDJgBbQNnAesMmAFnJwAB/wGUGwAB/wEW
|
||||
AWoIjwFnAUoIOAFZAZoB/wQAAe0BZwqYAewHZwGSCpgBZwUAAW0V6gHyCwAB/wG9AwAB8waaARoB/w8A
|
||||
ARYKjwFnAUoKOAGaBAAB7QFnCZgDZwX/AmcB6wmYAWcEAAEHF+oOAAEaC5oB/w0AAWoKjwFnAUoKOAFZ
|
||||
BAAB7QFnCZgBZwH3B/8CZwmYAWcEAAPqEvEBBwLqDAAB/w6aARsMAAuPAWcBSgs4BAAB7QFnCJgCZwn/
|
||||
AmcImAFnBAAD6hIAAfIC6gsAAf8DmgtuApoBGgEbAXoJAAuPAWcBSgs4BAAB7QFnB5gB6wFnBP8B8wHt
|
||||
AfQE/wFnCJgBZwQAA+oSAAHyAuoKAAH/A5oB6wv0AfcCmgEbCgALjwFnAUoLOAQAAe0BZweYAmcD/wVn
|
||||
A/8CZweYAWcEAAPqEgAB8gLqCgAEmgHyAe8J9AHxAfQDmgH/CQALjwFnAUoLOAQAAe0BZweYAWcD/wFt
|
||||
AWcCmAHtAWcBBwP/AWcHmAFnBAAD6gYAAewEAAHxAf8FAAHyAuoIAAIaBJoB8gEHC/QEmgkAC48BZwFK
|
||||
CzgEAAHtAWcHmAFnA/8BZwHsA5gCZwP/AWcHmAFnBAAD6gUAAesB6gFtAgAB/wLqAfQEAAHyAuoHAAH/
|
||||
AnoEmgHyAQcD9AEHAfcG9ASaAf8IAAuPAWcBSgtSBAAB7QFnB5gBZwP/AWcFmAFnA/8BZweYAWcEAAPq
|
||||
BAAB6wLqBAAB8gLqAfQDAAHyAuoIAAJ6BJoB8gEHAvQBBwG8Ae0B9AG8BPQEmgEbCAALjwFnDEMEAAHt
|
||||
AWcHmAFnA/8BZwWYAWcD/wFnB5gBZwQAA+oDAAHrAuoGAAHyAuoB9AIAAfIC6ggAAfQFmgHyAQcB9ALt
|
||||
AfQBtQH0ApID9AWaCAALjwFnAUkLcQQAAe0BZweYAWcD/wFnAZIDmAHqAWcD/wFnB5gBZwQAA+oCAAEH
|
||||
AuoB/wcAAZIC6gIAAfIC6ggAARsFmgHyAQcC9wL0AbUC9ALtAvQFmggAC48BZwFJC3EEAAHtAWcHmAFn
|
||||
A/8CZwOYAWcBjQP/AWcHmAFnBAAD6gMAAfcC6gH/BQABBwLqAf8CAAHyAuoIAAEaBZoB8gEHAu0C9AHt
|
||||
AQcB9ALtAvQFmggAC48BZwFJC3EEAAHtAWcHmAFnAesD/wVnA/8CZweYAWcEAAPqBAABkgLqAf8DAAEH
|
||||
AuoB/wMAAfIC6ggAARoFmgHyAQcB9ALtAfQBkgL3AbUD9AWaCAALjwFnAUkLcQQAAe0BZweYAesBZwT/
|
||||
AfcBZwG8BP8BZwiYAWcEAAPqBQAB9wHqAesCAAH/AuoB/wQAAfIC6ggAARsFmgHyAQcC9AGSAfQBBwHt
|
||||
Ae8E9AWaCAAMQwFJC3EEAAHtAWcImAFnAW0J/wJnCJgBZwQAA+oGAAHvBAAB9AH/BQAB8gLqCAAB/wGa
|
||||
AfYDmgHyAQcF9AG1BfQFmggAC6MBZgFJC3EEAAHtAWcImAHsAWcB8wf/AZIBZwOYBWcBmAFnBAAD6hIA
|
||||
AfIC6gkAAZoB/wHDApoB8gEHB/QB7QNtBJoB9AgAC8YBZwFJC3EEAAHtAWcJmANnBf8DZwOYBWcBmAFn
|
||||
BAAD6hIAAfIC6gkAARoEmgHyAQcG9AEHA7sBbgSaCQALxgFnAUkLcQQAAe0BZwqYAW0HZwHsBJgBZwPj
|
||||
AWcBmAFnBAAD6hIAAfIC6gkAAf8EmgHyAQcG9AHsArsBcwOaARoBGwkAC8YBZwFJC3EEAAHtAWcMmAVn
|
||||
BpgFZwGYAWcEAAPqEuwBbQLqBwAB/wFqAQABGwOaAbwCBwHyBAcB7AG7AXMFmgoAC8YBZwFJC3EEAAHt
|
||||
AWcXmAFtA2cB7AGYAWcEABjqCwABGgKaAW4B7wa8AewBHAWaAf8BAAH/AfQHAAvGAWcBSQtxBAAB8AFn
|
||||
HZgBZwQAGOoMABCaAf8CAAHzAb0HAAvGAWcBSQpxAVYFAB9nBAAB6xfqDQABGw2aAwAB/wkAAbAKxgFn
|
||||
AUkKcQF4BgAFBwJnD24BZwHsBQcFAAH0FuoBbQ8AARoJmgH2AwAB9AJZCAAB/wGwAYAIxgFnAUkIcQFW
|
||||
AXgB9AsAAfABZw+aAWcB/wsAAfQB6xLqAW0B7xIAAf8B8wEbARoBGwH0BQAC9AJZLAABZw+aAWdvAAFn
|
||||
D5oBZ28AEWdvAAH0D2cB/1MAAfQGVQF3Af82AAolAW80AA1VMgAPJTAAB1UBlwGYAXcGVQF3EgAL9BEA
|
||||
CSUBTAglAW8tAARVAZgJAAF3BFUPAA/rDgAFJQFvCQABRgUlKgAB9ANVAZ0NAAGXA1UB/wwAAusB8gsA
|
||||
AQcC6wwABCUBTA0ABSUTAAL0EwAB/wNVEAAB/wNVDAAB6wHtDQAC6wsABCUQAAH0BCUSAAL/EwADVRIA
|
||||
Af8DVQsAAesB8gEAAusCAAHyAesDAAHrAewBAAHsAesKAAQlEgAB/wMlAW8FAAH0AfEB/wkAAv8JAAH/
|
||||
AfEB9AYAA1UUAAH0AlUBlwoAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesJAAH/AyUUAAH0AyUFAAH/
|
||||
AbwBcwHxAf8HAAL0BwAB/wHxAXMBvAH/BQAB/wJVAQgHAAHxDQABdwJVCgAB6wH0AQAC6wIAAfIB6wMA
|
||||
AesB7AEAAZIB6wkAAyUBFhUAAUYDJQYAAf8BBwEcAfMB/wUAAv8FAAH/AfMBHAEHAf8HAANVCAACVQ0A
|
||||
AlUBdwkAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesIAAH/AyUFAAz/BgADJQgAAf8BBwEcAfMB/wMA
|
||||
AvQDAAH/AfMBHAEHAf8JAAJVAfQIAANVDAABdwJVCQAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wgA
|
||||
AyUB8wUAAW8LJQYAAUYCJQFvAwAB8wFyARwB8wIAAf8BBwEcAfMB/wEAAvQBAAH/AfMBHAEHAf8CAAG8
|
||||
AfIBHAH0BAABCAJVCQAEVQHxCwACVQH/CAAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wgAAyUGAAFv
|
||||
CyUHAAMlAwAB/wEcAfMFAAH/AQcBHAHzAv8B8wEcAQcB/wQAAf8BcwG8BQADVQkABlUKAAJVAXcIAAHr
|
||||
AfQBAALrAgAB8gHrAwAB6wHsAQABkgHrCAADJQYAAW8LJQcAAyUDAAH/AfQBcwH/BgAB/wG8AnMBvAH/
|
||||
BgAB9AEcAe8FAAJVAZcJAAdVCQADVQgAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesHAAH/AyUGAAFv
|
||||
CyUHAAMlAwAB9AIHAfQHAATwBwAB8AH0AfAB9AQAAlUB8wkACFUBCAcAA1UIAAHrAfQBAALrAgAB8gHr
|
||||
AwAB6wHsAQABkgHrBwABlAIlARoGAAFvCyUHAAMlCgAC/wHxAf8BAALxAQAB/wHxAv8LAAJVAfQJAAlV
|
||||
BwABnQJVCAAB6wH0AQAC6wIAAfIB6wMAAesB7AEAAZIB6wcAAUYCJQH0BgABbwslBwABbwIlCQAB9AH/
|
||||
AfMDAALxAwAB8wH/AfQKAAJVAfMJAAhVCAADVQgAAesB9AEAAusCAAHyAesDAAHrAewBAAGSAesHAAGT
|
||||
AiUBGgYAAW8LJQcAAyUHAAP0BQAC8QUAA/QIAAJVAZcJAAZVAQgJAANVCAAB6wH0AQAC6wIAAfIB6wMA
|
||||
AesB7AEAAZIB6wcAAf8CJQFMBgABbwslBwADJQcAAv8GAALxBgAC/wgAA1UJAAVVAf8KAANVCAAB6wH0
|
||||
AQAC6wIAAfIB6wMAAesB7AEAAZIB6wgAAyUGAAFvCyUHAAMlDwAC8RAAAZgCVQkABFUMAAJVAfQIAAHr
|
||||
AfQBAALrAgAB8gHrAwAB6wHsAQABkgHrCAADJQYAAW8LJQcAAyUPAALxEQACVQH/CAACVQEIDAABlwJV
|
||||
CQAB6wH0DQABkgHrCAADJQH/BQABbwslBgABFgMlDwAC8REAA1UIAAFVDgADVQcAAv8B6wHwDf8B7AHr
|
||||
Av8GAAH0AyUFAAEWC0YGAAMlAf8PAALxEQAB9AJVAfMVAAGXAlUIABXrBwADJQHzFQABbwMlEAAC8RIA
|
||||
A1UVAANVCAAV6wcAARoDJRUAAyURAALxEwADVRMAA1UJABXrCAAEJRMABCURAALxAgAB/xAAAfIDVREA
|
||||
A1UPAALrBwAB6wHsDgAEJREABCUSAALxAgABHBEAAQgDVQHyDQABmANVAfQPAALrAfQFAAG8AesB7w8A
|
||||
BCUB8w0AAZMEJRMAAvEBAAH/AXIB9BEAAfIEVQH/CQAB8gRVEgAJ6xEABSUB/wkAAfMFJRQAAvEBAAEI
|
||||
AfABHBMABlUBlwHxAfQB8QdVFAAB8QWSAfQTAAclAW8BGwH0ARoBRgclFQAC/wEAAfIB/wHzAf8TAAH0
|
||||
DVUB/zAAARoPJQH/MwABmAdVAfA1AAH0CyUB/3cAAf8BkwFGAZMB/3AAAZcDVQEIIQABwghaAfNPAAHC
|
||||
BlUB9B0AAfMMWgH0TQAJVQH/GgAQWg4AAfQDBwHyDgAB9AMHAfImAApVAZcYAAZaAQgEAAGeBVoNAAH0
|
||||
AXMB8gLzAfQOAAH/A/MBBwHyBgABvBkUBQAMVQHCFQAFWgH/CAAB/wNaDQAB8wEHFgAB8wEHBgABvAEU
|
||||
BLgBkA0UBLgBkAEUBQAOVQH/EgABngRaDAAB5AH/DQAB8wEHAgAB/wLzAvQB/wIAAv8CAAH/AwAB/wMA
|
||||
AfMBBwYAAbwBFAG4A5ABbAcUAYsBkAQUA5ABuAGQARQFABBVEQAEWhwAAfMBBwUAAf8B8wHwAgAB8wFy
|
||||
AbwCBwEAAf8CBwMAAfMBBwYAAbwBFAG4CRQBbAPZAWwGFAG4AZABFAUAEVUBmA4ABFodAAH/AfQCAAHz
|
||||
AgcBvAH0AgAB8AH/AfQB8QHzAf8B8wHvAfIB/wHyAf8BAAH/AfQGAAG8ARQBuAgUAZAC2QGzApACuAGQ
|
||||
AxQBuAGQARQFABNVAfIMAANaAf8jAAH/AfQBcwEcAf8B9AEcAQAB8AIAAXMB9AH/AXMBBwH/CQABvAEU
|
||||
AbgHFAGQAtkBbAGQBNkBkAMUAbgBkAEUBQAVVQH/CQABngNaIQAB/wMHAfEB9gHyAe8B9AHyARwB/wHw
|
||||
Af8BBwHyAfQBBwsAAbwIFAFsAtkBbAGyAdkBuAKLAbMBkAYUBQAWVQGXCAADWgH/JAAB/wG8AXMB/wH0
|
||||
AXIB/wHvAfICAAH/AQcBAAEHCwABvAgUAbgB2QFsAZAB2QG4ARQBkALZAbIGFAUAGFUBmAYAA1oUAANa
|
||||
CQAIBwHvDwcHAAEZGd8FABpVAfQEAANaEwABCARaLwABGgFZARsBGgFZAfQBGgFZAZoBAAGaAVkBGgoA
|
||||
G1UBmAIAAf8DWhIAAf8GWggAAfQB8gH0AfIC8wH0Af8B8wH0AfMB9ALzAfQB8wH0AfMB9AHzAfQB8xAA
|
||||
AZoBWQH0AXoBmgH/AnoB9gGaAXoBGgH/CgAcVQH/AQABngJaAZ4SAAdaAQgHAAHzAQcB8wEHAfMBCAIA
|
||||
AfIBvAHyAbwB8gG8AfMBBwHzAQcB8wG8AfMBBxAAAZoBWQH/AVkBGgEbAVkB/wHzAVkBmgH/AZoKABxV
|
||||
AZgBAANaAcIRAAlaAf8GAAH/AfQB8wHvAfMBHAH/AfMB9AFzAfYB9AHwAvIB8AH/AfQB8gHwAfIBvA0A
|
||||
AvQBAAGaAXoB/wFZAhoBegEAAZoBegH0AnoKABxVARsBAAGeAloBnhAAC1oB/wcAAfQBcwH2AXID/wG8
|
||||
AXMB7wEcAQABBwL/AQABvAH0AfAB8w0AAnoBAAGaAVkB/wFZAXoB/wH2AfQBWQEaARsBWQEaCgAcVQIA
|
||||
Af8DWg8ABFoBngNaAf8EWgYAAQcB/wFzAfQBHAHzAvQB/wH0AfMB9gHwAQcB/wEHAQABBwH/AQcB/w0A
|
||||
AZoBegH/ARoBWQHzARsCegEaAXoBmgH/AZoBegH/CgAaVQGXBAADWg8ABFoBAANaAQAB/wNaBgABBwHy
|
||||
AfMBvAH/ARwB/wH0AfEB9gEHAXMBBwH/Ae8B8AH0AQcB/wEHDgABGwFZARsB9gFZAXoB/wEbAXoBWQF6
|
||||
Af8BmgFZARsLABlVAf8FAANaDwADWgIAA1oCAAHAAloGAAH/Ae8C/wEAAfMBHAHzAv8B8wL0AQcBvAH0
|
||||
AXMB9AEHAfEOAAH/AnoB/wHzAnoBGwH/AvQBmgFZARoB/wsAF1UB8QcAA1oQAAEbAgAB8wNaAwAB/wgA
|
||||
AbwB8AEAAvQB/wHvAXIBHAEHAnMB9AH/ARwB9AHzAXMB/w8AARoBWQEaAQAB/wF6BVkBmgH/DAAVVgGY
|
||||
CQABfANaEgADWgGeDAAB/wEcAfIB/wEHAbwB9AH2AvMB9AH/AfABHAHzAQABBwH/EAAB9gJ6ARoC/wHz
|
||||
AxoB9A4AFFYB/wsAA1oRAAH/A1oJAAH0AfIEAAEcAfAB/wHzAnMCHAFzAVAB8AcAAfQB8ggAAfcEAAH/
|
||||
AXoBWQF6AfMB/woAAfcB8QYAElYB9A0ABFoQAARaCQAB8wEHBAAB/wG8Ae8B8gH/AfQC8wH0Af8B8wEI
|
||||
Af8FAAHzAQcIAAH3BQAB/wEaAXoBWQJ6AZoBGgcAAfcB8QYAEFYBCBAABFoOAARaCgAB8wEHBgAB/wEH
|
||||
AXIBcwEcAe8BHAFQARwB9AYAAfMBBwgAAfcHAAH/ARsBmgF6AVkBGgcAAfcB8QYADlYBlxIABVoMAARa
|
||||
AZ4KAAHzAQcIAAH/AfQC8wH0Af8IAAHzAQcIAAH3A/EB9A0AA/EB9wHxBgANVgH/FAAFWgoABVoLAAH/
|
||||
AVAB7wIHAfIOAAH0AwcBcwH0CAAE9wHxDQAE9wHxBgALVgH0FwAGWgYABloNAAH/A/MB9A4AAf8D8wH0
|
||||
JgAJVgEIGgAQWkwAAZgGVgGXHQAB5AxaAZ5OAAVWAf8gAApaUQACCAH/JQAB9AKeAf//ADMAAfMDWigA
|
||||
AfMDWjAAAfYbWQQAAfMBWgEAAVomAARaAQAEWhQAAWwB9AHzFgAdWQMAAfMDWiMAAf8CWgH0AQAB8wNa
|
||||
AgABCAJaEQABbAH0AWYXAB1ZBAAC8wHCAVohAAGeAVoB/wQAA/MEAAHCAVoB/w4AAWwC9AH/AwAB/wGu
|
||||
EgAdWQcAAfQBWh8AAloPAAFaAcIMAAFsAvQBZgQAAWwBtRIAHVkIAAH/AVodAAHkAVoRAAFaAf8KAAFs
|
||||
AvQBZgQAAfIB9AGREgAdWQkAAf8BWhsAAf8BWhMAAVoJAAG8AvQBrgUAAe0B9AFmEgAdWQoAAfQBWhoA
|
||||
AVoUAAHCAVoIAAH3AvQBZgQAAewC9AHzEgAdWQsAAfQBWhgAAf8BWhUAAVoHAAFsBPQBvAH3AgABZgL0
|
||||
EwAdWQwAAf8BWhcAAVoWAAEIAVoGAAT0AfcBbAHzAWwBZgEJAWYBrhMAHVkNAAH/AVoWAAFaFwABWgUA
|
||||
Aa4B8wX0AfMBbAH/AfECCQFsEgAdWQ4AAfQBWhUAAVoXAAFaBgABZgL0AWwE9AG8Aa4B/wGuAQkBkQG8
|
||||
EAAdWQ8AAfQBWhIAAfMDWhQAAfMDWgQAAf8B9AFmAgABbAGRAvQB8AH0Aa4B8QH/Aa4BCQFsAW0BuwHt
|
||||
DAAdWRAAAf8BWhEAAfMBWgEAAVoUAAHzAVoBAAFaBAABbAHxAgABBwEJAbsBbAP0Aa4B9AFmAv8CCQJm
|
||||
DAAdWREAAf8BWhAAAfMDWhQAAfMDWgMAAfMBZgH/AgACkQEAAWYBbAEJAWYC9AGuAQcBZgH/Ae8BbAG7
|
||||
AfcLAB1ZEgAB9AFaEAAB8wFaAfMVAAHzAVoB8wcAAfMBCQEHAgABbQH0AWwBuwGuAvQBtQFsAfcB/wGu
|
||||
AfALAB1ZEwAB9AFaEAABWhcAAVoIAAHzAWwFAAFmAf8BkQGuAQcC9AHzA2YLAB1ZFAAB/wFaDwABWhYA
|
||||
AfQBWg0AAZIB/wFmAf8BbAH/AQkBZgT0AfABbAFmCQABMRtZATEVAAH/AVoOAAGeAVoVAAFaDwABZgH/
|
||||
AgAB9wG8Ae0BCQFmAfQB8gP0AZEB8AcAAzEBWBX/BDEWAAH0AVoOAAFaFAAB/wFaFQABbAH/AWwBrgb0
|
||||
AWwB/wUAAzEBWBX/BDEXAAH0AVoNAAEbAVoTAAFaAf8WAAH/AfMBAAGuAfAG9AFsBAAdMRgAAf8BWg0A
|
||||
AloRAAFaAZ4cAAFmBvQB8gGuAgAbMQF5GgAB/wFaDQACWg8AAlofAAFsBfQBZgIAEjElAAH0AVoNAAJa
|
||||
DQABWgHkIQABvAGSAvQB8wMAETEBmSYAAcIDWgsAARsCWgIAAfMDWgMAAloB/yQAAWwB9AFsAwARMScA
|
||||
AfMBWgEAAVoNAAGeBFoBAARaAf9kAAHzA1oQAAHzA1ppAAPzEQAD8/8ANgABsxAAAf8Bu20AAbIRAAGy
|
||||
bAABsgEJAbICCQGzAgkBugIJAbsHCQG6AbNqAAL/AQABswIAAQkCAAHzAgAB/wgAAQlqAAH/AgABswIA
|
||||
AQkCAAHzAgAB/wgAARkJAAH/BQkB9AIAARkFCQH/AgAGCRQAC7IBswYAHfQGAAH/AgABswIAAQkCAAHz
|
||||
AgAB/wgAARkJAAH/BQkB9AIAARkFCQH/AgAGCRMAAQkMsgUAH4oFAAH/ArMBshKzCQAB/wIJAf8CCQH0
|
||||
AgABGQEJARkB/wIJAf8CAAMJAf8B8gEJCgABswqyAfQIAAG6AbIEAAG0AYoBZQK7GhkBigUAAf8UAAEZ
|
||||
CQAB/wIJAQACCQH0AgABGQEJAfMBAAIJAf8CAAMJAQAB8wEJCQAB8wGzCAABugGyAfQIAAG6AbIEAAGz
|
||||
AYoCZQK7GRkBigUAAf8UAAEZCQAB/wUJAfQCAAEZBQkB/wIABgkJAAG6AfQIAAEJDLIEAAGzAYoBuwJl
|
||||
AbsBCRgZAYoFAAH/FAABGQkAAf8FCQH0AgABGQUJAf8CAAYJCQABugH0CQAMsgQAAbMBigG7ARkCZQG7
|
||||
AQkJGQEJDBkBuwGKBQAB/xQAARkKAAH/AgkC/wMAAv8DCQH/AwAC/wIJAfMB/wkAAboB9BkAAbMBigG7
|
||||
AhkCZQG7CBkCuwsZAQkBZQGKBQAB/xQAARkLAAIJBwADCQYAAgkB9AoAAboB9BkAAbMBigG7AxkCZQG7
|
||||
BhkBuwJlAbsKGQJlAYoFAAH/FAABGQsAAgkH/wMJBv8CCQH0CgABugH0CQALsgGzBAABswGKAbsEGQJl
|
||||
AbsFGQFmAmUBZgEJCBkBuwFlARkBigUAAf8UAAEZCwAUCQH0CgABugH0CAABCQyyBAABswGKAbsFGQJl
|
||||
AbsDGQG7AWUBZgGRAWUBuwcZAQkCZQEZAYoFAAH/FAABGQsAFAkB9AoAAboB9AQABPQBswGyAfQIAAG6
|
||||
AbIEAAGzAYoBuwYZAWUBZgG7AQkBuwJlAhkBZQFmAQkGGQFmAWUCGQGKBQAB/xWyFAAB8wIJEwABugH0
|
||||
AgAIsgH0CAABugGyBAABswGKAbsGGQG7AmUBuwJlAxkBCQFlAbsFGQG7AWUBbAIZAYoFAAH/AgABswIA
|
||||
AQkCAAHzAgAB/wgAARkUAAHzAgkTAAG6AfQCAAGyBQABCQyyBAABswGKAbsHGQG1A2UFGQJlAbsDGQEJ
|
||||
AmUDGQGKBQAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZDQAH/wEZAgkH/wwAAboB9AIAAbIGAAyyBAABswGK
|
||||
AbsQGQEJAWUBuwMZAa4BZQQZAYoFAAH/AgABswIAAQkCAAHzAgAB/wgAARkMAAHzEgkLAAG6AfQCAAGy
|
||||
FgABswGKAbsCGQFmAmUMGQJlAbsBGQG7AmUEGQGKBQAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZDAAB8wEJ
|
||||
Dv8DCQsAAboB9AIAAbIWAAGzAYoBuwEZAWUBiwIZAWUMGQFlArsCZQUZAYoEAAH/AbIVtAGyCwAB8wEJ
|
||||
DgADCQoAB7IBswQAC7IBswQAAbMBigG7ARkBZQG7AhkBZQwZBGUBkQUZAYoEAAGyFwABsgoAAfMBCQMA
|
||||
AgkJAAMJCQABCQiyAwABCQyyBAABswGKAbsBGQFlAbsCCQFlDhkBtQcZAYoEAAGyF7MBsgoAAfMBCQMA
|
||||
AgkJAAMJCQABugGyAfQEAAG6AbID9AGzAbIB9AgAAboBsgQAAbMBigG7AhkDZQG7FhkBigQAAboXAAGy
|
||||
CgAB8wEJDgADCQkAAboBsgH0BAABugayAfQIAAG6AbIEAAGzAYoBuxwZAYoEAAG6FwABsgoAAfMBCQ4A
|
||||
AwkJAAEJCLIDAAEJDLIEAAGzAYoduwGKBAABuhcAAbIKAAHzEgkKAAiyBAAMsgUAH4oEAAG6BAABsgH0
|
||||
CwABCQGyBAABsgoAAf8RCQHzJwAB/xytAbQFAAG6AwABsgEAAbMLAAEJAQABsgMAAbJnAAG6AgABsgMA
|
||||
AbIJAAGyAwABswIAAbJnAAG6AbMBugQAAboIAALzAwAB/wG6AbMBCW8AAbIBCQUAAboBs3kAAboDsgEJ
|
||||
bQABQgFNAT4HAAE+AwABKAMAAYADAAHAAwABAQEAAQEGAAEMFgAD/wUACP8IAAL/Af4BPwT/CAABwAED
|
||||
AfwBHwH/AeABBwH/CAABgAEDAfgBDwH/AcABAwH/CAABgAEDAfABBwH/AgAB/wgAAcABBwHgAQMB/gIA
|
||||
AT8IAAHgAQABoAEBAfgCAAEfCAAB4AEAAaABAQH4AgABHwgAAfABAAGgAQEB8AIAAQ8IAAH4AR8B4AED
|
||||
AfACAAEPCAAB+AE/AfABBwHgAgABBwgAAfgBPwH4AQ8B4AIAAQMIAAH8AX8B/AEfAeACAAEDCAAB/gH/
|
||||
Af4BPwHgAgABAwgAAfgBvwH8AQ8B4AIAAQMIAAH4AT8B/AEPAeACAAEDCAAB+AE/Af8BPwHgAgABAwgA
|
||||
Af4BfwH8AQ8B4AIAAQMIAAHAAQMB8AEDAeACAAEDCAABwAEDAeABAwHgAgABAwgAAcABAgFgAQEB4AIA
|
||||
AQMIAAHAAQIBIAEBAeACAAEHCAABwAIAAQEB8AIAAQ8IAAHAAgABAQH4AgABDwgAAcABAgEAAQEB+AIA
|
||||
AQcIAAHAAQIBIAEBAfwCAAEHCAABwAEDAeABAwH+AgABBwgAAcABAwHgAQMB/wGAAQABBwgAAcABAwHw
|
||||
AQcB/wHAAQMBJwgAAv8B/gE/BP8IAAj/CAAI/wQABP8BgAMADP8EAAz/BAAM/wQABP8B/gF/Av8B8AIA
|
||||
AQ8EAAH4AgABDwH+AXABBwH/AfACAAEPBAAB8AIAAQ8B/wHAAQEB/wHwAgABDwQAAfACAAEPAf8CAAH/
|
||||
AfACAAEPBAAB8QL/AY8B/gIAAR8B8AIAAQ8EAAHxAv8BjwH8AgABPwHwAgABDwQAAfEC/wGPAfwCAAEf
|
||||
AfACAAEPBAAB8QH7Ac8BjwHwAgABHwHwAgABDwQAAvEBhwGPAeACAAEPAfACAAEPBAAB8QHjAcMBjwHw
|
||||
AgABDwHwAgABDwQAAfEBxwHhAY8B8AIAAQ8B8AIAAQ8EAAHxAYcB8QGPAfACAAEPAfACAAEPBAAB8QHD
|
||||
AeEBjwHwAgABDwHwAgABDwQAAfEB4QHDAY8B8AIAAQ8B8AIAAQ8EAALxAYcBjwHwAgABDwHwAgABDwQA
|
||||
AfEB+wHPAY8B8AIAAQ8B8AIAAQ8EAAHxAv8BjwH4AgABDwHwAgABDwQAAfEC/wGPAfgCAAEfAfACAAEP
|
||||
BAAB8QL/AY8B+AIAAR8B8AIAAQ8EAAHwAgABDwHkAgABPwHwAgABDwQAAfACAAEPAf4CAAEnAfACAAEP
|
||||
BAAB8AIAAQ8B/wIAAWcB8AIAAQ8BgAMAAfACAAEPAf8BgAEBAd8B8AIAAQ8BwAIAAQEB8AIAAQ8B/wHg
|
||||
AQMBjwHwAgABDwH+AgABPwH4AgABHwH/AfgBHwEPBf8CAAF/Df8CAAF/Df8CAAF/Df8CAAF/Cf8B8AEH
|
||||
Bv8B4AEDBv8BwAEBBv8BgAEABv8CAAF/Af8B4AEDAf8B/gIAAT8E/wH+AQ8B+AE/Af8BgAEAAf8B/AEP
|
||||
AfgBHwT/AfgBPwH+AQ8B/wEfAfwBfwH4AT8B/gEPAf8B/gF/Af8B8AL/AQ8B/wE/Af4BfwHwAv8BBwH/
|
||||
Af4BfwH/AfEC/wGHAf8BJgFyAX8B4QL/AYMB4wH+AX8BxwHjAv8BwwH/ASYBcgF/AcMC/wHDAeAB/gF/
|
||||
AQcBwwH7Af8B4wH/ASYBcgF/AcMC/wHhAfgBPgF8AR8BxwH5Af8B8QH/ASYBcgF/AYcBwAEDAfEB/gEO
|
||||
AXABfwHHAfgB/wHxAf8BJgFyAX8BhwHAAQMB8AHhAYIBQQGHAY8B+AE/AfgB/wEmAXIBfwGPAcABAwH4
|
||||
AeMB4AEHAo8B+AEfAfgB/wEmAXIBfwGPAcABAwH4AeEB+AEfAo8B+AEPAfgB/wEmAXIBfwEPAcABAwH4
|
||||
AeEB/AE/AYcBjwH4AQMB+AH/ASYBcgF/AQ8BwAEDAfgB/wHCAUMB/wGPAfgBAwH4Af8BJgFyAX8BDwHA
|
||||
AQMB+AH/AY4BcQH/AY8B+AEHAfgB/wEmAXIBfwEPAcABAwH4Af4BPgF8AX8BjwH4AQ8B+AH/ASYBcgF/
|
||||
AQ8BwAEDAfgB/gJ+AX8BjwH4AR8B+AH/ASYBcgF/AY8BwAEDAfgB/wH+AX8B/wGPAfgBfwH4Af8BJgFy
|
||||
AX8BjwHAAQMB+AH/Af4BfwH/AccB+AH/AfEB/wE/Af4BfwGHAcABAwHwAf8B/gF/Af8BxwH7Af8B8QH8
|
||||
AgABHwGHAcABAwHwAf8B/gF/Af8BwwL/AeMB/AIAAR8BwwL/AeEB/wH+AX8B/wHjAv8B4wH8AgABHwHD
|
||||
Av8B4wH/Af4BfwH/AfEC/wHHAfwCAAEfAeEC/wHDAf8B/gFvAf8B8AL/AY8B/wHnAfMB/wHwAv8BhwH/
|
||||
Af4BbwH/AfgBPwH+AQ8B/wLjAf8B+AE/Af4BDwH/Af4BRwH/AfwBDwH4AT8B/wHwAQcB/wH8AQ8B+AEf
|
||||
Af8B/gFHAv8CAAF/Af8B+AEPAf8B/gIAAT8B/wH+AUMC/wGAAQAG/wIAAX8F/wHwAQcG/wHAAQEO/wH8
|
||||
AR8N/wHgBP8BgAEfCf8BwAE/Av8B/gEAAQcJ/wHAAQ8C/wH8AQABAwH/AfABfwH+AQ8E/wHAAQcC/wH4
|
||||
AQ8BAwH/AeABfwH+AQcB4AIAAQcBwAEBAv8B8AE/AcMB/wHnAv8B5wHgAgABBwHAAQABfwH/AeAB/wHz
|
||||
Af8B5gEGAW4B5wHgAgABBwHAAQABPwH/AeED/wHnAcYBCAHnAeACAAEHAcABAAEPAf8BwwP/AeYBDAEA
|
||||
AScB4AIAAQcBwAEAAQMB/wHDBP8BgAGwAT8B4AIAAQcBwAIAAf8BhwP/AfwCAAH/AeACAAEHAcACAAF/
|
||||
AYcE/wGAATIB/wHgAgABBwHAAgABHwGPAv8BHwHwAgABDwHgAgABBwHAAgABBwGPAf8B/gEPBf8B4AEI
|
||||
Af8BwAIAAQMBDwH/AfwBBwH4AgABHwH/AeABAAH/AcACAAEBAQ8B/wH8AQMB+AEYAQABHwH/AeABAAH/
|
||||
AcACAAEBAQ8B/wH4AQEB+AIAAR8B/wIgAf8BwAIAAQEBDwH/AfABAAH+AQABIgEfAf8BIAEAAf8BwAIA
|
||||
AQMBDwH/AeABAAH8AQABAgEfAf8CAAH/AcACAAEHAY8B/wHhARAB/AIAAT8B/wEAAQEB/wHAAgABDwGP
|
||||
Af8B4wEYAfwBIAEAAT8B/wEAAQEB/wHAAgABPwGPAf8B9gEdAf4BQAEAAT8B/wGIAQMB/wHAAgAB/wGH
|
||||
Af8B/gEfAf4BAAECAX8B/wGAAQ8B/wHAAQABAQH/AccB/wH8AT8B5wGAAQ8B5wH7AcAB/wHPAcABAAEH
|
||||
Af8BwwH/AfwBPwHnAYABAwHnAfsB4AEfAc8BwAEAAR8B/wHhAf8B+AF/AecB4AEHAecB+wH4AR8BzwHA
|
||||
AQABfwH/AeAB/wHwAX8B5wH4AR8B5wH4AT8B/gEPAcABAAL/AfABfwHgAf8B4AF/Af4BBwH4AT8B/gEP
|
||||
AcABAwL/AfgBHwGBAf8B8AF/Af4BDwT/AcABDwL/AfwBAAEDCf8BwAE/Av8B/gEAAQcJ/wHgAX8D/wGA
|
||||
AR8J/wHxBP8B8Cb/AcME/wH8AT8F/wHAAgABAwHLBP8B8AGHAv8BjwL/AcACAAEBAcME/wGEATEC/wEf
|
||||
Av8BwAIAAQEB4QT/AR4BPAF/Af4BHAL/AcACAAEBAfwD/wH+AX8B/wE/AfwBPAL/AcACAAEBAf4BfwL/
|
||||
AfwC/wGfAfgBeAL/AcACAAEBAf8BPwL/AfkC/wHfAfAB+AL/AcACAAEBAf8BnwL/AfsC/wHPAvAC/wHA
|
||||
AgABAQH/Ac8C/wHzAv8B7wHgATEC/wHAAgABAQH/AecC/wH3Av8B5wHgAQEC/wHAAgABAQH/AfMC/wH3
|
||||
Av8B9wHAAQAC/wHAAgABAQH/AfkC/wH3Av8B9wHgAQABPwH/AcACAAEBAf8B/AL/AcMC/wHDAcYBAAED
|
||||
Af8BwAIAAQEB/wH+AX8B/wHLAv8BywHMAQABAwH/AcACAAEBAv8BPwH/AcMC/wHDAYwBgAEBAf8BwAIA
|
||||
AQEC/wGfAf8B4wL/AeMB+AHAAQEB/wHAAgABAQL/Ac8B/wH3Av8B9wH5AfABAQH/AcACAAEBAv8B5wH/
|
||||
AfcC/wHnAf8BwAEAAX8BwAIAAQEC/wHzAf8B8wL/Ae8B/wHmAQABHwHAAgABAQL/AfkB/wH7Av8BzwL/
|
||||
AYABBwHAAgABAQL/AfwB/wH5Av8BzwL/AcgBAwHAAgABAQL/Af4BfwH8Av8BnwL/Af4BAAHAAgABAwP/
|
||||
AT8B/gF/Af8BPwP/AYABwAEAAQ8E/wGfAf8BPwH+AX8D/wHBAcABAAEPBP8BwwH/AYwBOAT/AfEBwAEA
|
||||
AR8E/wHLAf8B4AGDDP8BwwH/AfwBPwz/AeMB/wH+AT8l/wH+Av8BPwz/Af4C/wG/DP8B/AIAAR8M/wH5
|
||||
AW0BvwHfDP8B+wFtAb8B3wHwARgBDAEPAv8BAAEPAcACAAEBAfsBbQG/Ad8B8AEYAQwBDwH/Af4BAAEP
|
||||
AYADAAH4AgABHwHwARgBDAEPAfwBAAE/Ac8EAAH7Av8B3wHxARgBjAFPAfkB/gE/Ac8EAAH7Av8B3wHw
|
||||
ARgBDAEPAfkB/gEAAQ8EAAH7Av8B3wHwARgBDAEPAfkB/wEAAQ8EAAH7Av8B3wH4ATgBHAEPAfkD/wQA
|
||||
AfsC/wHfAfwB/gE/AR8B+QP/BAAB+wL/Ad8B/AIAAR8B+QH/AQABDwQAAfsC/wHfAfwCAAEfAfkB/gEA
|
||||
AQ8EAAH7Av8B3wH8AgABHwH5AeABPwHPBAAB+AIAAR8B/wH+AT8B/wH5AYABPwHPBAAB+wFtAb8B3wH/
|
||||
Af4BPwH/AfkBvgEAAQ8EAAH7AW0BvwHfAf8CAAF/AfkBvwEAAQ8EAAH7AW0BvwHfAf4CAAE/AfkBvwL/
|
||||
BAAB+wFtAb8B3wH+AgABPwH5Ab8C/wQAAfACAAEPAf4BfwH+AT8B8AEPAQABDwQAAfcC/wH3Af4BcwH+
|
||||
AT8B4AEOAQABDwQAAfACAAEHAf4BcwH+AT8B4wHAAT8BzwQAAfcC/wH3Af4BfwH+AT8B4wHAAT8BzwQA
|
||||
AfcC/wH3Af4BfwH+AT8B4AEOAQABDwQAAfcC/wH3Af4CAAE/AfABDwEAAQ8BgAMAAfcBnwH8AfcB/gIA
|
||||
AT8E/wGAAgABAQH3AV8B/QF3DP8B9gHvAfsBtwz/AfEB7wHzAYcN/wHzAecO/wH8AR8N/ws=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="imageListTool.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>132, 17</value>
|
||||
<value>272, 17</value>
|
||||
</metadata>
|
||||
<data name="imageListTool.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAD0
|
||||
KQAAAk1TRnQBSQFMAgEBDAEAARgBAAEIAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
AwABQAMAAQEBAAEgBgABQP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A4gABIwEhASMBMAGt
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABc
|
||||
LwAAAk1TRnQBSQFMAgEBDgEAASABAAEgAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
AwABQAMAAQEBAAEgBgABQP8AYwABVgFUAXABu7QAA1ABmgNYAf8DWAH/A1gB/wNYAf8DWAH/A1gB/wNY
|
||||
Af8DWAH/A1gB/wNYAf8DWAH/HAABXQFjAWcBsAGiAeAB/AH/AaIB4AH8Af8BogHgAfwB/wGiAeAB/AH/
|
||||
AaIB4AH8Af8DDgETmAADWAH/A1gB/yQAA1gB/xgAAaIB4AH8Af8BogHgAfwB/wFbAXIBjwH/AVsBcgGP
|
||||
Af8BWwFyAY8B/wFbAXIBjwH/AVsBcgGPAf8BnwHbAfcB/wFtAXsBgQHIAVwBvAHiAfiQAANYAf8DWAH/
|
||||
JAADWAH/FAABnAHRAecB+gGiAeAB/AH/AeEB4wHdAf8B9QH3Ae0B/wH1AfcB7QH/AfUB9wHtAf8B9QH3
|
||||
Ae0B/wH1AfcB7QH/AfUB9wHtAf8BogHgAfwB/wMKAQ2QAANYAf8DWAH/CAADXgHoA1gB9wQAA1gB/wMd
|
||||
ASkIAANYAf8QAAFWAc0B+wH/AaAB4AH8Af8BogHgAfwB/wHhAeMB3QH/AfUB9wHtAf8B9QH3Ae0B/wGi
|
||||
AZoBoAH/AfUB9wHtAf8B9QH3Ae0B/wH1AfcB7QH/AaIB4AH8Af8BogHgAfwB/5AAA1gB/wNYAf8EAANa
|
||||
AeQDVQH6DAADWAH/AxoBJQQAA1gB/xAAAzMBUwGiAeAB/AH/AaIB4AH8Af8B4QHjAd0B/wH1AfcB7QH/
|
||||
AZwBiQGRAf8BygKhAf8BmwGSAZgB/wH1AfcB7QH/AfUB9wHtAf8BogHgAfwB/wGiAeAB/AH/kAADWAH/
|
||||
A1gB/wQAA1cBtwNYAf8MAANYAf8DBgEIBAADWAH/EAABYwFuAXIBvAGiAeAB/AH/AaIB4AH8Af8B4QHj
|
||||
Ad0B/wGXAYsBkwH/AfUB9wHtAf8BoAGHAY8B/wH1AfcB7QH/AaMBjAGSAf8B9QH3Ae0B/wGiAeAB/AH/
|
||||
AaIB4AH8Af+QAANYAf8DWAH/CAADVQGyA1wB5wQAA1gB/wMEAQYIAANYAf8QAAFHAkgBfgGiAeAB/AH/
|
||||
AaIB4AH8Af8B4QHjAd0B/wH1AfcB7QH/AZ0BlQGcAf8BugK5Af8BrQGoAawB/wH1AfcB7QH/AfUB9wHt
|
||||
Af8BogHgAfwB/wGiAeAB/AH/kAADWAH/A1gB/yQAA1gB/xQABP8BogHgAfwB/wHhAeMB3QH/AfUB9wHt
|
||||
Af8B9QH3Ae0B/wH1AfcB7QH/AfUB9wHtAf8BYQFkAWYB/wFhAWQBZwH/AaIB4AH8Af8BogHgAfwB/5AA
|
||||
A1gB/wNYAf8kAANYAf8UAAGiAeAB/AH/AaIB4AH8Af8B4QHjAd0B/wH1AfcB7QH/AfUB9wHtAf8B9QH3
|
||||
Ae0B/wGHAYkBjgH/Ac0B0AGHAf8BogHgAfwB/wGiAeAB/AH/AVQBVwFZAZuQAANYAf8DWAH/A1gB/wNY
|
||||
Af8DWAH/A1gB/wNYAf8DWAH/A1gB/wNYAf8DWAH/A1gB/xgAAaIB4AH8Af8BVQFqAYcB/wHMAc8BzAH/
|
||||
AcwBzwHMAf8BzAHPAcwB/wF3AXoBhAH/AaIB4AH8Af8BogHgAfwB/wGiAeAB/AH/BAADJgE4jAADXAHq
|
||||
A1gB/wNYAf8DWAH/A1gB/wNYAf8DWAH/A1gB/wNYAf8DWAH/A1gB/wNYAf8cAAGiAeAB/AH/AaIB4AH8
|
||||
Af8BogHgAfwB/wGiAeAB/AH/AaIB4AH8Af8BogHgAfwB/wGUAcMB2QH1BAADBAEFlAADWwHpA1gB/wNY
|
||||
Af8DWAH/A1gB/wNYAf8DWAH/A1gB/wNYAf8DWAH/A1IBoyQAAT8CQAFsAVoBYAFiAaoDKgFBCAADMAFL
|
||||
ARYBvAHxAf//AP8A/wBLAAMhATABrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/Aa0B2wGfAf8UAAH/AfYB6wH/cAADIwEzA04BmQM4AVwcAANOAZkDTgGZCAABVgFU
|
||||
AVkBvgGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wFnAVsBawH/
|
||||
AU0BKQFYAf8BdAFzAXUB/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/xAAAf8B9gHrAf8DBgEIBAADDAEQKAABSAFAATAB/wHUAbgBAAH/AdQBuAEAAf8BSAFAATAB/wFI
|
||||
AUABMAH/AUgBQAEwAf8BSAFAATAB/wFIAUABMAH/AUgBQAEwAf8BSAFAATAB/wHUAbgBAAH/AdQBuAEA
|
||||
Af8BSAFAATAB/wwAA04BmSwAA04BmQQAAVYBVAFZAb4BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/AU0BKQFYDf8BTQEpAVgB/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8MAAH/AfYB6wH/AWABRAErAf8IAAH/AfYB6wH/KAABSAFAATAB/wFIAUABMAH/AUgBQAEw
|
||||
Af8BSAFAATAB/wFIAUABMAH/AUgBQAEwAf8B9AHbAQAB/wH+AeQBAAH/AUgBQAEwAf8BSAFAATAB/wFI
|
||||
AUABMAH/AdQBuAEAAf8BSAFAATAB/wwAA04BmQgAAwsBDwNCAXQEAAFOAWwBYQHwAVACUQGfBAABTgJP
|
||||
AZcIAANOAZkEAAFWAVQBWQG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BTQEpAVgV/wFN
|
||||
ASkBWAH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8IAAG0AaEBkAL/AfYB6wH/CAABXAJZ
|
||||
Ac8B/wH2AesB/ygAAUgBQAEwAf8BSAFAATAB/wFIAUABMAH/AUgBQAEwAf8BSAFAATAC/wHlAQAB/wFY
|
||||
AU8BKwL/AeUBAAL/AeUBAAH/AasBmQETAf8BSAFAATAB/wHUAbgBAAH/AUgBQAEwAf8YAAMoAT0BVQJW
|
||||
AbEDJAE1CAABVgFqAWQB5wMIAQsBTwJQAZsMAAFWAVQBWQG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8BWwE6AWUF/wFNASkBWAH/AU0BKQFYAf8BUQEtAVsF/wFPASsBWgH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/Aa0B2wGfAf8IAAH/AfYB6wL/AfYB6wH/AXMBWQFCAf8BagFPATcB/wHiAcoBsAH/
|
||||
AYUBZAFOAf8oAAFIAUABMAH/AUgBQAEwAf8BSAFAATAB/wFIAUABMAH/AdIBvQEHAf8BXwFVASkC/wHl
|
||||
AQAB/wFIAUABMAL/AeUBAAH/AcIBrgEMAf8BSAFAATAB/wFIAUABMAH/AUgBQAEwAf8YAAFIAkkBiAMV
|
||||
AR0BTgF0AWcB8gFTAlUBrQQAAwgBCxQAAVYBVAFZAb4BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8J/wGEAY0BgQH/Aa0B2wGfAf8BUQExAVsJ/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
CAAB/wH2AesB/wFqAU8BNwL/AfYB6wL/AfYB6wH/AZMBdwFlAf8BjgFwAV0B/wGoAY8BbQH/NAABRgG3
|
||||
Av8DTAGQAywBRAFGAbcC/wQAAUYBtwL/UAABVgFUAVkBvgGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGo
|
||||
AdIBnAn/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwn/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGf
|
||||
Af8EAAFqAU8BNwH/BAACTAFLAY8BywGyAZkB/wH7AfEB5QL/AfYB6wH/AfsB8QHlBf8B2wHCAagB/wFg
|
||||
AUQBKwH/LAABRgG3Av8BRgG3Av8DQAFvAyEBMAFGAbcC/wMiATIcAANOAZkDTgGZA0oBiwQAA0gBhgNI
|
||||
AYUBSAJJAYcDSwGOAUwCTQGRA0gBhQNLAY4IAAFWAVQBWQG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfCf8BTQEpAVgB/wGtAdsBnwH/AU0BKQFYCf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wwAAeIBygGwAf8EAAFkAVwBVAHnAXIBWQFCAf8BgAFfAUgC/wH2AesB/wF0AVsBRAX/AzsBZCAA
|
||||
AVQBkQG4AfUEAAFGAbcC/wFGAbAB6gH9AwQBBgMsAUQDRwGCAUYBtwL/IAABWwFmAWEB4AFRAX8BawH3
|
||||
Aw0BEQNIAYUBUwJVAa0EAAMSARkEAAMjATMDMQFNCAABVgFUAVkBvgGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/AU0BKQFYCf8BVQEzAWAJ/wFNASkBWAH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8UAAFXAlYBuAFgAUQBKwH/AW4BVQE+Af8B4gHKAbAC/wH2AesC/wH2AesB/wHjAdYByQH/
|
||||
AWABRAErAf8cAAM3AVsDPgFrAUYBtwL/AwMBBAFNAaIB1AH6AVcBiwGtAfIBVwFaAVsBvQM9AWgcAAFL
|
||||
AkwBkAMxAU4DBQEHAwABAQM6AWIBUQJSAaEBTQJOAZYDUgGpAyMBNAMAAQEMAAFWAVQBWQG+Aa0B2wGf
|
||||
Af8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BggGJAYAB/wHpAeQB6g3/AZ0BiQGjAf8BqQHTAZwB/wGt
|
||||
AdsBnwH/AU0BKQFYAf8BTQEpAVgB/wGtAdsBnwH/JAAB+wH6AfkB/wGTAXQBXwL/AfYB6wL/AfYB6wL/
|
||||
AfYB6wH/AwYBCBgAAUYBtwL/BAABUgGOAbYB9AFGAbcC/wFGAbcC/wFQAlIBoyQAA0ABcAMmATkDBAEG
|
||||
AUgBdAFiAfYBUAJRAZ8BWQFqAWUB5QMCAQMDIgEyAVoBYgFhAdwMAAFWAVQBWQG+Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wFkAVUBaQH/AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/
|
||||
A3YB/wGtAdsBnwH/Aa0B2wGfAf8BbQFMAfAB/wFtAUwB8AH/Aa0B2wGfAf8wAAH/AfYB6wL/AfYB6wL/
|
||||
AfYB6wH/AewB4QHUAf8UAAMKAQ4BRgG3Av8DNQFWFAABrgGkAZAB/xAAAzgBXAgAA0IBdAMxAU8BVgFq
|
||||
AWQB5wFTAlUBsAFHAXoBXQH4EAADOAFcBAABVgFUAVkBvgGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGt
|
||||
AdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGf
|
||||
Af8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/xQA
|
||||
Af8B9gHrAf9wAAMjATMBTgFQAU4BmQM4AVwcAAFOAVABTgGZAU4BUAFOAZkIAAFUAUEBWwG+Aa0B2wGf
|
||||
Af8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/AWoBXgFuAf8BUAEsAVsB/wF3
|
||||
AXYBeAH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/EAAB/wH2
|
||||
AesB/wMGAQgEAAMMARAoAAFLAUMBMwH/AdQBuAEAAf8B1AG4AQAB/wFLAUMBMwH/AUsBQwEzAf8BSwFD
|
||||
ATMB/wFLAUMBMwH/AUsBQwEzAf8BSwFDATMB/wFLAUMBMwH/AdQBuAEAAf8B1AG4AQAB/wFLAUMBMwH/
|
||||
DAABTgFQAU4BmSwAAU4BUAFOAZkEAAFUAUEBWwG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGf
|
||||
Af8BrQHbAZ8B/wFQASwBWw3/AVABLAFbAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGt
|
||||
AdsBnwH/DAAB/wH2AesB/wFjAUcBLgH/CAAB/wH2AesB/ygAAUsBQwEzAf8BSwFDATMB/wFLAUMBMwH/
|
||||
AUsBQwEzAf8BSwFDATMB/wFLAUMBMwH/AfQB2wEAAf8B/gHkAQAB/wFLAUMBMwH/AUsBQwEzAf8BSwFD
|
||||
ATMB/wHUAbgBAAH/AUsBQwEzAf8MAAFOAVABTgGZCAADCwEPA0IBdAQAAU4BdgFmAfABUAJRAZ8EAAFO
|
||||
Ak8BlwgAAU4BUAFOAZkEAAFUAUEBWwG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BUAEs
|
||||
AVsV/wFQASwBWwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8IAAG0AaEBkAL/AfYB6wH/
|
||||
CAABXQFZAVcBzwH/AfYB6wH/KAABSwFDATMB/wFLAUMBMwH/AUsBQwEzAf8BSwFDATMB/wFLAUMBMwL/
|
||||
AeUBAAH/AVsBUgEuAv8B5QEAAv8B5QEAAf8BqwGZARYB/wFLAUMBMwH/AdQBuAEAAf8BSwFDATMB/xgA
|
||||
AygBPQFVAVcBVgGxAyQBNQgAAVMBcgFkAecDCAELAU8BUQFQAZsMAAFUAUEBWwG+Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/Aa0B2wGfAf8BXgE9AWgF/wFQASwBWwH/AVABLAFbAf8BVAEwAV4F/wFSAS4BXQH/
|
||||
Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8IAAH/AfYB6wL/AfYB6wH/AXYBXAFFAf8BbQFS
|
||||
AToB/wHiAcoBsAH/AYUBZwFRAf8oAAFLAUMBMwH/AUsBQwEzAf8BSwFDATMB/wFLAUMBMwH/AdIBvQEK
|
||||
Af8BYgFYASwC/wHlAQAB/wFLAUMBMwL/AeUBAAH/AcIBrgEPAf8BSwFDATMB/wFLAUMBMwH/AUsBQwEz
|
||||
Af8YAAFIAkkBiAMVAR0BSwF6AWcB8gFTAVcBVQGtBAADCAELFAABVAFBAVsBvgGtAdsBnwH/Aa0B2wGf
|
||||
Af8BrQHbAZ8B/wGtAdsBnwn/AYQBjQGBAf8BrQHbAZ8B/wFUATQBXgn/Aa0B2wGfAf8BrQHbAZ8B/wGt
|
||||
AdsBnwH/Aa0B2wGfAf8IAAH/AfYB6wH/AW0BUgE6Av8B9gHrAv8B9gHrAf8BkwF6AWgB/wGOAXMBYAH/
|
||||
AagBjwFwAf80AAFJAbcC/wFMAU0BTgGQAywBRAFJAbcC/wQAAUkBtwL/UAABVAFBAVsBvgGtAdsBnwH/
|
||||
Aa0B2wGfAf8BrQHbAZ8B/wGoAdIBnAn/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwn/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/Aa0B2wGfAf8EAAFtAVIBOgH/BAACTAFLAY8BywGyAZkB/wH7AfEB5QL/AfYB6wH/
|
||||
AfsB8QHlBf8B2wHCAagB/wFjAUcBLgH/LAABSQG3Av8BSQG3Av8DQAFvAyEBMAFJAbcC/wMiATIcAAFO
|
||||
AVABTgGZAU4BUAFOAZkDSgGLBAADSAGGA0gBhQFIAkkBhwFLAUwBSwGOAUwCTQGRA0gBhQFLAUwBSwGO
|
||||
CAABVAFBAVsBvgGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwn/AVABLAFbAf8BrQHbAZ8B/wFQ
|
||||
ASwBWwn/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8MAAHiAcoBsAH/BAABZAFWAU0B5wF1
|
||||
AVwBRQH/AYABYgFLAv8B9gHrAf8BdwFeAUcF/wM7AWQgAAFRAZ4B0gH1BAABSQG3Av8BSQGzAfMB/QME
|
||||
AQYDLAFEAkcBSAGCAUkBtwL/IAABVwFuAWQB4AFPAYIBawH3Aw0BEQNIAYUBUwFXAVUBrQQAAxIBGQQA
|
||||
AyMBMwMxAU0IAAFUAUEBWwG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BUAEsAVsJ/wFY
|
||||
ATYBYwn/AVABLAFbAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/xQAAVcCVgG4AWMBRwEu
|
||||
Af8BcQFYAUEB/wHiAcoBsAL/AfYB6wL/AfYB6wH/AeMB1gHJAf8BYwFHAS4B/xwAAzcBWwM+AWsBSQG3
|
||||
Av8DAwEEAU0BqQHjAfoBUwGbAckB8gFXAWIBaAG9Az0BaBwAAUsCTAGQAzEBTgMFAQcDAAEBAzoBYgFR
|
||||
AlIBoQFNAk4BlgFSAVUBUwGpAyMBNAMAAQEMAAFUAUEBWwG+Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8BggGJAYAB/wHpAeQB6g3/AZ0BiQGjAf8BqQHTAZwB/wGtAdsBnwH/AVABLAFbAf8BUAEs
|
||||
AVsB/wGtAdsBnwH/JAAB+wH6AfkB/wGTAXcBYgL/AfYB6wL/AfYB6wL/AfYB6wH/AwYBCBgAAUkBtwL/
|
||||
BAABUgGcAc8B9AFJAbcC/wFJAbcC/wFQAVUBVgGjJAADQAFwAyYBOQMEAQYBSAF6AWIB9gFQAlEBnwFW
|
||||
AXMBZQHlAwIBAwMiATIBVgFsAWEB3AwAAVQBQQFbAb4BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wGtAdsBnwH/AWcBWAFsAf8BUAEsAVsB/wFQASwBWwH/AVABLAFbAf8DeQH/Aa0B2wGfAf8BrQHb
|
||||
AZ8B/wFwAU8B8AH/AXABTwHwAf8BrQHbAZ8B/zAAAf8B9gHrAv8B9gHrAv8B9gHrAf8B7AHhAdQB/xQA
|
||||
AwoBDgFJAbcC/wM1AVYUAAGuAaQBkAH/EAADOAFcCAADQgF0AzEBTwFTAXIBZAHnAVMBVgFVAbABRwF9
|
||||
AWMB+BAAAzgBXAQAAVQBQQFbAb4BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/
|
||||
Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BrQHbAZ8B/wGtAdsBnwH/Aa0B2wGfAf8BUAEs
|
||||
AVsB/wFQASwBWwH/Aa0B2wGfAf80AANAAXAB/wH2AesB/wHxAeYB2gH/HAADPwFtAU0BmgHMAfMCSQFK
|
||||
AYgMAAGuAaQBkAH/EAABTgFQAU4BmQwAAUsCTAGQAVkBaQFgAdcBUgFWAVQBqgFHAYIBYQH7AxwBKAwA
|
||||
AU4BUAFOAZkIAAFQASwBWwH/AVABLAFbAf8BUAEsAVsB/wFQASwBWwH/AVABLAFbAf8BUAEsAVsB/wFQ
|
||||
ASwBWwH/AVABLAFbAf8BUAEsAVsB/wFQASwBWwH/AVABLAFbAf8BUAEsAVsB/wFQASwBWwH/AVABLAFb
|
||||
Af8BUAEsAVsB/0wAAa4BpAGQAf8BrgGkAZAB/xwAAa4BpAGQAf8BrgGkAZAB/xAAAUcBfQFjAfgBTgFQ
|
||||
AU4BmQM4AVwcAAFOAVABTgGZAU4BUAFOAZkDIgExFAABUAEsAVsB/wGJAcoB/QH/AYkBygH9Af8BiQHK
|
||||
Af0B/wGJAcoB/QH/AYkBygH9Af8BiQHKAf0B/wGJAcoB/QH/AVABLAFbAf/cAAFQASwBWwH/AYkBygH9
|
||||
Af8BiQHKAf0B/wGJAcoB/QH/AYkBygH9Af8BiQHKAf0B/wGJAcoB/QH/AYkBygH9Af8BUAEsAVsB/9wA
|
||||
ASABHwEhASwBUAEsAVsB/wFQASwBWwH/AVABLAFbAf8BUAEsAVsB/wFQASwBWwH/AVABLAFbAf8BUAEs
|
||||
AVsB/wMGAQj/AJEAAzIBUFAAASMB+gEUAf8BIwH6ARQB/wQAASMB+gEUAf8BIwH6ARQB/xgAAagBVQED
|
||||
Af8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGo
|
||||
AVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/GAADUAGe
|
||||
AdsBlgELAf8B2wGWAQsB/wHbAZYBCwH/AwABARwAAzIBUAEiAfoBEwH/QAADUQGgAxIBGAgAAzIBUAgA
|
||||
AT4BPwE+AWwDIQEwDAABewFkAUwB7wFMASMBCgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8BrQHbAZ8B/wFNASkBWAH/AU0BKQFYAf8BrQHbAZ8B/zQAA0ABcAH/AfYB6wH/AfEB5gHaAf8cAAM/
|
||||
AW0BTQGMAbAB8wNJAYgMAAGuAaQBkAH/EAADTgGZDAABSwJMAZABWQFhAV0B1wNTAaoBRwF/AV8B+wMc
|
||||
ASgMAANOAZkIAAFNASkBWAH/AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/AU0BKQFYAf8BTQEpAVgB/wFN
|
||||
ASkBWAH/AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/AU0BKQFY
|
||||
Af8BTQEpAVgB/0wAAa4BpAGQAf8BrgGkAZAB/xwAAa4BpAGQAf8BrgGkAZAB/xAAAUcBegFdAfgDTgGZ
|
||||
AzgBXBwAA04BmQNOAZkDIgExFAABTQEpAVgB/wGJAcoB/QH/AYkBygH9Af8BiQHKAf0B/wGJAcoB/QH/
|
||||
AYkBygH9Af8BiQHKAf0B/wGJAcoB/QH/AU0BKQFYAf/cAAFNASkBWAH/AYkBygH9Af8BiQHKAf0B/wGJ
|
||||
AcoB/QH/AYkBygH9Af8BiQHKAf0B/wGJAcoB/QH/AYkBygH9Af8BTQEpAVgB/9wAAx8BLAFNASkBWAH/
|
||||
AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/AU0BKQFYAf8BTQEpAVgB/wFNASkBWAH/AwYBCP8AkQADMgFQ
|
||||
UAABIAH6AREB/wEgAfoBEQH/BAABIAH6AREB/wEgAfoBEQH/GAABqAFSAQAB/wGoAVIBAAH/AagBUgEA
|
||||
Af8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGo
|
||||
AVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8YAANQAZ4B2wGWAQgB/wHbAZYBCAH/
|
||||
AdsBlgEIAf8DAAEBHAADMgFQAR8B+gEQAf9AAANRAaADEgEYCAADMgFQCAABPgE/AT4BbAMhATAMAAFw
|
||||
AWIBTwHvAUkBIAEHAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/xQAAdsBlgELAf8UAAHbAZYBCwH/IAABIgH6ARMB/zgAAVgBbAFW
|
||||
Ac8kAAMhATAIAAF7AWQBTAHvAeEBvQGKAf8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wHhAb0BigH/EAABxgGWARkB/UAAASIB+gETAf9cAAM7AWQIAAF7AWQBTAHvAeEBvQGK
|
||||
Af8B+gHrAdIB/wFMASMBCgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wHh
|
||||
Ab0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/EAADNgFZ
|
||||
HAAB2wGWAQsB/yQAASIB+gETAf8sAAEjAfoBFAH/LAABIwH6ARQB/wQAAXsBZAFMAe8B4QG9AYoB/wH6
|
||||
AesB0gH/AfoB6wHSAf8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B3QG5AYcB/wFSASkBEAH/AUwBIwEK
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AfoB6wHSAf8wAAM1AVcoAAEi
|
||||
AfoBEwH/KAABIwH6ARQB/ywAASMB+gEUAf8EAAF7AWQBTAHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8BTAEjAQoB/wHhAb0BigH/AUwBIwEKAf8B+gHrAdIB/wHnAdUBvAH/AeEBvQGKAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AeEBvQGKAf8BcAFNATQB/wH6AesB0gH/IAAB2wGWAQsB/zwAASIB+gETAf8gAAMy
|
||||
AVAsAAMyAVAIAAF7AWQBTAHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEK
|
||||
Af8B+gHrAdIB/wH6AesB0gH/IAAB2wGWAQsB/0AAASIB+gETAf8gAAEjAfoBFAH/LAABIwH6ARQB/wQA
|
||||
AXsBZAFMAe8B4QG9AYoB/wFMASMBCgH/AfoB6wHSAf8BTAEjAQoB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHaAbYBhAH/AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8QAAHbAZYBCwH/DAAB2wGWAQsB/xAAAZQBdwE6AfAwAAEiAfoBEwH/HAABIwH6ARQB/ywA
|
||||
ASMB+gEUAf8EAAF7AWQBTAHvAeEBvQGKAf8BTAEjAQoB/wHpAcwBoQH/AUwBIwEKAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B9gHnAc4B/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/FAACTAFLAZAIAAHbAZYBCwH/SAABIgH6ARMB/0QAAxIBGAgAAXsBZAFM
|
||||
AesB0gH/FAAB2wGWAQgB/xQAAdsBlgEIAf8gAAEfAfoBEAH/OAABWQFhAVkBzyQAAyEBMAgAAXABYgFP
|
||||
Ae8B4QG9AYoB/wFJASABBwH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGK
|
||||
Af8QAAG+AZYBHAH9QAABHwH6ARAB/1wAAzsBZAgAAXABYgFPAe8B4QG9AYoB/wH6AesB0gH/AUkBIAEH
|
||||
Af8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/AeEBvQGKAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUkBIAEHAf8QAAM2AVkcAAHbAZYBCAH/JAABHwH6
|
||||
ARAB/ywAASAB+gERAf8sAAEgAfoBEQH/BAABcAFiAU8B7wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wFJ
|
||||
ASABBwH/AeEBvQGKAf8B+gHrAdIB/wHdAbkBhwH/AU8BJgENAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AUkBIAEHAf8B+gHrAdIB/zAAAzUBVygAAR8B+gEQAf8oAAEgAfoBEQH/
|
||||
LAABIAH6AREB/wQAAXABYgFPAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/
|
||||
AeEBvQGKAf8BSQEgAQcB/wH6AesB0gH/AecB1QG8Af8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B4QG9
|
||||
AYoB/wFtAUoBMQH/AfoB6wHSAf8gAAHbAZYBCAH/PAABHwH6ARAB/yAAAzIBUCwAAzIBUAgAAXABYgFP
|
||||
Ae8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8YAAHbAZYBCwH/BAAB2wGWAQsB/wwAAdsBlgELAf88AAEiAfoBEwH/GAABIwH6ARQB/yQAAVIBVQFS
|
||||
AagMAAGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/
|
||||
AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFV
|
||||
AQMB/ygAAdsBlgELAf8DQAFwRAABIgH6ARMB/xgAASMB+gEUAf8cAAFXAWEBVgHHwAADMgFQIAABIwH6
|
||||
ARQB/wEjAfoBFAH/BAABIwH6ARQB/wEjAfoBFAH/zAADMgFQJAADMgFQ/wD/AP8APwAB2wGWAQkB/wHb
|
||||
AZYBCQH/AdsBlgEJAf8B2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8MAAGoAVUBAwH/AagBVQEDAf8BqAFV
|
||||
AQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/
|
||||
AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wQAAagBVQEDAf8BqAFVAQMB/wGo
|
||||
AVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQED
|
||||
Af8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/BAABqAFVAQMB/wGoAVUBAwH/
|
||||
AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFV
|
||||
AQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8MAAFmAWEBVgHfEAAB2wGW
|
||||
AQkB/xAAAloBWAHACAABewFkAUwB7wFMASMBCgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
AesB0gH/AfoB6wHSAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHS
|
||||
Af8gAAHbAZYBCAH/QAABHwH6ARAB/yAAASAB+gERAf8sAAEgAfoBEQH/BAABcAFiAU8B7wHhAb0BigH/
|
||||
AUkBIAEHAf8B+gHrAdIB/wFJASABBwH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AdoBtgGEAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/xAAAdsBlgEI
|
||||
Af8MAAHbAZYBCAH/EAABhAFsAUIB8DAAAR8B+gEQAf8cAAEgAfoBEQH/LAABIAH6AREB/wQAAXABYgFP
|
||||
Ae8B4QG9AYoB/wFJASABBwH/AekBzAGhAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH2AecBzgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8UAAJMAUsBkAgAAdsBlgEIAf9IAAEfAfoBEAH/RAADEgEYCAABcAFiAU8B7wHhAb0BigH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wF7AWQBTAHvAUwBIwEKAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHS
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/xgAAdsBlgEIAf8EAAHb
|
||||
AZYBCAH/DAAB2wGWAQgB/zwAAR8B+gEQAf8YAAEgAfoBEQH/JAABUgFTAVIBqAwAAagBUgEAAf8BqAFS
|
||||
AQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/
|
||||
AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/KAAB2wGWAQgB/wNA
|
||||
AXBEAAEfAfoBEAH/GAABIAH6AREB/xwAAVkBWwFZAcfAAAMyAVAgAAEgAfoBEQH/ASAB+gERAf8EAAEg
|
||||
AfoBEQH/ASAB+gERAf/MAAMyAVAkAAMyAVD/AP8A/wA/AAHbAZYBBgH/AdsBlgEGAf8B2wGWAQYB/wHb
|
||||
AZYBBgH/AdsBlgEGAf8B2wGWAQYB/wwAAagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFS
|
||||
AQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/
|
||||
AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/BAABqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGo
|
||||
AVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEA
|
||||
Af8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8EAAGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/
|
||||
AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFS
|
||||
AQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wwAAWEBXgFXAd8QAAHbAZYBBgH/EAACWgFYAcAIAAFw
|
||||
AWIBTwHvAUkBIAEHAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AXsBZAFMAe8BTAEjAQoB/wHhAb0BigH/AfoB6wHS
|
||||
AesB0gH/AXABYgFPAe8BSQEgAQcB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8MAAMqAUAQAAHbAZYBCQH/AdsBlgEJ
|
||||
Af8B2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/wgAAXsBZAFMAe8B4QG9AYoB/wFMASMBCgH/
|
||||
AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8BewFkAUwB7wHhAb0BigH/
|
||||
AUwBIwEKAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wF7AWQBTAHv
|
||||
AeEBvQGKAf8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/
|
||||
DAADKgFAMAABewFkAUwB7wHhAb0BigH/AfoB6wHSAf8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AUwBIwEKAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8BTAEjAQoB/wF7AWQBTAHvAeEBvQGKAf8B+gHrAdIB/wFMASMBCgH/AeEBvQGKAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AXsBZAFMAe8B4QG9AYoB/wH6AesB0gH/AUwBIwEKAf8B4QG9
|
||||
AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8MAAMqAUAQAAHbAZYBCQH/AdsBlgEJAf8B2wGW
|
||||
AQkB/wHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/wgAAXsBZAFMAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHS
|
||||
Af8BTAEjAQoB/wHhAb0BigH/AfoB6wHSAf8B3QG5AYcB/wFSASkBEAH/AUwBIwEKAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AfoB6wHSAf8BewFkAUwB7wHhAb0BigH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wFMASMBCgH/AeEBvQGKAf8B+gHrAdIB/wHdAbkBhwH/AVIBKQEQAf8BTAEjAQoB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8B+gHrAdIB/wF7AWQBTAHvAeEBvQGK
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8B4QG9AYoB/wH6AesB0gH/Ad0BuQGHAf8BUgEpARAB/wFM
|
||||
ASMBCgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wH6AesB0gH/DAADKgFA
|
||||
BAAB2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/xAAAloBWAHACAABewFkAUwB7wHhAb0BigH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8B4QG9AYoB/wFMASMBCgH/AfoB6wHSAf8B5wHV
|
||||
AbwB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/AXABTQE0Af8B+gHrAdIB/wF7AWQBTAHv
|
||||
AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wHhAb0BigH/AUwBIwEKAf8B+gHr
|
||||
AdIB/wHnAdUBvAH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8BcAFNATQB/wH6AesB0gH/
|
||||
AXsBZAFMAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AeEBvQGKAf8BTAEj
|
||||
AQoB/wH6AesB0gH/AecB1QG8Af8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wFwAU0BNAH/
|
||||
AfoB6wHSAf8MAAMqAUAQAAHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8B2wGW
|
||||
AQkB/wgAAXsBZAFMAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wH6AesB0gH/AfoB6wHSAf8BTAEjAQoB/wH6
|
||||
AesB0gH/AfoB6wHSAf8BewFkAUwB7wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFMASMBCgH/AfoB6wHSAf8B+gHrAdIB/wFM
|
||||
ASMBCgH/AfoB6wHSAf8B+gHrAdIB/wF7AWQBTAHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUwBIwEKAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/DAADKgFAMAABewFkAUwB7wHhAb0BigH/AUwBIwEK
|
||||
Af8B+gHrAdIB/wFMASMBCgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AdoBtgGEAf8BTAEjAQoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wF7AWQBTAHvAeEBvQGK
|
||||
Af8BTAEjAQoB/wH6AesB0gH/AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B2gG2AYQB/wFMASMBCgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AXsBZAFM
|
||||
Ae8B4QG9AYoB/wFMASMBCgH/AfoB6wHSAf8BTAEjAQoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHaAbYBhAH/AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8IAAHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/wHbAZYBCQH/CAAB2wGWAQkB/wHbAZYBCQH/AdsBlgEJ
|
||||
Af8B2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8IAAF7AWQBTAHvAeEBvQGKAf8BTAEjAQoB/wHpAcwBoQH/
|
||||
AUwBIwEKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B9gHn
|
||||
Ac4B/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AXsBZAFMAe8B4QG9AYoB/wFMASMBCgH/
|
||||
AekBzAGhAf8BTAEjAQoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH2AecBzgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BewFkAUwB7wHhAb0BigH/
|
||||
AUwBIwEKAf8B6QHMAaEB/wFMASMBCgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfYB5wHOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wgAAdsBlgEJ
|
||||
Af8IAAJaAVgBwAHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/xAAAloBWAHACAABewFkAUwB7wHhAb0BigH/
|
||||
AesB0gH/AfoB6wHSAf8BcAFiAU8B7wFJASABBwH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wwAAyoBQBAAAdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/AdsBlgEG
|
||||
Af8B2wGWAQYB/wHbAZYBBgH/CAABcAFiAU8B7wHhAb0BigH/AUkBIAEHAf8B4QG9AYoB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wF7AWQBTAHv
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wFwAWIBTwHvAeEBvQGKAf8BSQEgAQcB/wHhAb0BigH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/AXABYgFPAe8B4QG9AYoB/wFJASABBwH/
|
||||
AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AXsBZAFMAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8IAAHbAZYBCQH/AdsBlgEJAf8B2wGWAQkB/wHbAZYBCQH/CAAB2wGWAQkB/wHbAZYBCQH/
|
||||
AdsBlgEJAf8B2wGWAQkB/wHbAZYBCQH/AdsBlgEJAf8MAAGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGo
|
||||
AVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQED
|
||||
Af8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wQAAagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/
|
||||
AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFV
|
||||
AQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/BAABqAFVAQMB/wGoAVUBAwH/AagBVQED
|
||||
Af8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf8BqAFVAQMB/wGo
|
||||
AVUBAwH/AagBVQEDAf8BqAFVAQMB/wGoAVUBAwH/AagBVQEDAf//AP8A/wADAAFCAU0BPgcAAT4DAAEo
|
||||
AwABQAMAAUADAAEBAQABAQYAAQIWAAP/gQAG/wIAAfsD/wHHAfMCAAHyAf8BwAEBAd8B/QIAAeYB/wHA
|
||||
AQEB2QEtAgABzAH/AcABAQH4AccCAAHAAf8BwAEBAfgBXwIAAcABfwH8AS8C/wIAAaABHwH8AQ8B4gED
|
||||
AgAB6AEPAfQBDwHwAVMCAAH4AQcB8AEPAeABBwIAAf8BgQH6AR8B8AEHAgAB/wHwAfgB+wHYAT0CAAH/
|
||||
AfgB/gE7AdwBHQGAAQAC/wHnAfMBxwHxAfABBwb/AfABBwb/AfABBwz/Ab8B/wH8AZ8BgAEAAfwBHwHP
|
||||
Af8B8wFnAgAB+wHvAfcB/wHvAfsCAAH3Af8B+wL/AfsCAAL3Af0B/wHfAf0CAAH/AfcB/gH/Ad8B/QIA
|
||||
Af8BfwH/AX8BvwH7AgAB/wF/Af8BvwHfAf0CAAH3AXsB/wLfAf0CAAH7AX8B/wHvAf8B+wIAAf0BdwH/
|
||||
AfcB7wH7AYABAAH/Ac8B/wH7AvcF/wH7AfwBnwX/Af0B/wF/Gf8BAwGAAQABgAEAAYABAAHvAXsGAAHv
|
||||
AQMGAAHvAf8GAAHvAQMGAAHoAXsGAAHvAQMGAAHvAf8GAAHDAQMGAAHYAXsGAAHDAQMBgAEAAYABAAGA
|
||||
AQAY/ws=
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8MAAMqAUAwAAFwAWIBTwHv
|
||||
AeEBvQGKAf8B+gHrAdIB/wFJASABBwH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BSQEg
|
||||
AQcB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/
|
||||
AXABYgFPAe8B4QG9AYoB/wH6AesB0gH/AUkBIAEHAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wFJASABBwH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AUkBIAEHAf8BcAFiAU8B7wHhAb0BigH/AfoB6wHSAf8BSQEgAQcB/wHhAb0BigH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AUkBIAEHAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8BSQEgAQcB/wwAAyoBQBAAAdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/AdsBlgEGAf8B2wGW
|
||||
AQYB/wHbAZYBBgH/CAABcAFiAU8B7wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/AeEBvQGK
|
||||
Af8B+gHrAdIB/wHdAbkBhwH/AU8BJgENAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AUkBIAEHAf8B+gHrAdIB/wFwAWIBTwHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AUkBIAEH
|
||||
Af8B4QG9AYoB/wH6AesB0gH/Ad0BuQGHAf8BTwEmAQ0B/wFJASABBwH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8BSQEgAQcB/wH6AesB0gH/AXABYgFPAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHS
|
||||
Af8BSQEgAQcB/wHhAb0BigH/AfoB6wHSAf8B3QG5AYcB/wFPASYBDQH/AUkBIAEHAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/AfoB6wHSAf8MAAMqAUAEAAHbAZYBBgH/AdsBlgEG
|
||||
Af8B2wGWAQYB/wHbAZYBBgH/EAACWgFYAcAIAAFwAWIBTwHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8BSQEgAQcB/wHhAb0BigH/AUkBIAEHAf8B+gHrAdIB/wHnAdUBvAH/AeEBvQGKAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AeEBvQGKAf8BbQFKATEB/wH6AesB0gH/AXABYgFPAe8B4QG9AYoB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/AeEBvQGKAf8BSQEgAQcB/wH6AesB0gH/AecB1QG8Af8B4QG9
|
||||
AYoB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wFtAUoBMQH/AfoB6wHSAf8BcAFiAU8B7wHhAb0BigH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AUkBIAEHAf8B4QG9AYoB/wFJASABBwH/AfoB6wHSAf8B5wHV
|
||||
AbwB/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/AW0BSgExAf8B+gHrAdIB/wwAAyoBQBAA
|
||||
AdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/AdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/CAABcAFiAU8B7wHh
|
||||
Ab0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wFJASABBwH/AfoB6wHSAf8B+gHrAdIB/wFJASABBwH/AfoB6wHSAf8B+gHrAdIB/wFw
|
||||
AWIBTwHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AUkBIAEHAf8B+gHrAdIB/wH6AesB0gH/AUkBIAEHAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AXABYgFPAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8BSQEgAQcB/wH6
|
||||
AesB0gH/AfoB6wHSAf8MAAMqAUAwAAFwAWIBTwHvAeEBvQGKAf8BSQEgAQcB/wH6AesB0gH/AUkBIAEH
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B2gG2AYQB/wFJ
|
||||
ASABBwH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AXABYgFPAe8B4QG9AYoB/wFJASABBwH/AfoB6wHS
|
||||
Af8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHa
|
||||
AbYBhAH/AUkBIAEHAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BcAFiAU8B7wHhAb0BigH/AUkBIAEH
|
||||
Af8B+gHrAdIB/wFJASABBwH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AdoBtgGEAf8BSQEgAQcB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wgAAdsBlgEGAf8B2wGW
|
||||
AQYB/wHbAZYBBgH/AdsBlgEGAf8IAAHbAZYBBgH/AdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/AdsBlgEG
|
||||
Af8B2wGWAQYB/wgAAXABYgFPAe8B4QG9AYoB/wFJASABBwH/AekBzAGhAf8BSQEgAQcB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH2AecBzgH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8BcAFiAU8B7wHhAb0BigH/AUkBIAEHAf8B6QHMAaEB/wFJASABBwH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfYB5wHOAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFwAWIBTwHvAeEBvQGKAf8BSQEgAQcB/wHpAcwBoQH/
|
||||
AUkBIAEHAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B9gHn
|
||||
Ac4B/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/CAAB2wGWAQYB/wgAAloBWAHAAdsBlgEG
|
||||
Af8B2wGWAQYB/wHbAZYBBgH/EAACWgFYAcAIAAFwAWIBTwHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AXABYgFPAe8B4QG9AYoB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BcAFiAU8B7wHhAb0BigH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wgAAdsBlgEG
|
||||
Af8B2wGWAQYB/wHbAZYBBgH/AdsBlgEGAf8IAAHbAZYBBgH/AdsBlgEGAf8B2wGWAQYB/wHbAZYBBgH/
|
||||
AdsBlgEGAf8B2wGWAQYB/wwAAagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGo
|
||||
AVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEA
|
||||
Af8BqAFSAQAB/wGoAVIBAAH/BAABqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/
|
||||
AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFS
|
||||
AQAB/wGoAVIBAAH/AagBUgEAAf8EAAGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEA
|
||||
Af8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGoAVIBAAH/AagBUgEAAf8BqAFSAQAB/wGo
|
||||
AVIBAAH/AagBUgEAAf8BqAFSAQAB//8A/wD/AAMAAUIBTQE+BwABPgMAASgDAAFAAwABQAMAAQEBAAEB
|
||||
BgABAhYAA/8BAAT/BAAC/wH3Af8EAAHAAQMB+AEPBAABzwH7AfABAwQAAc8B+wHgAQMEAAHMAZsBwAED
|
||||
BAAByQHLAcABAwQAAckBywHAAQMEAAHMAZsBwAEDBAABzwH7AeABAwQAAc8B+wHgAQMEAAHAAQMB8AEF
|
||||
BAABwAEDAfgBCwQAAeABAwH+ATMEAAT/BAAE/wQABv8CAAH7A/8BxwHzAgAB8gH/AcABAQHfAf0CAAHm
|
||||
Af8BwAEBAdkBLQIAAcwB/wHAAQEB+AHHAgABwAH/AcABAQH4AV8CAAHAAX8B/AEvAv8CAAGgAR8B/AEP
|
||||
AeIBAwIAAegBDwH0AQ8B8AFTAgAB+AEHAfABDwHgAQcCAAH/AYEB+gEfAfABBwIAAf8B8AH4AfsB2AE9
|
||||
AgAB/wH4Af4BOwHcAR0BgAEAAv8B5wHzAccB8QHwAQcG/wHwAQcG/wHwAQcM/wG/Af8B/AGfAYABAAH8
|
||||
AR8BzwH/AfMBZwIAAfsB7wH3Af8B7wH7AgAB9wH/AfsC/wH7AgAC9wH9Af8B3wH9AgAB/wH3Af4B/wHf
|
||||
Af0CAAH/AX8B/wF/Ab8B+wIAAf8BfwH/Ab8B3wH9AgAB9wF7Af8C3wH9AgAB+wF/Af8B7wH/AfsCAAH9
|
||||
AXcB/wH3Ae8B+wGAAQAB/wHPAf8B+wL3Bf8B+wH8AZ8F/wH9Af8Bfxn/AQMBgAEAAYABAAGAAQAB7wF7
|
||||
BgAB7wEDBgAB7wH/BgAB7wEDBgAB6AF7BgAB7wEDBgAB7wH/BgABwwEDBgAB2AF7BgABwwEDAYABAAGA
|
||||
AQABgAEAGP8L
|
||||
</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
|
||||
@@ -61,6 +61,8 @@ namespace ToolLib.VisionJob
|
||||
if(newAddJob)
|
||||
{
|
||||
VisionJobParams.pVisionProject.Project.Add(jobName, new VisionJob(jobName));
|
||||
FormJobManage.Instance.tabJobUnion.SelectedTab = newTab;
|
||||
// newTab.Select();
|
||||
}
|
||||
InitJob(VisionJobParams.pVisionProject.Project[jobName]);
|
||||
}
|
||||
|
||||
@@ -34,6 +34,14 @@
|
||||
<Reference Include="DevComponents.DotNetBar2">
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\DevComponents.DotNetBar2.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI, Version=3.0.9.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SunnyUI.Common, Version=3.0.9.0, Culture=neutral, PublicKeyToken=5a271fb7ba597231, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\VisionEdit\bin\Debug\ThirdLib\SunnyUI.Common.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
|
||||
@@ -653,7 +653,7 @@ namespace ToolLib.VisionJob
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void DeleteItem(object sender, EventArgs e)
|
||||
private void DeleteItemOld(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -755,7 +755,123 @@ namespace ToolLib.VisionJob
|
||||
//LogHelper.SaveErrorInfo(ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 删除项
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
internal void DeleteItem(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (GetJobTree().SelectedNode == null)
|
||||
return;
|
||||
isDrawing = true;
|
||||
string nodeText = GetJobTree().SelectedNode.Text.ToString();
|
||||
int level = GetJobTree().SelectedNode.Level;
|
||||
string fatherNodeText = string.Empty;
|
||||
|
||||
//如果是子节点
|
||||
if (level == 1)
|
||||
{
|
||||
fatherNodeText = GetJobTree().SelectedNode.Parent.Text;
|
||||
}
|
||||
foreach (TreeNode toolNode in GetJobTree().Nodes)
|
||||
{
|
||||
if (level == 1)
|
||||
{
|
||||
if (toolNode.Text == fatherNodeText)
|
||||
{
|
||||
foreach (var itemNode in ((TreeNode)toolNode).Nodes)
|
||||
{
|
||||
if (itemNode != null)
|
||||
{
|
||||
if (((TreeNode)itemNode).Text == nodeText)
|
||||
{
|
||||
//移除连线集合中的这条连线
|
||||
for (int i = 0; i < D_itemAndSource.Count; i++)
|
||||
{
|
||||
if (((TreeNode)itemNode) == D_itemAndSource.Keys.ToArray()[i] || ((TreeNode)itemNode) == D_itemAndSource[D_itemAndSource.Keys.ToArray()[i]])
|
||||
D_itemAndSource.Remove(D_itemAndSource.Keys.ToArray()[i]);
|
||||
}
|
||||
|
||||
((TreeNode)itemNode).Remove();
|
||||
GetJobTree().SelectedNode = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (((TreeNode)toolNode).Text == nodeText)
|
||||
{
|
||||
((TreeNode)toolNode).Remove();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//如果是父节点
|
||||
if (level == 0)
|
||||
{
|
||||
for (int i = 0; i < L_toolList.Count; i++)
|
||||
{
|
||||
if (L_toolList[i].toolName == nodeText)
|
||||
{
|
||||
try
|
||||
{
|
||||
//移除连线集合中的这条连线
|
||||
for (int j = D_itemAndSource.Count - 1; j >= 0; j--)
|
||||
{
|
||||
if (nodeText == D_itemAndSource.Keys.ToArray()[j].Parent.Text || nodeText == D_itemAndSource[D_itemAndSource.Keys.ToArray()[j]].Parent.Text)
|
||||
D_itemAndSource.Remove(D_itemAndSource.Keys.ToArray()[j]);
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
|
||||
L_toolList.RemoveAt(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < L_toolList.Count; i++)
|
||||
{
|
||||
if (L_toolList[i].toolName == fatherNodeText)
|
||||
{
|
||||
for (int j = 0; j < L_toolList[i].toolInput.Count; j++)
|
||||
{
|
||||
if (L_toolList[i].toolInput[j].value.ToString() == string.Empty) //未连接源
|
||||
{
|
||||
if (string.Format("<--{0}", L_toolList[i].toolInput[j].IOName) == nodeText)
|
||||
L_toolList[i].RemoveInputIO(nodeText);
|
||||
}
|
||||
else //已连接源
|
||||
{
|
||||
if (string.Format("<--{0}{1}", L_toolList[i].toolInput[j].IOName, L_toolList[i].toolInput[j].value.ToString()) == nodeText)
|
||||
L_toolList[i].RemoveInputIO(nodeText);
|
||||
}
|
||||
}
|
||||
for (int j = 0; j < L_toolList[i].toolOutput.Count; j++)
|
||||
{
|
||||
if (L_toolList[i].toolOutput[j].IOName == nodeText.Substring(3))
|
||||
L_toolList[i].RemoveOutputIO(nodeText.Substring(3));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
isDrawing = false;
|
||||
DrawLine();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// Log.SaveError(ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void Run()
|
||||
{
|
||||
|
||||
@@ -54,6 +54,10 @@
|
||||
<Project>{1C8D0DDC-2086-48A9-9586-F2B643E2FC54}</Project>
|
||||
<Name>CommonHelper</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\EyeHandCalibTool\EyeHandCalibTool.csproj">
|
||||
<Project>{46ee89bb-5ec9-4ead-9e32-3e57288a0bf7}</Project>
|
||||
<Name>EyeHandCalibTool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\FindCircle\FindCircleTool.csproj">
|
||||
<Project>{3d2739db-5618-49bf-bf5c-5cccd6a55c64}</Project>
|
||||
<Name>FindCircleTool</Name>
|
||||
@@ -66,10 +70,18 @@
|
||||
<Project>{F5669FB7-77EC-44B9-898B-6D575B7D26EA}</Project>
|
||||
<Name>HalconTool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\HDevEngineTool\HDevEngineTool.csproj">
|
||||
<Project>{6112406a-a986-4a68-9d22-f0d7f0f81e02}</Project>
|
||||
<Name>HDevEngineTool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\PMAlignTool\PMAlignTool.csproj">
|
||||
<Project>{C1C08195-2EC8-42E9-93BB-D5331E6C6687}</Project>
|
||||
<Name>PMAlignTool</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\SDKCameraTool\SDKCameraTool.csproj">
|
||||
<Project>{1c61f57d-1a36-4a98-b7dd-a65f2dbbe468}</Project>
|
||||
<Name>SDKCameraTool</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
using CaliperTool;
|
||||
using CommonMethods;
|
||||
using EyeHandCalibTool;
|
||||
using FindLineTool;
|
||||
using HalconTool;
|
||||
using HDevEngineTool;
|
||||
using PMAlignTool;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -32,7 +34,6 @@ namespace VisionJobFactory
|
||||
toolInput = new List<ToolIO>();
|
||||
toolOutput = new List<ToolIO>() { outputImage };
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 只获取选择工具的描述信息..
|
||||
/// </summary>
|
||||
@@ -41,6 +42,39 @@ namespace VisionJobFactory
|
||||
toolDescription = "Halcon采集图像接口,可直接连接网口、USB等相机";
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
[VisionToolAttribute(ToolType.SDKBasler)]
|
||||
public class SDKBaslerInterface : IToolInfo
|
||||
{
|
||||
// 必添加输出项
|
||||
ToolIO outputImage = new ToolIO("OutputImage", null, DataType.Image);
|
||||
/// <summary>
|
||||
/// 获取工具的所有信息
|
||||
/// </summary>
|
||||
/// <param name="生成的工具名称"></param>
|
||||
public SDKBaslerInterface(string toolName)
|
||||
{
|
||||
enable = true;
|
||||
toolType = ToolType.HalconTool;
|
||||
this.toolName = toolName;
|
||||
tool = new HalconTool.HalconTool();
|
||||
FormTool = null;
|
||||
FormToolName = "SDKBaslerTool.FormSDKBaslerTool";
|
||||
toolInput = new List<ToolIO>();
|
||||
toolOutput = new List<ToolIO>() { outputImage };
|
||||
}
|
||||
/// <summary>
|
||||
/// 只获取选择工具的描述信息..
|
||||
/// </summary>
|
||||
public SDKBaslerInterface()
|
||||
{
|
||||
toolDescription = "Basler相机采集图像接口,可直接连接网口、USB等Basler相机";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
[Serializable]
|
||||
[VisionToolAttribute(ToolType.FindLine)]
|
||||
public class FindLineToolInterface : IToolInfo
|
||||
@@ -108,6 +142,34 @@ namespace VisionJobFactory
|
||||
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
[VisionToolAttribute(ToolType.HDevEngineTool)]
|
||||
public class HDevEngineToolToolInterface : IToolInfo
|
||||
{
|
||||
ToolIO inputImage = new ToolIO("InputImage", null, DataType.Image);
|
||||
ToolIO inputPos = new ToolIO("InputPos", null, DataType.Pose);
|
||||
ToolIO outObject = new ToolIO("OutObject", null, DataType.Object);
|
||||
public HDevEngineToolToolInterface(string toolName)
|
||||
{
|
||||
enable = true;
|
||||
toolType = ToolType.HDevEngineTool;
|
||||
this.toolName = toolName;
|
||||
tool = new HDevEngineCode();
|
||||
FormToolName = "HDevEngineTool.FormHDevEngineTool";
|
||||
FormTool = null;
|
||||
toolInput = new List<ToolIO>() { inputImage, inputPos };
|
||||
toolOutput = new List<ToolIO>() { outObject };
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 只获取选择工具的描述信息
|
||||
/// </summary>
|
||||
public HDevEngineToolToolInterface()
|
||||
{
|
||||
toolDescription = "使用Halcon引擎直接调用Halcon hdev代码";
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
[VisionToolAttribute(ToolType.PMAlignTool)]
|
||||
public class PMAlignToolToolInterface : IToolInfo
|
||||
@@ -138,4 +200,31 @@ namespace VisionJobFactory
|
||||
toolDescription = "模板匹配工具,可得到根据图像捕获特征的姿态";
|
||||
}
|
||||
}
|
||||
[Serializable]
|
||||
[VisionToolAttribute(ToolType.EyeHandCalib)]
|
||||
public class EyeHandCalibrationInterface : IToolInfo
|
||||
{
|
||||
ToolIO inputPoint = new ToolIO("InputPoint", null, DataType.Point);
|
||||
ToolIO outPose = new ToolIO("GetPose", null, DataType.Pose);
|
||||
ToolIO outPoint = new ToolIO("OutPoint", null, DataType.Point);
|
||||
public EyeHandCalibrationInterface(string toolName)
|
||||
{
|
||||
enable = true;
|
||||
toolType = ToolType.EyeHandCalib;
|
||||
this.toolName = toolName;
|
||||
tool = new EyeHandCalib();
|
||||
FormToolName = "EyeHandCalibTool.FormEyeHandCalib";
|
||||
FormTool = null;
|
||||
toolInput = new List<ToolIO> { inputPoint };
|
||||
toolOutput = new List<ToolIO>() { outPose,outPoint};
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 只获取选择工具的描述信息
|
||||
/// </summary>
|
||||
public EyeHandCalibrationInterface()
|
||||
{
|
||||
toolDescription = "手眼标定工具,根据输入的图像坐标和机械坐标可测得姿态";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
VisualStudioVersion = 14.0.23107.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VisionEdit", "VisionEdit\VisionEdit.csproj", "{2CD1B0C2-D64A-4DA4-8A9E-64D5AB35DE25}"
|
||||
EndProject
|
||||
@@ -42,6 +42,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controls", "UsingControl\Co
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Logger", "ToolLib.Log\Logger\Logger.csproj", "{D4E052B9-E541-4B67-A1F9-273073EF1D4B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HDevEngineTool", "HDevEngineTool\HDevEngineTool.csproj", "{6112406A-A986-4A68-9D22-F0D7F0F81E02}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SDKCameraTool", "SDKCameraTool\SDKCameraTool.csproj", "{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EyeHandCalibTool", "EyeHandCalibTool\EyeHandCalibTool.csproj", "{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@@ -232,6 +238,42 @@ Global
|
||||
{D4E052B9-E541-4B67-A1F9-273073EF1D4B}.Release|x64.Build.0 = Release|Any CPU
|
||||
{D4E052B9-E541-4B67-A1F9-273073EF1D4B}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{D4E052B9-E541-4B67-A1F9-273073EF1D4B}.Release|x86.Build.0 = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|x64.Build.0 = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02}.Release|x86.Build.0 = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|x64.Build.0 = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468}.Release|x86.Build.0 = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|x64.Build.0 = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -250,5 +292,8 @@ Global
|
||||
{C1C08195-2EC8-42E9-93BB-D5331E6C6687} = {4FA39290-D4E6-4FD0-8030-F605960DA331}
|
||||
{6D2088CB-161B-47FB-9C35-0EE8DE61A3DF} = {E949A20C-A15B-4ADF-805F-FC3DABF46623}
|
||||
{D4E052B9-E541-4B67-A1F9-273073EF1D4B} = {777855D2-1EB5-47E8-AC2D-66F6ACB85D0A}
|
||||
{6112406A-A986-4A68-9D22-F0D7F0F81E02} = {4FA39290-D4E6-4FD0-8030-F605960DA331}
|
||||
{1C61F57D-1A36-4A98-B7DD-A65F2DBBE468} = {4FA39290-D4E6-4FD0-8030-F605960DA331}
|
||||
{46EE89BB-5EC9-4EAD-9E32-3E57288A0BF7} = {4FA39290-D4E6-4FD0-8030-F605960DA331}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
||||
Reference in New Issue
Block a user