以VB脚本代码为例:

VB-Simple:

主要包含以下栏目:
1.

GroupRun函数
脚本的编写一般在GroupRun函数中编辑
Initialize:函数的初始化
auto-generated:软件自动生成的代码,关于Input与Output里各个变量的来历。

VB-Advanced

主要包含以下栏目:

/主类
Public Class CogToolBlockAdvancedScript
Inherits CogToolBlockAdvancedScriptBase
//命名toolBlock类型的变量Private mToolBlock As Cognex.VisionPro.ToolBlock.CogToolBlock
/GroupRun函数,GroupRun :
用来控制工具组中工具的执行顺序,GroupRun函数在运行工具组时调用。这里提供的默认执行等同于工具组的标准动作。修改该函数将允许您修改工具组运行时的动作Public Overrides Function GroupRun(ByRef message As String, ByRef result As CogToolResultConstants) As Boolean‘使用RunTool函数运行工具组中的每个工具For Each tool as Cognex.VisionPro.ICogTool in mToolBlock.ToolsmToolBlock.RunTool(tool, message, result)Next‘返回错误( False ) 表示我们以脚本形式运行工具,而且它们不该由VisionPro运行Return falseEnd Function注意默认动作
可能是最重要的脚本点。让你完全控制工具组的运行。
这是你可以定制运行顺序的地方,执行“自定义工具”或者修改运行状态
ModifyCurrentRunRecord函数
Public Overrides Sub ModifyCurrentRunRecord(ByVal currentRecord As Cognex.VisionPro.ICogRecord)End Sub
/ModifyLastRunRecord函数,修改最后运行记录:
用来在工具已经完成之后修改最后运行的记录Public Overrides Sub ModifyLastRunRecord(ByVal lastRecord As Cognex.VisionPro.ICogRecord)End Sub‘在它被创建时允许您添加或者修改最后运行记录的内容‘例如,这里您可以向运行的记录中添加自定义图形。允许您定制在QuickBuild的记录窗口和应用程序向导程序中显示的内容
Initialize函数,初始化:
在创建脚本时运行。用于脚本设置,添加终端和预订事件Public Overrides Sub Initialize(ByVal host As Cognex.VisionPro.ToolGroup.CogToolGroup)'DO NOT REMOVE - Call the base class implementation first - DO NOT REMOVEMyBase.Initialize(host)'Store a local copy of the script hostMe.mToolBlock = CType(host,Cognex.VisionPro.ToolBlock.CogToolBlock)End Sub

所以说

可以很明显的看到,在VB-advanced(高级脚本)中,可编辑的内容要比VB-Simple(初级脚本)多很多。顺便附上一段拟合圆的脚本关键代码,供大家学习参考。

