1.方法一:工具
引用:spa
using Cognex.VisionPro; using Cognex.VisionPro.ToolBlock; using Cognex.VisionPro.Exceptions; using Cognex.VisionPro.PMAlign; using Cognex.VisionPro.Display; using System.Drawing; using Cognex.VisionPro.CalibFix;
//新增工具 public void VisionPro_Add() { //實例化工具 CogToolBlock CogToolBlock1 = new CogToolBlock(); CogPMAlignTool CogPMAlignTool1 = new CogPMAlignTool(); CogFixtureTool CogFixtureTool1 = new CogFixtureTool(); CogPMAlignTool CogPMAlignTool2 = new CogPMAlignTool(); //將工具單獨保存在加載 CogPMAlignTool CogPMAlignTool3 = new CogPMAlignTool(); CogPMAlignTool3 = CogSerializer.LoadObjectFromFile(@"E:\CogPMAlignTool1.vtt") as CogPMAlignTool; //給工具命名 CogToolBlock1.Name = "CogToolBlock1"; CogPMAlignTool1.Name = "CogPMAlignTool1"; CogFixtureTool1.Name = "CogFixtureTool1"; CogPMAlignTool2.Name = "CogPMAlignTool2"; //將工具添加到CogToolBlock工具中再保存CogToolBlock工具 CogToolBlock1.Tools.Add(CogPMAlignTool1); CogToolBlock1.Tools.Add(CogFixtureTool1); CogToolBlock1.Tools.Add(CogPMAlignTool2); CogSerializer.SaveObjectToFile(CogToolBlock1, @"E:\ToolBlock2.vpp"); MessageBox.Show("保存成功"); }
結果:code
方法二:添加工具輸出項blog
//新增工具 public void VisionPro_Add() { //實例化工具 CogToolBlock CogToolBlock1 = new CogToolBlock(); CogPMAlignTool CogPMAlignTool1 = new CogPMAlignTool(); CogFixtureTool CogFixtureTool1 = new CogFixtureTool(); CogPMAlignTool CogPMAlignTool2 = new CogPMAlignTool(); //將工具單獨保存在加載 CogPMAlignTool CogPMAlignTool3 = new CogPMAlignTool(); CogPMAlignTool3 = CogSerializer.LoadObjectFromFile(@"E:\CogPMAlignTool1.vtt") as CogPMAlignTool; //給工具命名 CogToolBlock1.Name = "CogToolBlock1"; CogPMAlignTool1.Name = "CogPMAlignTool1"; CogFixtureTool1.Name = "CogFixtureTool1"; CogPMAlignTool2.Name = "CogPMAlignTool2"; string[] s1 = new string[1]; string[] s2 = new string[5]; s1[0] = "|InputImage|InputImage"; s2[0] = "| Results.Item[0].GetPose() | Results.Item[0].GetPose()"; s2[1] = "|Results.Item[0].GetPose().TranslationX|Results.Item[0].GetPose().TranslationX"; s2[2] = "|Results.Item[0].GetPose().TranslationX|Results.Item[0].GetPose().TranslationY"; s2[3] = "|Results.Item[0].GetPose().Rotation|Results.Item[0].GetPose().Rotation"; s2[4] = "|Results.Item[0].Score|Results.Item[0].Score"; CogPMAlignTool1.UserData.Add("_ToolInputTerminals", s1);//添加終端-InputImage CogPMAlignTool1.UserData.Add("_ToolOutputTerminals", s2); //將工具添加到CogToolBlock工具中再保存CogToolBlock工具 CogToolBlock1.Tools.Add(CogPMAlignTool1); CogToolBlock1.Tools.Add(CogFixtureTool1); CogToolBlock1.Tools.Add(CogPMAlignTool2); CogSerializer.SaveObjectToFile(CogToolBlock1, @"E:\ToolBlock2.vpp"); MessageBox.Show("保存成功"); }
方法三:單獨保存工具再去加載string
系統工具默認地址:io
保存工具模板模板
點擊右鍵保存工具模板(.vtt)文件class
//加載系統初始工具 CogPMAlignTool CogPMAlignTool1 = CogSerializer.LoadObjectFromFile(@"C:\Program Files\Cognex\VisionPro\bin\Templates\Tools\C#\CogPMAlignTool.vtt") as CogPMAlignTool; CogPMAlignTool CogPMAlignTool2 = CogSerializer.LoadObjectFromFile(@"C:\Program Files\Cognex\VisionPro\bin\Templates\Tools\C#\CogPMAlignTool.vtt") as CogPMAlignTool; CogFixtureTool CogFixtureTool1 = CogSerializer.LoadObjectFromFile(@"C:\Program Files\Cognex\VisionPro\bin\Templates\Tools\C#\CogFixtureTool.vtt") as CogFixtureTool; CogToolBlock CogToolBlock1 = CogSerializer.LoadObjectFromFile(@"C:\Program Files\Cognex\VisionPro\bin\Templates\Tools\C#\CogToolBlock.vtt") as CogToolBlock;