mirror of
https://github.com/eggplantlwj/VisionEdit.git
synced 2026-03-25 17:26:35 +08:00
传输优化
This commit is contained in:
63
.gitattributes
vendored
Normal file
63
.gitattributes
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
###############################################################################
|
||||
# Set default behavior to automatically normalize line endings.
|
||||
###############################################################################
|
||||
* text=auto
|
||||
|
||||
###############################################################################
|
||||
# Set default behavior for command prompt diff.
|
||||
#
|
||||
# This is need for earlier builds of msysgit that does not have it on by
|
||||
# default for csharp files.
|
||||
# Note: This is only used by command line
|
||||
###############################################################################
|
||||
#*.cs diff=csharp
|
||||
|
||||
###############################################################################
|
||||
# Set the merge driver for project and solution files
|
||||
#
|
||||
# Merging from the command prompt will add diff markers to the files if there
|
||||
# are conflicts (Merging from VS is not affected by the settings below, in VS
|
||||
# the diff markers are never inserted). Diff markers may cause the following
|
||||
# file extensions to fail to load in VS. An alternative would be to treat
|
||||
# these files as binary and thus will always conflict and require user
|
||||
# intervention with every merge. To do so, just uncomment the entries below
|
||||
###############################################################################
|
||||
#*.sln merge=binary
|
||||
#*.csproj merge=binary
|
||||
#*.vbproj merge=binary
|
||||
#*.vcxproj merge=binary
|
||||
#*.vcproj merge=binary
|
||||
#*.dbproj merge=binary
|
||||
#*.fsproj merge=binary
|
||||
#*.lsproj merge=binary
|
||||
#*.wixproj merge=binary
|
||||
#*.modelproj merge=binary
|
||||
#*.sqlproj merge=binary
|
||||
#*.wwaproj merge=binary
|
||||
|
||||
###############################################################################
|
||||
# behavior for image files
|
||||
#
|
||||
# image files are treated as binary by default.
|
||||
###############################################################################
|
||||
#*.jpg binary
|
||||
#*.png binary
|
||||
#*.gif binary
|
||||
|
||||
###############################################################################
|
||||
# diff behavior for common document formats
|
||||
#
|
||||
# Convert binary document formats to text before diffing them. This feature
|
||||
# is only available from the command line. Turn it on by uncommenting the
|
||||
# entries below.
|
||||
###############################################################################
|
||||
#*.doc diff=astextplain
|
||||
#*.DOC diff=astextplain
|
||||
#*.docx diff=astextplain
|
||||
#*.DOCX diff=astextplain
|
||||
#*.dot diff=astextplain
|
||||
#*.DOT diff=astextplain
|
||||
#*.pdf diff=astextplain
|
||||
#*.PDF diff=astextplain
|
||||
#*.rtf diff=astextplain
|
||||
#*.RTF diff=astextplain
|
||||
242
.gitignore
vendored
Normal file
242
.gitignore
vendored
Normal file
@@ -0,0 +1,242 @@
|
||||
## Ignore Visual Studio temporary files, build results, and
|
||||
## files generated by popular Visual Studio add-ons.
|
||||
|
||||
# User-specific files
|
||||
*.suo
|
||||
*.user
|
||||
*.userosscache
|
||||
*.sln.docstates
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
*.userprefs
|
||||
|
||||
# Build results
|
||||
[Dd]ebug/
|
||||
[Dd]ebugPublic/
|
||||
[Rr]elease/
|
||||
[Rr]eleases/
|
||||
[Xx]64/
|
||||
[Xx]86/
|
||||
[Bb]uild/
|
||||
bld/
|
||||
[Bb]in/
|
||||
[Oo]bj/
|
||||
|
||||
# Visual Studio 2015 cache/options directory
|
||||
.vs/
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
#wwwroot/
|
||||
|
||||
# MSTest test Results
|
||||
[Tt]est[Rr]esult*/
|
||||
[Bb]uild[Ll]og.*
|
||||
|
||||
# NUNIT
|
||||
*.VisualState.xml
|
||||
TestResult.xml
|
||||
|
||||
# Build Results of an ATL Project
|
||||
[Dd]ebugPS/
|
||||
[Rr]eleasePS/
|
||||
dlldata.c
|
||||
|
||||
# DNX
|
||||
project.lock.json
|
||||
artifacts/
|
||||
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_i.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
*.pch
|
||||
*.pdb
|
||||
*.pgc
|
||||
*.pgd
|
||||
*.rsp
|
||||
*.sbr
|
||||
*.tlb
|
||||
*.tli
|
||||
*.tlh
|
||||
*.tmp
|
||||
*.tmp_proj
|
||||
*.log
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
.builds
|
||||
*.pidb
|
||||
*.svclog
|
||||
*.scc
|
||||
|
||||
# Chutzpah Test files
|
||||
_Chutzpah*
|
||||
|
||||
# Visual C++ cache files
|
||||
ipch/
|
||||
*.aps
|
||||
*.ncb
|
||||
*.opendb
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.cachefile
|
||||
*.VC.db
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
$tf/
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
*.gpState
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
_ReSharper*/
|
||||
*.[Rr]e[Ss]harper
|
||||
*.DotSettings.user
|
||||
|
||||
# JustCode is a .NET coding add-in
|
||||
.JustCode
|
||||
|
||||
# TeamCity is a build add-in
|
||||
_TeamCity*
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
*.dotCover
|
||||
|
||||
# NCrunch
|
||||
_NCrunch_*
|
||||
.*crunch*.local.xml
|
||||
nCrunchTemp_*
|
||||
|
||||
# MightyMoose
|
||||
*.mm.*
|
||||
AutoTest.Net/
|
||||
|
||||
# Web workbench (sass)
|
||||
.sass-cache/
|
||||
|
||||
# Installshield output folder
|
||||
[Ee]xpress/
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
DocProject/buildhelp/
|
||||
DocProject/Help/*.HxT
|
||||
DocProject/Help/*.HxC
|
||||
DocProject/Help/*.hhc
|
||||
DocProject/Help/*.hhk
|
||||
DocProject/Help/*.hhp
|
||||
DocProject/Help/Html2
|
||||
DocProject/Help/html
|
||||
|
||||
# Click-Once directory
|
||||
publish/
|
||||
|
||||
# Publish Web Output
|
||||
*.[Pp]ublish.xml
|
||||
*.azurePubxml
|
||||
|
||||
# TODO: Un-comment the next line if you do not want to checkin
|
||||
# your web deploy settings because they may include unencrypted
|
||||
# passwords
|
||||
#*.pubxml
|
||||
*.publishproj
|
||||
|
||||
# NuGet Packages
|
||||
*.nupkg
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
**/packages/*
|
||||
# except build/, which is used as an MSBuild target.
|
||||
!**/packages/build/
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
#!**/packages/repositories.config
|
||||
# NuGet v3's project.json files produces more ignoreable files
|
||||
*.nuget.props
|
||||
*.nuget.targets
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
csx/
|
||||
*.build.csdef
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
ecf/
|
||||
rcf/
|
||||
|
||||
# Windows Store app package directory
|
||||
AppPackages/
|
||||
BundleArtifacts/
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!*.[Cc]ache/
|
||||
|
||||
# Others
|
||||
ClientBin/
|
||||
[Ss]tyle[Cc]op.*
|
||||
~$*
|
||||
*~
|
||||
*.dbmdl
|
||||
*.dbproj.schemaview
|
||||
*.pfx
|
||||
*.publishsettings
|
||||
node_modules/
|
||||
orleans.codegen.cs
|
||||
|
||||
# RIA/Silverlight projects
|
||||
Generated_Code/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
|
||||
# SQL Server files
|
||||
*.mdf
|
||||
*.ldf
|
||||
|
||||
# Business Intelligence projects
|
||||
*.rdl.data
|
||||
*.bim.layout
|
||||
*.bim_*.settings
|
||||
|
||||
# Microsoft Fakes
|
||||
FakesAssemblies/
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
*.GhostDoc.xml
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
.ntvs_analysis.dat
|
||||
|
||||
# Visual Studio 6 build log
|
||||
*.plg
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
**/*.HTMLClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/ModelManifest.xml
|
||||
**/*.Server/GeneratedArtifacts
|
||||
**/*.Server/ModelManifest.xml
|
||||
_Pvt_Extensions
|
||||
|
||||
# LightSwitch generated files
|
||||
GeneratedArtifacts/
|
||||
ModelManifest.xml
|
||||
|
||||
# Paket dependency manager
|
||||
.paket/paket.exe
|
||||
|
||||
# FAKE - F# Make
|
||||
.fake/
|
||||
Binary file not shown.
@@ -1,13 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using HalconWindow.HalconWindow;
|
||||
using ToolBase;
|
||||
using static DataStruct.DataStruct;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
|
||||
|
||||
namespace CaliperTool
|
||||
{
|
||||
@@ -16,7 +13,7 @@ namespace CaliperTool
|
||||
{
|
||||
public bool toolEnable = true;
|
||||
/// <summary>
|
||||
/// 输入姿态
|
||||
/// 输入姿态..
|
||||
/// </summary>
|
||||
public PosXYU inputPose = new PosXYU();
|
||||
/// <summary>
|
||||
@@ -119,7 +116,32 @@ namespace CaliperTool
|
||||
public ToolRunStatu toolRunStatu { get; set; } = ToolRunStatu.Not_Run;
|
||||
|
||||
public SoftwareRunState softwareRunState { get; set; } = SoftwareRunState.Debug;
|
||||
|
||||
|
||||
public string runMessage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string runTime
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public void DispImage()
|
||||
{
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CaliperTool.cs" />
|
||||
<Compile Include="CaliperToolRun.cs" />
|
||||
<Compile Include="FormCaliper.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
@@ -63,14 +64,30 @@
|
||||
<Project>{DF3D4D4C-02DF-4F92-9FD4-0A861F64B0EF}</Project>
|
||||
<Name>DataStruct</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\HalconWindowTest\HalconWindow.csproj">
|
||||
<Project>{4ADC75AE-59C7-4D36-B675-A6CE51B6F5BA}</Project>
|
||||
<Name>HalconWindow</Name>
|
||||
<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\LogForm\LogForm.csproj">
|
||||
<Project>{6b38d68f-e77b-4761-bde5-a261ea8925dd}</Project>
|
||||
<Name>LogForm</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="FormCaliper.resx">
|
||||
|
||||
85
CaliperTool/CaliperToolRun.cs
Normal file
85
CaliperTool/CaliperToolRun.cs
Normal file
@@ -0,0 +1,85 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: CaliperToolRun
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/25 16:25:51
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using CommonMethods;
|
||||
using CommonMethods.Interface;
|
||||
using FormLib;
|
||||
using HalconDotNet;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using ToolLib.VisionJob;
|
||||
|
||||
namespace CaliperTool
|
||||
{
|
||||
public class CaliperRun : IToolRun
|
||||
{
|
||||
public void ToolRun(string jobName, int toolIndex, int inputItemNum, TreeNode selectNode, List<IToolInfo> L_toolList)
|
||||
{
|
||||
Caliper myCaliper = (Caliper)L_toolList[toolIndex].tool;
|
||||
VisionJob myJob = VisionJobParams.pVisionProject.Project[jobName];
|
||||
for (int j = 0; j < inputItemNum; j++)
|
||||
{
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "InputImage" && L_toolList[toolIndex].GetInput(L_toolList[toolIndex].toolInput[j].IOName).value == null)
|
||||
{
|
||||
selectNode.ForeColor = Color.Red;
|
||||
Logger.LoggerClass.WriteLog($"{L_toolList[toolIndex].toolName} 无输入图像");
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (L_toolList[toolIndex].GetInput(L_toolList[toolIndex].toolInput[j].IOName).value != null)
|
||||
{
|
||||
string sourceFrom = L_toolList[toolIndex].GetInput(L_toolList[toolIndex].toolInput[j].IOName).value.ToString();
|
||||
string sourceToolName = Regex.Split(sourceFrom, " . ")[0];
|
||||
sourceToolName = sourceToolName.Substring(3, Regex.Split(sourceFrom, " . ")[0].Length - 3);
|
||||
string toolItem = Regex.Split(sourceFrom, " . ")[1];
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "InputImage")
|
||||
{
|
||||
myCaliper.inputImage = myJob.GetToolInfoByToolName(sourceToolName).GetOutput(toolItem).value as HObject;
|
||||
}
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "inputCenterRow")
|
||||
{
|
||||
myCaliper.expectRecStartRow = myJob.GetToolInfoByToolName(sourceToolName).GetOutput(toolItem).value as HTuple;
|
||||
}
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "inputCenterCol")
|
||||
{
|
||||
myCaliper.expectRecStartColumn = myJob.GetToolInfoByToolName(sourceToolName).GetOutput(toolItem).value as HTuple;
|
||||
}
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "inputPhi")
|
||||
{
|
||||
myCaliper.expectAngle = myJob.GetToolInfoByToolName(sourceToolName).GetOutput(toolItem).value as HTuple;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
myCaliper.Run(SoftwareRunState.Release);
|
||||
if (myCaliper.toolRunStatu == ToolRunStatu.Succeed)
|
||||
{
|
||||
myCaliper.DispMainWindow(FormImageWindow.Instance.myHWindow);
|
||||
myJob.FormLogDisp(L_toolList[toolIndex].toolName + " 运行成功", Color.Green, selectNode);
|
||||
}
|
||||
else
|
||||
{
|
||||
myJob.FormLogDisp(L_toolList[toolIndex].toolName + " 运行失败", Color.Red, selectNode);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -8,7 +8,7 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using CommonMethods;
|
||||
using HalconWindow.HalconWindow;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
|
||||
namespace CaliperTool
|
||||
{
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,34 +1,34 @@
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CaliperTool.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CaliperTool.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CommonMethods.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\ToolBase.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CommonMethods.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\ToolBase.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.FormCaliper.resources
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CaliperTool.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CaliperTool.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\ToolBase.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\ToolBase.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.FormCaliper.resources
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CaliperTool.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CaliperTool.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CommonMethods.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\ToolBase.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\CommonMethods.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\ToolBase.pdb
|
||||
F:\VSCode\VisionEditTest\CaliperTool\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.FormCaliper.resources
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.dll
|
||||
F:\VSCode\VisionEditTest\CaliperTool\obj\Debug\CaliperTool.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CaliperTool.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CaliperTool.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\ToolBase.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\ToolBase.pdb
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.FormCaliper.resources
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.dll
|
||||
G:\VisionEdit\VisionEdit\CaliperTool\obj\Debug\CaliperTool.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -33,6 +33,9 @@
|
||||
<Reference Include="halcondotnet">
|
||||
<HintPath>C:\Program Files\MVTec\HALCON-19.05-Progress\bin\dotnet20\halcondotnet.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
<HintPath>G:\2D程序最新版本\G3\UMP_BandOnly_2D_V2.5.4\UMP_BandOnly_S3\bin\x64\Debug\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Drawing" />
|
||||
@@ -46,10 +49,14 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CommonMethods.cs" />
|
||||
<Compile Include="FileOperate.cs" />
|
||||
<Compile Include="Interface\CommonStruct.cs" />
|
||||
<Compile Include="Interface\IToolInfo.cs" />
|
||||
<Compile Include="Interface\IVisionJobInterface.cs" />
|
||||
<Compile Include="Interface\ToolRun.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Serialize.cs" />
|
||||
<Compile Include="VisionToolAttribute.cs" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
144
CommonMethods/FileOperate.cs
Normal file
144
CommonMethods/FileOperate.cs
Normal file
@@ -0,0 +1,144 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: FileOperate
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/26 16:59:16
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CommonMethods
|
||||
{
|
||||
public class FileTimeInfo
|
||||
{
|
||||
public string FileName; //文件名
|
||||
public DateTime FileCreateTime; //创建时间
|
||||
}
|
||||
|
||||
public class FileOperate
|
||||
{
|
||||
public static void DelFile(string filePath)
|
||||
{
|
||||
if (File.Exists(filePath))
|
||||
{
|
||||
File.Delete(filePath);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 文件夹及其子目录的删除
|
||||
/// </summary>
|
||||
/// <param name="directoryPath"></param>
|
||||
public static void DeleteFolder(string directoryPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
foreach (string d in Directory.GetFileSystemEntries(directoryPath))
|
||||
{
|
||||
if (File.Exists(d))
|
||||
{
|
||||
FileInfo fi = new FileInfo(d);
|
||||
if (fi.Attributes.ToString().IndexOf("ReadOnly") != -1)
|
||||
fi.Attributes = FileAttributes.Normal;
|
||||
File.Delete(d);
|
||||
}
|
||||
else
|
||||
DeleteFolder(d); // 递归删除
|
||||
}
|
||||
Directory.Delete(directoryPath);
|
||||
}
|
||||
catch (Exception)
|
||||
{ }
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static FileTimeInfo GetLatestFileTimeInfo(string dir)
|
||||
{
|
||||
List<FileTimeInfo> list = new List<FileTimeInfo>();
|
||||
DirectoryInfo d = new DirectoryInfo(dir);
|
||||
foreach (DirectoryInfo fi in d.GetDirectories())
|
||||
{
|
||||
list.Add(new FileTimeInfo()
|
||||
{
|
||||
FileName = fi.FullName,
|
||||
FileCreateTime = fi.CreationTime
|
||||
});
|
||||
}
|
||||
var qry = from x in list
|
||||
orderby x.FileCreateTime
|
||||
select x;
|
||||
return qry.LastOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取某目录下的所有文件(包括子目录下文件)的数量
|
||||
/// </summary>
|
||||
/// <param name="srcPath"></param>
|
||||
/// <returns></returns>
|
||||
public static int GetFileNum(string srcPath)
|
||||
{
|
||||
int fileNum = 0;
|
||||
try
|
||||
{
|
||||
string[] fileList = System.IO.Directory.GetFileSystemEntries(srcPath);
|
||||
foreach (string file in fileList)
|
||||
{
|
||||
fileNum++;
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
}
|
||||
return fileNum;
|
||||
}
|
||||
public static void WriteFile(string filePath, string text)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (StreamWriter sw = new StreamWriter(filePath, false, Encoding.UTF8))
|
||||
{
|
||||
byte[] mybyte = Encoding.UTF8.GetBytes(text);
|
||||
text = Encoding.UTF8.GetString(mybyte);
|
||||
sw.Write(text);
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
public static string ReadFile(string filePath)
|
||||
{
|
||||
string readResult = string.Empty;
|
||||
try
|
||||
{
|
||||
if (File.Exists(filePath))
|
||||
{
|
||||
using (StreamReader sr = new StreamReader(filePath, Encoding.UTF8))
|
||||
{
|
||||
readResult = sr.ReadToEnd();
|
||||
byte[] mybyte = Encoding.UTF8.GetBytes(readResult);
|
||||
readResult = Encoding.UTF8.GetString(mybyte);
|
||||
}
|
||||
}
|
||||
return readResult;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw ex;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
@@ -7,6 +7,7 @@ using System.Windows.Forms;
|
||||
|
||||
namespace CommonMethods
|
||||
{
|
||||
[Serializable]
|
||||
public class IToolInfo
|
||||
{
|
||||
/// <summary>
|
||||
@@ -26,9 +27,9 @@ namespace CommonMethods
|
||||
/// </summary>
|
||||
public object tool { get; set; }
|
||||
/// <summary>
|
||||
/// 工具窗体
|
||||
/// 工具窗体,由于无法对Form进行序列化,所以作为静态变量
|
||||
/// </summary>
|
||||
public Form FormTool { get; set; }
|
||||
public static Form FormTool { get; set; }
|
||||
/// <summary>
|
||||
/// 工具窗体名
|
||||
/// </summary>
|
||||
@@ -116,6 +117,16 @@ namespace CommonMethods
|
||||
toolOutput.RemoveAt(i);
|
||||
}
|
||||
}
|
||||
|
||||
public Form GetFormTool()
|
||||
{
|
||||
return FormTool;
|
||||
}
|
||||
|
||||
public void SetFormTool(Form myForm)
|
||||
{
|
||||
FormTool = myForm;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
27
CommonMethods/Interface/IToolRun.cs
Normal file
27
CommonMethods/Interface/IToolRun.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: IToolRun
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/25 14:49:20
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace CommonMethods.Interface
|
||||
{
|
||||
public interface IToolRun
|
||||
{
|
||||
void ToolRun(int toolIndex, int inputItemNum, TreeNode selectNode, FormLog myFormLog, FormImageWindow myFormWindow, List<IToolInfo> L_toolList);
|
||||
}
|
||||
}
|
||||
@@ -26,6 +26,10 @@ namespace CommonMethods
|
||||
/// </summary>
|
||||
public Dictionary<TreeNode, TreeNode> D_itemAndSource { get; set; } = new Dictionary<TreeNode, TreeNode>();
|
||||
/// <summary>
|
||||
/// JOB上的树结构,取消该参数,TreeView无法二进制序列化
|
||||
/// </summary>
|
||||
//public TreeView tvwOnWorkJob { get; set; } = new TreeView();
|
||||
/// <summary>
|
||||
/// 工具输入项个数
|
||||
/// </summary>
|
||||
public int inputItemNum = 0;
|
||||
@@ -34,9 +38,9 @@ namespace CommonMethods
|
||||
/// </summary>
|
||||
public int outputItemNum = 0;
|
||||
/// <summary>
|
||||
/// 流程运行结果图像
|
||||
/// 流程运行结果图像,取消,无法序列化
|
||||
/// </summary>
|
||||
public HObject jobResultImage { get; set; } = new HObject();
|
||||
public static HObject jobResultImage { get; set; } = new HObject();
|
||||
/// <summary>
|
||||
/// 流程树中节点的最大长度
|
||||
/// </summary>
|
||||
@@ -83,11 +87,11 @@ namespace CommonMethods
|
||||
/// <summary>
|
||||
/// 流程编辑时的右击菜单
|
||||
/// </summary>
|
||||
public ContextMenuStrip rightClickMenu { get; set; } = new ContextMenuStrip();
|
||||
public static ContextMenuStrip rightClickMenu { get; set; } = new ContextMenuStrip();
|
||||
/// <summary>
|
||||
/// 在空白除右击菜单
|
||||
/// </summary>
|
||||
public ContextMenuStrip rightClickMenuAtBlank { get; set; }
|
||||
public static ContextMenuStrip rightClickMenuAtBlank { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
27
CommonMethods/Interface/ToolRun.cs
Normal file
27
CommonMethods/Interface/ToolRun.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: ToolRun
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/25 15:27:56
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace CommonMethods.Interface
|
||||
{
|
||||
public interface IToolRun
|
||||
{
|
||||
void ToolRun(string jobName, int toolIndex, int inputItemNum, TreeNode selectNode, List<IToolInfo> L_toolList);
|
||||
}
|
||||
}
|
||||
Binary file not shown.
168
CommonMethods/Serialize.cs
Normal file
168
CommonMethods/Serialize.cs
Normal file
@@ -0,0 +1,168 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: Serial
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/25 17:24:56
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace CommonMethods
|
||||
{
|
||||
public class Serialize
|
||||
{
|
||||
public static void XmlSerialize<T>(string objname, T obj)
|
||||
{
|
||||
|
||||
try
|
||||
{
|
||||
string filename = objname + ".xml";
|
||||
if (System.IO.File.Exists(filename))
|
||||
System.IO.File.Delete(filename);
|
||||
using (FileStream fileStream = new FileStream(filename, FileMode.Create))
|
||||
{
|
||||
// 序列化为xml
|
||||
XmlSerializer formatter = new XmlSerializer(typeof(T));
|
||||
formatter.Serialize(fileStream, obj);
|
||||
fileStream.Close();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
System.Windows.Forms.MessageBox.Show(ex.Message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static T XmlDeserailize<T>(string objname)
|
||||
{
|
||||
// System.Runtime.Serialization.IFormatter formatter = new XmlSerializer(typeof(Car));
|
||||
string filename = objname + ".xml";
|
||||
T obj;
|
||||
if (!System.IO.File.Exists(filename))
|
||||
throw new Exception("对反序列化之前,请先序列化");
|
||||
//Xml格式反序列化
|
||||
using (Stream stream = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
|
||||
{
|
||||
XmlSerializer formatter = new XmlSerializer(typeof(T));
|
||||
obj = (T)formatter.Deserialize(stream);
|
||||
stream.Close();
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
public static void BinarySerialize<T>(string filename, T obj)
|
||||
{
|
||||
try
|
||||
{
|
||||
//string filename = objname + ".ump";
|
||||
if (System.IO.File.Exists(filename))
|
||||
System.IO.File.Delete(filename);
|
||||
using (FileStream fileStream = new FileStream(filename, FileMode.Create))
|
||||
{
|
||||
// 用二进制格式序列化
|
||||
BinaryFormatter binaryFormatter = new BinaryFormatter();
|
||||
binaryFormatter.Serialize(fileStream, obj);
|
||||
fileStream.Close();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
System.Windows.Forms.MessageBox.Show(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static T BinaryDeserialize<T>(string filename)
|
||||
{
|
||||
System.Runtime.Serialization.IFormatter formatter = new BinaryFormatter();
|
||||
//二进制格式反序列化
|
||||
T obj;
|
||||
//string filename = objname + ".ump";
|
||||
if (!System.IO.File.Exists(filename))
|
||||
throw new Exception("在反序列化之前,请先序列化");
|
||||
using (Stream stream = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
|
||||
{
|
||||
obj = (T)formatter.Deserialize(stream);
|
||||
stream.Close();
|
||||
}
|
||||
return obj;
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 把对象序列化并返回相应的字节
|
||||
/// </summary>
|
||||
/// <param name="pObj">需要序列化的对象</param>
|
||||
/// <returns>byte[]</returns>
|
||||
public static byte[] SerializeObject(object pObj)
|
||||
{
|
||||
if (pObj == null)
|
||||
return null;
|
||||
System.IO.MemoryStream _memory = new System.IO.MemoryStream();
|
||||
BinaryFormatter formatter = new BinaryFormatter();
|
||||
formatter.Serialize(_memory, pObj);
|
||||
_memory.Position = 0;
|
||||
byte[] read = new byte[_memory.Length];
|
||||
_memory.Read(read, 0, read.Length);
|
||||
_memory.Close();
|
||||
return read;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 把字节反序列化成相应的对象
|
||||
/// </summary>
|
||||
/// <param name="pBytes">字节流</param>
|
||||
/// <returns>object</returns>
|
||||
public static object DeserializeObject(byte[] pBytes)
|
||||
{
|
||||
object _newOjb = null;
|
||||
if (pBytes == null)
|
||||
return _newOjb;
|
||||
System.IO.MemoryStream _memory = new System.IO.MemoryStream(pBytes);
|
||||
_memory.Position = 0;
|
||||
BinaryFormatter formatter = new BinaryFormatter();
|
||||
_newOjb = formatter.Deserialize(_memory);
|
||||
_memory.Close();
|
||||
return _newOjb;
|
||||
}
|
||||
public static void JsonSerialize<T>(T obj, string filePath)
|
||||
{
|
||||
string resultJson = JsonConvert.SerializeObject(obj, Formatting.Indented);
|
||||
FileInfo fi = new FileInfo(filePath);
|
||||
if (!fi.Directory.Exists)
|
||||
{
|
||||
Directory.CreateDirectory(fi.Directory.FullName);
|
||||
}
|
||||
FileOperate.WriteFile(filePath, resultJson);
|
||||
}
|
||||
|
||||
public static T JsonDeserializeObject<T>(string jsonString)
|
||||
{
|
||||
T obj;
|
||||
try
|
||||
{
|
||||
obj = JsonConvert.DeserializeObject<T>(FileOperate.ReadFile(jsonString));
|
||||
return obj;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
throw;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
31
CommonMethods/VisionToolAttribute.cs
Normal file
31
CommonMethods/VisionToolAttribute.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: VisionToolAttribute
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/26 13:46:51
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CommonMethods
|
||||
{
|
||||
//自定义Attribute
|
||||
public sealed class VisionToolAttribute : Attribute
|
||||
{
|
||||
public ToolType ToolType { get; private set; }
|
||||
public VisionToolAttribute(ToolType toolType)
|
||||
{
|
||||
ToolType = toolType;
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\obj\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\obj\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\obj\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\CommonMethods\obj\Debug\CommonMethods.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
104
CreateTool/CreateTool.csproj
Normal file
104
CreateTool/CreateTool.csproj
Normal file
@@ -0,0 +1,104 @@
|
||||
<?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>{184FB08B-0D43-4747-8637-978D4F25F94F}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>CreateTool</RootNamespace>
|
||||
<AssemblyName>CreateTool</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="DevComponents.DotNetBar2, Version=14.0.0.15, Culture=neutral, PublicKeyToken=c39c3242a43eee2b, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>C:\Program Files (x86)\DotNetBar for Windows Forms\DevComponents.DotNetBar2.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" />
|
||||
<Reference Include="WeifenLuo.WinFormsUI.Docking">
|
||||
<HintPath>C:\Users\18819\OneDrive\桌面\WeifenLuo.WinFormsUI.Docking.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FormToolBox.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="FormToolBox.Designer.cs">
|
||||
<DependentUpon>FormToolBox.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="FormToolBox.resx">
|
||||
<DependentUpon>FormToolBox.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</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="..\ToolBase\ToolBase.csproj">
|
||||
<Project>{7cd50b44-bf56-4e8e-8fa1-05f6968c1835}</Project>
|
||||
<Name>ToolBase</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\ToolLib.Log\LogForm\LogForm.csproj">
|
||||
<Project>{6b38d68f-e77b-4761-bde5-a261ea8925dd}</Project>
|
||||
<Name>LogForm</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>
|
||||
<ProjectReference Include="..\VisionJobFactory\VisionJobFactory.csproj">
|
||||
<Project>{4d539eb2-e847-4d42-b6fa-03b2546dafd7}</Project>
|
||||
<Name>VisionJobFactory</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>
|
||||
234
CreateTool/FormToolBox.Designer.cs
generated
Normal file
234
CreateTool/FormToolBox.Designer.cs
generated
Normal file
@@ -0,0 +1,234 @@
|
||||
namespace CreateTool
|
||||
{
|
||||
partial class FormToolBox
|
||||
{
|
||||
/// <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.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 treeNode5 = new System.Windows.Forms.TreeNode("获取图像", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode2,
|
||||
treeNode3,
|
||||
treeNode4});
|
||||
System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("滤波");
|
||||
System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("平滑");
|
||||
System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("去噪");
|
||||
System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("图像预处理", new System.Windows.Forms.TreeNode[] {
|
||||
treeNode6,
|
||||
treeNode7,
|
||||
treeNode8});
|
||||
System.Windows.Forms.TreeNode treeNode10 = new System.Windows.Forms.TreeNode("形状匹配");
|
||||
System.Windows.Forms.TreeNode treeNode11 = new System.Windows.Forms.TreeNode("可变形匹配");
|
||||
System.Windows.Forms.TreeNode treeNode12 = new System.Windows.Forms.TreeNode("灰度匹配");
|
||||
System.Windows.Forms.TreeNode treeNode13 = new System.Windows.Forms.TreeNode("匹配", new System.Windows.Forms.TreeNode[] {
|
||||
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.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);
|
||||
this.richTextBoxEx1 = new DevComponents.DotNetBar.Controls.RichTextBoxEx();
|
||||
this.imageListTool = new System.Windows.Forms.ImageList(this.components);
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tvw_ToolBox
|
||||
//
|
||||
this.tvw_ToolBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.tvw_ToolBox.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.tvw_ToolBox.ImageIndex = 4;
|
||||
this.tvw_ToolBox.ImageList = this.imageList1;
|
||||
this.tvw_ToolBox.Indent = 32;
|
||||
this.tvw_ToolBox.Location = new System.Drawing.Point(0, 0);
|
||||
this.tvw_ToolBox.Name = "tvw_ToolBox";
|
||||
treeNode1.ImageIndex = 1;
|
||||
treeNode1.Name = "NodeJob";
|
||||
treeNode1.SelectedImageIndex = 1;
|
||||
treeNode1.Text = "流程";
|
||||
treeNode2.ImageIndex = 3;
|
||||
treeNode2.Name = "节点1";
|
||||
treeNode2.SelectedImageIndex = 3;
|
||||
treeNode2.Tag = "HalconTool";
|
||||
treeNode2.Text = "Halcon窗口";
|
||||
treeNode3.ImageKey = "图像.png";
|
||||
treeNode3.Name = "节点2";
|
||||
treeNode3.SelectedImageIndex = 3;
|
||||
treeNode3.Text = "Basler";
|
||||
treeNode4.ImageKey = "图像.png";
|
||||
treeNode4.Name = "节点3";
|
||||
treeNode4.SelectedImageIndex = 3;
|
||||
treeNode4.Text = "HIKVision";
|
||||
treeNode5.ImageIndex = 4;
|
||||
treeNode5.Name = "节点0";
|
||||
treeNode5.Text = "获取图像";
|
||||
treeNode6.Name = "节点5";
|
||||
treeNode6.Text = "滤波";
|
||||
treeNode7.Name = "节点6";
|
||||
treeNode7.Text = "平滑";
|
||||
treeNode8.Name = "节点7";
|
||||
treeNode8.Text = "去噪";
|
||||
treeNode9.Name = "节点4";
|
||||
treeNode9.Text = "图像预处理";
|
||||
treeNode10.Name = "节点9";
|
||||
treeNode10.Text = "形状匹配";
|
||||
treeNode11.Name = "节点10";
|
||||
treeNode11.Text = "可变形匹配";
|
||||
treeNode12.Name = "节点11";
|
||||
treeNode12.Text = "灰度匹配";
|
||||
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.Name = "节点0";
|
||||
treeNode17.Text = "几何";
|
||||
this.tvw_ToolBox.Nodes.AddRange(new System.Windows.Forms.TreeNode[] {
|
||||
treeNode1,
|
||||
treeNode5,
|
||||
treeNode9,
|
||||
treeNode13,
|
||||
treeNode17});
|
||||
this.tvw_ToolBox.SelectedImageIndex = 4;
|
||||
this.tvw_ToolBox.Size = new System.Drawing.Size(417, 543);
|
||||
this.tvw_ToolBox.TabIndex = 1;
|
||||
this.tvw_ToolBox.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.tvw_ToolBox_AfterSelect);
|
||||
this.tvw_ToolBox.Click += new System.EventHandler(this.tvw_ToolBox_Click);
|
||||
this.tvw_ToolBox.DoubleClick += new System.EventHandler(this.tvw_ToolBox_DoubleClick);
|
||||
//
|
||||
// imageList1
|
||||
//
|
||||
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
|
||||
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
|
||||
this.imageList1.Images.SetKeyName(0, "镜头.png");
|
||||
this.imageList1.Images.SetKeyName(1, "流程.png");
|
||||
this.imageList1.Images.SetKeyName(2, "流程图.png");
|
||||
this.imageList1.Images.SetKeyName(3, "图像.png");
|
||||
this.imageList1.Images.SetKeyName(4, "文件夹.png");
|
||||
this.imageList1.Images.SetKeyName(5, "Line.png");
|
||||
this.imageList1.Images.SetKeyName(6, "Circle.png");
|
||||
this.imageList1.Images.SetKeyName(7, "卡尺.png");
|
||||
//
|
||||
// richTextBoxEx1
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
this.richTextBoxEx1.BackgroundStyle.Class = "RichTextBoxBorder";
|
||||
this.richTextBoxEx1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||
this.richTextBoxEx1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.richTextBoxEx1.Location = new System.Drawing.Point(0, 0);
|
||||
this.richTextBoxEx1.Name = "richTextBoxEx1";
|
||||
this.richTextBoxEx1.Rtf = "{\\rtf1\\ansi\\deff0{\\fonttbl{\\f0\\fnil\\fcharset134 \\\'cb\\\'ce\\\'cc\\\'e5;}}\r\n\\viewkind4\\u" +
|
||||
"c1\\pard\\lang2052\\f0\\fs18 richTextBoxEx1\\par\r\n}\r\n";
|
||||
this.richTextBoxEx1.Size = new System.Drawing.Size(417, 95);
|
||||
this.richTextBoxEx1.TabIndex = 2;
|
||||
this.richTextBoxEx1.Text = "richTextBoxEx1";
|
||||
//
|
||||
// imageListTool
|
||||
//
|
||||
this.imageListTool.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListTool.ImageStream")));
|
||||
this.imageListTool.TransparentColor = System.Drawing.Color.Transparent;
|
||||
this.imageListTool.Images.SetKeyName(0, "流程.png");
|
||||
this.imageListTool.Images.SetKeyName(1, "流程图.png");
|
||||
this.imageListTool.Images.SetKeyName(2, "图像.png");
|
||||
this.imageListTool.Images.SetKeyName(3, "图像.png");
|
||||
this.imageListTool.Images.SetKeyName(4, "图像.png");
|
||||
this.imageListTool.Images.SetKeyName(5, "图像.png");
|
||||
this.imageListTool.Images.SetKeyName(6, "line.png");
|
||||
this.imageListTool.Images.SetKeyName(7, "Circle.png");
|
||||
this.imageListTool.Images.SetKeyName(8, "卡尺.png");
|
||||
//
|
||||
// splitContainer1
|
||||
//
|
||||
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer1.Location = new System.Drawing.Point(0, 0);
|
||||
this.splitContainer1.Name = "splitContainer1";
|
||||
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
|
||||
//
|
||||
// splitContainer1.Panel1
|
||||
//
|
||||
this.splitContainer1.Panel1.Controls.Add(this.tvw_ToolBox);
|
||||
//
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.richTextBoxEx1);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(417, 642);
|
||||
this.splitContainer1.SplitterDistance = 543;
|
||||
this.splitContainer1.TabIndex = 7;
|
||||
//
|
||||
// FormToolBox
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(417, 642);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormToolBox";
|
||||
this.Text = "工具箱";
|
||||
this.splitContainer1.Panel1.ResumeLayout(false);
|
||||
this.splitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TreeView tvw_ToolBox;
|
||||
private DevComponents.DotNetBar.Controls.RichTextBoxEx richTextBoxEx1;
|
||||
public System.Windows.Forms.ImageList imageList1;
|
||||
public System.Windows.Forms.ImageList imageListTool;
|
||||
private System.Windows.Forms.SplitContainer splitContainer1;
|
||||
}
|
||||
}
|
||||
156
CreateTool/FormToolBox.cs
Normal file
156
CreateTool/FormToolBox.cs
Normal file
@@ -0,0 +1,156 @@
|
||||
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 CommonMethods;
|
||||
using VisionJobFactory;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using ToolLib.VisionJob;
|
||||
|
||||
namespace CreateTool
|
||||
{
|
||||
public partial class FormToolBox : DockContent
|
||||
{
|
||||
FormJobManage myFormJobManage = null;
|
||||
|
||||
public FormToolBox(FormJobManage inputFormJob)
|
||||
{
|
||||
InitializeComponent();
|
||||
myFormJobManage = inputFormJob;
|
||||
VisionToolFactory.InitVisionToolTypeDic();
|
||||
}
|
||||
|
||||
private void tvw_ToolBox_AfterSelect(object sender, TreeViewEventArgs e)
|
||||
{
|
||||
if(e.Node.Level == 0)
|
||||
{
|
||||
this.richTextBoxEx1.Text = e.Node.Text;
|
||||
}
|
||||
else if(e.Node.Level == 1)
|
||||
{
|
||||
object selectTag = tvw_ToolBox.SelectedNode.Tag;
|
||||
if (selectTag != null)
|
||||
{
|
||||
IToolInfo insertTool = VisionToolFactory.CreateToolVision((ToolType)Enum.Parse(typeof(ToolType), selectTag.ToString()));
|
||||
this.richTextBoxEx1.Text = insertTool.toolDescription;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.richTextBoxEx1.Text = "此工具尚未开发";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void tvw_ToolBox_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (tvw_ToolBox.SelectedNode.SelectedImageIndex == 0) //如果双击的是文件夹节点,返回
|
||||
return;
|
||||
if (myFormJobManage.tabControl1.TabPages.Count > 0) //如果已存在流程
|
||||
{
|
||||
object selectTag = tvw_ToolBox.SelectedNode.Tag;
|
||||
Add_Tool((ToolType)Enum.Parse(typeof(ToolType), selectTag.ToString()));
|
||||
}
|
||||
else
|
||||
{
|
||||
//如果当前不存在可用流程,先创建流程,在添加工具
|
||||
OperateJob.CreateNewJob();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LoggerClass.WriteLog("添加流程失败!", ex);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 向流程中添加工具,需要根据选择的工具名对工具类型等进行判断
|
||||
/// </summary>
|
||||
/// <param name="tool">工具类型</param>
|
||||
/// <param name="isInsert">插入位置,当为-1时,表示在末尾插入,当不为-1时,表示被插入的工具索引</param>
|
||||
public void Add_Tool(ToolType tool, int insertPos = -1, int imageKey = 0)
|
||||
{
|
||||
string toolName = GetNewToolName(tool.ToString());
|
||||
IToolInfo insertTool = VisionToolFactory.CreateToolVision(tool, toolName);
|
||||
TreeNode insertNode = new TreeNode();
|
||||
insertNode = VisionJobParams.myJobTreeView.Nodes.Add("", insertTool.toolName, (int)tool, (int)tool); // 该工具对应的节点
|
||||
|
||||
// 判断节点是否添加默认输入输出图
|
||||
// 输入
|
||||
for (int i = 0; i < insertTool.toolInput.Count; i++)
|
||||
{
|
||||
TreeNode childrenInputNode = insertNode.Nodes.Add("<--" + insertTool.toolInput[i].IOName);
|
||||
childrenInputNode.Tag = insertTool.toolInput[i].ioType;
|
||||
childrenInputNode.ForeColor = Color.DarkMagenta;
|
||||
}
|
||||
// 输出
|
||||
for (int i = 0; i < insertTool.toolOutput.Count; i++)
|
||||
{
|
||||
TreeNode childrenOutputNode = insertNode.Nodes.Add("-->" + insertTool.toolOutput[i].IOName);
|
||||
childrenOutputNode.Tag = insertTool.toolOutput[i].ioType;
|
||||
childrenOutputNode.ForeColor = Color.Blue;
|
||||
}
|
||||
insertNode.Expand();
|
||||
VisionJobParams.myVisionJob.L_toolList.Add(insertTool);
|
||||
}
|
||||
|
||||
internal string GetNewToolName(string toolType)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!TreeView_Contains_Key(toolType))
|
||||
{
|
||||
return toolType;
|
||||
}
|
||||
for (int i = 1; i < 101; i++)
|
||||
{
|
||||
if (!TreeView_Contains_Key(toolType + "_" + i))
|
||||
{
|
||||
return toolType + "_" + i;
|
||||
}
|
||||
}
|
||||
Logger.LoggerClass.WriteLog("此工具已添加个数已达到数量上限,无法继续添加", true);
|
||||
return "Error";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LoggerClass.WriteLog("添加出错!",ex);
|
||||
return "Error";
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 判断TreeView是否已经包含某节点
|
||||
/// </summary>
|
||||
/// <param name="key">节点文本</param>
|
||||
/// <returns>是否包含</returns>
|
||||
private bool TreeView_Contains_Key(string key)
|
||||
{
|
||||
try
|
||||
{
|
||||
foreach (TreeNode node in VisionJobParams.myJobTreeView.Nodes)
|
||||
{
|
||||
if (node.Text == key)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.LoggerClass.WriteLog("TreeView_Contains_Key 函数出错",ex);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private void tvw_ToolBox_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
450
CreateTool/FormToolBox.resx
Normal file
450
CreateTool/FormToolBox.resx
Normal file
@@ -0,0 +1,450 @@
|
||||
<?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="imageList1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAA8
|
||||
FgAAAk1TRnQBSQFMAgEBCAEAAUABAAFAAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABgAMAAWADAAEBAQABCAYAATAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
|
||||
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
|
||||
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
|
||||
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
|
||||
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
|
||||
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
|
||||
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
|
||||
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
|
||||
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
|
||||
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
|
||||
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
|
||||
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
|
||||
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
|
||||
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
|
||||
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
|
||||
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
|
||||
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
|
||||
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
|
||||
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
|
||||
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
|
||||
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
|
||||
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
|
||||
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
|
||||
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
|
||||
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8A/wD/AP8A
|
||||
/wD/AP8A/wD/AP8A/wD/AP8A/wA0AAHzA1ooAAHzA1owAAH2G1kEAAHzAVoBAAFaJgAEWgEABFoUAAFs
|
||||
AfQB8xYAHVkDAAHzA1ojAAH/AloB9AEAAfMDWgIAAQgCWhEAAWwB9AFmFwAdWQQAAvMBwgFaIQABngFa
|
||||
Af8EAAPzBAABwgFaAf8OAAFsAvQB/wMAAf8BrhIAHVkHAAH0AVofAAJaDwABWgHCDAABbAL0AWYEAAFs
|
||||
AbUSAB1ZCAAB/wFaHQAB5AFaEQABWgH/CgABbAL0AWYEAAHyAfQBkRIAHVkJAAH/AVobAAH/AVoTAAFa
|
||||
CQAB7gL0Aa4FAAHtAfQBZhIAHVkKAAH0AVoaAAFaFAABwgFaCAAB9wL0AWYEAAHsAvQB8xIAHVkLAAH0
|
||||
AVoYAAH/AVoVAAFaBwABbAT0Ae4B9wIAAWYC9BMAHVkMAAH/AVoXAAFaFgABCAFaBgAE9AH3AWwB8wFs
|
||||
AWYBCQFmAa4TAB1ZDQAB/wFaFgABWhcAAVoFAAGuAfMF9AHzAWwB/wHxAgkBbBIAHVkOAAH0AVoVAAFa
|
||||
FwABWgYAAWYC9AFsBPQB7gGuAf8BrgEJAZEBvBAAHVkPAAH0AVoSAAHzA1oUAAHzA1oEAAH/AfQBZgIA
|
||||
AWwBkQL0AfAB9AGuAfEB/wGuAQkBbAFtAbsB7QwAHVkQAAH/AVoRAAHzAVoBAAFaFAAB8wFaAQABWgQA
|
||||
AWwB8QIAAQcBCQG7AWwD9AGuAfQBZgL/AgkCZgwAHVkRAAH/AVoQAAHzA1oUAAHzA1oDAAHzAWYB/wIA
|
||||
ApEBAAFmAWwBCQFmAvQBrgEHAWYB/wHvAWwBuwH3CwAdWRIAAfQBWhAAAfMBWgHzFQAB8wFaAfMHAAHz
|
||||
AQkBBwIAAW0B9AFsAbsBrgL0AbUBbAH3Af8BrgHwCwAdWRMAAfQBWhAAAVoXAAFaCAAB8wFsBQABZgH/
|
||||
AZEBrgEHAvQB8wNmCwAdWRQAAf8BWg8AAVoWAAH0AVoNAAGSAf8BZgH/AWwB/wEJAWYE9AHwAWwBZgkA
|
||||
ATEbWQExFQAB/wFaDgABngFaFQABWg8AAWYB/wIAAfcBvAHtAQkBZgH0AfID9AGRAfAHAAMxAVgV/wQx
|
||||
FgAB9AFaDgABWhQAAf8BWhUAAWwB/wFsAa4G9AFsAf8FAAMxAVgV/wQxFwAB9AFaDQABGwFaEwABWgH/
|
||||
FgAB/wHzAQABrgHwBvQBbAQAHTEYAAH/AVoNAAJaEQABWgGeHAABZgb0AfIBrgIAGzEBeRoAAf8BWg0A
|
||||
AloPAAJaHwABbAX0AWYCABIxJQAB9AFaDQACWg0AAVoB5CEAAbwBkgL0AfMDABExAZkmAAHCA1oLAAEb
|
||||
AloCAAHzA1oDAAJaAf8kAAFsAfQBbAMAETEnAAHzAVoBAAFaDQABngRaAQAEWgH/ZAAB8wNaEAAB8wNa
|
||||
aQAD8xEAA/P/ADYAAbMQAAH/AbttAAGyEQABsmwAAbIBCQGyAgkBswIJAboCCQG7BwkBugGzagAC/wEA
|
||||
AbMCAAEJAgAB8wIAAf8IAAEJagAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZCQAB/wUJAfQCAAEZBQkB/wIA
|
||||
BgkUAAuyAbMGAB30BgAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZCQAB/wUJAfQCAAEZBQkB/wIABgkTAAEJ
|
||||
DLIFAB+KBQAB/wKzAbISswkAAf8CCQH/AgkB9AIAARkBCQEZAf8CCQH/AgADCQH/AfIBCQoAAbMKsgH0
|
||||
CAABugGyBAABtAGKAWUCuxoZAYoFAAH/FAABGQkAAf8CCQEAAgkB9AIAARkBCQHzAQACCQH/AgADCQEA
|
||||
AfMBCQkAAfMBswgAAboBsgH0CAABugGyBAABswGKAmUCuxkZAYoFAAH/FAABGQkAAf8FCQH0AgABGQUJ
|
||||
Af8CAAYJCQABugH0CAABCQyyBAABswGKAbsCZQG7AQkYGQGKBQAB/xQAARkJAAH/BQkB9AIAARkFCQH/
|
||||
AgAGCQkAAboB9AkADLIEAAGzAYoBuwEZAmUBuwEJCRkBCQwZAbsBigUAAf8UAAEZCgAB/wIJAv8DAAL/
|
||||
AwkB/wMAAv8CCQHzAf8JAAG6AfQZAAGzAYoBuwIZAmUBuwgZArsLGQEJAWUBigUAAf8UAAEZCwACCQcA
|
||||
AwkGAAIJAfQKAAG6AfQZAAGzAYoBuwMZAmUBuwYZAbsCZQG7ChkCZQGKBQAB/xQAARkLAAIJB/8DCQb/
|
||||
AgkB9AoAAboB9AkAC7IBswQAAbMBigG7BBkCZQG7BRkBZgJlAWYBCQgZAbsBZQEZAYoFAAH/FAABGQsA
|
||||
FAkB9AoAAboB9AgAAQkMsgQAAbMBigG7BRkCZQG7AxkBuwFlAWYBkQFlAbsHGQEJAmUBGQGKBQAB/xQA
|
||||
ARkLABQJAfQKAAG6AfQEAAT0AbMBsgH0CAABugGyBAABswGKAbsGGQFlAWYBuwEJAbsCZQIZAWUBZgEJ
|
||||
BhkBZgFlAhkBigUAAf8VshQAAfMCCRMAAboB9AIACLIB9AgAAboBsgQAAbMBigG7BhkBuwJlAbsCZQMZ
|
||||
AQkBZQG7BRkBuwFlAWwCGQGKBQAB/wIAAbMCAAEJAgAB8wIAAf8IAAEZFAAB8wIJEwABugH0AgABsgUA
|
||||
AQkMsgQAAbMBigG7BxkBtQNlBRkCZQG7AxkBCQJlAxkBigUAAf8CAAGzAgABCQIAAfMCAAH/CAABGQ0A
|
||||
B/8BGQIJB/8MAAG6AfQCAAGyBgAMsgQAAbMBigG7EBkBCQFlAbsDGQGuAWUEGQGKBQAB/wIAAbMCAAEJ
|
||||
AgAB8wIAAf8IAAEZDAAB8xIJCwABugH0AgABshYAAbMBigG7AhkBZgJlDBkCZQG7ARkBuwJlBBkBigUA
|
||||
Af8CAAGzAgABCQIAAfMCAAH/CAABGQwAAfMBCQ7/AwkLAAG6AfQCAAGyFgABswGKAbsBGQFlAYsCGQFl
|
||||
DBkBZQK7AmUFGQGKBAAB/wGyFbQBsgsAAfMBCQ4AAwkKAAeyAbMEAAuyAbMEAAGzAYoBuwEZAWUBuwIZ
|
||||
AWUMGQRlAZEFGQGKBAABshcAAbIKAAHzAQkDAAIJCQADCQkAAQkIsgMAAQkMsgQAAbMBigG7ARkBZQG7
|
||||
AgkBZQ4ZAbUHGQGKBAABshezAbIKAAHzAQkDAAIJCQADCQkAAboBsgH0BAABugGyA/QBswGyAfQIAAG6
|
||||
AbIEAAGzAYoBuwIZA2UBuxYZAYoEAAG6FwABsgoAAfMBCQ4AAwkJAAG6AbIB9AQAAboGsgH0CAABugGy
|
||||
BAABswGKAbscGQGKBAABuhcAAbIKAAHzAQkOAAMJCQABCQiyAwABCQyyBAABswGKHbsBigQAAboXAAGy
|
||||
CgAB8xIJCgAIsgQADLIFAB+KBAABugQAAbIB9AsAAQkBsgQAAbIKAAH/EQkB8ycAAf8crQG0BQABugMA
|
||||
AbIBAAGzCwABCQEAAbIDAAGyZwABugIAAbIDAAGyCQABsgMAAbMCAAGyZwABugGzAboEAAG6CAAC8wMA
|
||||
Af8BugGzAQlvAAGyAQkFAAG6AbN5AAG6A7IBCW0AAUIBTQE+BwABPgMAASgDAAGAAwABYAMAAQEBAAEB
|
||||
BgABBhYAA///AP8AAwAk/wHDBP8B/AE/Bf8BwAIAAQMBywT/AfABhwL/AY8C/wHAAgABAQHDBP8BhAEx
|
||||
Av8BHwL/AcACAAEBAeEE/wEeATwBfwH+ARwC/wHAAgABAQH8A/8B/gF/Af8BPwH8ATwC/wHAAgABAQH+
|
||||
AX8C/wH8Av8BnwH4AXgC/wHAAgABAQH/AT8C/wH5Av8B3wHwAfgC/wHAAgABAQH/AZ8C/wH7Av8BzwLw
|
||||
Av8BwAIAAQEB/wHPAv8B8wL/Ae8B4AExAv8BwAIAAQEB/wHnAv8B9wL/AecB4AEBAv8BwAIAAQEB/wHz
|
||||
Av8B9wL/AfcBwAEAAv8BwAIAAQEB/wH5Av8B9wL/AfcB4AEAAT8B/wHAAgABAQH/AfwC/wHDAv8BwwHG
|
||||
AQABAwH/AcACAAEBAf8B/gF/Af8BywL/AcsBzAEAAQMB/wHAAgABAQL/AT8B/wHDAv8BwwGMAYABAQH/
|
||||
AcACAAEBAv8BnwH/AeMC/wHjAfgBwAEBAf8BwAIAAQEC/wHPAf8B9wL/AfcB+QHwAQEB/wHAAgABAQL/
|
||||
AecB/wH3Av8B5wH/AcABAAF/AcACAAEBAv8B8wH/AfMC/wHvAf8B5gEAAR8BwAIAAQEC/wH5Af8B+wL/
|
||||
Ac8C/wGAAQcBwAIAAQEC/wH8Af8B+QL/Ac8C/wHIAQMBwAIAAQEC/wH+AX8B/AL/AZ8C/wH+AQABwAIA
|
||||
AQMD/wE/Af4BfwH/AT8D/wGAAcABAAEPBP8BnwH/AT8B/gF/A/8BwQHAAQABDwT/AcMB/wGMATgE/wHx
|
||||
AcABAAEfBP8BywH/AeABgwz/AcMB/wH8AT8M/wHjAf8B/gE/Jf8B/gL/AT8M/wH+Av8Bvwz/AfwCAAEf
|
||||
DP8B+QFtAb8B3wz/AfsBbQG/Ad8B8AEYAQwBDwL/AQABDwHAAgABAQH7AW0BvwHfAfABGAEMAQ8B/wH+
|
||||
AQABDwGAAwAB+AIAAR8B8AEYAQwBDwH8AQABPwHPBAAB+wL/Ad8B8QEYAYwBTwH5Af4BPwHPBAAB+wL/
|
||||
Ad8B8AEYAQwBDwH5Af4BAAEPBAAB+wL/Ad8B8AEYAQwBDwH5Af8BAAEPBAAB+wL/Ad8B+AE4ARwBDwH5
|
||||
A/8EAAH7Av8B3wH8Af4BPwEfAfkD/wQAAfsC/wHfAfwCAAEfAfkB/wEAAQ8EAAH7Av8B3wH8AgABHwH5
|
||||
Af4BAAEPBAAB+wL/Ad8B/AIAAR8B+QHgAT8BzwQAAfgCAAEfAf8B/gE/Af8B+QGAAT8BzwQAAfsBbQG/
|
||||
Ad8B/wH+AT8B/wH5Ab4BAAEPBAAB+wFtAb8B3wH/AgABfwH5Ab8BAAEPBAAB+wFtAb8B3wH+AgABPwH5
|
||||
Ab8C/wQAAfsBbQG/Ad8B/gIAAT8B+QG/Av8EAAHwAgABDwH+AX8B/gE/AfABDwEAAQ8EAAH3Av8B9wH+
|
||||
AXMB/gE/AeABDgEAAQ8EAAHwAgABBwH+AXMB/gE/AeMBwAE/Ac8EAAH3Av8B9wH+AX8B/gE/AeMBwAE/
|
||||
Ac8EAAH3Av8B9wH+AX8B/gE/AeABDgEAAQ8EAAH3Av8B9wH+AgABPwHwAQ8BAAEPAYADAAH3AZ8B/AH3
|
||||
Af4CAAE/BP8BgAIAAQEB9wFfAf0Bdwz/AfYB7wH7AbcM/wHxAe8B8wGHDf8B8wHnDv8B/AEfDf8L
|
||||
</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>
|
||||
</metadata>
|
||||
<data name="imageListTool.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABK
|
||||
HgAAAk1TRnQBSQFMAgEBCQEAASgBAAEoAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
|
||||
AwABMAMAAQEBAAEgBgABMP8AJwAB/wH2AesB//gAAf8B9gHrAf8DBgEIBAADDAEQ7AAB/wH2AesB/wFn
|
||||
AUsBMgH/CAAB/wH2AesB/+gAAbQBoQGQAv8B9gHrAf8IAAFkAVIBQQHPAf8B9gHrAf/oAAH/AfYB6wL/
|
||||
AfYB6wH/AXoBYAFJAf8BcQFWAT4B/wHiAcoBsAH/AYUBawFVAf/oAAH/AfYB6wH/AXEBVgE+Av8B9gHr
|
||||
Av8B9gHrAf8BkwF+AWwB/wGOAXcBZAH/AagBjwF0Af/gAAFxAVYBPgH/BAABVAFMAUQBjwHLAbIBmQH/
|
||||
AfsB8QHlAv8B9gHrAf8B+wHxAeUF/wHbAcIBqAH/AWcBSwEyAf/gAAHiAcoBsAH/BAABZgFQATsB5wF5
|
||||
AWABSQH/AYABZgFPAv8B9gHrAf8BewFiAUsF/wFCAT4BOgFk5AABYAFRAUUBuAFnAUsBMgH/AXUBXAFF
|
||||
Af8B4gHKAbAC/wH2AesC/wH2AesB/wHjAdYByQH/AWcBSwEyAf/wAAH7AfoB+QH/AZMBewFmAv8B9gHr
|
||||
Av8B9gHrAv8B9gHrAf8DBgEI9AAB/wH2AesC/wH2AesC/wH2AesB/wHsAeEB1AH/9AABSAFCAT4BcAH/
|
||||
AfYB6wH/AfEB5gHaAf//AP8A/wD/AP8ASQADMgFQUAABJwH6ARgB/wEnAfoBGAH/BAABJwH6ARgB/wEn
|
||||
AfoBGAH/GAABqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZ
|
||||
AQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/
|
||||
AagBWQEHAf8YAAFYAVQBSwGeAdsBlgEPAf8B2wGWAQ8B/wHbAZYBDwH/AwABARwAAzIBUAEmAfoBFwH/
|
||||
QAABSwFrAUcBoAMSARgIAAEyATQBMgFQCAABPgFFAT4BbAMhATAMAAGNAWsBRgHvAVABJwEOAf8B4QG9
|
||||
AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/FAAB2wGWAQ8B/xQA
|
||||
AdsBlgEPAf8gAAEmAfoBFwH/OAABRwGiAT8BzyQAAyEBMAgAAY0BawFGAe8B4QG9AYoB/wFQAScBDgH/
|
||||
AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8QAAHSAZYBFQH9QAABJgH6
|
||||
ARcB/1wAAToBQAE6AWQIAAGNAWsBRgHvAeEBvQGKAf8B+gHrAdIB/wFQAScBDgH/AeEBvQGKAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/EAADNgFZHAAB2wGWAQ8B/yQAASYB+gEXAf8sAAEnAfoBGAH/
|
||||
LAABJwH6ARgB/wQAAY0BawFGAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wHhAb0BigH/
|
||||
AfoB6wHSAf8B3QG5AYcB/wFWAS0BFAH/AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wFQAScBDgH/AfoB6wHSAf8wAAI2ATUBVygAASYB+gEXAf8oAAEnAfoBGAH/LAABJwH6ARgB/wQA
|
||||
AY0BawFGAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/AeEBvQGKAf8BUAEn
|
||||
AQ4B/wH6AesB0gH/AecB1QG8Af8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wF0AVEBOAH/
|
||||
AfoB6wHSAf8gAAHbAZYBDwH/PAABJgH6ARcB/yAAATIBNAEyAVAsAAEyATQBMgFQCAABjQFrAUYB7wHh
|
||||
Ab0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/yAA
|
||||
AdsBlgEPAf9AAAEmAfoBFwH/IAABJwH6ARgB/ywAAScB+gEYAf8EAAGNAWsBRgHvAeEBvQGKAf8BUAEn
|
||||
AQ4B/wH6AesB0gH/AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B2gG2AYQB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/EAAB2wGWAQ8B/wwA
|
||||
AdsBlgEPAf8QAAG1AYcBJwHwMAABJgH6ARcB/xwAAScB+gEYAf8sAAEnAfoBGAH/BAABjQFrAUYB7wHh
|
||||
Ab0BigH/AVABJwEOAf8B6QHMAaEB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfYB5wHOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/xQA
|
||||
AVEBTgFKAZAIAAHbAZYBDwH/SAABJgH6ARcB/0QAAxIBGAgAAY0BawFGAe8B4QG9AYoB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8YAAHbAZYBDwH/BAAB2wGW
|
||||
AQ8B/wwAAdsBlgEPAf88AAEmAfoBFwH/GAABJwH6ARgB/yQAAUoBcgFIAagMAAGoAVkBBwH/AagBWQEH
|
||||
Af8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGo
|
||||
AVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/ygAAdsBlgEPAf8BQQFA
|
||||
AT8BcEQAASYB+gEXAf8YAAEnAfoBGAH/HAABSAGWAUIBx8AAAzIBUCAAAScB+gEYAf8BJwH6ARgB/wQA
|
||||
AScB+gEYAf8BJwH6ARgB/8wAAzIBUCQAATIBNAEyAVD/AP8A/wA/AAHbAZYBDQH/AdsBlgENAf8B2wGW
|
||||
AQ0B/wHbAZYBDQH/AdsBlgENAf8B2wGWAQ0B/wwAAagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEH
|
||||
Af8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGo
|
||||
AVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/BAABqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZ
|
||||
AQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/
|
||||
AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8EAAGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGo
|
||||
AVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEH
|
||||
Af8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wwAAX0BbAFKAd8QAAHbAZYBDQH/EAABYgFd
|
||||
AVQBwAgAAY0BawFGAe8BUAEnAQ4B/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8BjQFrAUYB7wFQAScBDgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wGNAWsBRgHvAVABJwEOAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/DAADKgFAEAAB2wGWAQ0B/wHbAZYBDQH/AdsBlgEN
|
||||
Af8B2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8IAAGNAWsBRgHvAeEBvQGKAf8BUAEnAQ4B/wHhAb0BigH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/AY0BawFGAe8B4QG9AYoB/wFQAScBDgH/
|
||||
AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8BjQFrAUYB7wHhAb0BigH/
|
||||
AVABJwEOAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wwAAyoBQDAA
|
||||
AY0BawFGAe8B4QG9AYoB/wH6AesB0gH/AVABJwEOAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wFQAScBDgH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AVABJwEOAf8BjQFrAUYB7wHhAb0BigH/AfoB6wHSAf8BUAEnAQ4B/wHhAb0BigH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AVABJwEOAf8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8BUAEnAQ4B/wGNAWsBRgHvAeEBvQGKAf8B+gHrAdIB/wFQAScBDgH/AeEBvQGKAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/DAADKgFAEAAB2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8B2wGW
|
||||
AQ0B/wHbAZYBDQH/AdsBlgENAf8IAAGNAWsBRgHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AVABJwEO
|
||||
Af8B4QG9AYoB/wH6AesB0gH/Ad0BuQGHAf8BVgEtARQB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wH6AesB0gH/AY0BawFGAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHS
|
||||
Af8BUAEnAQ4B/wHhAb0BigH/AfoB6wHSAf8B3QG5AYcB/wFWAS0BFAH/AVABJwEOAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/AfoB6wHSAf8BjQFrAUYB7wHhAb0BigH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wFQAScBDgH/AeEBvQGKAf8B+gHrAdIB/wHdAbkBhwH/AVYBLQEUAf8BUAEnAQ4B/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AVABJwEOAf8B+gHrAdIB/wwAAyoBQAQAAdsBlgEN
|
||||
Af8B2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8QAAFiAV0BVAHACAABjQFrAUYB7wHhAb0BigH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AVABJwEOAf8B4QG9AYoB/wFQAScBDgH/AfoB6wHSAf8B5wHVAbwB/wHh
|
||||
Ab0BigH/AfoB6wHSAf8B+gHrAdIB/wHhAb0BigH/AXQBUQE4Af8B+gHrAdIB/wGNAWsBRgHvAeEBvQGK
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wHhAb0BigH/AVABJwEOAf8B+gHrAdIB/wHn
|
||||
AdUBvAH/AeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AeEBvQGKAf8BdAFRATgB/wH6AesB0gH/AY0BawFG
|
||||
Ae8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/AeEBvQGKAf8BUAEnAQ4B/wH6
|
||||
AesB0gH/AecB1QG8Af8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B4QG9AYoB/wF0AVEBOAH/AfoB6wHS
|
||||
Af8MAAMqAUAQAAHbAZYBDQH/AdsBlgENAf8B2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8B2wGWAQ0B/wgA
|
||||
AY0BawFGAe8B4QG9AYoB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wH6AesB0gH/AfoB6wHSAf8BUAEnAQ4B/wH6AesB0gH/
|
||||
AfoB6wHSAf8BjQFrAUYB7wHhAb0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wFQAScBDgH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wGNAWsBRgHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHr
|
||||
AdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/DAADKgFAMAABjQFrAUYB7wHhAb0BigH/AVABJwEOAf8B+gHr
|
||||
AdIB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AdoBtgGEAf8BUAEnAQ4B/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wGNAWsBRgHvAeEBvQGKAf8BUAEn
|
||||
AQ4B/wH6AesB0gH/AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B2gG2AYQB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AY0BawFGAe8B4QG9
|
||||
AYoB/wFQAScBDgH/AfoB6wHSAf8BUAEnAQ4B/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/
|
||||
AfoB6wHSAf8B+gHrAdIB/wHaAbYBhAH/AVABJwEOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8IAAHb
|
||||
AZYBDQH/AdsBlgENAf8B2wGWAQ0B/wHbAZYBDQH/CAAB2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8B2wGW
|
||||
AQ0B/wHbAZYBDQH/AdsBlgENAf8IAAGNAWsBRgHvAeEBvQGKAf8BUAEnAQ4B/wHpAcwBoQH/AVABJwEO
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B9gHnAc4B/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AY0BawFGAe8B4QG9AYoB/wFQAScBDgH/AekBzAGh
|
||||
Af8BUAEnAQ4B/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH2
|
||||
AecBzgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BjQFrAUYB7wHhAb0BigH/AVABJwEO
|
||||
Af8B6QHMAaEB/wFQAScBDgH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/AfYB5wHOAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wgAAdsBlgENAf8IAAFi
|
||||
AV0BVAHAAdsBlgENAf8B2wGWAQ0B/wHbAZYBDQH/EAABYgFdAVQBwAgAAY0BawFGAe8B4QG9AYoB/wH6
|
||||
AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8BjQFrAUYB7wHh
|
||||
Ab0BigH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wGN
|
||||
AWsBRgHvAeEBvQGKAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHS
|
||||
Af8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6AesB0gH/AfoB6wHSAf8B+gHrAdIB/wH6
|
||||
AesB0gH/CAAB2wGWAQ0B/wHbAZYBDQH/AdsBlgENAf8B2wGWAQ0B/wgAAdsBlgENAf8B2wGWAQ0B/wHb
|
||||
AZYBDQH/AdsBlgENAf8B2wGWAQ0B/wHbAZYBDQH/DAABqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZ
|
||||
AQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/
|
||||
AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8EAAGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGo
|
||||
AVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEH
|
||||
Af8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wQAAagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/
|
||||
AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZ
|
||||
AQcB/wGoAVkBBwH/AagBWQEHAf8BqAFZAQcB/wGoAVkBBwH//wD/AP8AAwABQgFNAT4HAAE+AwABKAMA
|
||||
AUADAAEwAwABAQEAAQEFAAGAAQEWAAP/AQAC/wYAAfsB/wYAAfIB/wYAAeYB/wYAAcwB/wYAAcAB/wYA
|
||||
AcABfwYAAaABHwYAAegBDwYAAfgBBwYAAf8BgQYAAf8B8AYAAf8B+AYAAv8GAAL/BgAC/wYADP8BvwH/
|
||||
AfwBnwGAAQAB/AEfAc8B/wHzAWcCAAH7Ae8B9wH/Ae8B+wIAAfcB/wH7Av8B+wIAAvcB/QH/Ad8B/QIA
|
||||
Af8B9wH+Af8B3wH9AgAB/wF/Af8BfwG/AfsCAAH/AX8B/wG/Ad8B/QIAAfcBewH/At8B/QIAAfsBfwH/
|
||||
Ae8B/wH7AgAB/QF3Af8B9wHvAfsBgAEAAf8BzwH/AfsC9wX/AfsB/AGfBf8B/QH/AX8Z/wEDAYABAAGA
|
||||
AQABgAEAAe8BewYAAe8BAwYAAe8B/wYAAe8BAwYAAegBewYAAe8BAwYAAe8B/wYAAcMBAwYAAdgBewYA
|
||||
AcMBAwGAAQABgAEAAYABABj/Cw==
|
||||
</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAIyAAAAEAIACoEgAAFgAAACgAAAAjAAAAQAAAAAEAIAAAAAAAgBEAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAGyU0ZFdeafFscnz/bHJ8/2xyfP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xy
|
||||
fP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xyfP9scnz/bHJ8/2xy
|
||||
fP9scnz/bHJ8/1dfavUcJjRsAAAAABkjMgZbYWnz+fHY//nv0f/579H/+e/R//nv0f/579H/+e/R//nv
|
||||
0f/579H/+e/R//nv0f/579H/+e/R//nv0f/579H/+e/R//nv0f/579H/+e/R//nv0f/579H/+e/R//nv
|
||||
0f/579H/+e/R//nv0f/579H/+e/R//nv0f/579H/+vHX/19lbPcZIzIIGSQzCnBvZP/p2qj/QH6T/y6H
|
||||
q/8th6v/Loer/2aLjv/15K7/9eSu//Tkrf/15K7/9eSu//Xjrf/15K7/9eSu//Xjrv/15K7/9eSt//Tj
|
||||
rf/1463/9OSu//Tkrv/15K7/9OOt//Tjrf/15K7/9eSu//Tkrv/1467/9eSu//Tkrf/0467/cnJl/xki
|
||||
Mg4ZJDMKcG9j/+fYp/9aiJb/Wpqy/1qasv9amrL/dpGQ//Xkrv/1467/9eSt//Xjrv/15K7/9eSt//Xk
|
||||
rv/05K7/9eSt//Xkrv/1463/9OOt//Xkrv/05K3/9OOt//Xkrv/0463/9eOt//Xkrv/15K7/9OSu//Xj
|
||||
rf/15K7/9OOt//Pjrf9xcGT/GSIyDhkkMwpwb2P/9OOt//Xkrv/15K7/9OOt//Tkrv/1467/9eSu//Xk
|
||||
rv/05K3/9eSu//Tkrv/1463/9eSu//Tkrv/0463/9eSu//Tjrf/05K7/9eOu//Tkrf/0467/9eSu//Tj
|
||||
rf/15K7/9eSu//Xjrf/05K7/9eSu//Xkrv/0463/cnJk/3FwZP8ZIjIOGSQzCnBvY//1463/9OSu//Xk
|
||||
rv/15K3/9OSt//Tkrv/15K7/9eSu//Xkrf/15K7/9eSu//Xkrf/1467/9eSt//Xkrv/15K3/9eOt//Tk
|
||||
rf/15K7/9OSt//Tkrv/15K7/9OOt//Tjrf/15K7/9eOu//Tkrv/1463/9eSu//Tjrf9qamD/cXBk/xki
|
||||
Mg4ZJDMKcG9j//Tjrf/15K7/9eOu//Tjrf/05K3/9eSu//Xkrv/15K7/9OSt//Xkrv/15K7/9eOt//Xk
|
||||
rv/15K7/9eOu//Xkrv/15K3/9OOt//Xjrf/05K7/9OSu//Xkrv/0463/9OOt//Xkrv/15K7/9OSu//Xj
|
||||
rv/15K7/9OSt/2pqYP9xcGT/GSIyDhkkMwpwb2P/9OOt//Xkrv/15K7/9eSt//Tjrf/15K7/9eSu//Xj
|
||||
rv/15K3/9eOu//Xkrv/15K3/9eSu//Tkrv/15K3/9eSu//Xjrf/0463/9eSu//Tkrf/0463/9eSu//Tj
|
||||
rf/1463/9eSu//Xkrv/05K7/9eOt//Xkrv/0463/vbOP/3FwZP8ZIjIOGSQzCnBvY//0463/9eSu//Xk
|
||||
rv/0463/9OSu//Xjrv/15K7/9eSu//Tkrf/15K7/9OSu//Xjrf/15K7/9OSu//Tjrf/15K7/9OOt//Tk
|
||||
rv/1467/9OSt//Tjrv/15K7/9OOt//Xkrv/15K7/9eOt//Tkrv/15K7/9eSu//Tjrf92dGb/cXBk/xki
|
||||
Mg4ZJDMKcG9j//Xjrf/05K7/9eSu//Xkrf/05K3/9OSu//Xkrv/15K7/9eSt//Xkrv/15K7/9eSt//Xj
|
||||
rv/15K3/9eSu//Xkrf/1463/9OSt//Xkrv/05K3/9OSu//Xkrv/0463/9OOt//Xkrv/1467/9OSu//Xj
|
||||
rf/15K7/9OOt/8/CmP9xcGT/GSIyDhkkMwpwb2P/9OOt//Xkrv/1467/9OOt//Tkrf/15K7/9eSu//Xk
|
||||
rv/05K3/9eSu//Xkrv/1463/8+Ks/5CMdf90c2b/dHNm/3RzZv+Gg3D/796q//Tkrv/05K7/9eSu//Tj
|
||||
rf/0463/9eSu//Xkrv/05K7/9eOu//Xkrv/05K3/9OOu/3FwZP8ZIjIOGSQzCnBvY//0463/9eSu//Xk
|
||||
rv/15K3/9OOt//Xkrv/15K7/9eOu//Xkrf/1467/9eSu//Xkrf/VyJz/S0KD/4lp6P+Jaej/iWno/1hL
|
||||
mf/EuZL/9OSt//Tjrf/15K7/9OOt//Xjrf/15K7/9eSu//Tkrv/1463/9eSu//Tjrf/05K7/cXBk/xki
|
||||
Mg4ZJDMKcG9j//Tjrf/15K7/9eSu//Tjrf/05K7/9eOu//Xkrv/15K7/9OSt//Xkrv/05K7/9eOt/9DE
|
||||
mf9TSpD/lnn+/5R3+/+WeP7/Y1Wq/8K3kf/05K3/9OOu//Xkrv/0463/9eSu//Xkrv/1463/9OSu//Xk
|
||||
rv/15K7/9OOt//Tkrv9xcGT/GSIyDhkkMwpwb2L/9OOs//TjrP/046z/9OOs//TjrP/046z/9OOs//Tj
|
||||
rP/046z/9OOs//TjrP/046z/0MOX/1NKkP+Xef//Mk16/4tx7P9jVar/wreQ//TjrP/046z/9OOs//Tj
|
||||
rP/046z/9OOs//TjrP/046z/9OOs//TjrP/046z/9OOs/3FwY/8ZIjIOGSMyPlVVQ/+woVv/sKFb/7Ch
|
||||
W/+woVv/sKFb/7ChW/+woVv/sKFb/7ChW/+woVv/sKFb/7ChW/+XjFT/U0qQ/5d5/v8oVHv/h27m/2NV
|
||||
qv+NhFL/sKFb/7ChW/+woVv/sKFb/7ChW/+woVv/sKFb/7ChW/+woVv/sKFb/7ChW/+woVv/WVlE/xkj
|
||||
MkJCRTz/iH9N/4h/Tf+If03/iH9N/4h/Tf+If03/iH9N/4h/Tf+If03/iH9N/4h/Tf+If03/iH9N/3Vw
|
||||
Sf9TSpD/cGbK/x6Drv9iY7z/Y1Wq/25qR/+If03/iH9N/4h/Tf+If03/iH9N/4h/Tf+If03/iH9N/4h/
|
||||
Tf+If03/iH9N/4h/Tf+If03/REc9/2dnWf/ZyY//wLOC/8K1g//u3Jv/w7aD/8u9h//w3p3/8N6d//De
|
||||
nf/w3p3/8N6d//Denf/w3p3/zL+L/1NKkP9Uc6//K8X3/05/tf9jVar/v7OE//Denf/w3p3/8N6d//De
|
||||
nf/w3p3/8N6d//Denf/w3p3/8N6d//Denf/w3p3/8N6d//Denf9paFn/aGhf/8W6k/+blXv/npd9/+7e
|
||||
qv+el33/rKSF//Tkrv/15K7/9eSu//Xkrf/15K7/9eSu//Xkrf/QxJn/U0qQ/4Jr2v+Hf7j/gWzW/2NV
|
||||
qv/Ct5H/9OSt//Tkrv/15K7/9OOt//Tjrf/15K7/9eOu//Tkrv/1463/9eSu//Tjrf/15K7/9OOt/2lp
|
||||
X/9oaF//9eSu//Tjrf/15K7/9eOu//Tjrf/05K3/9eSu//Xkrv/15K7/9OSt//Xkrv/15K7/9eOt/9DE
|
||||
mf9VTZH/mHv+/5h7//+Ye///ZVir/8K3kf/05K7/9OSu//Xkrv/0463/9OOt//Xkrv/15K7/9OSu//Xj
|
||||
rv/15K7/9OSt//Tjrv/15K7/aWlf/2hoX//15K7/9OOt//Xkrv/15K7/9eSt//Tjrf/15K7/9eSu//Xj
|
||||
rv/15K3/9eOu//Xkrv/15K3/6Nmn/1RZX/9pbnz/aW58/2lufP9SWGH/282f//Tkrf/0463/9eSu//Tj
|
||||
rf/1463/9eSu//Xkrv/05K7/9eOt//Xkrv/0463/9OSu//Tjrv9paV//aGhf//Xkrv/0463/9eSu//Xk
|
||||
rv/0463/9OSu//Xjrv/15K7/9eSu//Tkrf/15K7/9OSu//Xjrf/15K7/9OSu//Tjrf/15K7/9OOt//Tk
|
||||
rv/1467/9OSt//Tjrv/15K7/9OOt//Xkrv/15K7/9eOt//Tkrv/15K7/9eSu//Tjrf/05K7/9OSu/2lp
|
||||
X/9oaF//9OSu//Xjrf/05K7/9eSu//Xkrf/05K3/9OSu//Xkrv/15K7/9eSt//Xkrv/15K7/9eSt//Xj
|
||||
rv/15K3/9eSu//Xkrf/1463/9OSt//Xkrv/05K3/9OSu//Xkrv/0463/9OOt//Xkrv/1467/9OSu//Xj
|
||||
rf/15K7/9OOt//Xkrv/0463/aWlf/2lqYv/15K7/9OOt//Xkrv/1467/9OOt//Tkrf/15K7/9eSu//Xk
|
||||
rv/05K3/9eSu//Xkrv/1463/9eSu//Xkrv/1467/9eSu//Xkrf/0463/9eOt//Tkrv/05K7/9eSu//Tj
|
||||
rf/0463/9eSu//Xkrv/05K7/9eOu//Xkrv/05K3/9OOu//Xkrv9rbGT/Q0tX4fDs3v/79eH/+/Xh//v1
|
||||
4f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/+/Xh//v1
|
||||
4f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/+/Xh//v14f/79eH/8+7g/0hP
|
||||
W+UZIzM0KjNBtz9IVMk/SFTJP0hUyT9IVMk/SFTJP0hUyTlFU/M3WXL/OkNQ6T9HVMs/R1TLP0dUyz9H
|
||||
VMs/R1TLP0dUyz9HVMs/R1TLP0dUyz9HVMs/R1TLP0dUyz9HVMs6Q0/pN1lx/zhFVPU/SFTJP0hUyT9I
|
||||
VMk/SFTJP0hUyT9IVMkqM0G5GSMzNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjRIyRu3
|
||||
7f8aJDOZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoj
|
||||
M5cbseb/Gj1TzQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAaNEjJG7nu/xokM5kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAGSQzlxuz5v8aPVPNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABo0R8kbue7/GiQzmwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaJDOXG7Xo/xo7UM0AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGig4rR25
|
||||
7P8aOU7XGiQzBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGSMyBho2
|
||||
Ss8duu7/Gio7swAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAZJDNcOo+v/xuTwP8ZMUbBGSMyhRokM4MZIzKDGiMzgxokM4MaJDODGiQzgxoj
|
||||
M4MZIzODGSQzgxkjMoUZMEW/G5C7/zyUtf8aJDNiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkjMgQtN0W7cbHI/0zC7v8xqNj/MKbX/zCm
|
||||
1/8wptf/MKbX/zCm1/8wptf/MKbX/zCm1/8wptf/MafX/0vB7v9xs8v/LzpHvxkjMgYAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkk
|
||||
MgoeKDeHUlll5Wlxe/1qcnz/anJ8/2pyfP9qcnz/anJ8/2pyfP9qcnz/anJ8/2pyfP9qcXv9U1pm5x8o
|
||||
N4kZIzIKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAGAAAACAAAAAIAAAAIAA
|
||||
AAAgAAAAgAAAACAAAACAAAAAIAAAAIAAAAAgAAAAgAAAACAAAACAAAAAIAAAAIAAAAAgAAAAgAAAACAA
|
||||
AACAAAAAIAAAAIAAAAAgAAAAgAAAACAAAACAAAAAIAAAAIAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAACAA
|
||||
AAD/H/8f4AAAAP8f/x/gAAAA/x//H+AAAAD/H/8f4AAAAP+AAD/gAAAA/4AAP+AAAAD/wAB/4AAAAA==
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -5,12 +5,12 @@ using System.Runtime.InteropServices;
|
||||
// 有关程序集的一般信息由以下
|
||||
// 控制。更改这些特性值可修改
|
||||
// 与程序集关联的信息。
|
||||
[assembly: AssemblyTitle("VisionEditTest")]
|
||||
[assembly: AssemblyTitle("CreateTool")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("VisionEditTest")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2019")]
|
||||
[assembly: AssemblyProduct("CreateTool")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2021")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
@@ -20,7 +20,7 @@ using System.Runtime.InteropServices;
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||
[assembly: Guid("bf03a00c-35b5-470e-a335-0a78fd0478a6")]
|
||||
[assembly: Guid("184fb08b-0d43-4747-8637-978d4f25f94f")]
|
||||
|
||||
// 程序集的版本信息由下列四个值组成:
|
||||
//
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\DataStruct\obj\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\obj\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\DataStruct\obj\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\DataStruct\obj\Debug\DataStruct.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,11 +1,13 @@
|
||||
using System;
|
||||
using HalconDotNet;
|
||||
using static DataStruct.DataStruct;
|
||||
using ToolBase;
|
||||
using CommonMethods;
|
||||
|
||||
namespace FindCircle
|
||||
{
|
||||
[Serializable]
|
||||
public class FindClrcle
|
||||
public class FindClrcle: IToolBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 输入位姿
|
||||
@@ -58,6 +60,72 @@ namespace FindCircle
|
||||
return Math.Round(resultCircleRadius, 3);
|
||||
}
|
||||
}
|
||||
|
||||
public SoftwareRunState softwareRunState
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public ToolRunStatu toolRunStatu
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string runMessage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
public string runTime
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
HObject IToolBase.inputImage
|
||||
{
|
||||
get
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 起始角度
|
||||
/// </summary>
|
||||
@@ -102,5 +170,15 @@ namespace FindCircle
|
||||
/// 制作模板时的输入位姿
|
||||
/// </summary>
|
||||
internal PosXYU templatePose = new PosXYU();
|
||||
|
||||
public void Run(SoftwareRunState softwareRunState)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public void DispImage()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -55,13 +55,21 @@
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</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="..\HalconWindowTest\HalconWindow.csproj">
|
||||
<Project>{4ADC75AE-59C7-4D36-B675-A6CE51B6F5BA}</Project>
|
||||
<Name>HalconWindow</Name>
|
||||
<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>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
using System;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
using System;
|
||||
using System.Windows.Forms;
|
||||
using HalconWindow.HalconWindow;
|
||||
|
||||
namespace FindCircle
|
||||
{
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@@ -1,26 +1,26 @@
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\FindCircleTool.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\FindCircleTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircle.FormFindCircle.resources
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\FindCircleTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\FindCircleTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircle.FormFindCircle.resources
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\FindCircleTool.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\FindCircleTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\FindCircle\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircle.FormFindCircle.resources
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.dll
|
||||
F:\VSCode\VisionEditTest\FindCircle\obj\Debug\FindCircleTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\FindCircleTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\FindCircleTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\FindCircle\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircle.FormFindCircle.resources
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindCircle\obj\Debug\FindCircleTool.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -46,6 +46,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FindLine.cs" />
|
||||
<Compile Include="FindLineToolRun.cs" />
|
||||
<Compile Include="FormFindLine.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
@@ -68,14 +69,30 @@
|
||||
<Project>{DF3D4D4C-02DF-4F92-9FD4-0A861F64B0EF}</Project>
|
||||
<Name>DataStruct</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\HalconWindowTest\HalconWindow.csproj">
|
||||
<Project>{4ADC75AE-59C7-4D36-B675-A6CE51B6F5BA}</Project>
|
||||
<Name>HalconWindow</Name>
|
||||
<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\LogForm\LogForm.csproj">
|
||||
<Project>{6b38d68f-e77b-4761-bde5-a261ea8925dd}</Project>
|
||||
<Name>LogForm</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>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
67
FindLine/FindLineToolRun.cs
Normal file
67
FindLine/FindLineToolRun.cs
Normal file
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* Filename: FindLineToolRun
|
||||
* Description:
|
||||
*
|
||||
* Version: 1.0
|
||||
* Created: 2021/2/25 16:23:29
|
||||
*
|
||||
* Author: liu.wenjie
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
using CommonMethods;
|
||||
using CommonMethods.Interface;
|
||||
using FormLib;
|
||||
using HalconDotNet;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using ToolLib.VisionJob;
|
||||
|
||||
namespace FindLineTool
|
||||
{
|
||||
public class FindLineRun : IToolRun
|
||||
{
|
||||
public void ToolRun(string jobName, int toolIndex, int inputItemNum, TreeNode selectNode, List<IToolInfo> L_toolList)
|
||||
{
|
||||
FindLine myFindLine = (FindLine)L_toolList[toolIndex].tool;
|
||||
VisionJob myJob = VisionJobParams.pVisionProject.Project[jobName];
|
||||
for (int j = 0; j < inputItemNum; j++)
|
||||
{
|
||||
if (L_toolList[toolIndex].GetInput(L_toolList[toolIndex].toolInput[j].IOName).value == null)
|
||||
{
|
||||
selectNode.ForeColor = Color.Red;
|
||||
Logger.LoggerClass.WriteLog(L_toolList[toolIndex].toolName + " 无输入图像", Logger.MsgLevel.Exception);
|
||||
}
|
||||
else
|
||||
{
|
||||
string sourceFrom = L_toolList[toolIndex].GetInput(L_toolList[toolIndex].toolInput[j].IOName).value.ToString();
|
||||
if (L_toolList[toolIndex].toolInput[j].IOName == "InputImage")
|
||||
{
|
||||
string sourceToolName = Regex.Split(sourceFrom, " . ")[0];
|
||||
sourceToolName = sourceToolName.Substring(3, Regex.Split(sourceFrom, " . ")[0].Length - 3);
|
||||
string toolItem = Regex.Split(sourceFrom, " . ")[1];
|
||||
myFindLine.inputImage = myJob.GetToolInfoByToolName(sourceToolName).GetOutput(toolItem).value as HObject;
|
||||
}
|
||||
}
|
||||
}
|
||||
myFindLine.Run(SoftwareRunState.Release);
|
||||
if (myFindLine.toolRunStatu == ToolRunStatu.Succeed)
|
||||
{
|
||||
myFindLine.DispMainWindow(FormImageWindow.Instance.myHWindow);
|
||||
myJob.FormLogDisp(L_toolList[toolIndex].toolName + " 运行成功", Color.Green, selectNode);
|
||||
}
|
||||
else
|
||||
{
|
||||
myJob.FormLogDisp(L_toolList[toolIndex].toolName + " 运行失败", Color.Red, selectNode, Logger.MsgLevel.Exception);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
50
FindLine/FormFindLine.Designer.cs
generated
50
FindLine/FormFindLine.Designer.cs
generated
@@ -70,7 +70,10 @@
|
||||
this.btn_runFindLineTool = new System.Windows.Forms.Button();
|
||||
this.btn_moveCliperRegion = new System.Windows.Forms.Button();
|
||||
this.cbx_edgeSelect = new System.Windows.Forms.ComboBox();
|
||||
this.txbLog = new System.Windows.Forms.TextBox();
|
||||
this.statusStrip = new System.Windows.Forms.StatusStrip();
|
||||
this.lb_RunStatus = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.toolStripStatusLabel2 = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
this.lb_RunTime = new System.Windows.Forms.ToolStripStatusLabel();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
@@ -78,6 +81,7 @@
|
||||
this.groupBox3.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.statusStrip.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer1
|
||||
@@ -538,22 +542,41 @@
|
||||
this.cbx_edgeSelect.TabIndex = 317;
|
||||
this.cbx_edgeSelect.Text = "all";
|
||||
//
|
||||
// txbLog
|
||||
// statusStrip
|
||||
//
|
||||
this.txbLog.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.txbLog.Location = new System.Drawing.Point(0, 487);
|
||||
this.txbLog.Name = "txbLog";
|
||||
this.txbLog.ReadOnly = true;
|
||||
this.txbLog.Size = new System.Drawing.Size(1129, 21);
|
||||
this.txbLog.TabIndex = 274;
|
||||
this.statusStrip.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.lb_RunStatus,
|
||||
this.toolStripStatusLabel2,
|
||||
this.lb_RunTime});
|
||||
this.statusStrip.Location = new System.Drawing.Point(0, 484);
|
||||
this.statusStrip.Name = "statusStrip";
|
||||
this.statusStrip.Size = new System.Drawing.Size(1127, 24);
|
||||
this.statusStrip.TabIndex = 1;
|
||||
this.statusStrip.Text = "statusStrip1";
|
||||
//
|
||||
// lb_RunStatus
|
||||
//
|
||||
this.lb_RunStatus.Name = "lb_RunStatus";
|
||||
this.lb_RunStatus.Size = new System.Drawing.Size(0, 19);
|
||||
//
|
||||
// toolStripStatusLabel2
|
||||
//
|
||||
this.toolStripStatusLabel2.Name = "toolStripStatusLabel2";
|
||||
this.toolStripStatusLabel2.Size = new System.Drawing.Size(137, 19);
|
||||
this.toolStripStatusLabel2.Text = " ";
|
||||
//
|
||||
// lb_RunTime
|
||||
//
|
||||
this.lb_RunTime.Name = "lb_RunTime";
|
||||
this.lb_RunTime.Size = new System.Drawing.Size(0, 19);
|
||||
//
|
||||
// FormFindLine
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1127, 508);
|
||||
this.Controls.Add(this.txbLog);
|
||||
this.Controls.Add(this.statusStrip);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormFindLine";
|
||||
@@ -571,6 +594,8 @@
|
||||
this.groupBox1.PerformLayout();
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.statusStrip.ResumeLayout(false);
|
||||
this.statusStrip.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@@ -611,7 +636,6 @@
|
||||
public System.Windows.Forms.Button btn_runFindLineTool;
|
||||
private System.Windows.Forms.Button btn_moveCliperRegion;
|
||||
public System.Windows.Forms.ComboBox cbx_edgeSelect;
|
||||
public System.Windows.Forms.TextBox txbLog;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.Label label15;
|
||||
public System.Windows.Forms.TextBox tbx_Sigma;
|
||||
@@ -620,5 +644,9 @@
|
||||
private System.Windows.Forms.CheckBox chBDispRec;
|
||||
private System.Windows.Forms.Label label16;
|
||||
public System.Windows.Forms.TextBox tbx_caliperLength2;
|
||||
public System.Windows.Forms.StatusStrip statusStrip;
|
||||
private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel2;
|
||||
public System.Windows.Forms.ToolStripStatusLabel lb_RunTime;
|
||||
public System.Windows.Forms.ToolStripStatusLabel lb_RunStatus;
|
||||
}
|
||||
}
|
||||
@@ -1,219 +1,234 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using HalconWindow.HalconWindow;
|
||||
|
||||
namespace FindLineTool
|
||||
{
|
||||
public partial class FormFindLine : Form
|
||||
{
|
||||
public FindLine myFindLine = null;
|
||||
public IToolInfo myToolInfo = null;
|
||||
public HWindow_Final myHwindow = new HWindow_Final();
|
||||
/// <summary>
|
||||
/// 窗体对象实例
|
||||
/// </summary>
|
||||
private static FormFindLine _instance;
|
||||
public static FormFindLine Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if(_instance != null)
|
||||
{
|
||||
lock (_instance)
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
object line = new object();
|
||||
_instance = new FormFindLine(ref line);
|
||||
}
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
object line = new object();
|
||||
_instance = new FormFindLine(ref line);
|
||||
return _instance;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public FormFindLine(ref object findLine)
|
||||
{
|
||||
InitializeComponent();
|
||||
_instance = this;
|
||||
myToolInfo = (IToolInfo)findLine;
|
||||
myFindLine = (FindLine)myToolInfo.tool;
|
||||
//myFindLine.inputImage = ComGlobalParams.inputImageGlobal; // 暂时直接将图像传递给该工具
|
||||
myFindLine.DispImage();
|
||||
|
||||
}
|
||||
|
||||
private void FormFindLine_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.panel1.Controls.Add(myHwindow);
|
||||
myHwindow.Dock = DockStyle.Fill;
|
||||
InitTool();
|
||||
}
|
||||
|
||||
private void btn_moveCliperRegion_Click(object sender, EventArgs e)
|
||||
{
|
||||
myFindLine.UpdateImage();
|
||||
myFindLine.DrawExpectLine(myHwindow);
|
||||
}
|
||||
|
||||
|
||||
public void TextBoxMessageDisp(string mes, Color setColor)
|
||||
{
|
||||
txbLog.BackColor = setColor;
|
||||
txbLog.Text = mes;
|
||||
txbLog.Font = new Font("微软雅黑", 10, FontStyle.Bold);
|
||||
// CommonMethods.CommonMethods.Delay(2000);
|
||||
txbLog.BackColor = Color.White;
|
||||
}
|
||||
|
||||
private void btn_runFindLineTool_Click(object sender, EventArgs e)
|
||||
{
|
||||
// 更改界面中参数,实时更新类中参数
|
||||
myFindLine.expectLineStartRow = Convert.ToDouble(tbx_expectLineStartRow.Text.Trim());
|
||||
myFindLine.expectLineStartCol = Convert.ToDouble(tbx_expectLineStartCol.Text.Trim());
|
||||
myFindLine.expectLineEndRow = Convert.ToDouble(tbx_expectLineEndRow.Text.Trim());
|
||||
myFindLine.expectLineEndCol = Convert.ToDouble(tbx_expectLineEndCol.Text.Trim());
|
||||
// 运行参数
|
||||
myFindLine.minScore = Convert.ToDouble(tbx_minScore.Text.Trim());
|
||||
myFindLine.cliperNum = Convert.ToInt16(tbx_caliperNum.Text.Trim());
|
||||
myFindLine.threshold = Convert.ToInt16(tbx_threshold.Text.Trim());
|
||||
myFindLine.length = Convert.ToInt16(tbx_caliperLength.Text.Trim());
|
||||
myFindLine.weidth = Convert.ToInt16(tbx_caliperLength2.Text.Trim());
|
||||
myFindLine.polarity = cbx_polarity.SelectedItem.ToString() == "从明到暗" ? "negative":"positive";
|
||||
myFindLine.edgeSelect = cbx_edgeSelect.SelectedItem.ToString();
|
||||
myFindLine.sigma = Convert.ToDouble(tbx_Sigma.Text.Trim());
|
||||
// Run
|
||||
myFindLine.Run(SoftwareRunState.Debug);
|
||||
}
|
||||
|
||||
public void InitTool()
|
||||
{
|
||||
this.Text = myToolInfo.toolName;
|
||||
btn_runFindLineTool.Focus();
|
||||
Application.DoEvents();
|
||||
|
||||
//myFindLine.Run(); //运行一下,使卡尺显示出来
|
||||
|
||||
tbx_expectLineStartRow.Text = myFindLine.expectLineStartRow.ToString();
|
||||
tbx_expectLineStartCol.Text = myFindLine.expectLineStartCol.ToString();
|
||||
tbx_expectLineEndRow.Text = myFindLine.expectLineEndRow.ToString();
|
||||
tbx_expectLineEndCol.Text = myFindLine.expectLineEndCol.ToString();
|
||||
cbx_edgeSelect.Text = myFindLine.edgeSelect;
|
||||
tbx_minScore.Text = myFindLine.minScore.ToString();
|
||||
cbx_polarity.Text = myFindLine.polarity == "positive" ? "从暗到明" : "从明到暗";
|
||||
tbx_caliperNum.Text = myFindLine.cliperNum.ToString();
|
||||
tbx_caliperLength.Text = myFindLine.length.ToString();
|
||||
tbx_threshold.Text = myFindLine.threshold.ToString();
|
||||
tbx_Sigma.Text = myFindLine.sigma.ToString();
|
||||
tbx_caliperLength2.Text = myFindLine.weidth.ToString();
|
||||
chBDispRec.Checked = myFindLine.dispRec;
|
||||
chBDispCross.Checked = myFindLine.dispCross;
|
||||
}
|
||||
|
||||
#region 输入检查
|
||||
private void tbx_expectLineStartRow_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineStartRow = Convert.ToDouble(tbx_expectLineStartRow.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
TextBoxMessageDisp("输入了非法字符,已自动替换为默认值:200", Color.Red);
|
||||
tbx_expectLineStartRow.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineStartCol_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineStartCol = Convert.ToDouble(tbx_expectLineStartCol.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
TextBoxMessageDisp("输入了非法字符,已自动替换为默认值:200", Color.Red);
|
||||
tbx_expectLineStartCol.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineEndRow_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineEndRow = Convert.ToDouble(tbx_expectLineEndRow.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
TextBoxMessageDisp("输入了非法字符,已自动替换为默认值:200", Color.Red);
|
||||
tbx_expectLineEndRow.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineEndCol_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineEndCol = Convert.ToDouble(tbx_expectLineEndCol.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
TextBoxMessageDisp("输入了非法字符,已自动替换为默认值:600", Color.Red);
|
||||
tbx_expectLineEndCol.Text = "600";
|
||||
}
|
||||
}
|
||||
|
||||
private void chBDispRec_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(chBDispRec.Checked)
|
||||
{
|
||||
myFindLine.dispRec = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
myFindLine.dispRec = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void chBDispCross_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(chBDispCross.Checked)
|
||||
{
|
||||
myFindLine.dispCross = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
myFindLine.dispCross = false;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
private void FormFindLine_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
myHwindow.Dispose();
|
||||
this.Dispose();
|
||||
this.Dispose();
|
||||
GC.Collect();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using CommonMethods;
|
||||
using HalconDotNet;
|
||||
using ChoiceTech.Halcon.Control;
|
||||
|
||||
namespace FindLineTool
|
||||
{
|
||||
public partial class FormFindLine : Form
|
||||
{
|
||||
public FindLine myFindLine = null;
|
||||
public IToolInfo myToolInfo = null;
|
||||
public HWindow_Final myHwindow = new HWindow_Final();
|
||||
/// <summary>
|
||||
/// 窗体对象实例
|
||||
/// </summary>
|
||||
private static FormFindLine _instance;
|
||||
public static FormFindLine Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if(_instance != null)
|
||||
{
|
||||
lock (_instance)
|
||||
{
|
||||
if (_instance == null)
|
||||
{
|
||||
object line = new object();
|
||||
_instance = new FormFindLine(ref line);
|
||||
}
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
object line = new object();
|
||||
_instance = new FormFindLine(ref line);
|
||||
return _instance;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public FormFindLine(ref object findLine)
|
||||
{
|
||||
InitializeComponent();
|
||||
_instance = this;
|
||||
if(findLine.GetType().FullName != "System.Object")
|
||||
{
|
||||
myToolInfo = (IToolInfo)findLine;
|
||||
myFindLine = (FindLine)myToolInfo.tool;
|
||||
//myFindLine.inputImage = ComGlobalParams.inputImageGlobal; // 暂时直接将图像传递给该工具
|
||||
myFindLine.DispImage();
|
||||
}
|
||||
}
|
||||
|
||||
private void FormFindLine_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.panel1.Controls.Add(myHwindow);
|
||||
myHwindow.Dock = DockStyle.Fill;
|
||||
InitTool();
|
||||
}
|
||||
|
||||
private void btn_moveCliperRegion_Click(object sender, EventArgs e)
|
||||
{
|
||||
myFindLine.UpdateImage();
|
||||
myFindLine.DrawExpectLine(myHwindow);
|
||||
}
|
||||
|
||||
private void btn_runFindLineTool_Click(object sender, EventArgs e)
|
||||
{
|
||||
// 更改界面中参数,实时更新类中参数
|
||||
myFindLine.expectLineStartRow = Convert.ToDouble(tbx_expectLineStartRow.Text.Trim());
|
||||
myFindLine.expectLineStartCol = Convert.ToDouble(tbx_expectLineStartCol.Text.Trim());
|
||||
myFindLine.expectLineEndRow = Convert.ToDouble(tbx_expectLineEndRow.Text.Trim());
|
||||
myFindLine.expectLineEndCol = Convert.ToDouble(tbx_expectLineEndCol.Text.Trim());
|
||||
// 运行参数
|
||||
myFindLine.minScore = Convert.ToDouble(tbx_minScore.Text.Trim());
|
||||
myFindLine.cliperNum = Convert.ToInt16(tbx_caliperNum.Text.Trim());
|
||||
myFindLine.threshold = Convert.ToInt16(tbx_threshold.Text.Trim());
|
||||
myFindLine.length = Convert.ToInt16(tbx_caliperLength.Text.Trim());
|
||||
myFindLine.weidth = Convert.ToInt16(tbx_caliperLength2.Text.Trim());
|
||||
myFindLine.polarity = cbx_polarity.SelectedItem.ToString() == "从明到暗" ? "negative":"positive";
|
||||
myFindLine.edgeSelect = cbx_edgeSelect.SelectedItem.ToString();
|
||||
myFindLine.sigma = Convert.ToDouble(tbx_Sigma.Text.Trim());
|
||||
// Run
|
||||
myFindLine.Run(SoftwareRunState.Debug);
|
||||
}
|
||||
|
||||
public void InitTool()
|
||||
{
|
||||
this.Text = myToolInfo.toolName;
|
||||
btn_runFindLineTool.Focus();
|
||||
Application.DoEvents();
|
||||
|
||||
//myFindLine.Run(); //运行一下,使卡尺显示出来
|
||||
|
||||
tbx_expectLineStartRow.Text = myFindLine.expectLineStartRow.ToString();
|
||||
tbx_expectLineStartCol.Text = myFindLine.expectLineStartCol.ToString();
|
||||
tbx_expectLineEndRow.Text = myFindLine.expectLineEndRow.ToString();
|
||||
tbx_expectLineEndCol.Text = myFindLine.expectLineEndCol.ToString();
|
||||
cbx_edgeSelect.Text = myFindLine.edgeSelect;
|
||||
tbx_minScore.Text = myFindLine.minScore.ToString();
|
||||
cbx_polarity.Text = myFindLine.polarity == "positive" ? "从暗到明" : "从明到暗";
|
||||
tbx_caliperNum.Text = myFindLine.cliperNum.ToString();
|
||||
tbx_caliperLength.Text = myFindLine.length.ToString();
|
||||
tbx_threshold.Text = myFindLine.threshold.ToString();
|
||||
tbx_Sigma.Text = myFindLine.sigma.ToString();
|
||||
tbx_caliperLength2.Text = myFindLine.weidth.ToString();
|
||||
chBDispRec.Checked = myFindLine.dispRec;
|
||||
chBDispCross.Checked = myFindLine.dispCross;
|
||||
}
|
||||
/// <summary>
|
||||
/// 设定工具运行状态
|
||||
/// </summary>
|
||||
/// <param name="msg">运行中的信息</param>
|
||||
/// <param name="status">运行状态</param>
|
||||
public void SetToolStatus(string msg, ToolRunStatu status)
|
||||
{
|
||||
if(myFindLine!=null)
|
||||
{
|
||||
myFindLine.runMessage = msg;
|
||||
myFindLine.toolRunStatu = status;
|
||||
lb_RunStatus.Text = myFindLine.toolRunStatu == ToolRunStatu.Succeed ? "工具运行成功!" : $"工具运行异常, 异常原因:{myFindLine.runMessage}";
|
||||
lb_RunTime.Text = myFindLine.runTime;
|
||||
if (myFindLine.toolRunStatu == ToolRunStatu.Succeed)
|
||||
{
|
||||
statusStrip.BackColor = Color.LimeGreen;
|
||||
}
|
||||
else
|
||||
{
|
||||
statusStrip.BackColor = Color.Red;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region 输入检查
|
||||
private void tbx_expectLineStartRow_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineStartRow = Convert.ToDouble(tbx_expectLineStartRow.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
SetToolStatus("输入了非法字符,已自动替换为默认值:200", ToolRunStatu.Input_Value_Type_Error);
|
||||
tbx_expectLineStartRow.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineStartCol_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineStartCol = Convert.ToDouble(tbx_expectLineStartCol.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
SetToolStatus("输入了非法字符,已自动替换为默认值:200", ToolRunStatu.Input_Value_Type_Error);
|
||||
tbx_expectLineStartCol.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineEndRow_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineEndRow = Convert.ToDouble(tbx_expectLineEndRow.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
SetToolStatus("输入了非法字符,已自动替换为默认值:200", ToolRunStatu.Input_Value_Type_Error);
|
||||
tbx_expectLineEndRow.Text = "200";
|
||||
}
|
||||
}
|
||||
|
||||
private void tbx_expectLineEndCol_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
myFindLine.expectLineEndCol = Convert.ToDouble(tbx_expectLineEndCol.Text.Trim());
|
||||
}
|
||||
catch
|
||||
{
|
||||
SetToolStatus("输入了非法字符,已自动替换为默认值:600", ToolRunStatu.Input_Value_Type_Error);
|
||||
tbx_expectLineEndCol.Text = "600";
|
||||
}
|
||||
}
|
||||
|
||||
private void chBDispRec_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(chBDispRec.Checked)
|
||||
{
|
||||
myFindLine.dispRec = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
myFindLine.dispRec = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void chBDispCross_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if(chBDispCross.Checked)
|
||||
{
|
||||
myFindLine.dispCross = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
myFindLine.dispCross = false;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
private void FormFindLine_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
myHwindow.Dispose();
|
||||
this.Dispose();
|
||||
this.Dispose();
|
||||
GC.Collect();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -117,6 +117,9 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
@@ -1,34 +1,34 @@
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\FindLineTool.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\FindLineTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\CommonMethods.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\ToolBase.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\CommonMethods.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\ToolBase.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.FormFindLine.resources
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\FindLineTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\FindLineTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\ToolBase.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\ToolBase.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.FormFindLine.resources
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\FindLineTool.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\FindLineTool.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\CommonMethods.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\DataStruct.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\halcondotnet.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\HalconWindow.exe
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\ToolBase.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\CommonMethods.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\DataStruct.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\HalconWindow.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\ToolBase.pdb
|
||||
F:\VSCode\VisionEditTest\FindLine\bin\Debug\halcondotnet.xml
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.csprojResolveAssemblyReference.cache
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.FormFindLine.resources
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.csproj.GenerateResource.Cache
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.dll
|
||||
F:\VSCode\VisionEditTest\FindLine\obj\Debug\FindLineTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\FindLineTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\FindLineTool.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\CommonMethods.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\DataStruct.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\halcondotnet.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\HalconWindow.exe
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\ToolBase.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\CommonMethods.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\DataStruct.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\HalconWindow.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\ToolBase.pdb
|
||||
G:\VisionEdit\VisionEdit\FindLine\bin\Debug\halcondotnet.xml
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.csprojResolveAssemblyReference.cache
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.FormFindLine.resources
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.csproj.GenerateResource.Cache
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.dll
|
||||
G:\VisionEdit\VisionEdit\FindLine\obj\Debug\FindLineTool.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
80
FormLib/FormImageWindow.cs.Designer.cs
generated
Normal file
80
FormLib/FormImageWindow.cs.Designer.cs
generated
Normal file
@@ -0,0 +1,80 @@
|
||||
namespace FormLib
|
||||
{
|
||||
partial class FormImageWindow
|
||||
{
|
||||
/// <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(FormImageWindow));
|
||||
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// comboBox1
|
||||
//
|
||||
this.comboBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.comboBox1.FormattingEnabled = true;
|
||||
this.comboBox1.Location = new System.Drawing.Point(0, 0);
|
||||
this.comboBox1.Name = "comboBox1";
|
||||
this.comboBox1.Size = new System.Drawing.Size(899, 28);
|
||||
this.comboBox1.TabIndex = 3;
|
||||
//
|
||||
// panel1
|
||||
//
|
||||
this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panel1.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.panel1.Location = new System.Drawing.Point(0, 28);
|
||||
this.panel1.Name = "panel1";
|
||||
this.panel1.Size = new System.Drawing.Size(899, 552);
|
||||
this.panel1.TabIndex = 2;
|
||||
//
|
||||
// FormImageWindow
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(899, 580);
|
||||
this.Controls.Add(this.comboBox1);
|
||||
this.Controls.Add(this.panel1);
|
||||
this.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FormImageWindow";
|
||||
this.Text = "图像";
|
||||
this.Load += new System.EventHandler(this.FormImageWindow_Load);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.ComboBox comboBox1;
|
||||
private System.Windows.Forms.Panel panel1;
|
||||
}
|
||||
}
|
||||
44
FormLib/FormImageWindow.cs.cs
Normal file
44
FormLib/FormImageWindow.cs.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using ChoiceTech.Halcon.Control;
|
||||
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 WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace FormLib
|
||||
{
|
||||
public partial class FormImageWindow : DockContent
|
||||
{
|
||||
public HWindow_Final myHWindow = new HWindow_Final();
|
||||
public FormImageWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
_instance = this;
|
||||
}
|
||||
public string m_fileName = string.Empty;
|
||||
/// <summary>
|
||||
/// 窗体对象实例
|
||||
/// </summary>
|
||||
private static FormImageWindow _instance;
|
||||
public static FormImageWindow Instance
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_instance == null)
|
||||
_instance = new FormImageWindow();
|
||||
return _instance;
|
||||
}
|
||||
}
|
||||
|
||||
private void FormImageWindow_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.panel1.Controls.Add(myHWindow);
|
||||
myHWindow.Dock = DockStyle.Fill;
|
||||
}
|
||||
}
|
||||
}
|
||||
3593
FormLib/FormImageWindow.cs.resx
Normal file
3593
FormLib/FormImageWindow.cs.resx
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user