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,表示不自动更新图形。

总结

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

相关推荐
深澈Vincel3 分钟前
我用 C# + WebView2 做了一个针对“流氓软件”的“一键清理工具“:架构实践与踩坑记录
c#
leoZ23141 分钟前
Vue3 还原一个企业级后台-14-项目总结
开发语言·人工智能·后端·opencv·计算机视觉·数据挖掘·rust
zlinear数据采集卡1 小时前
数据采集卡从入门到精通(7):流水线型ADC——级级接力,高速与高精的平衡术
开发语言·arm开发·嵌入式硬件·fpga开发·c#
W_326002 小时前
Python-OpenCV:画布、图形、文字、调色滑动条
图像处理·python·opencv·机器学习·计算机视觉
阿部多瑞 ABU2 小时前
告别手工核图:基于 .NET + MuPDFCore 的 CAD 等轴测 PDF 材料表提取与新旧版本对比实战
后端·算法·ui·pdf·c#
sali-tec3 小时前
C# 基于OpenCv的视觉工作流-章103-空车位识别
人工智能·opencv·计算机视觉
条形码D3 小时前
DRG综合管理分析系统-目前已经支持CHS-DRG3.0
c#·drg·3.0分组器·drg分组器·chs-drg3.0分组器
动物园猫15 小时前
猪行为目标检测数据集:9类别、3,700张图像 | 目标检测
人工智能·目标检测·计算机视觉
在世修行20 小时前
深度图像数据格式与RAW文件解析:从字节到三维世界的桥梁
人工智能·数码相机·计算机视觉
Alex Gram21 小时前
数据库同步工具PanguSync图文教程
java·mysql·postgresql·sqlserver·c#·数据库同步软件·数据库同步工具