VisionPro二次开发学习笔记4-使用C#创建绘图图形

VisionPro提供了许多可以添加到CogDisplay的基本形状,例如CogCircle,CogRectangle,CogEllipse和CogRectangleAffine。这些形状可以是用户可以用鼠标操作的交互式图形,也可以是用户无法更改的静态形状。

若要在CogDisplay控件上绘制图形,您需要在Visual Studio.NET应用程序中添加对Cognex.VisionPro,Cognex.VisionPro.Core和Cognex.VisionPro.Display.Controls程序集的引用。

绘制图形

以下编程语句创建CogRectangle和CogCircle的实例,设置其属性,并将其添加到CogDisplay控件。

  1. 添加引用
csharp 复制代码
using Cognex.VisionPro;
using Cognex.VisionPro.Display;
  1. 声明变量
csharp 复制代码
CogRectangle cgRect;
CogCircle cgCirc;
  1. 创建图形对象

    csharp 复制代码
    cgRect = new CogRectangle();
    cgCirc = new CogCircle();
    • cgRect 是一个矩形对象的实例,cgCirc 是一个圆对象的实例。这两个对象都是 Cognex VisionPro 中用于图形表示的类。
  2. 设置矩形的属性

    csharp 复制代码
    cgRect.X = 150;
    cgRect.Y = 150;
    cgRect.Color = CogColorConstants.Green;
    cgRect.SelectedSpaceName = "*";
    cgRect.Interactive = true;
    • cgRect.XcgRect.Y:设置矩形的左上角坐标为 (150, 150)。
    • cgRect.Color:设置矩形的颜色为绿色。
    • cgRect.SelectedSpaceName:设置为 "*",表示该图形可以在任何坐标空间中选择。
    • cgRect.Interactive:设置为 true,表示该矩形是交互式的,用户可以与之进行交互。
  3. 设置矩形的交互属性

    csharp 复制代码
    cgRect.GraphicDOFEnable = CogRectangleDOFConstants.Size;
    • GraphicDOFEnable:设置用户可以交互的属性,这里指定用户只能改变矩形的大小,而不能移动其位置或改变其他属性。
  4. 设置圆的属性

    csharp 复制代码
    cgCirc.CenterX = 220;
    cgCirc.CenterY = 220;
    cgCirc.Color = CogColorConstants.Blue;
    cgCirc.SelectedSpaceName = "*";
    cgCirc.Interactive = true;
    • cgCirc.CenterXcgCirc.CenterY:设置圆的中心坐标为 (220, 220)。
    • cgCirc.Color:设置圆的颜色为蓝色。
    • cgCirc.SelectedSpaceName:与矩形类似,表示该圆也可以在任何坐标空间中选择。
    • cgCirc.Interactive:设置为 true,表示该圆是交互式的。
  5. 设置圆的交互属性

    csharp 复制代码
    cgCirc.GraphicDOFEnable = CogCircleDOFConstants.Radius;
    • GraphicDOFEnable:这里指定用户只能改变圆的半径,而不能移动其中心或改变其他属性。
  6. 将图形添加到显示控件

    csharp 复制代码
    cogDisplay1.InteractiveGraphics.Add(cgCirc, null, false);
    cogDisplay1.InteractiveGraphics.Add(cgRect, null, false);
    • cogDisplay1.InteractiveGraphics.Add:将创建的圆和矩形添加到 cogDisplay1 控件的交互图形列表中。第二个参数为 null,表示不指定图形的标签,第三个参数为 false,表示不自动更新图形。

总结

这个方法的作用是初始化两个图形(一个矩形和一个圆),并将它们添加到一个显示控件中,使得用户可以通过鼠标交互来调整这些图形的大小(矩形)和半径(圆)。通过设置颜色、交互属性和允许的交互方式,提供了一个用户友好的图形界面,便于用户进行视觉化操作。

相关推荐
AI的探索之旅2 小时前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
小羊没烦恼!2 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
神仙别闹2 小时前
基于C#+MySQL实现(WinForm)个人聊天室软件
c#
美狐美颜SDK开放平台2 小时前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
kybs19915 小时前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
拉你进_教堂5 小时前
小龙虾技能之【Parkinson‘s & Epileptic Behavior Recognition Skill | 帕金森癫痫行为识别技能】简介
人工智能·计算机视觉·多模态大模型·openclaw小龙虾技能
PascalXie6 小时前
人形机器人的“眼睛“:多目视觉方案怎么选?
计算机视觉·机器人
普密斯科技6 小时前
替代传统影像仪,摄像头磨切片测量新方案实测
计算机视觉·集成测试·测量
YOLO数据集集合8 小时前
天空红外小目标检测数据集 | 红外小目标 天空目标检测 无人机检测 鸟类识别 低空安防9099期
人工智能·目标检测·计算机视觉·目标跟踪·无人机·无人机视角·直升机检测
江屿风9 小时前
【认识深度学习】【深度学习分类与计算机视觉任务要点解析】流食般投喂
大数据·人工智能·深度学习·计算机视觉·目标跟踪·自然语言处理·语音识别