当前位置: 首页 > 网络知识

VisionPro ToolBlock脚本编写&通过脚本绘制Record显示简单示例

时间:2026-01-29 09:26:03

1. 导读:
前面有一篇博客分享了如何使用C#调用ToolBlock,以完成一个简单的视觉开发项目。今天主要分享一下在ToolBlock中,如何编写运行脚本,主要包括以下几个方面的演示:

  1. ToolBlock添加输入项,主要用于用户界面参数修改,然后以参数的形式传入ToolBlock,以影响算法工具。
  2. 通过函数绘制自定义图形Graphics,然后将其打印到ToolBlock的某一个图层中(在VP中常说的Record类似于PS中的图层)。
  3. 输出一个不常用的数据类型,PMAlign工具的运行结果对象,也就是CogPMAlignResults类型。

最终效果:

2. 实现步骤:

在ToolBlock中添加一个CogPMAlignTool 工具,然后选择一张边缘对比较好的图像,训练模板。

选择ToolBlock的输出引脚类型–CogPMAlignResults

为当前ToolBlocl编写脚本,注意:这里选择C#高级脚本模式。

1 public class CogToolBlockAdvancedScript : CogToolBlockAdvancedScriptBase 2 26 27 //将PMAlign工具的结果集合绑定到ToolBlock的输出 28 mToolBlock.Outputs["ResultList"].Value = pmaTool.Results; 29 30 //如果ToolBlock内的运行流程是自定义的,则返回false,否则如果按照正常流程执行则返回true 31 return false; 32 } 33 /// <summary> 34 /// 绘制仿射矩形 35 /// </summary> 36 private CogRectangleAffine CreateRectangleAffine(double Postion_X, double Postion_Y, double Weight, double Height, double Rotation, CogColorConstants Color) 37 46 /// <summary> 47 /// 绘制矩形 48 /// </summary> 49 private CogRectangle CreatRectangle(double Postion_X, double Postion_Y, double Weight, double Height, CogColorConstants Color) 50 60 61 /// <summary> 62 /// 绘制标签 /// </summary> 64 private CogGraphicLabel CreatLabel(string text, float size, double x, double y, CogColorConstants Color) 65 73 74 /// <summary> 75 /// 绘制圆形 76 /// </summary> 77 private CogCircle CreateCircle(double Center_X,double Center_Y,double Radius,CogColorConstants color) 78 88 89 /// <summary> 90 /// 当上一次的记录发生改变,并正在重构时调用此函数 91 /// </summary> 92 /// <param name="lastRecord">新的运行记录</param> 93 public override void ModifyLastRunRecord(Cognex.VisionPro.ICogRecord lastRecord) 94 100 } 101 }

开发程序中,在ToolBlock的Ran事件回调函数中显示,并获取结果。

1 private void OnToolBlockRan(object sender, EventArgs e) 2 15 dgv_DataList.DataSource = dataList; 16 }



上一篇:Cognex InSight 实现视觉引导机械手&视觉校准&九点标定
下一篇:Cognex InSight TCP\IP通讯设置以及字符命令触发
VisionPro
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素