zoukankan      html  css  js  c++  java
  • 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   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:UsersAdministratorDesktopTempPMAlignTool.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

  • 相关阅读:
    【状压】孤岛营救问题
    【网络流】魔术球问题
    【状压】软件补丁问题
    [网络流]最大流
    [网络流]小M的作物
    简单版AC自动机
    KMP
    sql 检索字符串
    Mysql触发器 :当一个表发生插入或更新时,将数据同步到另一张表中
    sql server触发器 :当一个表发生插入或更新时,将数据同步到另一张表中
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/14464155.html
Copyright © 2011-2022 走看看