当前位置: 首页 > news >正文

无锡网站建设方案托管百度品牌专区

无锡网站建设方案托管,百度品牌专区,荟萃浏览器文件夹,网站开发的最后五个阶段toolblock开发 vpp第二种简单加载方式 public Cognex.VisionPro.ToolBlock.CogToolBlock ToolBlock1;//初始化后实例化一个方法 //窗口运行程序内部 ToolBlock1 (CogToolBlock)CogSerializer.LoadObjectFromFile(“tjjc.vpp”); MessageBox.Show(“算法加载成功”);//复制一个…

toolblock开发
vpp第二种简单加载方式
public Cognex.VisionPro.ToolBlock.CogToolBlock ToolBlock1;//初始化后实例化一个方法

//窗口运行程序内部
ToolBlock1 = (CogToolBlock)CogSerializer.LoadObjectFromFile(“tjjc.vpp”);
MessageBox.Show(“算法加载成功”);//复制一个vpp到程序内部 并将属性选择为始终复制。
第一步引用
引用
using System.Net.Sockets;
using System.Net;
using System.Threading;
using Cognex.VisionPro.ToolBlock;
using Cognex.VisionPro.ImageFile;
using Cognex.VisionPro;
using System.IO;
第二步
在初始化步骤之后
public string VppPath = System.Windows.Forms.Application.StartupPath;//读取软件启动地址 自动读取文件在盘中的位置
实例化一个工具
Public static Cognex.VisionPro.ToolBlock.CogToolBlock ToolBlock1 = new Cognex.VisionPro.ToolBlock.CogToolBlock();//实例化toolblock工具
vpp名称
string CogToolBlock1Name = “CogToolBlock1.vpp”;//创建一个字符串vpp名称备用
实例化所需要的工具 例如 相机
public CogImageFileTool gImageFileTool = new CogImageFileTool();//实例化图片打开
public static Cognex.VisionPro.CogAcqFifoTool CamTool1 = new CogAcqFifoTool();//实例化相机工具
string CamtoolName1 = “cogAcqFifoTool1.vpp”;
string SaveImagesPath = “D:\SaveImages\CAM1”;
获取时间
DateTime now = DateTime.Now;now变量存储当前时间 使用方式
yyymmmdddsss;

第三步
private void Form1_Load(object sender, EventArgs e)//创建一个任务
Try 试着去运行一段程序
{
textBox1.Text = iniFile.IniReadValue(“设置”, “IP地址”, ConfigPath + “设置.ini”);
textBox2.Text = iniFile.IniReadValue(“设置”, “端口号”, ConfigPath + “设置.ini”);
comboBox1.Text = iniFile.IniReadValue(“设置”, “类型”, ConfigPath + “设置.ini”);
Pixlength.Text = iniFile.IniReadValue(“设置”, “像素当量”, ConfigPath + “设置.ini”);
InitialX.Text = iniFile.IniReadValue(“设置”, “机械手初始位置X”, ConfigPath + “设置.ini”);
InitialY.Text = iniFile.IniReadValue(“设置”, “机械手初始位置Y”, ConfigPath + “设置.ini”);

            //SP.showLoadMessage("正在算法程序!");string fileName1 = VppPath + "\\IVS\\" + CogToolBlock1Name;

ToolBlock1 = (Cognex.VisionPro.ToolBlock.CogToolBlock)(CogSerializer.LoadObjectFromFile(fileName1)); ToolBlock1=(Cognex.VisionPro.ToolBlock.CogToolBlock)(CogSerializer.LoadObjectFromFile(fileName1));//加载路径把VPP给toolblock1
this.cogToolBlockEditV21.Subject = ToolBlock1;//把toolblock给界面的工具

string fileNameCam1 = VppPath + “\IVS\” + CamtoolName1;
CamTool1=(Cognex.VisionPro.CogAcqFifoTool)(CogSerializer.LoadObjectFromFile(fileNameCam1));//加载路径把相机设置给CamTool1
cogAcqFifoEditV21.Subject = CamTool1;
listboxmessage(“算法加载成功”, Brushes.Green);
listboxmessage(“相机加载成功”, Brushes.Green);
}
catch (Exception ex)
{
listboxmessage(“算法加载失败”, Brushes.Red);
listboxmessage(“相机加载失败”, Brushes.Red);
}
加载工作完成;
进入下一步;
触发运行阶段;
this.openFileDialog1.FileName = “”;
openFileDialog1.Filter = “Image Files(.BMP;.JPEG;.TIF;.PNG)|.BMP;.JPEG;.TIF;.PNG”;

            openFileDialog1.ShowDialog();string strFileName = openFileDialog1.FileName;Bitmap BitmapAR = (Bitmap)Image.FromFile(strFileName);Bitmap Bitmap;Bitmap = (Bitmap)Image.FromFile(strFileName);CogImage24PlanarColor cogImage24PlanarColor = new CogImage24PlanarColor((Bitmap)Bitmap);//彩色图像//CogImage8Grey cogImage8Gray = new CogImage8Grey((Bitmap)Bitmap);//黑白图像//iCogImage = (ICogImage)cogImage8Gray;

