VisionPro 常用控件的說明 C# 開發

VisionPro 常用控件的說明

工具設置窗體

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

 

 

 

CogPMAlignEditV2.Subject : 工具關聯對象 

如:CogPMAlignEditV2.Subject = CogPMAlignTool1;

CogPMAlignTool1 的類型爲CogPMAlignTool

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

 

 

 

CogFixtureEditV2.Subject : 工具關聯對象 

如:CogFixtureEditV2.Subject = CogFixtureTool1;

CogFixtureTool1的類型爲CogFixtureTool

 

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

複製代碼

 

 

//將文本圖層顯示在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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章