VisionPro二次开发学习笔记5-使用C#注释图像

Visual Studio.NET应用程序可以在获取的图像上显示图形和文本。

静态和交互式图形类

VisionPro支持将CogStaticGraphicsContainer图形添加到CogDisplay图像后无法移动或更改,并且支持CogInteractiveGraphicsContainer图形,如果启用了Interactive属性,则可由应用程序或用户移动或修改。

静态文字示例

以下C#语句向现有应用程序添加静态标签,该应用程序在CogDisplay对象CogDisplay1中显示图像:

C# 复制代码
using Cognex.VisionPro;

private CogGraphicLabel cglCaption;
private Font myFont;

private void InitializeStaticGraphics()
{
        cglCaption = new CogGraphicLabel();

        // 设置文本和对齐属性
        cglCaption.Text = "Cognex Display Control";
        cglCaption.Alignment = CogGraphicLabelAlignmentConstants.TopLeft;

        // 创建字体并设置给标签                      
        myFont = new Font("Comic Sans MS", 16, FontStyle.Bold);
        cglCaption.Font = myFont;

        // 设置标签的空间名称为 "#",表示标签的坐标系与图像坐标系相同,并且会随着图像的移动而移动。
        cglCaption.SelectedSpaceName = "#";

        // 将标签的位置设置为 (0, 0),即放置在显示控件的左上角
        cglCaption.X = 0;
        cglCaption.Y = 0;

        // 将创建的标签添加到 cogDisplay1 的静态图形集合中。第二个参数是标签的文本,用于标识该图形
        cogDisplay1.StaticGraphics.Add(cglCaption, cglCaption.Text);
}

总结

创建一个静态文本标签并将其添加到 Cognex VisionPro 的显示控件中。标签的文本内容、字体样式、对齐方式和位置都被精确设置,从而使其在显示控件上以可读的方式呈现。由于标签是静态图形,它不会随图像的变化而变化,这对于显示固定信息(如标题或说明)非常有用。

交互式图形示例

以下C#语句向现有应用程序添加一个交互式标签,该标签在CogDisplay对象CogDisplay1中显示图像。该应用程序包含一个TextBox控件,textBox1和一个按钮button2。每次用户在TextBox控件中输入文本并按下按钮时,CogDisplay1中的交互式标签都会用用户输入的文本进行更新。

C# 复制代码
using Cognex.VisionPro;

private CogGraphicLabel cglCaption;
private Font myFont;

private void InitializeInteractiveGraphics()
{
        cglCaption = new CogGraphicLabel();
 
        cglCaption.Text = "Cognex Display Control";
        cglCaption.Alignment = CogGraphicLabelAlignmentConstants.TopLeft;
                       
        myFont = new Font("Comic Sans MS", 16, FontStyle.Bold);
        cglCaption.Font = myFont;

        // 设置标签的空间名为 "*",表示它将被锚定在图像上。
        cglCaption.SelectedSpaceName = "*";

        cglCaption.X = 0;
        cglCaption.Y = 0;

         // 将标签添加到 cogDisplay1 控件的交互图形中,使用标签的文本作为标识。
        cogDisplay1.InteractiveGraphics.Add(cglCaption, cglCaption.Text, false);
}

private void button2_Click(object sender, System.EventArgs e)
{
        string output;

        output = "Text: " + textBox1.Text;
        cglCaption.Text = output;
}

总结

这段代码的主要功能是在一个 Cognex VisionPro 应用程序中创建一个文本标签,并在按钮点击时动态更新该标签的文本内容。标签的位置和样式都经过了设置,以确保它在图像上正确显示。

相关推荐
这张生成的图像能检测吗1 小时前
(论文速读)RandAR:突破传统限制的随机顺序图像自回归生成模型
图像处理·人工智能·机器学习·计算机视觉·生成模型·自回归模型
chenglin0162 小时前
C#_接口设计:角色与契约的分离
java·前端·c#
l5657582 小时前
第四十二天(Java开发 &Servlet&Filter & Lister)
java·笔记
weixin_516875654 小时前
力扣 30 天 JavaScript 挑战 第37天 第九题笔记 知识点: 剩余参数,拓展运算符
javascript·笔记·leetcode
Virgil13910 小时前
【TrOCR】模型预训练权重各个文件解读
人工智能·pytorch·计算机视觉·自然语言处理·ocr·transformer
我希望的一路生花11 小时前
Nik Collection 6.2全新版Nik降噪锐化调色PS/LR插件
人工智能·计算机视觉·设计模式·stable diffusion·aigc
谷宇.14 小时前
【Unity3D实例-功能-拔枪】角色拔枪(三)IK的使用-紧握武器
游戏·unity·c#·unity3d·游戏开发·游戏编程·steam
凳子(刘博浩)15 小时前
决策树的笔记
笔记
用户83562907805116 小时前
C# 从 PDF 提取图片教程
后端·c#
飞翔的佩奇17 小时前
【完整源码+数据集+部署教程】遥感森林砍伐检测系统源码和数据集:改进yolo11-SWC
python·yolo·计算机视觉·数据集·yolo11·遥感森林砍伐检测