实例化图像格式;

下一步;如果收到触发信号 取图工具准备 运行 加载图像到toolblock 运行。
if (strFileName != “”)
{
gImageFileTool.Operator.Open(strFileName, CogImageFileModeConstants.Read);
gImageFileTool.Run();
//cogRecordDisplay1.Image = cogImage8Gray;
ToolBlock1.Inputs[0].Value = gImageFileTool.OutputImage as Cognex.VisionPro.CogImage24PlanarColor;//把加载后的图像给toolblock的图像输入
ToolBlock1.Run();

            }

另一种运行方式

string imageName = “CAM1.bmp”;
SaveSouceImage(SaveImagesPath, imageName, CamTool1.OutputImage);//保存图像到那个位置
//display.AddTextOnImage(display.cogRecordDisplay1, “OK”, 300, 300, CogColorConstants.Green, 70, false);
ToolBlock1.Inputs[0].Value = CamTool1.OutputImage as Cognex.VisionPro.CogImage24PlanarColor;//此处为黑白图像输入图像为取图工具输出图像
ToolBlock1.Run();//运行
cogRecordDisplay1.Image = null;//运行前清除画面
cogRecordDisplay1.StaticGraphics.Clear();
cogRecordDisplay1.InteractiveGraphics.Clear();//运行前清除画面
cogRecordDisplay1.Record = ToolBlock1.CreateLastRunRecord().SubRecords[3];//处理后图像显示
cogRecordDisplay1.Fit();//自适应
string Xpix = ToolBlock1.Outputs[0].Value.ToString();//结果获取
string Ypix = ToolBlock1.Outputs[1].Value.ToString();//结果获取
double count = Convert.ToDouble(ToolBlock1.Outputs[2].Value);//结果获取
string X1pix = ToolBlock1.Outputs[3].Value.ToString();//结果获取
string Y1pix = ToolBlock1.Outputs[4].Value.ToString();//结果获取
string X2pix = ToolBlock1.Outputs[5].Value.ToString();//结果获取
string Y2pix = ToolBlock1.Outputs[6].Value.ToString();//结果获取
运行完成;

跨窗体调用参数
public Form2(Form1 mform1)
{
InitializeComponent();

        mform = mform1;}Form1 mform = null;

读取复选框中的数据
if (comboBox1.SelectedItem.ToString()“管理员”&& textBox3.Text"123456")
{
button6.Enabled = true;
}
else if (comboBox1.SelectedItem.ToString() == “工程师” && textBox3.Text == “123456”)
{
button6.Enabled = true;
button7.Enabled = true;//按钮=true可以选择
}

调用窗体程序
Form2 f = new Form2(this);

        f.ShowDialog();//打开新窗体

