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()

 //在CogDisplay1中显示文字

 //需要引用的空间

 using Cognex.VisionPro;

 using Cognex.VisionPro.Display;

 //实现方法

  private void Create_Font(CogDisplay MyDisplay, string Font, int FontSize,

    double X, double Y, string Label, CogColorConstants Mycolor,

    CogGraphicLabelAlignmentConstants MyAlignment, string GroupName)

 {

 //创建窗体显示字符串标签

             CogGraphicLabel MyLabel = new CogGraphicLabel();

 //创建窗体显示字体格式

             Font MyFont = new Font(Font, FontSize, FontStyle.Regular);

             MyLabel.GraphicDOFEnableBase = CogGraphicDOFConstants.None;

             MyLabel.Interactive = false;

             MyLabel.Font = MyFont;//设置标签的字体属性

             MyLabel.Color = Mycolor;//设置显示标签的额字体显示颜色

             MyLabel.Alignment = MyAlignment;//对齐方式

             MyLabel.SetXYText(X, Y, Label);//文字显示坐标

 //将文字显示在CogDisplay1的活动图层上

             MyDisplay.InteractiveGraphics.Add(MyLabel, GroupName, false);

   }

//将文本图层显示在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

VisionPro控件的使用 C# 开发篇的更多相关文章

  1. atitit. applet 浏览器插件 控件 的环境,开发,提示总结o9o

    atitit. applet 浏览器插件 控件 的环境,开发,提示总结o9o 1. 建立applet:: 1 2. Applet 码 1 3. Applet (awt)跟japplet (swing) ...

  2. Android 开源控件与常用开发框架开发工具类

    Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...

  3. SNF开发平台WinForm之三-开发-单表选择控件创建-SNF快速开发平台3.3-Spring.Net.Framework

    3.1运行效果: 3.2开发实现: 3.2.1 这个开发与第一个开发操作步骤是一致的,不同之处就是在生成完代码之后,留下如下圈红程序,其它删除. 第一个开发地址:开发-单表表格编辑管理页面 http: ...

  4. 用VS2017进行移动开发(C#、VB.NET)——Progress控件,Smobiler移动开发

    Progress控件 一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个Progress控件到窗体界面上 修改Pr ...

  5. 用VS2017进行移动开发(C#、VB.NET)——OfflineCameraButton控件,Smobiler移动开发

    OfflineCameraButton控件 一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个OfflineCam ...

  6. SNF开发平台WinForm之十五-时间轴控件使用-SNF快速开发平台3.3-Spring.Net.Framework

    一.显示效果如下: 二.在控件库里选择UCTimeAxis 拖拽到窗体里. 三.加入以下代码,在load事件里进行调用就可以运行了. #region 给时间轴控件加载数据 private void U ...

  7. webbrowser控件——Windows下的开发利器

    首先说明,本人比较菜,做C++没多长时间. 刚开始用MFC写程序时,连个基本的字体都不会变(颜色.大小等), 索性干脆就啥也不改了,直接默认,界面就那样了,老子不管了. 心想这C++做个界面咋就那么麻 ...

  8. 实现窗体随着鼠标移动(控件)--《用delphi开发共享软件》-15.1任务管理器

    private //窗体移动: OldPos,NewPos:TPoint; bMove:Boolean; procedure TForm1.FormMouseDown(Sender: TObject; ...

  9. DevExpress控件使用方法:第一篇 gridControl详解

    GridControl (1)层次设计器 有五种视图模式,banded gridview多行表头,数据还是一行一组,最靠近数据的表头与数据一一对应:advanced banded gridview多行 ...

随机推荐

  1. CodeForces 1000C Covered Points Count(区间线段覆盖问题,差分)

    https://codeforces.com/problemset/problem/1000/C 题意: 有n个线段,覆盖[li,ri],最后依次输出覆盖层数为1~n的点的个数. 思路: 区间线段覆盖 ...

  2. 基于表单的web暴力破解

    暴力破解 概述 连续性尝试+字典+自动化 如果一个网站没有对登录接口实施防暴力破解的措施,或者实施了不合理的措施,则该网站存在暴力破解漏洞. 是否要求用户设置了复杂的密码 是否每次认证都是用安全的验证 ...

  3. UML-GRASP后4种模式

    1.多态 1).什么是多态 问题:if-else耦合度过高 解决: 方法1:接口 方法2:超类里需多态的方法前加上{abstract} 2).相关模式 防止异变 大量GoF,如适配器(Adapter) ...

  4. [RoarCTF 2019]Easy Java

    0x01知识点: WEB-INF/web.xml泄露 WEB-INF主要包含一下文件或目录: /WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命 ...

  5. Linux--Centos7开启关闭端口

    参考 http://blog.csdn.net/u013410747/article/details/61696178 查看已开放的端口(默认不开放任何端口)    firewall-cmd --li ...

  6. Docker部署zookeeper集群和kafka集群,实现互联

    本文介绍在单机上通过docker部署zookeeper集群和kafka集群的可操作方案. 0.准备工作 创建zk目录,在该目录下创建生成zookeeper集群和kafka集群的yml文件,以及用于在该 ...

  7. 1. laravel 学习 环境搭建

    1. 项目环境 vagrant + laradock  (因为 自己手动搭建环境太麻烦了 自己弄了一下 感觉还是有些漏洞 所以采用 laradock) 2. Vagrantfile 备注 : box  ...

  8. 【网易官方】极客战记(codecombat)攻略-森林-盐碱地salted-earth

    保卫森林定居点开始. 简介 这个关卡引入了布尔 “or” 的概念. 在两个布尔值之间放置一个 or 将返回一个布尔值,就像 + 需要 2 个数字并且吐出另一个数字一样. 如果前或后的值为 true,则 ...

  9. Postgresql的导表

    背景 前面已经介绍了常用的备份与恢复了,接下来介绍一下导表. 正文 很多情况,会有把数据导出的需求,轻重缓急总会有特别紧急的情况,但是又不是专业干db的人,还是记录下来,以防不时之需. 针对于导表,个 ...

  10. 独立t检验

    方差相同个数相同的独立t检验 5.某饲料厂要比较A.B两种配合饲料在养猪生产中的效果,选取12头情况相似的猪,随机分成两组,分别饲喂两种配合饲料,其60天增重(单位:kg)见下表. 饲 料 60d增重 ...