VisionPro控件的使用 C# 開發篇

VisionPro 經常使用控件的說明編程

工具設置窗體ide

CogPMAlignEditV2  [ 模版匹配設置窗體控件 ]工具

CogPMAlignEditV2.Subject : 工具關聯對象 字體

如:CogPMAlignEditV2.Subject = CogPMAlignTool1;orm

CogPMAlignTool1 的類型爲CogPMAlignTool對象

CogFixtureEditV2   [ 座標定位設置窗體控件 ]  圖片

CogFixtureEditV2.Subject : 工具關聯對象 字符串

如:CogFixtureEditV2.Subject = CogFixtureTool1;string

CogFixtureTool1的類型爲CogFixtureToolit

CogCalibNPointToNPointEditV2  [  N點座標矯正設置窗體控件 ] 

CogCalibNPointToNPointEditV2.Subject : 工具關聯對象 

如:CogCalibNPointToNPointEditV2.Subject = CogCalibNPointToNPointTool1;

CogCalibNPointToNPointTool1的類型爲CogCalibNPointToNPointTool

其中:

未矯正X : 像素座標X

未矯正Y : 像素座標Y

原始的已校訂X : 物理座標 X

原始的已校訂Y : 物理座標 Y

CogFindCircleEditV2  [ 圓形尋找設置窗體控件 ] 

CogFindCircleEditV2.Subject : 工具關聯對象 

如:CogFindCircleEditV2.Subject = CogFindCircleTool1;

CogFindCircleTool1的類型爲CogFindCircleTool

CogAcqFifoEditV2  [ 相機信息設置窗體控件 ]

CogAcqFifoEditV2.Subject : 工具關聯對象 

如:CogAcqFifoEditV2.Subject = CogAcqFifoTool1;

CogAcqFifoTool1的類型爲CogAcqFifoTool

CogImageFileEditV2 [ 圖像文件設置窗體控件 ] 

CogImageFileEditV2.Subject : 工具關聯對象 

如:CogImageFileEditV2.Subject = CogImageFileTool1;

CogImageFileTool1的類型爲CogImageFileTool

cogToolGroupEditV21 [ 工具組管理設置窗體控件 ]

cogToolGroupEditV21.Subject : 工具關聯對象 

如:cogToolGroupEditV21.Subject = cogToolGroupTool1;

cogToolGroupTool1的類型爲cogToolGroupTool

顯示控件

CogDisplay [ 圖像顯示窗體控件 ] 

顯示圖片:cogDisplay1.Image = image;

獲取圖片:image = cogDisplay1.Image;

附: image  à 圖片變量 (類型爲 ICogImage)

//顯示圖層清空

cogDisplay1.StaticGraphics.Clear();

cogDisplay1.InteractiveGraphics.Clear()

 1 //在CogDisplay1中顯示文字
 2 //須要引用的空間
 3   
 4   using Cognex.VisionPro;
 5   
 6   using Cognex.VisionPro.Display;
 7   
 8   //實現方法 
 9   private void Create_Font(CogDisplay MyDisplay, string Font, int FontSize,
10  
11     double X, double Y, string Label, CogColorConstants Mycolor,
12  
13     CogGraphicLabelAlignmentConstants MyAlignment, string GroupName)
14  
15  {
16  
17  //建立窗體顯示字符串標籤
18  
19              CogGraphicLabel MyLabel = new CogGraphicLabel();
20  
21  //建立窗體顯示字體格式
22  
23              Font MyFont = new Font(Font, FontSize, FontStyle.Regular);
24  
25   
26  
27              MyLabel.GraphicDOFEnableBase = CogGraphicDOFConstants.None;
28  
29              MyLabel.Interactive = false;
30  
31              MyLabel.Font = MyFont;//設置標籤的字體屬性
32  
33              MyLabel.Color = Mycolor;//設置顯示標籤的額字體顯示顏色
34  
35              MyLabel.Alignment = MyAlignment;//對齊方式
36  
37              MyLabel.SetXYText(X, Y, Label);//文字顯示座標
38  
39   
40  
41  //將文字顯示在CogDisplay1的活動圖層上
42  
43              MyDisplay.InteractiveGraphics.Add(MyLabel, GroupName, false);
44  
45    }

