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);
}
}
}