C# + VisionPro Job 内置事件用法

复制代码
using Cognex.VisionPro;
using Cognex.VisionPro.Caliper;
using Cognex.VisionPro.Comm;
using Cognex.VisionPro.FGGigE;
using Cognex.VisionPro.QuickBuild;
using Cognex.VisionPro.ResultsAnalysis;
using Cognex.VisionPro.ToolGroup;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace VPPDemo
{
    public partial class Form1 : Form
    {
        private const int INFO_OK = 0;
        private const int INFO_ERR = -1;

        CogJobManager cogJobManager;
        CogFindCircleTool cogFindCircleTool;
        CogToolGroup cogToolGroup;
        CogAcqFifoTool cogAcqFifoTool;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            string path = @"C:\Users\Administrator\Desktop\QuickBuild1.vpp"; //VPP绝对地址
            cogJobManager = (CogJobManager)CogSerializer.LoadObjectFromFile(path);//加载VPP文件并序列化
            cogToolGroup = cogJobManager.Job(0).VisionTool as CogToolGroup; //获取Job中的工具组0
            cogJobManager.Job(0).Running += new CogJob.CogJobRunningEventHandler(Job_Running); //注册事件
            cogJobManager.Job(0).Stopped += new CogJob.CogJobStoppedEventHandler(Job_Stopped); //注册事件
            cogAcqFifoTool = cogToolGroup.Tools["CogAcqFifoTool1"] as CogAcqFifoTool; //获取工具组中的CogFindCircleTool1
        }

        private void Job_Running(object sender,CogJobActionEventArgs e)
        {
            Console.WriteLine("Job running......");
        }

        private void Job_Stopped(object sender, CogJobActionEventArgs e)
        {
            Console.WriteLine("Job stopped......");
        }

        private void Form1_Running(object sender, CogJobActionEventArgs e)
        {
           
        }

        private void button1_Click(object sender, EventArgs e)
        {
            cogJobManager.Job(0).Run();
            cogRecordDisplay1.Image = cogAcqFifoTool.OutputImage;
            cogRecordDisplay1.AutoFit = true;//图像显示控件图像自适应大小
        }

        private void button2_Click(object sender, EventArgs e)
        {
            cogJobManager.Shutdown();
        }

        private void Form1_FormClosed(object sender, FormClosedEventArgs e)
        {
            cogAcqFifoTool.Dispose();
            Application.ExitThread();
            Application.Exit();
            Environment.Exit(0);
        }
    }
}
复制代码

 

posted @   金雨CHN  阅读(124)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示