public override bool GroupRun(ref string message, ref CogToolResultConstants result){CogFindCircleTool circle1 = mToolBlock.Tools["CogFindCircleTool1"] as CogFindCircleTool;CogFitCircleTool fitcircle = mToolBlock.Tools["CogFitCircleTool1"] as CogFitCircleTool;foreach(ICogTool tool in mToolBlock.Tools)mToolBlock.RunTool(tool, ref message, ref result);while(true){   for(int i = 0;i < circle1.Results.Count;i++){if(circle1.Results[i].Used){fitcircle.RunParams.AddPoint(circle1.Results[i].X, circle1.Results[i].Y);}}   fitcircle.Run();return false;}

1.VB的脚本代码在VS的VB.net中同样可以打出来,并且不会报错(类与方法),说明在VB中有同样的类,然而在脚本编辑器中却没有预读功能,可以尝试先现在VB中编辑在copy至VP

VisionPro脚本Simple与Advanced相关推荐

  1. VisionPro脚本详解

    一.VisionPro脚本的种类及功能 VisionPro 脚本可以定制或扩展 QuickBuild 的功能,主要表现在以下几个方面: 根据其他工具的运行结果有条件的运行视觉工具 对视觉工具的执行结果 ...

  2. 视觉平台Visionpro脚本神器

    废话前言,关于visionpro脚本 作者:mingqi QQ 297294753,本文原创,如果要转载请注明出处. 关于vision的脚本操作,官方没有说明,帮助文档也只是说了visionpro内部 ...

  3. VisionPro之脚本(一文读懂VisionPro脚本原理与使用方法)

    文章目录 一.脚本简介 二.脚本类与方法 三.脚本使用案例 四.脚本进阶 一.脚本简介 1.1 VisionPro项目组成简介 在介绍脚本之前先简单介绍一下VisionPro开发环境(QuickBui ...

  4. 1.康耐视VIsionPro脚本讲解1

    Visionpro 软件是一款非常好用的机器视觉软件,它降低了开发人员的入门门槛,一个简单的机器视觉项目,只需要拖拉窗口,设定下参数,就可以立刻完成部署上线,开发效率是非常高的. 但这种模式也会降低开 ...

  5. 康耐视Visionpro脚本编写教程一

    theme: github ​本文已参与「新人创作礼」活动,一起开启掘金创作之路. 康耐视visionpro脚本编写 visionpro目前来说在工业中的应用时非常的广泛的,而且作为苹果手机厂指定的视 ...

  6. 一种求角平分线方法—VisionPro脚本实现

    1. 角平分线定义: 从一个角的顶点引出一条射线(线在角内),把这个角分成两个完全相同的角,这条射线叫做这个角的角平分线(bisectorof angle). 角平分线是在角的型内及形上,到角两边距离 ...

  7. 康耐视Visionpro脚本编写教程二

    本文已参与[新人创作礼]活动,一起来开启掘金创作之路. 第二步 开始脚本的编写 上一章我们说到了输出项的配置,那么本文就目前的输出,做一个脚本的编写: 首先我们需要构建一个脚本. 这里的脚本分为VB和 ...

  8. 康耐视VisionPro脚本的编写

    'GroupRun函数在运行工具组时调用.这里提供的默认执行等同于工具组的标准动作.修改该函数将允许您修改工具组运行时的动作 Overrides Function GroupRun(ByRef mes ...

  9. VisionPro脚本

    脚本分为简单脚本和高级脚本,假如别人写的脚本在自己的脚本中无法实现,可以尝试切换下简单脚本/高级脚本试一试 简单脚本可以直接使用: 高级脚本:需要转换格式 转载于:https://www.cnblog ...

最新文章

  1. Android 实现图片的单点缩放、拖动、旋转
  2. 查看 -- tree
  3. Linux空间过满无法登录,linux下磁盘空间不足导致oracle无法登录的解决方案
  4. java查询SQLServer遇到问题:对象名无效。
  5. Java Vistor 设计模式
  6. APS先进规划与生产排程系统--介绍
  7. Nature子刊:大脑在局部区域的结构-功能耦合的遗传度与个体差异
  8. matlab命令行窗口显示长度设置_MATLAB的命令窗口、图形窗口
  9. Exchange高危0day漏洞 -- 直接拿下你的域控和服务器 -- 立即行动!CVE-2021-26855
  10. Ubuntu下输入金钱符号时只能输入“₵“无法输入“$“
  11. 米豆网首页快照不更新原因分析
  12. 搭建普罗米修斯Prometheus监控系统
  13. 浏览器如何清除缓存教程
  14. 一图解说JAVA的项目结构
  15. Committer 蔡正昕专访:勇敢迈出第一步,做开源没有那么难
  16. LabVIEW如何实现高性能串口助手-附代码
  17. html单元格上下拆分代码,在HTML/CSS如何垂直拆分表格单元格(特别版)
  18. 新版花花省淘宝客V6聚合优惠券系统具体功能介绍
  19. 【CJY学习笔记】Linux防火墙基本操作(基于centos7)
  20. Java(网络编程)

热门文章

  1. 索尼开发新传感器为激光雷达提供助力,用于自动驾驶和其他应用
  2. React、Vue等前端项目彻底卸载ServiceWorker,亲测有效
  3. 剪辑手法中过肩拍摄的镜头怎么称呼?
  4. 车路协同先导试验平台
  5. 给div添加点击效果
  6. 计算机错误代码0X000000be,win7电脑出现蓝屏错误0x000000BE的解决方法
  7. 《抗倭英雄戚继光》 郦波
  8. 放弃Dubbo了,不太适合小系统
  9. 文化网,武汉文化网,湖北文化网——体制文化常识
  10. E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?(解决方法)