//將文本圖層顯示在CogDisplay1的靜態圖層上

CogDisplay1.StaticGraphics.Add(CogPMAlignTool1.Results.Item(0).CreateResultGraphics(CogPMAlignResultGraphicConstants.CoordinateAxes), "");

附:CogPMAlignTool1 à 匹配工具(下文有說明)

CogPMAlignTool1.Results.Item(0).CreateResultGraphics(CogPMAlignResultGraphicConstants.CoordinateAxes) :意思是建立一個匹配工具的結果圖層,這個圖層是用來顯示一中心座標得出來的座標軸

VisionPro 工具組文件的使用

工具組的創建

打開VisionPro,雙擊「CogJob1」(這裏以CogJob1爲列)

在「VisionPro 工具」中選擇「CogToolGroup」工具組工具,將其拖到工具表中

而後雙擊「CogToolGroup」中,在「CogToolGroup1「中添加你須要的工具。

添加完工具並設置配置後,點擊保存成工做組文件。

工具組的編程加載

在程序的編寫中,須要加載工具組文件

在C#中VisionPro提供出來的工具組文件進行加載的方法爲

//須要引用的空間

using Cognex.VisionPro.ToolGroup;

//實現代碼

object toolgroup = CogSerializer.LoadObjectFromFile(path);

CogToolGroup ToolGroup1 = toolgroup as CogToolGroup;

path : 加載工具組文件的物理路徑。

如「C:\Users\Administrator\Desktop\Temp\PMAlignTool.vpp」。 

工具組的編程保存

CogSerializer.SaveObjectToFile(ToolGroup1,path,typeof(System.Runtime.Serialization.Formatters.Soap.SoapFormatter), CogSerializationOptionsConstants.Minimum);

ToolGroup1:須要保存的工具組

path : 保存工具組文件的物理路徑 

工具組的各子工具的編程關聯(這樣作的話就更靈活的操做組中的工具數據)

//引用的空間

using Cognex.VisionPro;

using Cognex.VisionPro.PMAlign;

CogAcqFifoTool CogAcqFifoTool1 = ToolGroup1.Tools["CogAcqFifoTool1"] as CogAcqFifoTool ; //關聯相機工具

CogAcqFifoTool1.OutputImage //工具輸出的圖像,類型爲ICogImage

CogAcqFifoTool1.Run()    //運行工具,這裏運行後相機獲取一張圖片,能夠經過OutImage獲取

CogPMAlignTool CogPMAlignTool1 = ToolGroup1.Tools["CogPMAlignTool1"] as CogPMAlignTool ; //關聯模版匹配工具

CogPMAlignTool1.InputImage //工具輸入的圖像,注意的是這個工具用的8位的灰度圖像。

CogPMAlignTool1.Run()      //運行工具,對輸入的圖像進行模版匹配

CogCalibNPointToNPointTool CogCalibNPointToNPointTool1=

ToolGroup1.Tools["CogCalibNPointToNPointTool1"]

as CogCalibNPointToNPointTool; //關聯模版匹配工具

CogCalibNPointToNPointTool1.InputImage  //工具輸入的圖像

CogCalibNPointToNPointTool1.OutputImage //工具輸出矯正後的圖像,類型爲ICogImage

CogCalibNPointToNPointTool1.Run()//運行工具,對輸入的圖像進行矯正計算

附:ICogImage類型的圖像能夠強轉換爲8位的灰度圖像,如:

     CogImage8Grey image8grey = image As CogImage8Grey; //image 的類型爲 ICogImage

相關文章
相關標籤/搜索