private void button9_Click(object sender, EventArgs e)//占用主线程示例
{
Thread.Sleep(3000);
MessageBox.Show(“第一步完成”);
Thread.Sleep(5000);
MessageBox.Show(“第二步完成”);
}

    private void button10_Click(object sender, EventArgs e)//thread开线程示例{Thread t = new Thread(()=> {Thread.Sleep(3000);MessageBox.Show("第一步完成");Thread.Sleep(5000);MessageBox.Show("第二步完成");});t.Start();}private void button11_Click(object sender, EventArgs e)//task开线程示例(常用){Task.Run(()=>{Thread.Sleep(3000);MessageBox.Show("第三步完成");Thread.Sleep(5000);MessageBox.Show("第四步完成");});

多线程同时运行 如何一步一步运行;
(添加async属性)(await等待运行)
private async void button12_Click(object sender, EventArgs e)
{
await Task.Run(() =>
{
Thread.Sleep(3000);
MessageBox.Show(“第三步完成”);
});
await Task.Run(() =>
{
Thread.Sleep(5000);
MessageBox.Show(“第四步完成”);
});
MessageBox.Show(“全部完成”);
}

特殊开线程的一种方法timer
using System.Threading;//引用一个类
public System.Threading.Timer timer2;//实例化一个timer
timer2 = new System.Threading.Timer(t, null, 1000, 1000);//定义一个timer数据。T 方法 null这个值可以为空 1000第一次运行的时间 1000往后每次的时间。
private void t (object obj)
{
this.Invoke(new Action(() =>//委托 跨线程访问。
//程序运行区域;
}
手动timer暂停的方法
Timer.change(Timeout.Infinite,Timeout.Infinite)
重新启动的方法
Timer.change(0,1000);//恢复计时器

弹窗确认后继续运行的方法
DialogResult result = MessageBox.Show(“是否确认继续运行程序?”, “提示”, MessageBoxButtons.YesNo);

    if (result == DialogResult.Yes){// 用户选择确认,继续运行程序Console.WriteLine("程序继续运行...");}else{// 用户选择取消,不继续运行程序Console.WriteLine("程序停止运行...");return;}
http://www.hkea.cn/news/673241/

相关文章:

  • 网站上怎么做动画广告推广策略包括哪些内容
  • 广州网站优化公司大亚湾发布
  • 广州网站开发招聘百度经验悬赏令
  • 吴江建设局网站郑州粒米seo外包
  • 建设工程合同纠纷与劳务合同纠纷seo培训教程视频
  • 找网站建设公司哪家最好沈阳市网站
  • sh域名做的好的网站什么是营销
  • 网站平台怎么做推广一站式网络推广服务
  • 百度对新网站排名问题兰州seo快速优化报价
  • 网站建设常用代码湘潭网络推广
  • 做网站上传图片一直错误好用搜索引擎排名
  • 钟祥网站建设网络推广的含义
  • 新闻类网站源码青岛官网seo
  • 网站优化哪里可以做百度营销客户端
  • 常德建设局网站北京优化网站方法
  • 用ip做网站优化手机流畅度的软件
  • 为网站添加统计媒介
  • 商业设计网站推荐互联网营销师证书是国家认可的吗
  • 做网站的是干嘛的怎样把自己的产品放到网上销售
  • 品牌型网站制作价格2022年小学生新闻摘抄十条
  • 政府网站群集约化建设网络暴力事件
  • 可以做卷子的网站游戏app拉新平台
  • 长沙优化网站关键词社区营销
  • 个人网站制作价格表重庆关键词优化
  • 网站开发ideseo优化网站模板
  • 关于制作网站收费标准怎样把个人介绍放到百度
  • 网站建设 绵阳百度开放平台
  • discuz修改网站标题微信小程序开发平台
  • 怎么做国内网站吗seo顾问培训
  • 网站排名不稳定怎么办seo+网站排名